Welcome to a new devlog for Assembly RTS, the physics-based real-time strategy game!
Hi there, during the past two weeks I've continued writing music and enhanced game logic and runtime performance. Let's get right into it!
Writing The Soundtrack
Lately, I've started producing music for the game again, usually on Sundays.
It's always important to listen to the music in context whenever possible.
I watched C&C3KW footage while listening to the tracks to get a better understanding.
What struck me is how quiet soundtracks typically are in comparison to gameplay sound effects.
Does it still sound great when you can barely hear the instruments, and does it jive well with the action?..
This is what actually matters for an RTS soundtrack.
Which is your favorite? I personally like the last track best, but only when the orchestral instruments kick in does it actually shine when combined with gameplay.
Surprisingly, I found the second Midtempo track also very suitable as soundtrack material, despite its extreme simplicity.
Rendering Performance Enhancements
The performance in the Unity Editor Play Mode has been quite bad lately, and I finally got fed up with it. Testing the game under unrealistically bad framerate conditions makes it difficult to judge things.
To fix this issue I upgraded my project to the Unity 6 Beta, which brings some rendering performance enhancements with it, especially when paired with DirectX 12.
Previously I would get 40 FPS in the Editor Play Mode. Now I get well over 80 FPS.
Surprisingly there is actually barely any performance difference in executable builds (~120 FPS), but still, mission accomplished!
Targeting Fixed
For a long time Assembly RTS has suffered from a bug which made targeting unreliable. Enemy units simply couldn't 'see' each other.
Thanks to some more visual debugging improvements I was finally able to fix this issue (fingers crossed).
Major Coding Productivity Improvements
Previously, much of Assembly RTS's logic would require recompilation and editor play mode restart after every change, costing about a minute every time.
Finally, I've found a way to write much of the offending code in such a way to make it hot-reloadable.
This means, that I can change the code while the game is still running in the Unity editor. A huge deal!
I will incrementally rewrite the code as needed to make fast changes like these possible.
Air-Based Units Integration
Before making any other changes to the game I finally integrated the base logic required for air-based units. My gameplay framework now supports structures, vehicles, infantry, mechs and aircraft.
The aircraft, which for the current prevalent faction are going to be airships, are running a separate physics simulation, making it possible for them to collide with each other (without colliding with the ground-based units).
I haven't made any airship 3D models yet so all I've got for you today are some floating boxes.
Stats From CSV
The stats for different units and structures are now loaded from CSV files, which is a file type supported by Excel and Google Sheets, making it possible to easily share them with you guys for scrutiny and for future limited modding support.
That's it for this devlog. Don't forget to wishlist Assembly RTS - Unleash Your Forces on Steam!