Hello.
Following another thread of mine that was about a reliable udp implementation I now have a question about the number of packets that are send by the client to a server in online gaming.
I'm programming a bomberman clone and currently trying to make it onlinecapable.
The gameloop runs 60 times a second with a fixed timestep ( that's called tickrate, right? because it is often confused with the games fps, which for me is refering to the rendering, which in my case is also 60 fps, since rendering and logic aren't separated. I will however separate them in the future, so rendering can be done as many times as possible, though I think anything beyond 60 won't actually have a visual effect ).
My problem now is, that since the tickrate of the game is 60, this means that 60 times a second the game is updating and answering to user input ( keyboard, mouse etc. ). Now I think sending 60 packets a second is a very huge amount and I think less will also do ( also considering it's just a cheap bomberman clone ). What I first thought was to send multiple commands in one packets, so for example 3 movement commands in 1 packets, therefore I only have to send 20 packets, but I am now thinking that maybe I can do even less, like 10 or 15 and I was also thinking that I may not even need to send multiple commands and just adjust the walking speed ( the walking speed isn't deltabased, so it's not the walking speed for 1000ms or something, it's just the number of pixels you move in one tick ), for example if I will only send 15 packets, then my walking speed now has to be fourth as much than before.
Now some questions: Is this the right understanding? How many packets are usually send in an onlinegame? I read in a tutorial by Valve that they also send multiple commands in one packet but maybe reducing the actual tickrate and therefore also sending less packets will also do just fine? Player movement will of course look less smooth when the player changes his position only for about 15 times a second, but interpolation will hopefully do the trick there.
Thanks for reading and for your time!