TWIFcomp: Lessons Learned, part I

I have never run an IF comp before, and in the aftermath of TWIFcomp, I thought it would be a good idea to write down what worked and what didn’t in case the urge to run another comp ever returns.  I’ve divided this into what I would do differently, and what I would do the same.


  • Lead time. TWIFcomp was organized at the drop of a hat. Spontaneity is nice, but people had little notice that it was coming. Despite that, turn out was good in terms of the number of game submitted and even in the number of authors submitting games. The small size of the games and the limited effort required to write a game likely mitigated the short deadline, but this would not be expected in other comps requiring greater effort on the part of the participants.
  • Website. Luckily, I had a dormant website sitting around, waiting to be reconfigured and populated by data from the comp. On day one of the comp, when I wrote the rules, I wasn’t sure how functional the website would be two weeks later, so I asked everyone to mail in their submissions and later their votes. Never again. It all worked out fine, but it would have been a thousand times better to let game submitters and voters create an account on the website, complete with username and password. While this is kind of a pain for the end user, it would have meant that some of the data entry could have been divided among the participants, and that voting could have been performed online rather than by submitting a spreadsheet. I only received votes from about fifteen people, and I assume this was the result of a short voting period, but also the awkwardness of needing to fill out and email a spreadsheet. Commenting would also have been easier with user accounts, and would have obviated the need for a captcha aside from at the time of account creation. I think such a system would have yielded a more vibrant discussion, although I was generally happy with the way commenting went. Since everyone is drowning in usernames and passwords, one thing to consider in the future would be to implement OpenID, or at least allow people to use credentials that they have created for other comps (assuming that we could all agree on a common system).
  • Links. Must check the links on the website before going live. I think the first ten comments were, “Hey — this link doesn’t work.”  Doh.
  • Links to Text. A link was provided to download each game, but because some games were distributed as text files (i.e., to be run through an interpreter or run as a command line script), the default behavior of left clicking on the link opened the text in a new browser window, exposing the source, and potentially spoiling the experience of playing the game. My assumption was that users would know which files were and were not text files, and would right click the link to download. This was not a good decision, and after a couple days, I replaced the plain text files with zipped versions of the files, so that it would be difficult to accidentally reveal their contents.
  • Binaries. On the other hand, I was reluctant to post binaries, particularly windows *.EXE files. Had I been able to compile the games myself in a sandboxed Windows VM, I would have posted binaries for all the URQ and QSP games, and if there were any problem with the EXEs, I would hopefully have seen it myself. In the worst case, if I generated bad *.EXEs, I would be at blame rather than the game authors. Unfortunately, when I attempted to install the software, I ran up against installation screens full of uninterpretable characters.  I’m sure these characters mapped to cyrillic letters, probably on the Windows 1251 code page, but I didn’t see an easy way to get my installation of windows to make them legible. I believe that it’s not a matter of changing region/language settings, but of having a Russian install of Windows, which I don’t. With more time, I might have had more options, but I didn’t see any alternative here.
  • Timing. Since this was such a short competition (three weeks from announcement to awards), I thought I could slip it into the yearly comp rotation without really interfering with the regularly scheduled games. If I were to do this again, I might move it just a bit earlier to put more time between it and IntroComp.


  • Getting the word out. I posted announcements to both RAIF and, and noted that while I saw a lot of page views on the forum, I actually got more feedback (and not all of it flames) from the newsgroup. The old girl still has some kick left in her. I also experimented with posting on Russian and French forums, figuring that language couldn’t matter too much in a 140 character game. Both forums took up the idea, and these communities contributed games in both Inform and other systems. Just as the one-room competition is based in Italy but run globally, in any future comps, I would definitely market internationally. While language is somewhat an issue, some authors can write in more than one language, and non-English speaking IF communities are large enough to provide ratings on games in their native languages.
  • Programming Language. The comp threw the gates open in terms of writing system, and this is something I would do again. Some of the CYOA systems in this competition were quite elaborate, and gave the authors some interesting options in terms of story telling. While I agree that the world would not be a better place if everyone wrote a custom parser, I think the option for experimentation should be open.
  • Show all work. TWIFcomp was more about source code than most IF comps will be, but I like the principle of requiring submission and public display of source code. The game is not the only thing to be admired in a comp — the way it is written is just as important to me. I learned a lot of interesting tricks in reviewing the code in TWIFcomp.
  • Online games. I wasn’t sure that I’d be able to get Parchment working smoothly within the drupal CMS  framework, but it came together in the days before the site went live — many thanks to Andrew Plotkin and the People’s Republic of IF website from which I sucked the majority of the code and layout. It sounds like the new version of Inform will make it even easier to generate web-ready content. Additionally, the JACL and ChoiceScript games could be played directly online. All of this instant gratification made the comp itself more interactive and engaging.

3 thoughts on “TWIFcomp: Lessons Learned, part I”

  1. I have a suggestion for the voting system.
    This competition had 60 games. No one being can play 60 games in a row and rate all of ’em.
    So, how about some system?
    First, divide the games by language. It would be VERY convenient.
    Second in each language group there must be subgroups. Around 5 or 10 games for the subgroup.
    In the first tour, each author who entered the competition MUST play and rate ALL of the games from subgroup his game fell in. No vote = disqualification.
    Second tour – clash of the best. Rules are the same.
    And in the final, the right to vote is given to people of Internet.
    I think a system like that would be very good.

  2. I agree. It is impractical to expect that people will play 60+ games. Also, the mechanism of the spreadsheet was not ideal.

    When I started the competition, I did not know how many entries I would receive in languages other than English. I think you are right — if another competition advertises widely and intentionally includes participants beyond the English-language community, it would make sense to have separate voting by language. This would also make it more fair to require authors to vote on the other games (in their own language, at least).

    I am not planning to run TWIFcomp again — it was a one shot concept, but maybe I (or you, or someone else) will find another strange concept for a comp and use the rules in the future.

    Thanks for your suggestions, – Jack

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.