Many of you have been requesting more upgrades via store feedback and email. I'm sorry it took so long to get any new ones in, but balancing them in a way that doesn't mess up the rest is harder than it looks. The latest addition is a forklift truck upgrade which adds value to your drinks.
At some point I really would like to get the visuals in for all the different vehicular upgrades, which would help to make the world map seem less empty and more alive. There will definitely be more upgrades and traits coming in the near future (including traits which add upgrades to factories).
Much of this update contains work under the hood. Some of the changes are big, some are small, but many of them aren't visible at first sight. Most of the changes are a result of migrating the game to a newer engine I've been developing on top of MonoGame, a cross-platform, open-source version of Microsoft's XNA framework. My intention is to reuse the engine (which is more like a mini-engine) for my next two or three game projects, while also expanding Fizz Filler to Windows 10 and UWP at some point.
The first big change is a move towards multi-threaded code. Previously, the game ran in a single thread with exception of the networking system, which inevitably caused performance issues due to the game maxing out only a single core on the CPU. Even on high-end phones, the game would sometimes start lagging when the player is in a maxed out factory due to the single-core limitation of the game. This is no longer the case and upcoming updates will leverage multi-threading even further to expand the range of hardware the game can run on.
The next big change was the user of proper serialization from JSON. Originally I put the game together as a side project and didn't really implement a robust way of easily loading game assets.
Localization is the first system to make use of this. Each language is now a JSON file containing strings, which makes adding more in the future much easier. Under the old system, the text for any supported languages were bunched together in a single file. I could have used platform-specific localization tool-chains but I wanted a more unified way of managing translations, alongside other game assets.
The intention with serialization is to expand it to things like map tile-sets, drink definitions, upgrades and whatever else can benefit from being in a nice, shiny, clean JSON file.
I've also been developing a tool to supplement the new localization system by managing text translations in an easy-to-use GUI. I'm hoping to re-use this in future projects. Here's a screenshot of it:
Other notable additions from the last few updates include:
- New cloud sprites (these still need more work!)
- New graphics for the fusion reactor upgrade
- Render performance improvements
- Stability fixes for saving/loading the game
- Lots of save-corruption fixes
You can check out all of the changes from the past few updates in detail, by heading over to stoneleafstudios.com.
If you've never played Fizz Filler before and wondering what the heck it is, you can grab it from the Play Store!