Making a Game in Unity 018: Server Architecture

Making a game in Unity 018

Over the last two weeks I explored more advanced server architecture, and I experimented a bit with Unity’s new Data Oriented Technology Stack (DOTS).

DOTS is pretty awesome! The potential performance gains are immense, although you have to completely rethink how you write code in Unity. I would love to take advantage of this new technology in my game, however it isn’t quite there yet. There’s still a lot of things that are being changed, and documentation and online resources are still very sparse, which makes solving problems extremely difficult.

Since I won’t be implementing DOTS anytime in the near future, I decided to dive deeper into server architecture. Currently, despite the fact that my networking setup works, I feel like it’s not optimal and I’d like to improve the foundation on top of which I’m building my game.

So, I’ve decided to take the time now to build a proper server base by adding support for things like client prediction and reconciliation, and server-side lag compensation. This stuff can be quite confusing, but luckily I found a few great articles that explain the necessary concepts really well.

As always, if you’re interested in more videos like this, leave a like (it really helps out the YouTube algorithm), and consider subscribing. Also, come check out the Discord server where you can share your progress, ask for help, and hang out with other game developers.

See other posts in this series.