Adventure Games and Interactive Fiction

Customizing Scenes

by Gamefic on February 1, 2017

The latest updates to Gamefic include a new scene architecture to simplify customization. Authors can specify code blocks for the scene's beginning and ending, customize the prompt, and more. Read more

Gamefic 1.2 and Upcoming Changes

by Gamefic on December 16, 2016

Version 1.2 of Gamefic and the SDK are on RubyGems. This release features new versions of the CLI executables with inline help and improved error handling. Read more

Dynamic Entities and Subplots

by Gamefic on November 27, 2016

A while back I quietly introduced an improvement to dynamic entities. It's always been possible to generate entities at runtime, but for a long time they weren't compatible with snapshots. In other words, any entity created at runtime would be lost in an undo or restore. Gamefic 1.0 was the first release to handle dynamic entities properly in snapshots. The latest version extends this capability with a new feature called subplots. Read more

Testing Interactive Fiction with Automated Gameplay

by Gamefic on August 1, 2016

I've been experimenting with player bots for interactive fiction. Besides being a fun exercise, I thought they might be a useful debugging tool. I even thought they might be able to prove the "validity" of a story model, e.g., that the story can never be played into an unfinishable state. I'm not sure that's possible with a non-trivial story, but I figured I'd give it a shot. Read more

Dynamic Conjugation

by Gamefic on April 28, 2016

The original version of the standard library was hardcoded to use the second person when referring to the player's character, e.g., "You go north." Not anymore. Scripts can access an object that defines grammar rules for the PC through the you method. Read more

Haul and Pull

by Gamefic on April 18, 2016

The Gamefic project went through a major overhaul this weekend. Most of these changes have been in development for months. Saturday I started merging them into the master branch on the GitHub repo. Read more

Another Weekend, Another Refactoring

by Gamefic on June 28, 2015

The Director class that handles actions just went through a major overhaul. Most of the changes are internal, so the impact on plot scripts should be minimal. Among the changes: Read more

Reevaluating the DSL

by Gamefic on June 21, 2015

This weekend I pushed a new repo branch that includes a major refactoring of the plot DSL. The syntax for plot scripts is largely unchanged, but the new code behind it uses a new module called the Stage. I based it on the Clean Room pattern described in Metaprogramming Ruby and further developed by Seth Vargo. Including the Stage module can make any class capable of loading code from a Ruby DSL. Read more

Parsing Questions

by Gamefic on June 7, 2015

Carolyn VanEseltine's post about parser tutorials inspired me to think about what to do when players ask questions in parser games. From her post: Read more