Bring Out Yer Dead 2018

As is tradition, with IFcomp 2018 freshly over, I’m jotting down some brief thoughts on games that I entered: En Garde and Re: Dragon, which placed 14 and 26 out of 77, respectively.

First, I’d like to thank those who ran the competition for staging such a quality event: gathering funding and prizes, maintaining the web site, getting the word out, and supporting authors all the way along. Similarly, a huge thanks to my proofreaders and beta-testers, who probably logged as many hours playing and commenting as I did developing the games.

En Garde

This is actually the second time I’ve written a post-mortem for this game; perhaps it’s not surprising that a game involving a zombie won’t stay in the grave. This game was originally written for the French IF Competition earlier this year, and I started writing it more than a year ago, so I feel like I have been working on it forever. It placed second in the French competition and afterwards I commented on it on this blog (in English).

My goals for En Garde were to see what it’s like to write a game in a second language and to get some practical experience wrapping a typical parser game in the Vorple framework. On both accounts, I wanted to keep the game short and simple. I didn’t even scratch the surface on Vorple’s capabilities, but I did implement one core feature: clicking on hyperlinks to issue commands. After that, I spent the rest of the development time trying to make that functional and pretty, which involved learning enough CSS and javascript to get by.

As for the game itself, the idea had been kicking around in my head for some time: a game in which the main character starts as an empty shell and progressively assimilates intelligence. To me, that translated pretty directly to a zombie setting, which I know rubs many folks the wrong way as a cliché. I did what I could to move away from the usual tropes, but the core mechanic (brains!!!) was inescapable.

Another comment I got was that some people avoided the game because they thought it was about fencing — which it’s not. Perhaps I should have had held some more focus groups before the marketing team selected the title. The original title in French was “Faute De Servo“, which I had meant as “Servo Error” since a shorted out servomotor is in a sense the cause of the story. “Servo” sounds the same as “Cerveaux” (brains) in French, so I had also meant it as “For Lack of Brains”. In fact, neither meaning was probably very clear to the French audience, so at least the English title carries on that tradition of confusion. One of my playtesters for the English version suggested “En Garde”, since it connected back to the game’s French roots and it is a phrase that English-speaking players would find familiar. They also suggested it would be appropriate because various personalities end up “in the guard” — which is not what “en garde” means at all. For better or worse, that’s what I called the file and the name grew on me, so I left it.

The game was written in a modular style in Inform 7, and since the parser is so limited, it doesn’t contribute much, grammatically, to the output. So, all the French-specific tweaks were contained in a couple lines of code, and rewriting in English was largely a matter of replacing bulk text rather than fiddling much with core mechanics.

Based on feedback I had received from the French Comp, I did tweak a few things. First, originally the colored buttons shuffled command randomly each turn — I didn’t think IFcomp players would have the patience for that. Also, the theme of the French comp was “memory”, so that mechanic made sense there, but I thought it would just be an impediment for casual players in the larger competition. Second, after six commands I added text to the buttons. Remembering six buttons is tricky, but beyond that, I thought it was burdensome. Also, at that point, the player has attained human intellect and it made sense to me that they would now be literate. Finally, I spent some time working originally with Corax in the French comp and later with Michael Gerwat for IFcomp testing how the game played for non-sighted players.

I had thought that just putting the game in a browser would bring along a lot of accessibility affordances, but that’s not really the case. I learned quite a bit about using hidden classes within CSS to provide alternative content. Perhaps the most important trick I learned was to display a turn of text at a time. When text scrolls up in a browser window, which would be typical of a parser-based game, it’s all still there, and it’s a lot to wade through trying to find the new bits.

What’s next for En Garde? The Russian version is in beta and I anticipate submitting “Na Strazhe” to the KRIL competition in a couple weeks. This title is a literal translation of “En Garde” — a title that didn’t really make sense in English to begin with — into Russian. This version incorporates a few refinements beyond the English one based on feedback received during IFcomp.

Re: Dragon

Right after IFcomp 2017, I had the idea for “Re: Dragon”, but wanted to get working on En Garde and figured it wouldn’t be worth the effort to develop a sequel game with a very limited audience. I spent July of this year cranking out a largish room for the Cragne Manor project, but found myself projectless with “hot hands” in August.

While producing En Garde, I learned a lot about working with Vorple and wanted to write a game that would put the framework through its paces. Hugo Labrande had released a demo game, “Neon Vortex“, which showed off many of Vorple’s flashier features, but I wanted to write something primarily narrative that employed as many of the features as I could in a way that other people might lift the code for future projects.

With a month remaining before the IFcomp submission deadline, I realized that if I didn’t write Re: Dragon in 2018, I’d never write it.

While En Garde is essentially a parser game in which the command prompt is hidden and you click a few buttons instead of typing, Re: Dragon pushed interface design to the limit. I derived particular pleasure in torturing the underlying parser engine to serve a choice-based game framed as an email client.

The potentially reusable bits of Re: Dragon include code to layout a website procedurally from within Inform, to handle link clicks and screen updates within the usual Inform event loop, and to implement choice-based hypertext either as links embedded within the flow of text, more of a Twine approach, or as buttons at the bottom of a page in the style of ChoiceScript. The game also demonstrates some bells and whistles such as toaster pop-ups, modal windows, and sounds. Source for both games is available on my github page.

I did back off on one feature. In the current version, the player is directed to revisit the 2017 Game “The Dragon Will Tell You Your Future Now“, and clicking a link will open that game in a new browser window. Originally, I allowed players to open that game within an iframe within an email within Re: Dragon. In discussing that feature with playtesters, we agreed to remove that implementation to make it clear that I wasn’t trying to take any of the credit for the earlier game and to assure that players coming fresh to Re: Dragon would realize that the earlier game was not something I fabricated, but actually had existed on its own. Nonetheless, I was really attached to that mechanic and the enjoyed the concept of embedding a twine game within an inform game.

Both

I waffled about submitted two games to IFcomp — would that be seen as greedy? — but went ahead with it because Re: Dragon only made sense this year, and En Garde was not really something entirely new, at least not to me.

Both games mark a departure for me into the unknown territory of choice-based games. I’m comfortable with parser, but had to retool to get into a choice-based mindset. En Garde is a sugar-coated parser game, but despite its Inform DNA, Re: Dragon is structurally a hypertext game. I found it difficult to winnow my own verbosity to reach the sort of pacing required in hypertext media. Also, making player choices matter while trying to tell a fairly linear story was a challenge. If there’s one thing I would have liked to have added to Re: Dragon, it would have been more of a puzzle element, but there just wasn’t time to do that and polish the whole thing in time for release.

Thinking more about choice and hypertext-based games led me to give Twine a shot last month — my first attempt at a twine project, “Death. By PowerPoint” is now up as part of this year’s EctoComp. If you’re still in the mood to play (and ideally to rate) new games, take a look at this year’s 22 entries.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.