Skip to main content
JA
← All work

01 · CASE STUDY · ALGOWORKS

An AI game master that improvises, and plays fair.

PRODUCT
AI RPG Hub
ROLE
Principal Software Engineer
PLATFORMS
macOS, Windows, web
STACK
React, Tailwind, Testing Library, Storybook, Electron

The problem

Traditional role-playing games are written in advance: fixed quests, fixed dialogue, fixed endings. Language models can improvise endlessly, but on their own they forget details and bend the rules, losing track of a player's inventory or fudging a dice roll. Players want both: open-ended stories and a game that plays fair.

The approach

Split the work. The AI handles what it's good at, like narration, characters, and dialogue. A conventional rules engine handles what has to be exact, like stats, inventory, and dice. A shared knowledge store keeps every player's world consistent between sessions.

What I built

  1. Led the frontend team and built AI RPG Hub, a subscription AI game master for macOS, Windows, and web.
  2. Developed a custom input language system.
  3. Developed custom artifacts for the AI to interact with on the frontend.
  4. Developed in-depth custom interactions that NPCs and users can have with each other.
  5. Developed the testing methodologies for the frontend.
  6. Paired frontier LLMs with deterministic game logic for stats, inventory, and dice mechanics, so the storytelling is open-ended and the rules stay reliable.
  7. Co-invented the just-in-time engine behind it, now U.S. Patent No. 12,330,066.

The outcome

AI RPG Hub launched as a subscription product on macOS, Windows, and web. The engine underneath was granted a U.S. patent in June 2025 and now also powers the IntelliCopilot platforms.

Try the dice roller

A dice roller from AI RPG Hub: choose your dice, roll them, and see the odds of every outcome. It opens on the AI RPG Hub site.

Open the dice roller (opens in a new tab)
The AI RPG Hub dice roller: a column of dice to choose from, a Roll Dice button, the selected dice shown as 4D6 with advantage and keep 3, and a table of the probability of each outcome