RFDGameStudio
One shared TypeScript engine behind every game in the arcade.
The idea
Most game engines are built for one game. RFDGameStudio is a studio — a set of shared primitives that compounds across games rather than getting rewritten from scratch every time. Every mechanic that survives production in one game gets promoted to a primitive available to every game that comes after. Nothing is abstracted speculatively.
The engine
The engine is TypeScript-native. Per ADR-013, TypeScript is the studio default and Lua is retired as a mandatory layer — one runtime drives every game in the arcade, and the logic is never duplicated.
ts/src/games/— each game’s logic and rendering, TypeScript end to endts/src/engine/shared/— primitives promoted only after a mechanic survives a shipped game
How it’s built
Every feature starts as a directive:
- Scope defined — files listed, read-only files named explicitly
- Test anchors written — behavior specified before implementation
- Agent implements
- Floor verified — raw pytest/vitest output only, never agent summaries
- Phase certified — floor locked, next phase begins
No phase advances without a passing floor. No exceptions.
The MCP server
The studio runs an MCP server, so games can be loaded, inspected and tested live while they run. The studio is designed to be interrogated, not just played.
GitHub: RFDGameStudio
More from the studio
How games get in
From a Google AI Studio demo to the shared engine, and a bug found by playing, not by tests.
Studio Status
Honest current status of each active RFDGameStudio thread: what is live, in progress, designed or complete, with a breakdown page for every …
Studio tools
Character Viewer
Assemble and preview creature designs — live shape controls, side-by-side comparison, and exportable configs. A sandbox tool, not a …
Technique Showcase
Side-by-side comparison of all Paper Doll rendering techniques through the real production composer. Each technique is an independent panel …
Role Symbol Viewer
Preview of the shared person generator v1 — all five archetypal role symbols (ruler, warrior, cleric, merchant, scholar) rendered as native …