MeStory
The first ever game project I worked on was an app called MeStory.
Essentially, MeStory was like Twine, in that it was a node-based interactive story engine.
It also had a basic inventory system and a random number generation that writers could use to add a bit of RNG.

While I had originally been hired as one of the breakout writers for this branching narrative game engine, I pitched an idea to the producer of creating a guideline that other writers could use to add depth and complexity to their story.
Having been suitably impressed with the idea, he gave me the go-ahead and I built the prototype you see below (which I did by hand since there weren’t any readily available workflow programs back then).

The concept at its core was to create ‘paths’ for the branching narrative to follow, so that each scenario acted as a sort of narrative guide for each branch of the tree to take. Not only that, but laying it out visually like this gives writers and narrators a very clear view of the overall story progression.
I actually also ended up writing a story to go along with the prototype called ‘Locked In’

The story was actually pretty . . . interesting.
For all intense and purposes, this story takes place at the end of your life. You’ve been in some sort of accident which has paralyzed you completely, putting you in what is called a locked in syndrome (ergo the name). As you are wheeled into what is ostensibly going to be the last room you’ll ever be in, you begin to flashback to different periods of your life, starting with a deployment in military.
Over the course of 5 acts, the decisions you take have a direct affect on who spends your last moments with you. It could either be your full family, or just one of your children, or it could be nobody.
At the beginning of each act, the outcome of the decisions you’d taken in the previous act would be shown to you, as is indicated by the red nodes in the image above. These decisions would follow through as the story progressed, and sadly, there wasn’t really any proper scripting for the engine, so the pathing of the story had to account for what would otherwise be variables in any scripting language (which is why it seems REALLY complicated).
It was a difficult project, but I honestly learned quite a lot in terms of working towards implementing narrative, how to go about it, and how to design something so that other people could use.