Issue Description (Required):
I’d like to propose an investigation into implementing server-side timeline shifting to account for player latency in our game. This system would aim to create a more consistent and fair player experience, especially in reactive gameplay scenarios.
i want to share 2 separate clips of the same scene from someone on 250 ping compared to 67 ping
this is my view on 250 ping (i am an Australian playing on American west servers right now)
and the same view from from the perspective of 67 ping
The Problem
Currently, players with higher latency are at a disadvantage when reacting to sudden threats (e.g., dodging a Pox Hound, avoiding a Trapper’s net). This is because the server processes actions in real-time, while high-latency players see delayed events and their responses arrive late.
Simple Example: The Pox Hound
Imagine a Pox Hound jumping at a player:
-
Player A (0ms ping): Sees the jump immediately, reacts in time, and dodges successfully.
-
Player B (250ms ping): Sees the jump 250ms late, reacts with the same timing as Player A, but the server processes their dodge too late—resulting in a hit.
Players often adjust by anticipating threats, but this is a workaround, not a solution—especially for unexpected audio cues or unseen enemies.
Proposed Solution: Server-Side Timeline Shifting
The idea is for the server to maintain per-player timelines that shift based on each player’s latency. Key actions (like specialist enemy attacks) would be evaluated relative to when each player actually saw them, not just when they occurred on the server.
How it could work:
-
The server tracks each player’s latency (e.g., 0ms, 250ms, 1000ms).
-
For latency-sensitive events (specialist attacks), the server shifts the reaction window backward by the player’s latency.
-
In the hound example:
-
Player B’s dodge window would be shifted by 5 ticks (250ms).
-
If Player B dodges 5 ticks late (from the server’s perspective), it’s still counted as a success because, for them, it was on time.
-
Technical Considerations
-
Implementation Approaches:
-
Quantum Simulation: Simulating separate “shadow” versions of specialists for each player, each on a timeline offset by the player’s latency.
-
Buffered Processing: Keeping a buffer of up to 1000ms of game state to reevaluate collisions and inputs retroactively for high-latency players.
-
-
Scope:
-
This would apply only to specialist enemies (hounds, Trappers, etc.) and key interactive objects (e.g., terminals with timing-based inputs).
-
It would remain fully server-authoritative to prevent cheating.
-
-
Challenges:
-
Increased server load (memory and processing).
-
Potential engine-level changes.
-
Complexity in synchronizing multiple timelines.
-
Why Investigate This?
-
Fairness: Players with higher latency wouldn’t be unfairly penalized.
-
Consistency: Reacting to what you see (or hear) would work reliably, regardless of ping.
-
Innovation: This could set a new standard for PVE games, especially for titles like Darktide 2.
I understand this is not a simple feature and may require significant rework. However, I believe it’s worth exploring—even as a forward-looking concept for future projects.
Platform (Required):
PC - Steam