HPL: Nyarlathotep Rising
All Projects

HPL: Nyarlathotep Rising

Unity PC Oct 2021

Built a visual narrative editor and runtime system that let writers create complex branching Lovecraftian storylines. Worked across the entire game—tools, UI, save systems, and more.

Tools Programmer Narrative Systems Full-Stack Game Dev Editor Extensions

The Game

HPL: Nyarlathotep Rising is a narrative adventure set in the Lovecraft universe—think “The Life and Suffering of Sir Brante” but with cosmic horror. Players make choices across multiple protagonists, with consequences that ripple through branching storylines.

A game like this lives or dies by its tooling. Writers need to craft complex narrative structures without waiting for programmers to implement every branch.

My Role

As Tools & Systems Programmer on a small team (3 programmers, 1 artist, 1 writer), I worked across the entire game. My primary focus was the narrative tooling, but I contributed to nearly every system.

What I Built

Visual Narrative Editor

The core authoring tool that let writers work independently:

  • Node-based editor for building branching dialogues visually
  • Condition system using simple expressions (no code required)
  • Preview mode for testing flows without launching the game
  • Variable tracking for sanity, relationships, inventory, and story flags

Writers could create and iterate on narrative content without programmer intervention.

Runtime System

The editor was only half the problem. I also built the runtime that:

  • Reads the editor’s output and executes narrative logic
  • Manages game state across multiple protagonists
  • Handles the flow between story segments, choices, and consequences

Save & Load

Narrative games need robust save systems—players expect to pick up exactly where they left off:

  • Full state serialization across all story variables
  • Multiple save slots with proper data isolation
  • Reliable loading that restores the exact game state

Everything Else

Small team, broad responsibilities:

  • Frontend UI implementation
  • Particle effects and visual polish
  • Audio integration
  • General gameplay systems

The Challenge

The hardest part wasn’t any single system—it was coordination. Multiple remote teams, each with their own pace and priorities. Changing requirements. Miscommunication across time zones.

The game shipped. The tools worked. Writers created the content they envisioned.

What I Learned

Building tools for non-programmers is its own skill. The reward isn’t just seeing your code work—it’s watching someone else’s workflow speed up because of something you built. Like sharing a bit of your knowledge as a programmer, every day.

Gallery