Being brutally honest

I was writing a comment to The Many Authors of IFComp over at Sibyl Moon Games, but it became so long and slightly tangential that it's better to post a proper article instead.

Historically there have been several parser IF writing communities with partially overlapping members. The "main" community, originating from newsgroups before largely migrating to the web forum, makes up for the bulk of the high-profile activity and covers the most diverse collection of authoring tools. Smaller communities are usually focused around individual authoring systems (ADRIFT, Quest).

The approach these communities take to providing feedback to authors varies greatly. The main community used to be on the far end of the scale: "brutally honest" would probably describe it best. The community expects and rewards quality, and things that don't work are meticulously brought out in reviews.

On the other side of the scale there are communities that reward effort. No matter how bad the game is, you get cheers and pats on the back just for releasing it. Feedback, if any, is overwhelmingly positive. The community doesn't necessarily even expect that published games would be open for criticism.

The games produced by these two extremes are also very different. Communities that only reward effort produce a lot of games that are almost without exception, to be brutally honest, utter crap. This is because of two main reasons: Firstly, there is no incentive to spend time designing, polishing and testing your game because you'll still get the same reward in positive responses no matter what the quality of the result is. Secondly there is no peer pressure: when no-one expects high-quality games, there's no outside push to aim there.

The brutally honest camp produces less games but they're generally of better quality. There's a sieve that the authors are pushed through: all work undergoes close scrutiny. Authors who can't handle the criticism will drop out, but those who stay are less likely to repeat their mistakes and more likely learn from the feedback and keep improving. The peer expectation of game quality is generally high and the authors aim higher in the first place.

The downside of unchecked criticism is that, from the point of view of an individual author, the feedback can feel unnecessarily harsh. A novice author can easily give up if the feedback is crushing, which is understandable; when you do things as a hobby, you want to have a positive experience or you go do something else.

The challenge is to combine the better parts of the two extremes. How to not punish anyone for producing creative work but at the same time encourage high quality?

The trend is already moving in this direction: some reviewers (including me) post only reviews that are net positive and events like Spring Thing have non-judged categories. This is only a partial solution. Lack of feedback shields authors from negative feedback but also leaves them without means to improve.

It would be great to have some kind of mentoring system where experienced authors could help out newcomers to design and polish their games. The downside is that it's not mass-reproducible: it would require a lot of effort from the mentors and the ratio of newcomers to experts is too high for everyone to get a mentor.


How to make a great IntroComp entry

IntroComp 2015 logo It's IntroComp season again! IntroComp is one of the oldest active IF competitions, run yearly since 2002. The idea is to make a short intro that showcases a work-in-progress that will eventually be expanded into a full game. Competition judges are asked to rate the entries based on how much they would want to play the full version.

Here are some tips for competition participants on how to make the best of their entry.

Plan further than the intro

This is perhaps the most common sin of IntroComp entries: the author has not designed the game beyond the entry itself, which makes it hard to continue building the full version.

It would be wise to have the story and gameplay thought out at least twice as far as the actual intro, preferably all the way to the end, at least conceptually. This includes visioning what happens immediately after the intro ends and what is the overall story structure: the intro is the beginning but what happens in the middle and how the full story is resolved in the end. Otherwise there's a good change that the intro ends in a creative dead end with no easy way forward.

It's not hard to tell if an author has planned the story beyond the intro. Intros with short term design are often tightly self-contained and convey no feeling of there being something else beyond what you see. When the world and the general plot is well thought out, it's almost automatically visible in the resulting work. (See also a previous article discussing the subject.)

Start with the relevant story

Sometimes the word "intro" is taken too literally and the entry ends before the actual story even gets to start.

A fictitious example: Your story is a retelling of the 12 labors of Hercules. A good intro would contain the first labor to its completion; it would give a good indication of how the gameplay works and judges could easily imagine what the rest of the story would look like in its full version.

A bad intro would be about Hercules packing his backpack and a puzzle about finding a map for the location of the Nemean lion, and it would end just after reaching the entrance to the lion's cave. It would tell very little about what the game is actually like.

So cut off everything that's inconsequential to the big picture and start right from the action.

Make a proper ending...

Even though we're talking about introductions, it's still important that the entry reaches some kind of conclusion of its own. Sometimes that's easy to do when the story can be neatly divided into independent scenes (like in the 12 labors of Hercules example), but sometimes you'll have to work harder to find a good place to end the intro.

As a rough generalization you'd have one or two short term goals that are resolved during the intro while the overall goal is both left unresolved and made clear to the player.

...but leave some loose ends untied

This comes back to the "plan ahead" advice. Even though it's good to resolve a short term goal or two, there should be some kind of hook that makes the player want to continue playing the finished work.

A cliffhanger is a traditional way to end the intro, but it shouldn't be the only hook. As said before, the intro's purpose is to build expectations for the full version. It shouldn't be self-contained: leave room for future expansion. A couple of locked doors, interesting inventory items with reuse potential, references to NPCs not yet encountered. Anything that makes the player's imagination run wild.

Remember though that it's important that you as the author know where the loose ends are going – you can't just drop a locked door somewhere without knowing where it leads. Anything that serves a purpose usually comes across as such in the writing, whereas pointless scenery is often easy to spot.

Have the entry betatested

While technical issues are not explicitly in the judging criteria, bugs and spelling mistakes will reflect poorly on the entry. After all nobody wants to play a buggy game and the intro is taken as an indication of the finished entry's quality.

You don't need a whole army of testers, one or two should be sufficient for a short intro (although more is always better.) It's easier to find testers for IntroComp entries than for many other games because potential testers know that the game should be short and therefore doesn't require a huge time commitment. Testers can be recruited from the beta testing site or from the forum, among other places.

Remember that choice-based entries need testing too for things such as spelling, tone, and pacing.

Hugo online

I've set up an online interpreter for Hugo games. It's basically the same tech used by Internet Archive's online MS-DOS games collection: a JavaScript version of DOSbox running the DOS version of the text-only Hugo interpreter.

Hugo online interpreter screenshot

The major missing feature is the ability to save and restore games – or, more accurately, the saves aren't persistent between sessions. You can save and restore while playing the game but as soon as you close the browser window the saves are lost. There seem to be a couple of techniques available that might help so this is probably going to get fixed later.

The interpreter is at with a small library of games. For now you can only play the games that are pre-compiled for the interpreter. Later I'll add a feature to upload your own story files.

For people interested in Hugo innards or stuck with Hugo games I've also made a .hex story file parser that can extract just about anything there is to extract from a Hugo story file: Dictionary, text bank, objects, grammar, ... It can even output the Hugo bytecode in a (slightly more) readable format. The .hex parser is at

Comments are dead. Long live discussion!

From here on commenting on new posts is disabled and the following text is displayed after each post:

Comments? Start a discussion at the forums or tweet to @JuhanaIF!

If there's already a directly related thread on the forums the link points there instead of the main page.

The blog has seen generally three types of comments: discussion about the post topic, tangential comments about IF in general from people new to the community who might not know about the forums, and congratulatory "I like this" comments. And spam. A lot of spam.

Blog comments aren't really suitable for conversation. The system is built for individual comments, not for discussion threads. They attract spam and replying to other comments is cumbersome. Commenting on something that's more than a couple of days old guarantees that apart from the blog author only a handful of people will ever see the comment, and starting a discussion about a post that's several months old is pretty much always a dead end. Furthermore people participating in the conversation are unlikely to keep returning to that single post to see if their comment has generated any additional comments.

All in all it's better to direct discussion to someplace that's designed specifically for conversation, especially since the topics here are more likely than average to spark general discussion that works better with a wider audience.

As for the congratulations, they're always personally appreciated but don't really bring any extra value to the blog post itself. Twitter is the best way to send a quick and short personal message.

Best of 2014

Game of the Year: 80 Days

80 Days

Inkle's 80 Days is a steampunk retelling of Jules Verne's Around the World in Eighty Days. Phileas Fogg has placed a bet that he can circumnavigate the world in only 80 days. He sets off with his French valet Passepartout, first crossing the Channel in a submersible train and then continuing the journey in various mechanical contraptions.

What's impressive about 80 Days is that it has a "real" game mechanic in addition to the literary side, without compromising either. You can play it strategically and ignore the prose, or read it as a story and ignore the game, or anything in between. It's easy to see why it's been succesful with so many different types of players.

It is visually gorgeous, both in its illustrations and typography; the music evokes an atmosphere of travel and adventure. The writing is sublime and only becomes awkward in the segments with canned default responses. The gameplay suits mobile gaming perfectly: it's easy to pick up and play any duration at a time.

Apparently 80 Days started out as a small side project to their Sorcery! series but the scope soon got out ouf hand. As such it's also a testament to how small side projects can grow to become something truly great.

Game of the Year first runner-up: Hearthstone

Hearthstone card Archmage Antonidas

Measured by hours played this one would easily take the top spot of 2014. Hearthstone is a digital multiplayer trading card game in the style of Magic: The Gathering. The difference between Hearthstone and M:TG is that the latter is great fun played with physical cards but fails utterly as a computer game. Most of its gameplay consist of waiting for phase timers to run out which slows the tempo to a crawl.

Hearthstone however is free from baggage of the physical world. It's fast-paced and well balanced: the leveling system makes sure you always get opponents that are generally at your skill level.

Hearthstone's free-to-play system deserves a special mention. Winning matches earns you gold which you can use to buy additional cards, enter arena tournaments, and buy single-player campaigns. The prices are low enough that getting everything you need just by playing is feasible, there's no double economy where some things must be bought with special tokens that in practice cost real money, and those who do choose to spend real money aren't given an unfair edge over those who don't. People, this is how you do free-to-play right.

Game of the Year second runner-up: Hadean Lands


Andrew Plotkin's Hadean Lands is the result of a Kickstarter from five years ago. The style is unmistakably Plotkin; anyone who has enjoyed his previous games should feel right at home.

One of the more clever design decisions of Hadean Lands is how it manages to both include and subvert the difficulty level of Infocom-era IF. In the early days of adventure gaming a misstep could bring the game to a deadlock and the player was supposed to restart and replay several times to solve the puzzles. Hadean Lands also requires replaying but with "soft" restarts that keep information from previous playthroughs.

Book of the Year: S.

S. (photo credit: Casey Fiesler)

S. is written by Doug Dorst and J. J. Abrams, the latter being better known from his TV and movie work.

S. comes in a package that contains a book titled Ship of Theseus by "V. M. Straka". In the book's margins two college students have written correspondence to each other. In addition to these scribblings, between the pages there are newspaper clippings, letters, pages from notebooks, postcards and other "feelies". S. is not the book itself but the entirety of these three elements (the book, the footnotes and the feelies).

The "found footage" angle brings a whole new dimension to the reading experience. It's not possible to read S. like you would normally read a book (unless you purposefully ignore everything except the printed text of Ship of Theseus) which makes it kind of hard to place on the static <–> interactive continuum.

(Technically S. was published in 2013, but that's close enough.)

Movie of the Year: Interstellar

Interstellar poster

Interstellar is Christopher Nolan's sci-fi film about humanity's search of a new home when plant diseases are about to destroy Earth's capability to grow food.

Typical of Nolan's work the film takes one or two themes and builds everything else around them. What the theme is is always debatable but to me it was loneliness: personal loneliness and the loneliness of humans as a species. Also, a constantly recurring motif to look for: rotation and rotating things.

The movie is evocative and thought-provoking; I only wish that they had toned down the "power of love" angle a bit. In many ways it's the modern 2001: A Space Odyssey.

Blog of the Year: These Heterogenous Tasks

These Heterogenous Tasks

Sam Kabo Ashwell reviews various IF and almost-IF games at These Heterogenous Tasks.

The reviews are exceptional in that Sam not only reviews the games as they are but sees them in a wider perspective in game and narrative design. Often he uses the game in question only as a lens through which to inspect the bigger picture or a common trope in all game design.

This approach is both interesting to the reader and fair to the reviewed game. No-one and nothing exists in a vacuum, which is something that's easily forgotten. By placing the design decisions in context the discussion shifts away from picking on an individual designer's choices and towards a more general inspection of what works and what doesn't.

Competition of the Year: 20th Annual Interactive Fiction Competition

IFComp logo

The torch for organizing the Interactive Fiction Competition was passed to Jason McIntosh who not only took the responsibility but completely revised the web site and started to modernize the entire competition. The quantity and quality of entries went up and the event attracted a good amount of attention and reviews.

IFComp once eclipsed everything else that was happening in the IF world; now it's still the main event but the focus has evened out to other events and splinter communities. With the reformations taking place there's still a good chance that IFComp has value in the future as well.

Collaboration of the Year: ESA comet lander

Photo credit: ESA

The European Space Agency ESA's Rosetta spacecraft reached the comet 67P, and sent the Philae lander to its surface. Rosetta became the first spacecraft to orbit a comet, and Philae the first man-made object to land softly (as opposed to just crashing) on one.

While the mission is a technological marvel, it's also a collaboration of 20 European nations. That's 20 countries and cultures working together towards a common goal – an example to humanity that must ultimately learn to do the same in many other things.

The year 2014 saw some excellent content, the ones above and much more that could have been mentioned. Now we'll move on to 2015 and perhaps to even bigger and better things.

Introducing Texture

I've been working with Jim Munroe (Everybody Dies, Guilded Youth) on developing a new kind of text game authoring system. It's called Texture, and it debuted yesterday at the WordPlay Festival in Toronto.

Stories authored with Texture are structured like books. Each scene or node is one page that has about one screenful of text. On each page under the text are some verb boxes. Dragging and dropping the verbs on the text changes the story, resulting in a sort of e-book that mutates and evolves based on the reader's interaction.

The interface is designed for touchscreen devices. It's possible to play with a mouse but dragging the verbs with a finger is the more natural way of interaction.

The writing tool looks almost the same as the resulting story, with added authoring controls.

Texture writer

There's very little modal difference between the reader and the writer. You write the text on the page directly and create commands by first adding some verbs and then dragging them on nouns, just like you do when you're reading the story.

A prompt that lets the author choose how the command alters the story text

The writer's user interface steals borrows heavily from Twine 2 which I think does a lot of things right and having similar elements hopefully makes the interface easy to learn. The system itself is Jim's vision, my role is mostly on the implementation side.

When's it out, you ask? Right now! You can try the alpha version at (Disclaimer: early alpha. Not tested in IE, use Chrome or Firefox if possible. In Safari you need to save the page manually after clicking the "download" button. You may also need to try dragging the verbs twice before it responds to dropping the verb on words.)

The one major feature that's still missing is setting and reacting to flags, which would let you change the output based on earlier interaction. At the moment the system is basically stateless although not linear – you can branch the story by having different actions open different pages.

Ex Nihilo

Part of this year's New Year's speed-if event I've released a hypertext story called Ex Nihilo. You may find it interesting.

It's (naturally) Vorple-powered but with a custom engine. It might have been possible to massage Undum into giving the same results, but not without quite a lot of work. Making a simple hypertext engine is not a hard job—the WWW itself is already one big hypertext engine. (Undum's strengths are, among others, ability to save and replay stories, which is a hard job.) Ex Nihilo's custom engine is only about 200 lines of code and mainly takes care of animation effects and deals with nodes in uniform manner.

The source code is available from GitHub, and archivists can download the whole thing from the "zip" link on that page. Playing offline is not possible, you'll get a network error at one point if you don't have a server set up. A text-only Glulx version is also available, but it's severely lacking compared to the real thing so it's not really recommended unless the online version is not accessible.

IFDB statistics, part 2: Development systems

Click here to read all posts from the IFDB statistics series.

When we talk about development systems in IFDB, it's good to remember that some systems have better coverage than others. Parallel communities like Quest (201 games in its own site, 26 in IFDB), non-parser systems and the AIF crowd are underrepresented. Another factor that skews statistics is that game listings tend to display the system in which the game is available now—for example Scott Adams adventures are listed as Inform 6 games because the downloads are for the Inform ports.

In the all-time popularity chart Inform 6 is the clear leader: a quarter of all games have been made with it. Inform 6 and 7 together cover more than a third of all games.

The chart for current (2010-2012) systems is a bit different. Inform 7 has risen to dominate the field with the market share of two thirds. Inform 6 has dropped significantly and all other systems are in the margins. Does this mean that the field has become less diverse or that IFDB has not kept up with new systems?

The Commercial Era

I've split the statistics in two eras: the commercial era (before 1994) and the hobbyist era (from 1994 on). 1994 marks the beginning of a renaissance—IF died commercially but at the same time the publication of Inform practically created the modern hobbyist scene.

Many of the commercial era games don't have the system marked down or have a suspicious "none" (were they written directly into machine code?) or a vague "custom". The most popular system was Eamon, which was exclusively used to create stories in the Eamon game world. The Quill was almost as popular, although the Wikipedia article says there were more than 450 commercial The Quill games (203 listed in IFDB) which would make it more popular than Eamon.

The large number of Inform 6 games is because of ports, as mentioned above.

Looking at the numbers by year, Eamon reaches quickly its highest point in mid-80s and declines from there more or less steadily. The Quill and AGT have a more steady growth all the way to the 90s. As you might imagine, BASICs popularity drops quickly after dedicated development systems become available.

Here's the same chart but with percentages from the total number of games: the vertical thickness of the area denotes more games in relation to other systems, the full height being 100%. The data in this chart goes up to 1998 so that we see how all the "old" systems drop practically to zero in popularity by then.

The Hobbyist Era

In the mid-90s the playfield changes completely. TADS, Inform, ADRIFT and other systems are released and especially Inform gains popularity.

Inform's domination is apparent in the percentual view. TADS 2 has steady popularity until the turn of the millennium when it begins a downward slope. TADS 3 gains a small foothold but never grows very much. Hugo has seen a small resurrection lately, mostly thanks to a small but active group.


After Inform 6 was released, it rose to cover almost half of all published games in only two years. The same happened when Inform 7 was released: in a few years it took the lead, eating mostly Inform 6's popularity.

This year only a handful of Inform 6 games have been released and Inform is at almost 70%.

The question is: has Inform 7 attracted people into IF who would otherwise not have done so, or would people who now use Inform 7 started to use something else if it had never been released? Surely there are people in both groups, but the graph above suggests that Inform 7 is eating away the Inform 6 userbase, not others. The "everything else" line does not seem to have any correlation with the Inform 7 line.


TADS 2 was at its height in 1999 when 27% of all games were written using it. Another peak was in 2002 after TADS 3 was released, but since then their popularity has been on a steady downward curve.

Again, the statistics show no correlation between Inform and TADS. Peaks in Inform's popularity do not show anywhere in the TADS statistics. (You could argue that I7 might have cut short TADS 3's slow climb between 2004 and 2008, but I very much doubt it.)

IFDB statistics, part 1: Publishing date

Click here to read all posts from the IFDB statistics series.

A few months back Mike Roberts, the curator of IFDB, together with Andrew Plotkin released the full IFDB database dump. This is certainly a great deed, since the IFDB is the most complete source of information about IF to date and there's always a risk of data loss if the database is behind only one person. The database is an invaluable resource to (future) historians, researchers and people who love statistics.

And I do love statistics.

I've pulled a lot of interesting graphs from the database and will present them in a series of blog posts, of which this is the first one. We'll start slow by looking at the games' publishing dates and progress later to searching for more and more specific correlations.

It's worth noting that while IFDB has a lot of information, it's by no means comprehensive or 100% accurate. Therefore all this data reflects IFDB contents rather than the real world. How much the truth differs from the available data is open to discussion.

Click on the images to see the full data set, an interactive chart and chart display options. All available statistics can be seen collected on this page. More graphs are added as the series progresses.

You can also gladly suggest in the comments what kind of data you'd like to see analyzed.

Publishing date by year

There are 4173 games in the database, of which 4027 have a known publishing date. The graph for total number of games over time looks like this:

Total amount of games

More informative is the number of games published each year:

Games by year

You can see the "golden age" from mid-80s to early 90s, a small dip, and a steep rise starting soon after. I have no explanation for why there were so many releases in 2001–2003. In 2001 there were twice as many releases as in 2009.

In recent years the number of releases has varied between 115 (in 2009) and 173 (in 2010). There's no discernible trend to either direction and there's not enough data to make any predictions about the future. 2012 is not included in the graph but at the end of October there were 164 releases which is already more than in 2011 (153 releases).

Publishing month

Games published by month

This (and the next graph) is wildly inaccurate since about 70% of games have only the publishing year listed, not the exact date (which is why January 1st is excluded). Still, you see what you'd expect: IFComp games are released in October so it has the most releases and November is not a good time to release because the competition draws all the attention.

Publishing weekday

Publishing weekday

Games are released most often on Sunday and least often on Friday. Shouldn't be a surprise that weekends are the most common release days as most games are hobbyist efforts.

Next time we'll look at development system popularity.

Random IF reviews

After updating the IF Name Generator I went ahead and made an IF Review Generator that uses the name generator to make a title and mashes together sentences from IFDB reviews to create a new one. Just like the random names the reviews are mostly a jumbled mess, but occasionally it spits out a real gem.

The generated reviews are saved and can be retrieved with the same URL for sharing the best ones.

Starborn: the Vorple edition

A screenshot of the story, showing the story text, the map and the keyword listAlmost one year ago to the date I released Starborn, a short keyword-based scifi story made with Inform 7. Now I'm proud to present an Undum-based version, enhanced with Vorple, of course.

The content is essentially the same. Instead of typing the keywords you click on hyperlinks that are highlighted in the text and shown in a separate list next to the story. A clickable, dynamic map of locations is displayed on the opposite side. There's background music, but sound support is still a bit shaky in some browsers. Internet Explorer 7 or earlier will not work.

It uses the yet-unpublished version 1.2 of Vorple and demonstrates the use of the button interface in the map and in the keyword list, and tooltips that are displayed as brief instructions and as labels for the map. Under the hood it uses disposable links and other similar features. It's also using the IF Recorder plugin, probably the first time for an Undum story.

IF Recorder version 3

The tool formerly known as "Transcript recording plugin for Parchment" has been successfully used as a betatester transcript recorder with at least one game, and even in the currently running IFComp. Thanks to liberal version numbering scheme it has now reached version 3 and has been renamed IF Recorder.

Here are the major new features:

  • Works with Undum. Now someone might wonder why anyone would want to record hypertext fiction stories, but even if there's less need to check what kind of input readers give, other reasons still apply: you might want to get statistical data on which choices the readers make, or see if the readers give up at some certain point in the story, or even find out if some of the choices just don't work as they should.
  • Web interpreter template for Inform 7. There's a ready-made Inform 7 template to use with the "Release along with an interpreter" option. This makes it easier to start using the recorder although you still have to set up the database and the server scripts.

The project's new headquarters are at Github along with the instructions and downloads.