Transport and Replication

Authoritative
Networking

A UDP based transport with delta compressed state, client prediction, and optional rollback. Built on top of a deterministic simulation so the server can trust what it sees.

The transport in one paragraph

The server owns the simulation. Each tick it produces a snapshot of relevant state for every client and delta compresses it against the last snapshot the client acknowledged. Clients apply snapshots, predict forward using their own inputs, and reconcile whenever the server disagrees. This is the standard model. Our contribution is that we make it fast and predictable rather than clever.

Three channels run over a single UDP connection. A reliable ordered channel for events like spawn and despawn. An unreliable delta channel for state snapshots. A reliable unordered channel for RPCs. The congestion controller is CUBIC style with a bandwidth estimator, and packets can optionally carry forward error correction to survive lossy mobile links.

Rollback netcode is a second mode, not a different product. Flip it on for fighting, sports, and racing titles, and clients roll back up to eight frames and resimulate using the deterministic physics core. The transport itself does not change.

Server rack infrastructure
Transport Features

What is in the box

Snapshots

Delta compressed state

Each snapshot references the last acknowledged baseline. Quantized fields use tight integer encodings and only changed fields hit the wire. In a 128 player shooter this drops state bandwidth by roughly eighty percent compared to full snapshots.

  • Per field quantization with compile time config
  • Relevance filtering per client
  • Priority scheduling for tight bandwidth
  • Snapshot history with jitter buffer
Prediction

Client prediction and reconciliation

The client simulates the local player against its own inputs and reconciles when a server snapshot proves it wrong. Because the physics solver is deterministic, reconciliation is a replay of stored inputs from the divergent tick forward, not a heuristic blend.

  • Input buffer with acknowledgement window
  • Lag compensation on server hit scans
  • Error cap with snap under threshold
  • Smoothed correction for remote peers
Rollback

Optional rollback mode

Switch the transport into rollback mode and clients roll back up to eight frames on a late input, then resimulate forward using the deterministic physics core. Ideal for fighting games, racing, and any title where every input frame is visible to the player.

  • Eight frame rollback window
  • Input prediction with drop recovery
  • State serialization under 1 ms for 32 entities
  • Visual desync overlay for tuning
Connectivity

NAT traversal and relays

Automatic STUN plus TURN with our managed relay fleet included in the license. When peer to peer fails, the relay takes over without the client noticing. The connection API is the same either way.

  • Managed global relay mesh
  • STUN and TURN out of the box
  • IPv6 and dual stack
  • DDoS absorbing ingress at the relay layer

Opening a session

A client joining a server, with prediction on and relay fallback automatic:

C#
// Configure the transport once per process
Net.Configure(new NetConfig {
    TickRate        = 128,                       // server Hz
    PredictionMode  = Prediction.ClientAuthority,
    Rollback        = false,                     // set true for fighting games
    Relay           = RelayPolicy.AutoFallback
});

// Join a session discovered by the matchmaker
var session = await Net.Connect("crowe://us-east/match/ABC123");

session.OnSnapshotReceived += snap => {
    Scene.ApplySnapshot(snap);
};

session.OnDesync += report => {
    Debug.LogWarning($"desync at tick {report.Tick}, correcting {report.EntityCount} entities");
};

Wire budget

A 128 player battle royale, medium action density, clients inside a 400 meter relevance radius.

128Players per server
42 KB/sDownstream per client
<5msMedian relay RTT
8Rollback frame window
Applications

Where teams run it

Competitive shooters

128 Hz server authority, lag compensation on hit scans, and a snapshot priority scheduler that protects headshot accuracy when bandwidth drops.

Fighting games

Rollback mode on, deterministic physics core underneath. Clean frame one reads even over a mobile link.

Open world coop

Relevance filtering keeps bandwidth constant regardless of how large the world grows. Players only pay for the area they care about.

Related

Adjacent material

Connect a client in an afternoon

The SDK includes a 16 player FPS sample and a fighting game sample with rollback on. Both run against our hosted dev relay.