• Register
Post news Report RSS Overcoming Challenges

A dreaded non-determinism bug managed to sneak into my code but I am sure to squash it. Assembly RTS will be a physics-based online strategy game with unit customization!

Posted by on

Hi everyone and welcome to another devlog for Assembly RTS!
Unity hN9arf2LtW


This week I mainly continued working on the code changes I described in my last devlog.

Unfortunately I also introduced an unexpected bug along the way, breaking cross-platform determinism.

This is a much-dreaded problem for all RTS game developers utilizing the so-called deterministic lock-step networking method.

Cross-platform determinism means that identical calculations will always yield the exact same result on different computers. By default this is not typical and special care needs to be taken to ensure this principle.

For my networking solution to function a large portion of my game logic needs to guarantee this type of determinism.

I test my game regularly in multiplayer to make sure that everything works properly. However this latest larger re-write didn't allow me to test smaller changes along the way.

Unit tests can only take you so far in creating a safety net. They can't ensure cross-platform determinism. This kind of thing needs to be tested manually, using at least two different computers.

Determining the cause of non-determinism can be really difficult and I hope that I'll identify the problem soon, so I can safely continue working on the gameplay logic of Assembly RTS.

Exploring Unreal Engine

In my spare time I studied Unreal Engine using their Blueprint system.



I'm not sure if this is a reasonable way to program games, but it's definitely a change of pace.
In my opinion Unreal Engine could be a good pick for making simple racing games. I already have some great ideas for future projects.

YouTube Devlogs

Last week I managed to work on YouTube devlogs for half an hour almost daily but this week it felt nigh impossible.

Regardless, I'll do my best to work on YouTube devlogs every day whenever I am able to.
I recognize that they could actually be very important to the future success of Assembly RTS... a devlog to appease the YouTube algorithm gods.

That's it for this article. Leave a comment if you have any thoughts! I'd like to know about all your experiences and questions.

If you would like to continue following the development Assembly RTS hit this button here on IndieDB:

firefox SHC6ML0VQp

...or follow me on Twitter and YouTube!
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: