Hi guys, I’m loving Netcode so far - just trying to work out how to adapt it to my situation.
In my large scale RTS (30k units) I don’t need a high simulation tick and 10/sec is fine. However there are so many units that it would be great to have network packets sent at a high rate (60/sec). This way it would be updating the oldest unit snapshots all of the time without having to wait for a simulation tick.
The doc states that SimulationTickRate must be divisible by NetworkTickRate.
which sounds like the opposite of what I am looking for. I was wondering what NetworkTickRate actually does. What would be the scenario where you would like the server to process multiple times but not send any data?
Netcode currently seems like it must have a server tick to send a packet. That is not ideal for me because if I actually run the simulation then that will update the data - causing high-importance ghosts to get updating and preventing low-importance ghosts from getting a message.
One workaround I can think of is to set my SimulationTickRate to 60 but then manually prevent my system by running with mySystem.Enabled = Time.frameCount % 10 == 0
. In this way Netcode will be running at a high rate but my sim still runs at a low rate - chunks are not changed therefore Netcode will have nothing to send except low-importance ghosts.
Will there ever be an “unbound” network tick? Ideally we would send as many data updates as the network connection can handle.
Thanks!