Introduction
Moving with big steps towards the alpha feature complete, we are currently fixing bugs, adding new features and, finally, adding new units to the whole system
Development progress
1.7 - 8.7.
Having a huge workload during those couple of weeks the progress was really slow.
A couple of smaller bugfixes, adding the HP bars to the units, and getting everything ready for new builds was the main objective of that week.
9.7 - 16.7.
We started adding the new sprite assets to the game and have our aritst create the missing boat assets to finish the units for alpha.
Doing this we figured out it would be nice if we get saving and loading of maps done, cause that would help us (the non-devs) to far easier reproduce situations and have them ready for replay by the developer, so, a new goal was born.
16.7. - 24.7.
This took quite a while. After reading up on various save topics (I already had something in mind previously) - I figured, to make our live as easy as possible, to create JSON files for the saves. This also leaves us with the possibility of just replacing the string writer with a binary writer, or with packing everything up in zip files. I don’t think it makes much sense to actually try to crypt save files or do something funky with them, as there are always tools like CheatEngine or Unity Decompiler out there that actually can reverse engineer this. As a rule of thumb: if you game decrypts stuff, there most likely is a key somewhere that will need to be used to be decrypted, so in worst case you just gotta hook the extract function. So. I don’t.
Preparations for this included having to split the objects and the data, kind of like in an MVC pattern. Previously we split objects into Classes - RTSGameObject classes (for everything ‘on the map’), Player classes, for handling player data, various managers to handle interactions.
For the JSON loading and saving (or just save and load in general) I needed to abstract the data from the controlling logic into a separate class.
So we basically split the Player Class, the Terrain-Manager and the RTSGameObjectInstances in their representative Mono-Behavior objects, and, in their guts, having a data objects (RTSGamePlayerData, RTSGameMapData, …).
This actually works pretty decently, and load and save cycles are working now.
I just need to implement them somewhere in the main menu…
Upcoming planned next steps
Starting next week, the dev logs should come back regulary and we should be able to schedule next steps again! Keep tuned for news!
Status | Date | Topic | Sub-Topic | Description |
---|---|---|---|---|
Done | LandCrisis | * | Save & Load | |
Done | LandCrisis | * | HP bar visuals | |
Work | LandCrisis | Org | Rolling Builds (5) | |
Work | LandCrisis | Units | adding units sprites | |
Work | LandCrisis | Units | “queue” mechanics | |
Work | LandCrisis | Tech | affecting placed and new units | |
Work | LandCrisis | * | fixing dev build bugs | |
Plan | LandCrisis | Maps | Import FoW implementation | |
Plan | LandCrisis | Org | Static playtest, alpha build |
Closing statement
Please check out our Discord here.
Also, if you want to see more in-depth dev screenshots or have any questions feel free to ping me in #devlog on Discord!
Stay safe, stay strong, keep your distance and I’ll keep you guys updated soon!