1. Coloniser
  2. News
  3. Optimizing Endeavors - Part 1

Optimizing Endeavors - Part 1

[p]Salutations, Colonisers![/p][p][/p][p]Let’s talk about the issue a lot of you experienced during the demo and playtest sessions. Let's talk optimization and some of the things we are doing!
[/p][p]As Coloniser keeps growing into a large-scale multiplayer RTS, we ran into a familiar problem: the game knew too much.
[/p][p]Every player was receiving updates about every unit on the map - even units hidden by Fog of War or fighting battles on the other side of the map. That’s fine early on, but once matches get big, it becomes a serious performance bottleneck. Some of the players reported those issues during our demo. Here is how it tended to behave:
[/p][previewyoutube][/previewyoutube][p]While the game improved performance-wise since the early days, there is still much to do about it. [/p][p][/p][p]So instead of trying to push all that data faster, we stopped and asked a simpler question: Why are we sending it at all?[/p][p][/p][p]That question led us to a system called Interest Management.[/p][p][/p][p]The idea is straightforward: if your units can’t see something and can’t interact with it, your game client shouldn’t know about it. Not hidden, not ignored - just not sent.[/p][p][/p][p]In other words, the network now follows the same rules as Fog of War.[/p][p][/p][p]And when it comes to enemy units, they are no longer always loaded “just in case.” Instead, they’re streamed in and out based on visibility. As an enemy approaches your army, its data starts arriving and the unit appears. When it leaves your line of sight, it’s safely removed again.[/p][p][/p][p]Some units may exist just outside vision - known to the server, but still hidden by Fog of War. Those would only become visible when they truly enter sight. The important part is that visuals and networking are finally in sync.[/p][p][/p][p]Fewer units active at once means less memory use, less network traffic, and much smoother performance during large battles. Instead of everyone processing everything, each player only processes what actually matters to them.[/p][p]
But this is only one part of our optimization process. Think of this segment in a way who gets the information. The other part is how the game finds things efficiently in the first place and for that we’ll have to talk about spatial partitioning.

That is the material for the next blog, so stay tuned![/p][p][/p][p]Cantos Games[/p][p][/p][p]Discord Youtube Reddit X/Twitter Bluesky Instagram Facebook[/p]