The systems behind SyncForge
Every multiplayer game faces the same impossible-looking problem: two players, on two machines, separated by real network delay, have to agree on one shared world. SyncForge lets you tune the network and watch exactly how — and where — that agreement breaks.
Tick rate & latency
The tick rate is how many times per second the world updates; the latency is how long a message takes to cross the wire. Because of latency, you always see other players a little in the past — how far is simply speed × latency.
The four ways to handle delay
- Naive — just show the last message you got. Everyone watches the past.
- Interpolation — smooth the motion so it never stutters. Fixes jitter, not lag.
- Prediction — guess where the other player is now. Perfect until they change direction, when your guess snaps back — the "rubber-banding" you feel in laggy games.
- Rollback — guess the other player's input, and when the real one arrives late, rewind and re-run the simulation from that moment. The screen snaps back to the truth, but until the news arrives it still showed a guess.
Why cheaters exist
If no one holds the one true copy of the world, a player's machine can claim anything — a headshot that never happened, a wall that isn't there — and no one can prove otherwise. That's why real games keep a server as the authority: the client asks, the server decides.
The unfixable exercise
Try setting authority to No server. The peers then run in lockstep: nobody moves on until every peer's input has arrived, so both screens show the same world and never drift apart. The cost is the wait (every move waits for the other peer's input, so everyone plays at the speed of the slowest link), and with no referee nobody checks the inputs. Spark & Anvil's offline "cartridge" worlds (a game you carry as a file) stay single-player or turn-based by choice: no servers to run, nothing to collect.
Where this idea comes from
Archers and rollback
In 2001 Paul Bettner and Mark Terrano described how Age of Empires kept thousands of units in step over slow dial-up modems: every computer runs the same simulation and only sends its players’ commands, so all machines stay identical. They called the talk “1500 Archers on a 28.8”.
One thing to hold: GGPO, a networking library written by Tony Cannon in the late 2000s for fighting games. It guesses the other player’s next input, shows the result at once, and quietly rewinds and replays if the guess was wrong.
Why it matters: Lockstep waits so every screen agrees; rollback predicts so nothing waits, and fixes mistakes afterwards. Both work around the same law: a message cannot arrive faster than the network carries it.
What we don’t know: Which feels better depends on the game. Rollback suits two-player fighting games; it is much harder when hundreds of things can change between frames.
Dates:
- 2001 “1500 Archers on a 28.8” is presented at GDC.
- 2019 GGPO is released as open source.