I’ve written my own network implementation of an asynchronous UDP client and server (so I’m not using uNet or Photon or whatever). Whenever I receive movement updates I use lerp functions to smooth everything out. The results are what I was hoping for.
I’m however at a loss about what is an acceptable network send rate. Right now I’m sending movement updates every 100 ms. The size of these movement update packets are between 30 - 50 bytes each.
My question is will this scale, or do I have to tinker around a bit more?
What you are asking for is statistics about tickrate from all over the existing games.
Counter-Strike : Global Offensive has a tickrate of about 64 in competition game.
But it raises to 128 when playing real professional competition.
In Starcraft 2, packet size depends on the game mode, 1v1, 2v2, 3v3 or 4v4.
Here is an explanation of Starcraft 2 network packet management (only 2 pages):
I have read an article long time ago about size packet on different games, and as far as I remember, CSGO was around 50B, BF3 80B with few other examples.
It all depends on your server structure capabilities, your bandwith and your needs.
And here you go:
Tickrates from different games.