Knights & Dragons — Fantasy RPG Backend
Real-time multiplayer, matchmaking, leaderboards, chat — core backend for a title generating $1.6M+ revenue.
$1.6M+
revenue supported (KND)
4
engineers led
Global
live ops
The problem
Knights & Dragons (KND) is a live-service mobile RPG with paying players who expect low-latency matchmaking, consistent leaderboards, and reliable chat. Downtime directly translates into lost revenue.
Approach
- Designed matchmaking with skill-bucket queues and timeout relaxation for low wait times.
- Leaderboards via Redis sorted sets with write-behind persistence to PostgreSQL.
- Real-time chat and voice with presence tracking and backpressure.
- Partnered directly with GREE Japan in Tokyo on global live-ops alignment.
Key decisions
Redis sorted sets for leaderboards
Relational GROUP BY on every read was a non-starter. Sorted sets gave O(log N) rank queries and a clean write-behind path to persistence.
Skill-bucket matchmaking with relaxation
Strict skill matching causes long queues. Timeout-based bucket widening kept players in games without wrecking balance.
Trade-offs
- Eventual consistency on leaderboards — players accept a few seconds of lag; the DB thanks us.
Impact
- Knights & Dragons generated $1.6M+ revenue on the platform I maintained.
- Provided core backend for Crime City Action RPG as well.
- Shipped new titles (Passengers Games & Tooling) on Google Play with the same platform.
- On-site collaboration with GREE Japan in Tokyo — aligned global live-ops.
Let's build
Have a system that needs to scale — or stop breaking?
I work with a small number of teams each month on architecture reviews, scaling, and hands-on backend engineering. If that sounds like you, let's talk.