With my paternity leave approaching, I knew I’d have plenty of time focused on family (and much less sleep), but I also wanted to keep my creativity and problem-solving skills sharp. So I started a side project: Fractured Choices, a text-based RPG that merges classic storytelling with modern AI-driven mechanics.
I’ve always loved traditional text adventures—games where choices matter, where your decisions carve out a unique path. But I wanted to push the concept further. Instead of static, pre-written narratives, what if every choice dynamically influenced the world in a way that felt truly alive? That’s where AI comes in.
Bringing the Game to Life
To build Fractured Choices, I combined Bubble (a no-code platform) for UI, user accounts, and database management with OpenAI to power the storytelling. The AI dynamically generates immersive narratives, making every playthrough feel fresh.
I started simple:
- A branching RPG where every choice has real consequences
- AI-driven responses that shape the world based on user decisions
- A deep, evolving narrative with no predetermined script
From there, I kept expanding:
- Turn-based combat to add strategy and challenge
- Character progression so players can level up and adapt
- AI-generated images to visually enhance the experience
Learning to Work with OpenAI’s API
Integrating OpenAI wasn’t as simple as plugging in an API key and calling it a day. Getting an AI assistant to act as a true game master required a lot of trial, research, and error.
Some of the biggest challenges I faced included:
- Prompt Engineering – Finding the right way to structure inputs so the AI generates coherent and engaging story elements.
- Memory & Context Retention – Ensuring the AI could recall past decisions, character progress, and world states to make each playthrough feel persistent.
- Response Speed & Efficiency – Optimizing API calls to balance depth of responses with real-time performance.
- Handling Edge Cases – Preventing the AI from generating responses that break immersion, conflict with previous decisions, or feel too random.
After experimenting with different techniques, I eventually connected an OpenAI Assistant designed to act as a dynamic storyteller, reacting to choices, describing environments, and even generating unique dialogue for NPCs. Getting all of this working required a mix of API testing, iterating on conversation flows, and debugging response inconsistencies—but seeing it come to life made it all worth it.
Iterating & Improving
Like any product, this game has evolved through iteration and feedback. Early testers helped me refine:
- Combat mechanics to balance difficulty and engagement
- Pacing to make sure players stay immersed
- Persistent game progression, allowing players to return and continue their journey
Next, I’m focusing on:
- Multiplayer elements to let players interact in a shared world
- New character classes with unique abilities
- Deeper worldbuilding to create a more immersive experience
Why This Matters
Building a game while on paternity leave isn’t just about fun—it’s about keeping my creative muscles active in a way that complements my work as a product manager. Game design requires the same iterative thinking, user feedback loops, and problem-solving that go into building great products. It’s a different medium, but the mindset is the same.
The game is constantly evolving, and I love seeing how players shape their own stories within it. If you’re into text-based RPGs where your choices actually matter, I’d love for you to check it out and share your thoughts!
Want to check it out? Visit fracturedchoices.com and start your adventure.
Until next time,
Nealey