A Long Drink postmortem

Hi, I’m Spankminister. I wrote A Long Drink under the name Owen Parks for ParserComp 2015. This was the first game I’ve ever done, and it was certainly a learning experience. Thanks to everyone who played, everyone who tested, and cvaneseltine for doing all the work in making ParserComp 2015 a reality.

First off, there are bugs, and I’ll be releasing a post-comp version later. I had beta testers, both friends and people from intfiction take a look, and I fixed everything I could, but there’s a lot of situations I hadn’t anticipated. For instance, A Long Drink relies on scene changes to progress the time and game state, and that has serious implications for the way Threaded Conversation works. As a result, several players encountered NPCs who had literally nothing to say as a result.

I’m naturally a little disappointed that after three months of late nights coding and testing, my game crashed and broke upon the rocks of the IF review community. To be honest, I always suspected anything I made would, but I wanted to make something, whether or not it was the sort of thing people who play IF would be predisposed to like. I told myself if at least one person got some fun out of it, that’d be enough for me, and maybe it’ll have to be. A Long Drink may be a failure, but part of that was my determination that I would rather release an ambitious failure than a tiny fraction of the game I wanted to. cvaneseltine had a post about scoping in game jams that’s really just sound advice for software development in general. It’s good advice, but I would rather stop entering game jams than scope down a game.

First a few things to get out of the way:

Background

A Long Drink has many inspirations behind it, for exactly why it is the way it is. Raymond Chandler and his contribution to detective fiction is an obvious influence on the tone. His approach to the reserved Marlowe means you have to slowly uncover his personality through his words and actions, because his narration is a study in understatement. Also a trope I borrowed from hardboiled is the idea that the murder is not the mystery; it is the backdrop for the mystery. I often got to the end of those books, so engrossed in the intrigue that I forgot a murder had happened at the beginning. How many people even remember that Sam Spade’s partner got killed at the beginning of The Maltese Falcon?

Gosford Park is my favorite movie of all time (and the source of my pen name) because it is such a brilliant mystery. There is also a murder, but it happens more than halfway into the movie. What makes it so memorable to me is that I can watch it ten times and discover something new every time. Your only clue that two characters have hated each other for years might be a stray glance and an offhand remark. There’s affairs and unrequited love and old grudges, and extortion-- some of it obvious, some easy to miss.

On that note, far and away my favorite game of 2013, and a big inspiration for me here was Gone Home, which is also a mystery. If there’s a single game I wanted to emulate in structure, it was that one. The main story flows along, and there are optional side stories about the other members of the family. The thing is, I didn’t find everything, including some huge revelations. I thought that was really brave design in this day and age of tutorial levels and handholding to leave such a real mystery in the hands of the player, and that’s what I wanted to try for.

All these examples aren’t about “open-ended” questions, or things the author leaves up to interpretation, or “has many right answers.” I’m talking about only things for which there is an answer, it just requires careful reading. It’s clear that A Long Drink needs polish, and I have room to improve as a writer, but I never, ever want to lose that faith in my players. What I learned from Gone Home is that different people will engage with a game at different levels, and that’s okay; both experiences just need to be enjoyable. I wanted bread crumbs and suspense on one side of A Long Drink, and (optional) involved mental detective work on the other. Time constraints clearly intruded in doing all that and fleshing out enough dialogue and characterization to meet those needs. When you’re making a mystery game, you can either require the player to piece the mystery together themselves, but risk them getting stuck or frustrated (like say, Deja Vu), or you can have the entire thing unfold along rails, and give up the interactivity. I tried to split the difference by having the protagonist solve the mystery as the player progressed through the game, and having plenty of side mysteries for the player to solve themselves.

Gameplay

Design-wise, the car sequence and escape are the tightest section because it’s linear, and was essentially a tutorial. Hand-holdy tutorials can be really annoying, so I just created an outline of the game as a microcosm. I wanted to establish the first person past tense narration, the cinematic/flashback events that would happen sometimes, give the player a quick puzzle to solve, and introduce the way conversations work to advance the story, and finish it off with a scene change.

A mystery where certain locations can only be examined at certain times are what led to the shutters and locked door mechanic (as well as the use of the theme), just like a game like Deadly Premonition has. At a basic level, the player is walking around and examining clues to solve the various mysteries they’re presented with. There’s always a Thing That Will Advance The Game, and I wanted to make that pretty clear via the hint system in case anyone was impatient to move on. Between a player who rushes through and misses things, and a player who wants to advance but is stuck, I want to err in favor of helping the latter type.

Technical

  • As many have pointed out before me, Inform has some serious problems. A Long Drink was my first game, and while I am not a novice programmer, I had to fight it quite a bit to do what I wanted to do.
  • Threaded Conversation. I never got the Conversation Builder to work, so I just wrote my own in Python. I got the hang of writing the conversation trees after a while, but unfortunately, the way scene restricting quips worked resulted in a lot of NPCs becoming nonverbal or confused if player tried to talk to them at the “wrong” time. It was ambitious to have any NPCs at all in a time-limited game jam game, let alone four. There are a lot of guides that have come out about writing NPCs in IF, and the fact that some suggest simply not letting the character talk to them, or not having them around is pretty telling as to the difficulty of doing it right. That wasn’t really an option for me given the whodunit setup.
  • At one point, the protagonist is searching through a computer, and I had the idea that you could see a person’s search engine history and try to figure out what state of mind they’d been in. The player can type the first few letters or words, and get an autocomplete list the way you would in Google, and I implemented this with regular expression matching into a table. You could say it’s a bit contrived compared to just looking at a list of the websites, but this version has more interactivity and an investigative feel.

Finally, I’m not sure I’ll be participating in any more competitions or game jams. It’s great that they bring everyone together in a frenzy of activity, cooperation, and excitement for the medium, but I think it’s not for me. The games I want to make probably need longer term deadlines, and I want to aim for a more decompressed IF experience, rather than the IFComp style short game. The circumstances of a competition mean that your player is someone who has a couple hours to spend before moving on to one of ten or twenty other games. Aside from all that, I thought it was incredibly stressful, even if a lot of that was self-imposed because of the kinds of games I’d like to make. The majority of A Long Drink was written in my head as I lay on the floor of my son’s nursery every night, waiting for him to fall asleep so I could write down those ideas and hope I wasn’t introducing any critical scene changing bugs (I was). The fact remains that I did manage to produce something, which is the ultimate goal of game jams like this, and I learned a lot I can apply to later versions of A Long Drink and other games, so I’m glad I did it.

I may edit this later for clarity, or else address specific criticisms in a subsequent post in an attempt to better understand approaches to writing.

Ah, lying on the nursery floor. I respect your ability to brainstorm, instead of passing out and waking up at 3 AM with a stiff back, which is what I did for many many months. Nabokov supposedly wrote a novel, in pencil, on a chair in the hall outside his sleeping son’s bedroom.

Yeah, well, he got a chair and a light source and a son who was actually asleep while he could have both those things.

I respect your ability to fall asleep in convenient places! I have trouble even in cars and on planes, which sucks.