Multiplayer netcode for
large-scale games.

Turbine is our real-time multiplayer platform for large-scale games of any genre: battle royales, shared worlds, strategy, sports, racing and live social spaces. It keeps 128 players in one simulation in sync and fair today, streams each player exactly what matters to them, and runs across regions. We're packaging it as an SDK: a framework studios build their own servers with, getting every feature behind Top Blasters' netcode. We don't sell hosting.

Production numbers

General-purpose frameworks sync a shared state object and leave the hard problems of scale to each team. Turbine solves them in the platform: fairness under latency, bandwidth at high player counts, and isolation between matches.

128
Players in one simulation
Live in production since Oct 2026
30 Hz
Authoritative tick
Physics, AI, vehicles, objectives
400 ms
Max rewind
From 1.2 s of per-entity history
38 B
Per player, per frame
Custom binary codec, no JSON

Genres Turbine supports

The problems Turbine solves are the same wherever many players share one world: who sees what, who acted first, and how to keep it fair for the player on a bad connection.

Battle royale & extraction

Big lobbies on one map

Interest management and per-player budgets keep bandwidth flat as the player count climbs, and server authority keeps loot and eliminations honest.

Shared & persistent worlds

Crowds, zones and events

Relevance-scored streaming lets dense towns, raids and live events run in one simulation instead of sharding players apart.

Strategy & simulation

Large unit counts

Compact binary rows and changed-only updates are designed to carry many moving units, and server authority removes map hacks.

Sports & racing

Fair collisions and contact

Lag-compensated judgment and client prediction make collisions, tackles and photo finishes agree for every player.

Action & combat

Lag-compensated combat

Rewind-based hit judgment for projectiles, melee and abilities, not just bullets.

Social & live spaces

Large live events

Datagram transport and priority streaming keep large gatherings smooth in a browser, with no install.

How each 30 Hz server tick works

01 CLIENTInput Sample + predictlocally, no wait 02 WIRETransport QUIC datagramsWebSocket lane 03 SERVERSimulate Fixed-tick authorityphysics, AI, rules 04 SERVERJudge Rewind + resolvesigned outcomes 05 SERVER TO CLIENTStream Prioritised, budgetedsmooth interpolation RECONCILE, CLIENT CORRECTS PREDICTION AGAINST SERVER TRUTH

Server-authoritative simulation

Every action that matters is decided on the server. Clients run the same shared simulation to respond instantly, then reconcile against the authoritative result, in any genre.

  • Fixed tick on a deadline grid, catching up with bounded sub-steps after a stall instead of drifting
  • Shared simulation code: movement, physics and rules are one implementation on client and server
  • Server-side validation of movement, action rates and outcomes, with behavioural telemetry
  • Signed, auditable match records for rankings, tournaments and anything of value

Lag compensation

Remote entities are drawn slightly in the past so motion is smooth. Turbine keeps a rolling history of every body and rewinds the world to the acting player's view before resolving the action, whether it's a shot, a swing, a tackle or a spell.

History
1,200 ms

Per-entity position history kept on the server for everything in the simulation.

Rewind window
Up to 400 ms

Bounded so a high-latency player can't reach back further than is fair to everyone else.

Round-trip time
Server-measured

Latency is measured by the server, never reported by the client, so it can't be spoofed.

Interest management and priority

At scale, nobody needs the whole world at full rate. Turbine scores relevance per viewer and fills each player's packet in priority order, inside a per-player byte budget, so cost per player stays flat as the crowd grows.

  • Area-of-interest radius tuned per world, so distant entities cost little
  • Priority ordering: nearby action, your team and objectives before background traffic
  • Per-player byte budgets keep every stream inside the player's real link
  • Thinned ticks: an update a busy frame couldn't carry rides the next one, never dropped

Visualisation: 128 simulated players. The highlighted player receives full-rate updates only for entities inside their relevance ring.

Binary wire format

State travels in a custom binary codec shared by client and server. There is no text serialisation anywhere in the hot path.

  • 38 bytes per player row and 50 bytes per vehicle row in production
  • Rows sent only for entities that changed
  • Keyframes and freshness markers, so a lost datagram never leaves stale state behind
  • Static assets precompressed with Brotli once at build, not per connection
// one player row on the wire, 38 bytes
struct PlayerRow {
  id        u16   // slot
  pos       f32[3] // world position
  vel       i16[3] // quantised velocity
  yaw/pitch u16[2] // orientation
  state     u32   // pose, action, flags
  hp/shield u8[2]
  seq       u16   // last input acknowledged
}
// 32 players in range, 38 B each, 30 Hz: about 36 KB/s
// before interest culling and priority budgets

Field layout shown to illustrate the row size; the production layout is proprietary.

Datagram and WebSocket transport

Turbine powers Top Blasters, to our knowledge the first game in history to run 128-player matches over WebTransport datagrams in production: datagrams since 6 Oct 2026, 128-player Conquest since 26 Oct 2026. Ordered streams deliver in sequence, so one lost packet stalls everything behind it. Turbine sends state as unreliable QUIC datagrams over WebTransport, keeps a reliable WebSocket lane for events that must arrive, and falls back automatically for every browser and network.

Live, 6 Oct 2026

Datagram lane

WebTransport over HTTP/3 (QUIC) for per-tick state, served by a dedicated datagram sidecar beside each host and admitted against its own CPU budget. Live on desktop Chrome, Edge, Brave and Firefox.

Live, every browser

Reliable lane + fallback

WebSocket carries must-arrive events and serves as the full transport wherever datagrams aren't available. Switch-over is automatic and invisible to the player.

WebTransport reached Baseline across major browsers when Safari 26.4 shipped it on 24 Mar 2026 (web-features explorer); mobile datagram rollout is next.

Isolated server hosts

Each match or world shard runs in its own isolated host process with its own simulation, AI and connections. A coordinator handles sign-in, lobbies and matchmaking and never runs gameplay. The SDK ships this host model, so you get the same isolation on your own machines.

  • 13 isolated hosts per 16-vCPU machine in Top Blasters production
  • Navigation and world warm-up done at boot, so the first session is as fast as the hundredth
  • Staged, gated deploys that never interrupt a session in progress
COORDINATOR Sign-in, lobby, matchmaking HOST 1HOST 2HOST 3HOST 4TO 13 fixed tickfixed tickfixed tickfixed tick AIAIAIAI socketssocketssocketssockets datagramsdatagramsdatagramsdatagrams

Two live regions, one account database

In Top Blasters, players are matched to the region nearest them. Every region runs the identical build and security floor. Regional servers link to the home region over mutual TLS, and one home region keeps the single authoritative record of accounts and items.

Live, home region

West

Sign-in, lobby and the authoritative record, plus hosts for players in the Americas and Europe.

Live, regional

East

Full feature parity for players in Asia-Pacific, with everything of value settled at home.

Next

More regions

The region model adds regions without a second source of truth. The SDK includes it, so studios can run as many regions as they choose on their own servers.

Turbine compared with Colyseus

Colyseus is a respected open-source multiplayer framework for Node.js and the best-known reference in this space. It handles rooms, matchmaking and state sync well. Turbine is built for what comes next: games where very large crowds share one simulation, with the hard systems of scale already built in.

CapabilityTurbineColyseus
FocusLarge-scale real-time games of any genreRoom-based multiplayer for any genre
Server authorityBuilt in, with signed outcomesBuilt in
Lag-compensated actionsBuilt in: rewind for projectiles, melee and abilitiesNot part of the framework; each game writes its own
Per-player priority + byte budgetBuilt inState views filter what each client sees; no per-player byte budget
Unreliable datagram transportWebTransport in production since Oct 2026, the first at 128 players to our knowledgeWebTransport transport offered as experimental
Proven size of one simulation128 players live in productionNo per-room figure published; scaling quoted as 10 to 10,000+ total CCU
Server-side AI agentsNavigation, squads, drivers and pilotsNot included
Multi-region with one source of truthLive: West + EastColyseus Cloud in 32 locations; cross-region game state left to you
Licence and pricingProprietary SDK in development; you run it on your own servers, with no hosting fees to usMIT open source, free to self-host; Colyseus Cloud from $15/mo
Engine SDKsWeb-first; more engines on the roadmapSDKs for many engines, a real strength

Colyseus facts from colyseus.io, its pricing page and transport documentation, read 2 Nov 2026. Colyseus is a trademark of its owners and is named only for comparison.

Turbine SDK and Platform API

Turbine is a framework, not a hosting service. Studios license the SDK, deploy it on their own servers or any cloud they choose, and get every feature behind Top Blasters' netcode. The goal is a better product than general-purpose frameworks at a lower total cost, because the systems you'd otherwise pay engineers to build are already in the box.

In development

Turbine SDK

Authoritative rooms, shared simulation, lag compensation, interest management, binary codecs and dual transport, as a library you run anywhere.

In development

Your servers, your cloud

Run Turbine on bare metal or any provider you already use. The SDK includes isolated hosts, matchmaking, multi-region routing and staged deploys. We never host or operate your servers.

In development

Platform API

Accounts, parties, telemetry, anti-cheat and signed match records as modules you deploy with your servers, so a small team can operate a large live game.

Why Turbine costs less to build on

  • No team-months spent writing lag compensation, interest management or a binary protocol
  • Per-player byte budgets keep bandwidth bills flat as player counts grow
  • Isolated hosts pack more sessions onto each machine without one stalling another
  • Server-side AI fills sessions, so games launch full instead of empty
// Turbine SDK design preview
import { World, lagComp } from "@liquidlabs/turbine";

export class Arena extends World {
  tickRate = 30;
  maxPlayers = 128;
  interest = { radius: 150, budgetBytes: 1400 };

  onAction(player, action) {
    const hit = lagComp.rewind(this, player, action);
    if (hit) this.resolve(hit.target, action);
  }
}

Illustrative API design. The SDK is in development; names and licensing will be announced.

Build your large-scale game on Turbine.

We're onboarding a small group of studios and enterprise partners ahead of the SDK launch. Early partners shape the API.

Reference deployment: Turbine runs 128-player matches on our own servers in production today in Top Blasters, our in-house title.