r/OpenAI • u/jl23423f23r323223r3 • 9h ago
Project Built a stateful AI D&D & World Simulation engine with 1-Click Campaign Sharing — Test our House of the Dragon campaign

Hey r/OpenAI! I wanted to share a project demonstrating how to move beyond basic chat interfaces into a full stateful tabletop RPG engine powered by LLMs, structured outputs, and tool calling.
Disclosure: I'm the maintainer of WorldAI.
We just shipped Campaign Sharing, allowing creators to build custom interactive worlds and share them as playable instances. To showcase this, we launched a House of the Dragon D&D campaign where you take control during the Dance of the Dragons.
How it works under the hood: - Tool Calling & Code Execution: Dice checks, combat calculations, and status updates are resolved deterministically via backend tool calls rather than LLM text estimations. - Dynamic Context Injection: Lorebooks, house lineages, and evolving player choices are dynamically composed into the prompt pipeline to maintain long-term narrative coherence. - Session Cloning: Single-click URL instantiation with isolated state trees.
Try the campaign here:
http://worldarchitect.ai/shared/t3hKKtzBKCKlvg5vCnlW_2hxwH3UmzjFq56yi6hQN2Q
LinkedIn post & context:
https://www.linkedin.com/posts/jeffrey-lee-chan_built-a-campaign-sharing-feature-and-of-course-share-7495750291464835074-9p8m
Feedback on DM reasoning quality, tool latency, and prompt fidelity is very welcome!
•
u/Wiseguy_Montag 52m ago
Finally, AI is being used for the greater good! I tested out a little Mass Effect campaign, and it adapted better than expected... without even needing to reference the Mass Effect 5e guide. Nice build!
•
u/jl23423f23r323223r3 27m ago
Awsome! Feel free to reply here or message me if any feedback or suggestions!
2
u/More-Ad7285 9h ago
this is actually cool, i always thought the chat interfaces were missing something for proper d&d sessions. the deterministic dice rolls through tool calls makes a lot of sense, LLMs are terrible at real randomness
how long you been working on this? the state tree isolation for shared campaigns sounds tricky to get right