Work · Games infrastructure / Multiplayer platform
Matchdock
Matchmaking and dedicated game servers, without the ops team.
What it is
Matchdock pairs players, starts a dedicated game server for every match in an isolated container, and records the result only that server can report. Ratings, leagues, leaderboards and match history come with it; a Unity SDK and a plain HTTP API connect any engine.
Why it needed to exist
A real-time 1v1 game needs fair matchmaking, a dedicated server per match and results nobody can fake. After Unity retired Multiplay hosting, the choice was another vendor's roadmap or an ops team a small studio does not have.
What Idealink did
Idealink designed and built Matchdock for DoGoal, moved the game's matches onto it in place of Unity Multiplay, and opened it to other studios in early access with the EU region live.
- Status
- Live
- Relationship
- Idealink venture
- Industry
- Game infrastructure
- Period
- 2026 — early access
- Platform
- Backend · Unity SDK · HTTP API · console
- Idealink role
- Product, platform engineering, SDKs, fleet operations


Thesis
When Unity retired Multiplay hosting, DoGoal needed a new home for its matches. Instead of moving to the next vendor, Idealink built the platform — and made it a product other studios can use.
01
Anatomy of a match
A ranked 1v1 in the EU region, from tap to result.
0.0 s · Two players tap Play
The SDK signs the device in and joins the ranked queue.
0.6 s · Match found
Same queue and region, ratings within ±100; the window widens the longer someone waits.
1.1 s · Dedicated server is up
A fresh server in an isolated container, on its own UDP port.
1.3 s · Players admitted
The server verifies each join token; only the players of this match get in.
3 min · Result accepted
3–2, ratings +12 / −12, and the server is removed.
02
Measured
As published on matchdock.io, from the platform's own load test and fleet.
- Queue to match
- ~1 s from two players queueing to a match
- Match to server
- ~1 s more until the dedicated server is listening
- Load test
- 200 players matched in under 5 seconds
- Container privileges
- 0 Linux capabilities inside a game server container
03
Results nobody can fake
Every match gets its own container: no capabilities, a read-only filesystem, an unprivileged user, hard CPU and memory limits, only the match port exposed. A build cannot touch anything else, and nothing else can touch it.
Only the dedicated server can report a result, and reporting is idempotent. Quitters lose by forfeit, crashes cost nobody rating, and every match keeps a full timeline. Elo with placement matches, league tiers, leaderboards and match history are part of the platform.
04
A few lines on each side
The Unity SDK: the client signs in, queues and connects in one call; the dedicated server admits its players and reports the result. Unity 2021.3 and newer, an optional Mirror authenticator, a plain HTTP API underneath.

05
Boring on purpose
Built to launch our own game on, so it had to handle the unglamorous parts.
- Rolling builds: new matches start on the new build; matches in progress finish on the one they started with.
- Fleet health: nodes report in every few seconds; unhealthy or draining nodes stop receiving matches, and lost nodes fail their sessions cleanly.
- Region aware: matches land in the players' region when there is room, and fall back instead of failing.
- Observable: Prometheus metrics for queues, waits, outcomes, fleet and API latency, with alerts for what matters at 3 a.m.
Outcome
Where it stands
DoGoal's matches run on Matchdock in place of Unity Multiplay. The platform is in early access for other studios, with the EU region live.
Stack and capabilities
Only what mattered
- Isolated Linux containers
- Unity SDK (2021.3+)
- Mirror authenticator
- HTTP API
- Elo ratings
- Prometheus