Building a narrative 2D puzzle game: Process, Puzzles, and Play

Over the past few weeks, I’ve been working on two interconnected projects: Gemseeker and A Binding Unmade. Both sit somewhere between visual novel storytelling and light puzzle gameplay, and both are part of a broader effort to explore interactive storytelling in a way that feels manageable, focused, and creatively satisfying. As a designer, my interest has always been with narrative 2D puzzle game development and how that genre, in my opinion, really lets art and story take center stage.

I’ll mention here that, like many of my projects, both Gemseeker and A Binding Unmade began as literature. A novel with the working title, ‘A Miserable Place to be Dead’, set in my fictional universe of the Crosshollows, acts as a bridge and prequel to these stories.

This post is a starting point—a look at my current process, how these projects are taking shape, and how I’m thinking about scope, design, and player experience.

The initial setup for this project began with UI and character artwork, so I have something that Ink can populate within Godot.

Why These Projects Exist

After finishing a short visual novel project called ‘Something by the River’, I wanted to expand and pivot back to the world of the Crosshollows.

Instead of building something large and complex, I wanted to venture into narrative 2D puzzle game development. I had a few parameters:

  • Keep the scope tight and achievable
  • Focus on a single compelling gameplay loop
  • Combine narrative with simple, satisfying puzzle mechanics
  • Actually finish something polished

Gemseeker and A Binding Unmade are my attempt to strike that balance.

The Core Idea

At a high level, both projects revolve around:

  • Narrative-driven progression
  • Exploration of contained environments
  • Puzzle interactions that unlock story beats

Rather than overwhelming the player with systems, the goal is to create a guided experience. You could describe this as closer to a curated sequence of moments than a sprawling game. I love the Mystery Legends series of Hidden Object games (Phantom of the Opera remains my favourite HOG of all time), and one day I hope to create something that matches it scope and grandeur. For now, though, I have to be very meaningful in what I create.

Designing the Player Flow

One of the first things I worked on was mapping out the player experience from start to finish.

A UX map demonstrating a flow chart for a short narrative game.

This helped answer key questions early:

  • Where does the player start?
  • What information do they have?
  • What is the next meaningful action?
  • How do puzzles connect to narrative progression?

By sketching this out, I could avoid one of the biggest traps in small projects: feature creep without direction.

Puzzle Design Approach

The puzzles in Gemseeker are intentionally simple—but not trivial.

My current approach is:

  • Each puzzle should have a clear goal
  • The player should have enough context to solve it without guessing
  • Solutions should feel logical in hindsight
  • Puzzles should reinforce the world (not feel abstract or disconnected)

For example:

  • A logic-based interaction tied to the setting
  • A small environmental puzzle that unlocks progression
  • A narrative clue that informs gameplay

Narrative Integration

Both projects are heavily narrative-driven. Gemseeker most definitely features a more complex story and many characters that have long exchanges. A Binding Unmade is quieter, involving:

  • Short, purposeful exchanges
  • Environmental storytelling where possible
  • Dialogue that supports player action

Because these are interactive experiences, the story needs to move with the player—not ahead of them.

An example of the button designs for ‘A Binding Unmade’. For me, UI is crucial in establishing art direction.

Keeping Scope Under Control

One of the biggest lessons from my first draft of Gemseeker’s script is that scope can quietly spiral.

So for both projects, I’m actively:

  • Limiting the number of locations
  • Reducing the number of mechanics
  • Reusing systems where possible
  • Cutting ideas that don’t serve the core experience

If something doesn’t directly improve the player experience, it’s a candidate for removal.

Tools and Workflow

These projects are being built using:

  • Godot for the game framework
  • Ink for narrative scripting (using the Inkle writer)
  • A modular UI system for dialogue and interaction

This setup allows me to:

  • Iterate quickly on writing
  • Separate logic from presentation
  • Keep the project flexible as ideas evolve
An example of my components for Gemseeker. Since I’m working alone, my Design System doesn’t require documentation (or organisation!)

What Comes Next

Right now, I’m focusing on:

  • Finalising the core gameplay loop
  • Implementing key puzzles
  • Refining the UX flow
  • Polishing the narrative beats

Once those are locked in, I’ll move into:

  • Visual polish
  • Audio
  • Playtesting and iteration

Final Thoughts

This is very much a process-driven project.

My goal is to create a finished game and create a workflow that I can reuse and refine for future projects. Earning a few bucks would be nice too (or even just getting more people interested in my work).

If this goes well, it becomes a foundation for larger, more ambitious ideas down the track.