Why does lag compensation exist at all? Can't players just aim for where the enemy is now?
At 80ms latency, the enemy moves ~1 meter ahead during your shot's round trip. If servers only tested hits against present-time positions, laggy players would have to aim into empty space to hit stationary enemies — making the game unplayable for anyone not on fiber. Lag compensation tests the hit against where the enemy WAS when you fired, giving everyone fair aim.
Answered in
Time-Travel Fairness: How Servers Rewind for Lag CompensationWhy lag compensation rewinds the game world to when a shot was fired, and why victims experience the cost.
Read the full analysisOther questions this article answers
- How does the server know what time the client fired the shot at?
- What happens to the player who gets shot from behind cover? Is that not unfair to them?
- How far back can the server rewind? Can it go back 500ms or 1 second?
- What happens if the ring buffer doesn't have a snapshot for the timestamp on the packet?
More system design questions
- Why doesn't Google just run Dijkstra faster?
- What is a shortcut edge and when is it precomputed?
- How much space do shortcut edges take compared to the original graph?
- Can Contraction Hierarchies handle dynamic graphs like traffic or road closure?
- Why contract low-degree nodes first instead of high-degree ones?
- What is a CRDT and why does it matter for real-time collaboration?
- How do CRDTs handle concurrent edits without a central server referee?
- Why did Figma move from operational transforms to CRDTs?
Every answer on Crashtech is written by the editor of the article it comes from — never auto-summarised. Browse all answers or the System Design beat.