• Register
Post news RSS Dawning of Real Action

Working towards a rock-solid experience, Assembly RTS will be an immersive strategy game with physics-based online gameplay. Improved YouTube devlogs to come soon™!

Posted by on

Welcome back to the devlog series for Assembly RTS -

An immersive, physics-based strategy game with faction customization

Main Capsule 010

Hey guys, I'll write a new devlog every week from now on. 💪
YouTube postings will be less frequent, but of higher quality and more jam-packed with goodies.

By the way, if you haven't subscribed yet, here is a link to my channel.

brave USAknpKjrl

One of the main challenges of building an RTS game are the technical hurdles.
Specifically, high performance regardless of the circumstances is super important. Gone are the days when an RTS game locked at 30 FPS was acceptable (looking at you, C&C series). This is why, even though the gameplay logic of Assembly RTS is updated roughly 30 times a second, just like the classics, everything needs to be running smoothly, preferably at 100+ FPS on inexpensive systems.

This is just one of the many aspects I've been working on for the past three weeks. Interpolation and extrapolation of positions and rotations now make everything look smooth regardless of other factors.

Stability Improvements

The past three weeks I thoroughly tested all of the current features of my game and squashed many a bug along the way. Steam Workshop integration edge cases are no longer an issue. I also fixed map editor data corruption and made the editor work out of the box, without requiring the player to take extra steps.

I also wrote some unit tests, play mode tests, and performance tests to see if they would benefit the robustness of my project. I had to conclude that they aren't worth the effort in most cases. Yet the play mode tests I wrote to check if scenes run at all, are actually useful. I had hoped that ChatGPT could help me with writing unit tests, but the AI made a lot of mistakes.

I'm reconsidering adding continuous integration to my development workflow once again. This would allow me to focus more on working on developing Assembly RTS without having to manually build and deploy it to Steam for testing purposes. I used to have a CI pipeline, but it was always fraught with problems.
Now that I'm forced to use Mono instead of IL2CPP for my builds (because of ECS 1.0 limitations) I'm planning to give GameCI a go at some point.

I encountered a Unity bug that completely corrupted the project when changing Assembly Definition files. This brought about a series of events that lead me to test various Unity versions and library configurations until I found a combination that actually worked properly.

During the long loading times, I learned a bit of Bevy on the side. It's a neat, ECS-based game engine that I'm keeping on my radar for the future...

Other New Features

  • Started implementing the automatic generation and serialization / deserialization of a terrain collider for the hover vehicles to collide with.
  • It's now possible to play by yourself, without an internet connection.
  • An AI opponent is something I'm delegating to my future self. Online multiplayer is of more immediate importance.

Most importantly, I started implementing A* pathfinding, so that units can avoid obstacles and find the shortest path to a target. Afterward, I'll be focusing my attention on local avoidance, which will ensure that hovercraft will avoid colliding with each other.

early pathfinding demo short low

Thanks for reading. Consider following me on YouTube or Twitter 👍

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.