ShiVa 2.0 betas currently follow a fixed release model. Every few months, you get a new version with new features and bugfixes and a new number at the end. Testing and packaging each release takes up a considerable amount of time, and we always ask ourselves whether a minor bugfix here or there is worth another full release. Since most of the time, only very few users are affected by a particular bug, we release hotfixes to individual users which fix a specific problem.
The problem with fixed releases
Originally, we intended for ShiVa 2.0 to follow a different release model. The editor is essentially designed in two halves: On the one hand, we have the editor core with all its support binaries, on the other there are the open source modules written in Editor Lua and XML. The core was supposed to stay stable, while the modules could be updated easily by downloading new versions of the scripts inside the editor itself. This design hits its limit though as soon as the editor core has to change, be it because of bug fixes, technological evolution, security issues or new core features. Over the last few years, the core had to change more often than we liked, slowing down the fixed release schedule more and more.
Beta 9 is over a year old by now, and several critical bugs have been reported during that time, bugs we have already fixed and promised to deliver in the next update. But where are these updates, many of you have been asking. In addition to ShiVa's own bugs, the tools ShiVa depends on for exports have also been evolving, and so with the current Android Studio, ShiVa 2.0 beta 9 is no longer able to build mobile games for Google's platform. Fixes for all these issues exist for weeks and months, not in a numbered release mind you, but in something we call a "DR", or Development Release.
These DRs were originally intended for ADVANCED licensees, companies which need a rapid bugfix, and internal testing. In 2018, we built an average of 1 new DR per month, releases with bugfixes which the majority of our community never got to see. Did you know we already had 6 new builds of ShiVa 2.0 in 2019 alone?
The new beta program
Starting today, we are opening the DR program to every ShiVa 2.0 BASIC and ADVANCED licensee. The old beta program and beta website will be phased out. Instead of beta.shivaengine.com, the new frontpage of the beta program will be shiva-engine.com/beta-20. The login system will be switched over to shiva3dstore.com, eliminating one additional set of credentials for you to keep track of. Simply enter your e-mail and password, then select "Development Release (DR)" from the dropdown:
In addition to the Windows .exe installers you already know from fixed releases, you can now also select file-only releases in 7z archives. Simply replace the ShiVa beta files on your hard drive with the ones in the archive to update from one beta to another without running through the entire installation process again:
DRs vs fixed releases
Fixed releases will most likely not go away. With the focus shifting to DRs however, we will be able to deliver you updates much quicker than before. There are some things to keep in mind though when using DRs.
DRs will be far less tested than fixed releases. They will also be neither feature nor version parity across platforms, meaning the current DR for Linux 64bit may be a month behind Windows 64bit, because the latest DR only fixes a bug in a feature which both only exist on Windows. You will only be able to download the latest DR for each platform, making sure we only get bug reports from current builds.
DRs might also come with less "stuff", meaning no documentation, no samples, no installer, just to keep the file sizes on the server as small as possible. If you choose to use DRs, we assume you have enough ShiVa experience already that you do not need any comfort features.
Most importantly, DRs might break compatibility with previous and/or future versions. Use DRs at your own risk. We do not guarantee that you will be able to backport games into previous releases after loading them up into a current DR, nor will we guarantee that DRs do not scramble your data. DRs are experimental, little tested releases, and while we never had such problems previously, we also cannot tell you to install DRs on all your production equipment. Always keep backups!
As with fixed releases before, you have to do some manual housekeeping when upgrading your betas. Please delete the ShiVa cache and settings folders BEFORE your first start. You can find them under:
- Windows: C:/Users/your_username/AppData/Local/ShiVa
- OSX: ~/Library/Application Support/ShiVa
- Linux: ~/.shiva
Shaders will most likely need to be rebuilt. Please make sure you clear the old shader cache (Game properties > Edit > Clear shader cache) before testing your games, otherwise you might get unexpected performance drops.
When working with 1.9.2 projects, please ALWAYS WORK FROM BACKUP PROJECT. Once a project file has been opened, changed and saved in 2.0, it is unlikely that you will be able to continue working in 1.9.2 on the same file!
Furthermore, you should delete the BUILD, CACHE and SAVES folders from your duplicated projects before importing them into ShiVa 2.0.
More betas coming soon
With the switch to DRs, the frequency of beta releases will increases significantly. Please make good use of our Beta website and especially our bug tracker on shiva-engine.com/bugtracker. If you have already reported on our system, please check whether your bug has been fixed with the new version and close or bump the threat (add a note) when appropriate.