Your favorite extensions

In each of my Inform games (I know I’ve only released the one but I have truly an unreasonable amount of WIPs), I find that I keep using the same extensions over and over. Some of them make coding tricky things more convenient, some of them add important functionality, and some of them I’ve just gotten used to having around.

So, I got to wondering, what are y’all’s favorite extensions? Or the extensions you keep coming back to? Which extensions can’t you live without and why?

I have… quite a lot, honestly, but special mention goes to Glulx Text Effects by Emily Short, Alternatives by Eric Eve, and Far Away by Jon Ingold for appearing in, I think, literally every game I’ve even started coding.

(I considered putting this in off-topic but it’s specific enough to Inform that I thought it fit better here. Please do move it if this is the wrong place!)


I didn’t understand or like extensions for years, so I never used them until recently, so I ended up copying the same code over and over again. I didn’t even know there was a far away extension, that would save so much time!

The ones I’ve used most since I found out about them is Gluck Text effects (I almost feel this should just be always on in every game), Emily Short’s Locksmith (so convenient!) and the conversation system I turned into an extension (Clues and Conversations).

I know hybrid choices used to be really popular, but I haven’t seen it in the wild recently.


… stay tuned for my SeedComp entry


I’ve done a lot, I mean A LOT with Wade Clarke’s menu stuff.

1 Like

I like Object Response Tests (for testing) and Numbered Disambiguation Choices (to make life easier for the player in general, and also to prevent situations where you might have accidentally made it impossible for the player to disambiguate). I also like to use a version of Menus that has numbered choices. I think there’s one on Github updated by Dannii Willis.


I recently looked at all the IFComp Glulx games from 2016 on, 99 of which were 6L38 or 6M62. I ignored 4 6G60 games. (You had 7 years, people. Would it have killed you to submit one more game so that all my numbers would be turn out to be nice, neat percentages?) I ran glulx-strings on ‘em all to get their comprehensive extension lists, regardless of authorial modesty (unless the author went far enough out of their way to tamper with the I6 code output by the I7 compiler). So I actually have some data on favorites as represented by IFComp entrants’ use.

43 used no extensions outside of the ones that ship with Inform. 14 of those used no extensions at all, other than the Standard Rules and English Language, which I’ll ignore from here on out.

81 used Basic Screen Effects.
25 used Menus
15 each used Locksmith & Glulx Text Effects
14 used Epistemology
9 used Glulx Entry Points
8 used Punctuation Removal

We’re down to just 7 games before we see the first extension that doesn’t ship with Inform. (but it’s a pretty safe bet that 6 out of the 9 Glulx Entry Points users were using Dannii’s rewrite, not the one that shipped with Inform.)


  • Quip-Based Conversation by Michael Martin
  • Reactable Quips by Michael Martin
  • Rideable Vehicles by Graham Nelson


  • Glk Object Recovery by Dannii Willis
  • Glulx Definitions by Dannii Willis
  • Glk Events by Dannii Willis


  • alternative startup rules by dannii willis
  • small kindnesses by aaron reed
  • hybrid choices by aw freyr
  • exit lister by eric eve
  • conversation framework by eric eve
  • flexible windows by jon ingold


  • conditional undo by jesse mcgrew
  • object response tests by juhana leinonen
  • adaptive hints by eric eve


  • graphical map by xavid
  • vorple (various) by juhana leinonen
  • extended grammar by aaron reed
  • snippetage by dave robinson
  • conversation responses by eric eve
  • expanded understanding by xavid
  • object matching by xavid
  • glimmr drawing commands by erik temple
  • undo output control by erik temple
  • questions by michael callaghan
  • glulx image centering by emily short

At the bottom we start seeing a lot more variety. 17 games used 2 extensions; 47 used 1 extension.

In many cases I could see that extensions were being used by their own author for their own games, but I didn’t try to quantify that.

But it looks like if people use a non-standard (i.e., not shipping with Inform) extension written by someone else at all, it’s uncommon for it to be more than one.

Edited to emphasize: the game counts above overlap! 4 different games included each of conditional undo, object response tests, and adaptive hints, but that’s not to say that any given game including any of those didn’t include other extensions that appear higher or lower on the list.


Steph Cherrywell used it most of her games Brain Guzzlers, Zozzled. It’s shockingly powerful if you learn it.

Isn’t “Locksmith” part of Standard Rules now? I think “Epistemology” is?

“Variable Time Control” is useful if you want to do odd things like slow-motion events. I actually experimented with it in one game prototype to simulate the effect of being stoned and time passing really slowly.

“Conversation Responses” is really good - for me more useful than the more complicated conversation suites Eric Eve made.

Oh and “Recorded Endings” is tiny but amazing if you want to have a game remember details between plays. I gimmicked it up to not just do endings.

I’ve always wanted to make a game with “Transit System”.


Locksmith is a built-in extension, not part of the standard rules but pre-installed and ready to use. I’m not sure about Epistemology.

My early games have few extensions, my later ones many more. Locksmith and Basic Screen effects, both by Emily Short, are the two I’ve used the most, though I try to avoid actual locks and keys in my games these days. Basic Screen Effects I use mainly to tinker with the status line.

After that, the ones I’ve used the most are Eric Eve’s conversation package in various combinations. One game uses the whole Conversation Package, others just use Conversational Defaults and Conversation Responses. Epistemology is used by the conversation package and it’s one I couldn’t do without. I’ve never liked Hybrid Choices; switching to numbered multiple choice conversation always takes me out of the game a bit, but I’m very interested to see what the new conversation system in Inform 10 will be like.

Another one I’ve found useful is the rather ancient Scheduled Activities by John Clemens. I’ve used Approaches by Emily Short in two.


Changes from 8.5/6G60 to 9.1/6L02:

  • English Language by David Fisher was succeeded by English Language by Graham Nelson
  • Graham’s Approximate Metric Units was also added
  • Plurality and Case Management by Emily Short were removed, with much of Plurality’s functionality integrated into the language
  • Emily Short’s Inanimate Listeners and Skeleton Keys were added.

The included extensions were unchanged from 9.1/6L02 through 9.3/6M62:

  • Graham Nelson/Metric Units.i7x
  • Graham Nelson/Unicode Full Character Names.i7x
  • Graham Nelson/Rideable Vehicles.i7x
  • Graham Nelson/English Language.i7x
  • Graham Nelson/Approximate Metric Units.i7x
  • Graham Nelson/Standard Rules.i7x
  • Graham Nelson/Unicode Character Names.i7x
  • Emily Short/Glulx Entry Points.i7x
  • Emily Short/Inanimate Listeners.i7x
  • Emily Short/Complex Listing.i7x
  • Emily Short/Basic Help Menu.i7x
  • Emily Short/Menus.i7x
  • Emily Short/Locksmith.i7x
  • Emily Short/Skeleton Keys.i7x
  • Emily Short/Glulx Text Effects.i7x
  • Emily Short/Basic Screen Effects.i7x
  • Emily Short/Glulx Image Centering.i7x
  • Emily Short/Punctuation Removal.i7x
  • Eric Eve/Epistemology.i7x

v10 brought us Basic Inform, of course, and Glulx Entry Points was remanded to the Public Library. It looks like the forthcoming version under development is dropping the Unicode Character Names extensions as part of the standard distribution.


Some things I think are so useful they should be baked in:

Far Away by Jon Ingold.
Scope Caching by Mike Cuil
Optimized Epistemology by Andrew Plotkin
Alternative Virtual Machine Startup by Dannii Willis
Scopability by Brady Garvin
some form of Unicode Parser by Andrew Plotkin after updating to v10


First and foremost, Congrats and Bravo to Zed for his statistical analysis of extensions glulx binaries !

Personally, I use extension only if actually needed or ease the coding, and if one thinks on, the decision of using or not an extension should be done during the early coding phase.

Best regards from Italy,
dott. Piergiorgio.