Blog

  • A Bestiary of Functions for Systems Designers

    Whether your game surfaces its numbers to the player or not, odds are it has underlying systems that rely on them, and you use functions to determine how those numbers affect each other. In other words, a mathematical function is usually at the core of the answer to a bunch of frequent game design questions.

  • GDC 2018 Post Roundup

    This year, I took some time to better articulate some criticisms of GDC that I’ve hinted at on Twitter and elsewhere. This took shape as five posts about GDC:

    If you’ve written something about an issue that I’ve missed or wasn’t able to address, contact me and I’ll add it to this list.

  • GDC 2018: UBM Just Doesn't Care

    This is part five of a series articulating criticism of GDC, in the week leading up to it. I know several people who attend GDC, and I don’t begrudge anyone for attending, speaking, or otherwise working with GDC; you do what you have to do, and make the value evaluations that you need to. But since I’m not attending this year, I thought I’d take the opportunity to speak frankly about the harmful practices UBM engages in and their negative impact on the industry.

  • GDC 2018: How GDC Exploits Industry Veteran and Novices Alike With Shady Compensation Schemes

    This is part four of a series articulating criticism of GDC, in the week leading up to it. I know several people who attend GDC, and I don’t begrudge anyone for attending, speaking, or otherwise working with GDC; you do what you have to do, and make the value evaluations that you need to. But since I’m not attending this year, I thought I’d take the opportunity to speak frankly about the harmful practices UBM engages in and their negative impact on the industry.

  • GDC 2018: Hosting GDC in San Francisco Hurts Marginalized Devs

    This is part three of a series articulating criticism of GDC, in the week leading up to it. I know several people who attend GDC, and I don’t begrudge anyone for attending, speaking, or otherwise working with GDC; you do what you have to do, and make the value evaluations that you need to. But since I’m not attending this year, I thought I’d take the opportunity to speak frankly about the harmful practices UBM engages in and their negative impact on the industry.

  • GDC 2018: On Class & Passes

    This is part two of a series articulating criticism of GDC, in the week leading up to it. I know several people who attend GDC, and I don’t begrudge anyone for attending, speaking, or otherwise working with GDC; you do what you have to do, and make the value evaluations that you need to. But since I’m not attending this year, I thought I’d take the opportunity to speak frankly about the harmful practices UBM promotes and their negative impact on the industry.

  • GDC 2018: How the "Advocacy Track" Fails Devs

    This is part one of a series articulating criticism of GDC, in the week leading up to it. I know several people who attend GDC, and I don’t begrudge anyone for attending, speaking, or otherwise working with GDC; you do what you have to do, and make the value evaluations that you need to. But since I’m not attending this year, I thought I’d take the opportunity to speak frankly about the harmful practices UBM promotes and their negative impact on the industry.

  • Writing for Where the Water Tastes Like Wine

    Last year, I wrote for Dim Bulb games’ Where the Water Tastes Like Wine, which came out this Wednesday (February 28th). It’s a narrative game built as an anthology, in which you travel the continental United States, carrying stories across the land. It’s massive; there are over 200 “vignettes” (small stories you collect as you cross the land), of which I wrote about 30, and sixteen major characters you can sit down with and swap stories at the campfire.

    So this is about my relatively small involvement with this huge game. Two caveats: I didn’t have a high-level view of the process at all, and I was really focused on making my own narrow work as good as it could be.

    Also, this post contains mild spoilers for some of the vignettes I wrote.

  • New Release: The Rats in the Bulkheads

    For this year’s ECTOCOMP, I’ve written a short horror story about the rats, the human mind, and some of the many ways to die in space.

    You can get it right now from Itch.io.

  • Attempted: Building a general-purpose QBN system

    The term quality-based narrative (QBN) refers to a way of building interactive fiction most familiar from Failbetter Games’ Fallen London, as well as other games built on their now-defunct StoryNexus platform. Voyageur is also built on this model. Earlier this year, I worked on trying to build a general-purpose QBN tool, working off of the Voyageur codebase, but I didn’t get very far; this is basically a list of issues I encountered, as a sort of caution to people thinking of implementing those kinds of systems.

  • Towards a Theory of Parserless Parser Interfaces

    With the release of Vorple for Glulx, now is a great time to think about what I’m calling parseless parser games: Text games that use the world model and mechanical tradition of parser games, but don’t actually have a parser interface. The most prominent recent example would be Robin Johnson’s Detectiveland.

    This is sort of a theoretical exploration of how to build interfaces to interact with the traditional parser world model (rooms, point of view character, and of course “medium-sized dry goods” as interactive objects). Most of this involves looking at the history of graphical adventure games, which diverged pretty directly from parser interfaces and into point-and-click ones. I’m trying to produce a taxonomy of how those interfaces operate and what their pros and cons are, for people who are looking at building on Vorple to produce extensions or games that use this sort of interaction.

  • Astonishingly Rapid Game Prototyping with Inform 7

    Emily Short recently wrote a post about what reasons there are for writing a parser game in AD 2017. In the comments, I added:

    For me there’s another reason to make parser games, and specifically for using Inform 7: It’s a fantastic platform for experimental games. if I just have an idea that I want to explore or play around with, as long as it’s narrative and turn-based, I’m very likely to reach for I7 as a tool.

    Using I7 cuts away 90% of the boilerplate labor associated with game development: You don’t have to think about or make UI (it’s text input), UX (it’s bad), assets (there are none). You write almost no boilerplate code; everything you write is doing work in defining mechanics, narrative, or environment. I really think more game designers should learn I7 because of its value in that role; even if the thing you make using it isn’t the final form of what you’re making. The 0 to 60 on it is just incredible compared to any other engine or game development tool.

    Inform 7, if you’re unfamiliar, is a system for writing parser interactive fiction that uses a purpose-built domain-specific language that somewhat resembles natural English. It’s probably my favourite game development environment to work on, for a lot of reasons.

  • A Don't Mind My Apocalypse Head Postmortem; or: Designing a Parser Game Around Specific Interaction, Multiple Endings, and Protagonist Interiority

    March’s patreon project, Don’t Mind my Apocalypse Head, was a short parser game written around a fairly disturbing dream I had. If you haven’t played it, it’s fairly short and I suggest you check it out before reading on.

  • New Release: Don't Mind My Apocalypse Head

    March’s Patreon project is out now for everybody on https://bonsequitur.itch.io/dont-mind-my-apocalypse-head. It’s a horror story about awkward social situations, extra appendages, and the recurring end of the world.

    Thanks to all my Patreon supporters! If you want to help me keep doing this (and get early access to projects along with source code), the Patreon page is this way.

  • Help me write more IF!

    In 2017, with the release of Voyageur, I want to get back to splitting my time between different projects. And, in particular, I want to do more noncommercial work: more short free IF, more reviews and criticism of noncommercial IF, more games writing that doesn’t find a home in commercial outlets, and more altgame experiments like Storytelling Skeletons.

  • Voyageur is out now!

    Voyageur, the game I’ve been working on for the past year, has now launched. Read more about it at its website, or you can get it from Google Play or the App Store.

  • New Release: Storytelling Skeletons

    A little side-project for the Pico-8. Wander an endless graveyards, find dark warnings about daunting perils, and never encounter any of them.

  • New release: Not All Things Make It Across

    A follow-up to last year’s The World Turned Upside Down, Not All Things Make It Across commemorates the end of 2016 with another short vignette set in the Mere Anarchy universe. Taking advantage of the threshold of the new year, choose what debris of the past you want to destroy… or keep.

    I hope you all enjoy it. Happy new year, and thanks.

    You can play it on the web, or download the blorb for Z-Code interpreters.

  • 2016 End-of-year Roundup

    By the time this post goes up, I will have already posted my top ten games of the year list on Giant Bomb. It’s not all IF – there’s a mix of AAA, indie, and altgame in there – but I did include Brendan Hennessy’s Known Unknowns and Astrid Dalmady’s Cactus Blue Motel in there. I also used my Giant Bomb column this year to put a spotlight on IFComp. There are a couple others I want to highlight though.

  • New release: The Recombinant Armorial Roll

    My project for this year’s Procjam, the Recombinant Armorial Roll is a procedurally-generated dynastic history of a fictional empire, assembled from a relatively small corpus and rendered in the form of a finite but very deep hypertext.

  • Brief reminder: The Imzy IF Community

    In addition to the Euphoria channel (a real-time, threaded web “chatbox” for the IF community), I also help run an IF community on Imzy.

    Imzy is a link-, media-, and post-sharing website built around the idea of positive, well-regulated and kind communities. Going forward, I’m hoping to bring more activity to Imzy’s IF community and build it up as a safe and welcoming place for IF’s increasingly diverse authors and readers to come together and organize events, discuss IF, and encounter one another.

    Imzy has only recently left its closed beta, too, so now everyone who wants to can read and join the community here.

  • New release: Four Sittings in a Sinking House

    Cover image

    Breaking my nearly yearlong hiatus of IF releases, I have an entry in this year’s ECTOCOMP. It’s called Four Sittings in a Sinking House, and you can download it from the competition website or play it online.

  • Introducing Gall and Blotter

    Earlier this year when Inkle released their Ink scripting language, there was a lot of excitement from the IF community around using it as a tool for building sophisticated branching stories in the vein of Choicescript. Today I’m releasing a couple of open-source tools that should help people who want to experiment with Ink without having to build a full game UI to go around the story engine.

  • IFComp 2016 Capsule Reviews: The Little Lifeform that Could, The Shoe Dept.

    For these two pieces, I’m writing shorter capsule reviews. See my initial post for info on my approach to writing about those.

  • IFComp Review: 500 Apocalypses

    500 Apocalypses is essentially a stochastic novel, a large collection of loosely-connected vignettes meant to be read in a random order. Its blurb should probably come with a broad content warning for mature and disturbing themes, which I am bringing up here because I’ll be discussing some of it.

  • IFComp '16: Review Notes

    The Interactive Fiction Competition is once again upon us; the deadline for submissions is today, in fact.

    This year, I’m busy. But I did promise I would make an effort to review some of the games. As is tradition, before we see the list of comp games, I thought I should take a moment to go over my approach to reviewing these, partly to set expectations, and partly because no collection of comp reviews is complete without a self-important essay talking about the correct way to write reviews.

  • Quick twitter bots with AWS Lambda

    So yesterday, on a whim, I pulled some of Voyageur’s generator content into a Twitter bot. The Galactic Food Bot tweets procedurally-generated futuristic street food mélanges periodically.

    This bot exemplifies a botmaking workflow using Node.js and AWS Lambda. It allows for more flexibility than using a service like Cheap Bots Done Quick, without the need to manage or deploy a full server of some kind.

    This tutorial assumes some familiarity with Javascript in general and Node specifically (and you’ll need an installation of Node.js, preferably Node 4). Besides that, you don’t really need to understand the Twitter API to do this.

  • On Community, Anger, and Broken Stairs

    This post is in reference to recent events on and around the Euphoria &if channel; it’s not really of interest to people who don’t have that context. Some community issues have to be addressed, but I don’t want to expand the circle of anger by supplying a recap. Chances are, if you need to read this, you have context already. This is the second post I am making on this issue, this time regarding my own personal thoughts and feelings on the community.

  • Changes to &if Policy

    This post is in reference to recent events on and around the Euphoria &if channel; it’s not really of interest to people who don’t have that context. Some community issues have to be addressed, but I don’t want to expand the circle of anger by supplying a recap. Chances are, if you need to read this, you have context already. This is the first post I’m making on the issue, which is a statement as &if moderator.

  • Scraping DBPedia for Fun and Corpora

    One of the main challenges in procedural text generation is obtaining big enough corpora to produce surprising results. Hand-writing corpora is a good approach, but sometimes too time-consuming or unlikely to produce surprising enough results.

  • Unsettled

    Yesterday, on &if, someone asked whether we were attracted to IF because of its status as “outsider art.”

    I don’t really want to define outsider art, or get into the discussion over whether IF qualifies. But I responded that I felt I was attracted to IF because it’s unsettled.

    And then I had to go and write a post about what, exactly, I mean by that.

  • The Future of Raconteur

    I’m not really ready for a release of this just yet – it’ll be a while, probably at least a week – but I wanted to give people an update of where I’m at with Raconteur. Here’s the current (rough) roadmap.

  • Improv, a javascript library for generative text

    I’m currently working on a project involving some fairly demanding procedural generation of text. While that project isn’t ready to be announced yet, one of the first core pieces of functionality I wrote for it was a text-generating library. Said library had to be powerful, flexible, and fulfil the following needs:

  • Impressions: What Fuwa Bansaku Found

    What Fuwa Bansaku Found (Chandler Groover), released today through sub-Q magazine, is a free-verse ghost story set in an abandoned shrine in Sengoku Japan.

  • 2015 in Review: Thank-yous and shout-outs

    As the year heads to a close I have been busy sending thank-you notes (well, emails). This list is in no particular order and, inevitably, incomplete; if you feel like I have missed you, I am sorry.

  • 2015 in Review: Things to highlight

    Following on from my previous post, a look some of the IF and IF-adjacent games that came up this year which I thought were important enough to bring up.

  • 2015 in Review: My Work

    I was originally going to release this year-end rundown all in one piece, but I realised it’s very long and therefore probably best split into three parts. First, the most skippable part: A look back at games and stories I released this year.

  • The World Turned Upside Down

    The World Turned Upside Down is a tiny bit of parser fiction I wrote as a sort of thank you note/Christmas special. It’s very short and straightforward, so I’ll just direct you to the game page where you can play or download it.

    Happy holidays, everyone.

  • Notes on the Euphoria chat

    A brief reminder, since I haven’t posted about this on the blog ever since the comp postmortem: the Euphoria IF chat (&if) is still ongoing and regularly active. It’s an open channel, so anyone can join the conversation on Euphoria.

  • Impressions: Lime Ergot

    Lime Ergot, by Caleb Wilson, has just been republished by sub-Q Magazine – Which, full disclosure, also published my work in the past, particularly Lyreless which came out last week. I think of Lime Ergot as a pretty important entry in the canon of parser fiction, and also a very good starting point to introduce players new to parser IF, so I’m taking the occasion to make it all about myself and write a few impressions of it. This post contains mild spoilers.

  • New release: Lyreless

    sub-Q magazine has just published my newest work, Lyreless. It’s a descent into hell set in a fantastical universe where the sun is fixed in the sky and the dead build a dark city below with their broken bodies.

    Read it here.

  • IFComp post-comp discussion this Saturday

    I’m trying something new: this Saturday, I’m organising a live post-IFComp discussion on Euphoria. It’s supposed to take place on Saturday, November 21st, 4PM EST/9PM UTC (Or if you like ISO time, 2015-11-21T21:00:00-00:00). We’ll be talking about the comp’s games, organisation, past and future.

    Euphoria is a new platform for chat rooms that, unlike Slack and other new solutions in that area, are designed for social conversation rather than team collaboration. It’s accessible, fun, and designed so that multiple conversations can happen in the same space without trampling one another, using threading; I’m really exciting about it, and hopefully this is just the start of using the new &if space for the interactive fiction community.

  • Eleven Statements About Cape

    This isn’t quite a postmortem; it’s more a set of responses and observations about Cape.

  • Ectocomp impressions: Invasion

    Ectocomp has just released its games for judging. It’s a competition for horror and Halloween-themed IF – this year with both “speed IF” and “spirit of speed IF” divisions. First up: Invasion (Cat Manning), a horror Twine about inexorable alien monsters.

  • Impressions: Sun Dogs

    Sun Dogs screenshot

    Sun Dogs is a text game in which interaction is mostly directed by moving around a map and exploring different places in a transhuman future.

  • New release: Prospero

    Prospero, a loose adaptation of EA Poe’s The Masque of the Red Death, has been released by sub-Q Magazine. You can go play it right now, for free.

  • Introcomp: Walker's Rift

    I’m deep in the mire of writing an IF Comp entry, which is why I barely had the time to play recent IF releases. But Introcomp is nice in that I can read and evaluate a game in a lot less time than usual, and feel like I have something to say about it. First up: Walker’s Rift, by Hope Chow.

  • When the Land Goes Under the Water: Mini-Postmortem

    Shufflecomp, which has just closed its second edition, is an IF competition in which entrants swap playlists and make games based on songs. Not content with taking part in the previous two IF comps, I entered Shufflecomp this year.

    When the Land Goes Under the Water, pseudonymously released under the name Nikephoros de Kloet, was my entry.

  • ShuffleComp Impressions: Ansible

    For the duration of ShuffleComp, I won’t be commenting on games because I don’t want to blow my own pseudonymity just yet. However, Jacques Frechet appears to be a real person, meaning he’s definitely not me; whereas all other ShuffleComp authors are either Doug Orleans or currently in a quantum state of simultaneously being and not being me. So I get to talk about Jacques’ submission, Ansible.

  • Mere Anarchy Postmortem

    I said I wasn’t going to write a postmortem for Mere Anarchy. Well, I kind of lied. This is the actual postmortem. As you might expect, it contains spoilers for the game; so if you haven’t played it yet, I suggest you do before reading.

  • Raconteur, and why it exists

    Taking a break for a moment from the tutorials to write about where Raconteur comes from, and where it’s going; starting with a survey of the landscape of choice-based game engines.

  • Writing IF with Raconteur, part 3: adapting some text

    This is the third part of a series walking step-by-step through developing a game with Raconteur. In this post, I’ll explain Raconteur’s adaptive text features.

  • Writing IF with Raconteur, part 2: choices, choices

    Last we left off, I had explained setting up Raconteur and writing a very basic Situation: Enough to make simple stories. This tutorial is going to delve a little deeper into using Undum and Raconteur to write more complex stories.

    Background information on Raconteur.

  • Writing IF with Raconteur, part 1: a difficult situation

    Undum is a system for writing hypertext interactive fiction, similar to Twine. It’s probably one of the most powerful, versatile, better-looking systems, but it’s also pretty complicated to use; Undum stories are written by editing a JavaScript file, and essentially you write an Undum game by modifying and adapting Undum itself to your needs.

    Raconteur is “Undum with batteries included,” a set of tools and libraries that speed up Undum development and give it a gentle learning curve. Raconteur, like Undum, has an [API documentation] out; but API documentation is great as a reference, not so much for learning something new. And Raconteur, while (I hope) still substantially easier to work with than Undum, still has a learning curve.

    This is the first in a series of posts walking through the authoring of an IF game with Raconteur/Undum. This one goes from setting up a development environment to writing down your first situation.

  • Terminator Chaser: the Postmortem

    This is a postmortem for Terminator Chaser, my ParserComp 2015 entry. As you might expect, it contains severe spoilers for the game.

    This postmortem is based on my own impressions of replaying the game after its release, but it’s also based on watching the reaction to the game itself. I want to single out reviews from Sam Kabo Ashwell and Emily Short, as well as the players who submitted feedback through ParserComp’s judging form.

    You can play or download the post-comp release of Terminator Chaser, with various improvements, here.

  • Terminator Chaser: The lost emails

    These emails were rescued from the source file; they are the original way the story was told. This has changed dramatically in later revisions of Terminator Chaser, leaving the emails essentially dead in the water. A lot of this material is no longer relevant to the game, and a lot of it is heavily spoilery, but most of it gives some insight into who the cast of characters was at that stage of development, and what they were like.

subscribe via RSS