I’m engaged on a authoritative consumer/server sport, seeking to each Valve and Gaffer to know the idea.
Presently, the server simulates at 20 ticks a second. The inputs obtained from the consumer is buffered and solely processed throughout certainly one of these ticks. Nevertheless, if a consumer sends enter at a quicker fee, say 60 instances a second, that consumer will transfer about 3x quicker than common shoppers.
An answer to this could be to have the server mix/unify the inputs within the buffer and course of this enter as soon as, as a substitute of processing the buffered inputs individually.
Now, given the latter resolution, a consumer with a ship fee of 20 may very well be topic to community jitter, which might trigger the server to obtain 2 or extra inputs on the similar time. This is able to trigger the server to mix/unify the inputs, when they need to truly be processed individually.
So my query is, how ought to the server deal with inputs to forestall extra inputs from being processed than mandatory, whereas not skipping inputs that arrive on the similar time?
I hope I make sense, if not simply inform me to elaborate 🙂