On a server that processes and broadcasts packets as soon as they arrive, a lagging player’s bunched-up actions run back to back immediately.
Why A lagging player’s skill and move requests arrive in a bunch → Effect The server runs them in order the moment they arrive and tells everyone right away → On screen Others see that player use several skills in an instant or move as if fast-forwarding
Primary owner Game team (Server development) · Also Game team (Client development)
Game team action items
Server: run actions at the spacing of their attached input times (accepting those times only within an allowed range), or run bunched actions one after another spaced by a minimum interval (global cooldown) without rejecting them, don’t check cooldowns by arrival time alone (valid inputs get dropped). Client: attach the input time to each action.
On the graph
Outliers only · Action execution interval per player
Where to look
Server log of each player’s action arrival time, execution time, and client-attached input time (if any), comparing execution intervals with input intervals. Also the arrival intervals of that player’s packets in a server-side packet capture
Confirmed if
Input intervals are normal, but server arrival and execution intervals are bunched within a few ms, and the bunches line up with the times other players reported fast-forward
Ruled out if
Intervals are already bunched in the input times: points to the client or a macro. Server execution intervals are even but look bunched only on other players’ screens: the viewer’s connection
Deterministic LockstepGaffer On Games Applying inputs as they arrive gives uneven results even when they’re sent at 60 Hz, because the spacing isn’t even