Friends of I7 Extensions for 6M62/v9.3

Looking for extensions for another version?

6M62 Patches by Friends of I7Version 2/220105

Achievements by Juhana LeinonenVersion 1/151231
A simple but flexible rule-based achievement system. Awarded achievements can optionally persist in external files after a restart.

Achievements by Mikael SegercrantzVersion 4/140513
A table-based way to assign scores for actions, rooms and objects.


An adaptive hint system based on Menus by Emily Short.

Adventure Book by Edward GriffithsVersion 1/140513
A system for creating Choose Your Own Adventure style programs, with advanced features.

Allows us to write rules that happen after an action fails, such as 'After not examining or searching something'

This extension replaces the Inform 6 lighting code with an Inform 7 version. In essence, it replaces the condition "object has light" in the Inform 6 templates with a call to an Inform 7 rulebook. If you don't want the overhead for a particular object, you can declare it to be "not specially lighted".

Alternative Startup Rules by Dannii WillisVersion 1/140516(for Glulx only)
Refactors the Startup Rules so that it can be more easily altered

Alternatives by Eric EveVersion 3
Allows checking the presence of an object or value in a set of objects or values with new either/or and neither/nor phrases. e.g., 'If the noun is either the carrot or the potato:', or 'Instead of eating something when the noun is neither the cake nor the pudding:'

Approaches provides a GO TO place action which allows the player to move through visited rooms to a new location. It also allows other characters to traverse the map to named locations. It is designed to work with Locksmith by Emily Short. Version 7 drops the erroneous requirement of the Plurality extension, which was still mentioned in Version 6.

Armed by David RatliffVersion 3/140513
This is just a (no longer) little extension to handle weapons and fighting.

Assorted Text Generation supplies routines for producing prose in various common situations.

A minimal extension that makes the NPC optional in ASK NPC ABOUT TOPIC and TELL NPC ABOUT TOPIC commands.

A table-based way to add atmospheric effects to rooms, regions, things and scenes.

Automap by Mark TilfordVersion 4/140513
An extension to automatically draw a map.

Automap IT by Leonardo BoselliVersion 4/140823
Translation in italian of Version 4/140513 of Automap by Mark Tilford. An extension to automatically draw a map.

Creates a drawer kind of container, which is designed to be part of an item of furniture. Automatically parses names such as 'top drawer' or 'fourth drawer' or 'left drawer'; adds some features for describing furniture with drawers.

Implicit taking of noun or second noun that may be invoked by (or used as) a check rule.

Basic Help by David CornelsonVersion 1/140513
This extension allows you to add basic Interactive Fiction help to your game.

Adds a HELP command to your Glulx or Z-Code project for Inform 6M62 or later which brings up a menu giving some standard instructions about IF. This is a tech and content update of Emily Short's Basic Help Menu extension made for compatibility with Wade Clarke's Menus. Requires Menus by Wade Clarke (version 5 or greater) to run.

Fornisce un comando AIUTO che mostra un menù con istruzioni standard. Semplicemente tradotto in italiano.

Basic Hyperlinks by Emily ShortVersion 3/140513(for Glulx only)
Allows the author to set hyperlinks in the main window and give instructions about what is to result from performing them.

Basic Literacy by Bart MasseyVersion 2/210618
Provides objects and actions for (proper) reading, writing and erasing.

Basic Plans by Nate CullVersion 3/211124
A library of basic relations, actions and plans for Planner.

Basic Real Time by Sarah MorayatiVersion 2/140513(for Glulx only)
Allows the author to incorporate Glulx real time events into an Inform 7 project.

Benchmarking by Dannii WillisVersion 2/210914(for Glulx only)
A general purpose benchmarking test framework that produces statistically significant results. Version 2 works with 6M62.

Bit Ops by Zed LopezVersion 2
Routines to access bitwise operators. Tested on 6M62.

(I see no description here.)

Alters BRIEF mode to display a room's brief description instead of nothing.

Bulk Limiter by Eric EveVersion 9
Containers and actors that limit their contents by bulk

Bulky items that can be carried only if the player is not carrying anything else.

Basato sull'espansione Version 2 of Bulky Items by Juhana Leinonen.

Char by Zed LopezVersion 1
Example: * Char

Provides a complex system for customzing the printed descriptions of characters wearing or carrying lots of stuff, similar to the room description system in Standard Rules. Requires Large Game Speedup by Nathanael Nerode.

Checkpoints by Peter OrmeVersion 1/150130
A method of using assertions stored in a table to verify your game works as expected.

This is a very simple extension, adding only a single phrase.

A simple system for building conversations.

Code by Zed LopezVersion 1
You always need whitespace between operators and operands.

Collections by Dannii WillisVersion 1/220218(for Glulx only)
Provides support for array and map data structures

A simple fix to preserve casing when the player's command is altered.

This extension allows the programmer to override what the player typed and parse different commands instead.

Command Preloading by Daniel Stelzer(for Glulx only)
A simple way to preload input onto the command line before the player begins to type.

Creates a situation without a command prompt where the player may simply press space or enter to WAIT. But if the player instead begins to type a command, the command prompt will then appear.

Support for creating 'unit tests' that run a series of commands and make assertions about the output of some of them.

Common Commands Sidebar by Alice GroveVersion 2/161024(for Glulx only)
Displays a list of common parser commands in a sidebar as a reference for novice players. Includes actions to turn the sidebar off and on. Story author can tailor the command list and the appearance of the sidebar, or just plug and play. For version 6L or 6M of Inform 7.

Responds to attempts to interact with unimplemented clothing, body parts, or generic surroundings. Requires Smarter Parser by Aaron Reed.

Report parsing errors to the player when ordering other characters to do things. Inform 7 normally redirects these errors to 'answer <topic>' so that the character can respond to arbitrary statements. But in an story with compliant characters who the player orders around routinely, that is frustrating to a player who has made a typo; this helps out the player. Requires Parser Error Number Bugfix and version 4 of Neutral Standard Responses. Tested with Inform 6M62.

Computers by Emily ShortVersion 8/160611
Computer hardware and software, including search engines and email programs. Version 3 adds handling for batteries and cords, if we include Power Sources by Emily Short (which itself depends on Plugs and Sockets by Sean Turner).

Allows easy implementation of a Creative Commons Public License of the author's choice.

Consolidated Multiple Actions by John ClemensVersion 3(for Glulx only)
An extension to consolidate action reports when performing an action on multiple objects, such as with 'take all'. Requires Hypothetical Questions by Jesse McGrew. Version 3 updated by Emily Short for 6L38 compatibility.

Provides a mechanism for contextually shifting descriptions.

Conversation Builder by Chris ConleyVersion 3/170420(for Glulx only)
An interactive question-and-answer system for building conversations.

A framework for conversations that allows saying hello and goodbye, abbreviated forms of ask and tell commands for conversing with the current interlocutor, and asking and telling about things as well as topics.

Builds on Conversational Defaults and adds the ability to define particular points in a conversational thread (nodes) at which particular conversational options become available.

This extension includes both Conversation Nodes and Conversation Suggestions, and makes the suggestions aware of conversation nodes. It therefore includes the complete conversational system in one package. It also requires Conversation Responses, Conversational Defaults, Conversation Framework and Epistemology. The documentation for this extension give some guidance on how these other extensions can be mixed and matched.

Provides a meaning for defining responses to conversational commands (such as ASK FRED ABOUT GARDEN) as a series of rules.

A way of controlling conversations using rules and tables. Also implements topic suggestions and Conversation nodes. Requires Plurality by Emily Short and Conversation Framework, Epistemology and List Control by Eric Eve.

Provides a means of suggesting topics of conversation to the player, either in response to a TOPICS command or when NPCs are greeted. This extension requires Conversation Framework. Version 3 makes use of Complex Listing by Emily Short if it's included in the same game rather than indexed text to generate a list of suggestions.

A simple change to the Standard Rules to allow conversation to work without a touchable noun.

Provides a set of rules to facilitate defining default conversational responses for different conversational commands targeted at various NPCs. This extension requires Conversation Framework.

Un'estensione in italiano per facilitare il rilascio di 'interactive fiction' secondo la Creative Commons License v25. Basata sull'estensione GNU General Public License v3 di Otis T. Dog.

A framework for customizing banner and version output. For 6M62.

Data Structures by Dannii WillisVersion 1/220331(for Glulx only)
Provides support for some additional data structures

Debug Files by Juhana LeinonenVersion 2(for Glulx only)
A development tool for saving debugging information to an external text file during beta testing.

Take quick notes about what needs doing: bugs, ideas, et cetera. Helpful for debugging.

(I see no description here.)

Initializes and repurposes the unused Glulx text styles to provide more flexibility in formatting.

Allows for doors that are implemented as having independent 'faces' -- to put a knocker on that can only be seen from on side, for instance, or to allow the player to lock one side with a key but the other with a latch. Also introduces a 'latched door' kind.

Description Decay by Jeff NymanVersion 1/200930
Provides a mechanism for allowing description levels to change based on number of visits

Developer Framework by Peter OrmeVersion 1/150130
Common definitions useful for Inform7 authors and extension developers.

Dice by David A WheelerVersion 1/220508
Support conventional X d Y dice notation, e.g., 3 d 6 totals 3 six-sided dice.

When a player types a standard direction in response to a disambiguation question, assume they meant to go that direction, not answer the question.

Disambiguation Control by Jon IngoldVersion 10/170416
Allows finer control over the disambiguation process used by Inform to decide what the player was referring to. Less guesswork, more questions asking for more input. Also removes the multiple-object-rejection in favour of asking for more information.

The ability to remove doors from the world and put them back.

Dishes by Emily ShortVersion 2
Dishes is a convenience extension for use with Measured Liquid. It provides some standard-sized cups, glasses, graduated measuring cups, jugs, bottles, etc., as well as a corked bottle kind that opens with the use of a secondary cork object.

Dynamic Objects by Jesse McGrewVersion 8/140515(for Glulx only)
Provides the ability to create new objects during game play.

Lets new rooms be created on the fly.

Dynamic Tables by Jesse McGrewVersion 5/140908
Provides a way to change the capacity of a table during the game.

Easy Doors by Hanon OndricekVersion 3/160425
Easy Doors provides a new kind of door which does not use map connections, and may be manipulated via rules more flexibly than the standard doors provided in Inform 7. Version 3 removes elements for compatibility with 6M62

This extension extends section 12.20 of Writing With Inform. The individual parts of a stored action -- actor, noun, second noun, action name -- can be changed directly. Also exposes new parts: request, text, participle, preposition, number, and each kind of value.

Provides a system of counting numbers which never go below 0 or above a specified maximum value. Any numbers above the maximum are considered infinite.

Adds a new hook into the parser, to edit a blank command before analyzing it.

Adds the ability to enter 'under' some object, such as hiding under a bed.

Exit Lister by Eric EveVersion 11
A status line exit-lister and an EXITS command, with optional colouring of unvisited exits. Selected rooms and doors can be optionally be excluded from the list of exits.

Automatic listing of available exits, with a reasonable dose of customisation built in.

Expanded Understanding by XavidVersion 4/200323
Various tweaks to understand additional variations of commands and have cleverer, more specific error messages in common failure cases.

More control over what is printed in a banner, including an easily-included copyright line.

Extended Debugging by Erik TempleVersion 2/100212
Provides a way for the author to release a build of a game while retaining both custom and built-in debugging commands. Also wraps Inform's debug tracing routines in phrases that authors can use to trigger rule-tracing from the source text rather than from the command prompt and provides other debugging features.

Extended Grammar by Aaron ReedVersion 8/140501
Adds some of the most commonly attempted verb synonyms and alternate grammar lines. Based on the Inform 6 extension ExpertGrammar.h by Emily Short.

Facing by Emily ShortVersion 11/160611
Provides actions to face a direction, look toward a named room, or look through a named door.

Far away by Jon IngoldVersion 5/160517
Creates an adjective for far-off items which cannot be touched.

Overrides carrying requirements for specific actions, and provides more nuanced carrying and touchability requirements when needed.

Flexible Logger by Peter OrmeVersion 3/201118
A logging tool for I7 that lets you log to transcript and (with Glulx) to file

Flexible Windows by Jon IngoldVersion 15/220305(for Glulx only)
Exposes the Glk windows system so authors can completely control the creation and use of windows

Provides a framework for organizing and displaying footnotes in a game. Version 2 makes Footnotes responsive and 6L38-compatible.

Game Ending as defined in Version 2/090402 of the Standard Rules by Graham Nelson.

Gender Options by Nathanael NerodeVersion 3/210331
More broad-minded English language gender/number model where male, female, and neuter are three separate true-false properties. Allows for objects to respond to any specified combination of HE, SHE, IT, and THEY. As fast as the Standard Rules. Tested with Inform 6M62.

Gender Speedup by Nathanael NerodeVersion 2/210331
When using Gender Options, clean up some I6 internals with functions related to gender which are irrelevant to English or rendered obsolete with Gender Options. Since these are called in the depths of ListWriter this should slightly improve speed. Not included in Gender Options due to likely interference with other extensions. Requires Gender Options. Probably will not work with non-English languages. Tested with Inform 6M62.

Glimmr Canvas Animation by Erik TempleVersion 2/160627(for Glulx only)
Provides a 'track'-based system for independent animation of graphic elements, canvases, and windows. Features animation presets, automated easing/tweening, and a detailed debugging log.

Glimmr Canvas-Based Drawing by Erik TempleVersion 4/160626(for Glulx only)
A framework for drawing graphics of various types--from sprite images to painted text--to a Glulx graphics window. Takes an object-oriented approach, with graphic elements represented as individual objects.

Glimmr Drawing Commands by Erik TempleVersion 3/160626(for Glulx only)
Provides commands for displaying images, shape primitives (such as rectangles, boxes, and lines), user-specified bitmap drawings, image maps, and for text-painting using 'fonts' with glyphs composed of either bitmaps or image files.

Glimmr Graphic Hyperlinks by Erik TempleVersion 2/160628(for Glulx only)
Allows us to identify any number of rectangular areas of a Glulx graphic window as 'hotlinked'. When the player clicks within one of these zones, a command will be entered on behalf of the player, or we can specify some appropriate response of our own.

Glk Events by Dannii WillisVersion 2/200807(for Glulx only)
A low level event handling system

Glk Input Suspending by Gavin LambertVersion 1/200930(for Glulx only)
Provides a mechanism to 'suspend' line and character inputs in progress to allow something to be printed, and then input resumed afterwards.

Glk Object Recovery by Dannii WillisVersion 1/171025(for Glulx only)
A low level utility library for managing Glk references after restarting or restoring

Glk Text Formatting by Dannii WillisVersion 1/180324(for Glulx only)
Provides functions for controlling colours and reverse styling at character granularity

Glulx Definitions by Dannii WillisVersion 1/160919(for Glulx only)
Core definitions which other Glulx/Glk extensions depend on

Glulx Entry Points by Emily ShortVersion 10/200602(for Glulx only)
Provides hooks to allow the author to write specialized multimedia behavior that would normally go through HandleGlkEvent. This is a rather dull utility library that will be of most use to authors wanting to write Glulx extensions compatible with other Glulx extensions already in use.

Glulx Text Effects by Emily ShortVersion 5/150123(for Glulx only)
Gives control over text formatting in Glulx.

Glulx Text Styles by Daniel Stelzer(for Glulx only)
Glulx Text Styles provides a more powerful way to set up special text effects for Glulx.

Graphic Links by Jeff SheetsVersion 3/161003(for Glulx only)
Allows the author to set hyperlinks in the Simple Graphical Window and give instructions about what is to result from performing them.

Graphical Map by XavidVersion 2/190831(for Glulx only)
Provides support for an image-based map with a static background and icons for the player and optionally other things or doors.

A set of functions I have often found useful, with checks to prevent conflicts with extensions.

Hidden Prompt by Daniel StelzerVersion 1/210618
Provides a simple way to hide the command prompt during long stretches of text.

Hiding Under by Eric EveVersion 4
Allows things to be hidden under other things, using a many-to-one underconcealment relation. Can be used either standalone (with basic functionality) or in conjunction with Underside (to add fuller functionality to both extensions). Version 3 of Hiding Under avoids using phrases deprecated in Version 6E59 of Inform.

Highscores by Dannii WillisVersion 1/190811(for Glulx only)
Record and review highscores to an external file

Provides a choice-based interface that can be freely switched between interactive and non-interactive modes. Basically, it does CYOA.

Hyperlink Extension Registry by Gavin LambertVersion 1/200930(for Glulx only)
Provides a framework to allow multiple hyperlink-processing extensions to co-exist without stepping on each others' toes.

Hyperlinks by Gavin LambertVersion 1/200807(for Glulx only)
Provides a core processing loop for hyperlinks. This is a basic interface intended to be used by other extensions rather than directly in stories.

Hypothetical Questions by Jesse McGrewVersion 4/180124(for Glulx only)
Allows us to test the consequences of a phrase or action without permanently changing the game state.

If True by Zed LopezVersion 1/211209
Allow if/unless and while to accept plain truth states instead of a full conditional. If Strange Loopiness is included, extend that to until loops. For 6M62.

Provides implicit taking, opening, closing, locking and unlocking actions for a variety of cases where this makes for smoother game play. The extension also defines phrases which make it easy to define additional implicit actions if desired. Version 11 can be used with Locksmith by Emily Short (although Implicit Actions covers most of what Locksmith does, and in most cases it will be better to use Implicit Actions without Locksmith). Requires Version 5 (or above) of Text Capture by Eric Eve.

Lets the author offer the player in-line hints, with options for presentation. This extension requires Inform 6M62 or higher to run.

Indefinite Article Substitution Fix by Matt WeinerVersion 1/161126(for Glulx only)
Indefinite Article Substitution Fix (for Glulx only, at present) is intended to fix a bug in the interaction of indefinite articles with text substitutions.

Infra Undo by Dannii WillisVersion 1/170502(for Glulx only)
Handles undo using external files for very big story files

This small extension eliminates the three newlines printed before the banner. It also provides a tool to attempt to place the cursor at the bottom of the screen, like old Infocom games. Due to wild variance between interpreters, it is not reliable.

Inline Hyperlinks by Daniel StelzerVersion 3(for Glulx only)
Provides a simple, HTML-inspired syntax for adding hyperlinks within say phrases. No manual management of hyperlinks required. Requires Text Capture by Eric Eve. Works seamlessly with, but does not require, Flexible Windows.

Inline Hyperlinks by Erik TempleVersion 3/161018(for Glulx only)
Provides a simple, HTML-inspired syntax for adding hyperlinks within say phrases. No manual management of hyperlinks required. Requires Text Capture by Eric Eve. Works seamlessly with, but does not require, Flexible Windows.

Inline Hyperlinks by Gavin LambertVersion 2/200930(for Glulx only)
Provides a simple HTML-inspired syntax for adding hyperlinks within any say phrases.

Inquiry by Zed LopezVersion 4
A framework for defining Y/N, multiple choice, or free-form questions to be asked immediately on game startup or subsequently. For 6M62.

Interpreter Sniffing by Friends of I7Version 1/140209(for Glulx only)
Phrases for testing, as far as is possible, which interpreter the story is running under.

Introductions provides an introductory paragraph about objects in a room description the first time the player looks in that location. It also allows the author to add segue text that will appear between one description and the next.

Italian Language by Massimo StellaVersion 3/171001
To make Italian the language of play. Heavily based on code written by Massimo Stella. Now maintained by Leonardo Boselli. Requires 'Text Capture' by Eric Eve.

JSON by Dannii WillisVersion 1/220301(for Glulx only)
Provides support for parsing and generating JSON

Keyword Interface by Aaron ReedVersion 9/150607
This extension emulates Blue Lacuna's emphasized keyword system for simplifying common IF input. Nouns, directions, and topics can be typed without a verb to examine, go, or discuss. Works with Glulx or z-code.

Performance improvements for games with large numbers of objects, by avoiding looping over all objects.

A cut-down version of Implicit Actions for use where code size may be restricted and the full functionality of Implicit Actions is not needed. Requires Plurality by Emily Short and is compatible with Locksmith by Emily Short.

Liquids by XavidVersion 2/191114
Basic support for sources of liquids and things that can hold a liquid, more minimalist than Liquid Handling by Al Golden.

List Control by Eric EveVersion 4
Provides a means of using tables as shuffled, cyclic or stop lists.

Provides a means of using tables as shuffled, cyclic or stoping lists. This is an alternative to List Control that uses list controller objects instead of a Table of Table Types.

List Utilities by Zed LopezVersion 1/220327
List utility functions

Location Images by Emily Short(for Glulx only)
Allows the author to set per-room images and show these as the player moves from room to room. Requires Simple Graphical Window by Emily Short.

Measured Liquid by Emily ShortVersion 6/201125
Measured Liquid provides a concept of volume, together with the ability to fill containers, pour measured amounts of liquid, and drink from containers. It handles mixtures as well, if desired. It is compatible with, but does not require, the Metric Units extension by Graham Nelson.

Menus by Dannii WillisVersion 1/160728
Display full-screen menus defined by tables

Menus by Wade ClarkeVersion 5
Lets you include a menu system of help, hints and/or other information in your Glulx or Z-Code project for Inform 6M62 or later. This upgrade of Emily Short's classic Menus extension features user-friendly single keypress controls, a more sophisticated UI, compatibility with screen readers and portable devices, an optional book mode with automatic pagination, and isolated message content to make translations easier. Classic Menus tables can be reformatted for this extension with a little work.

A table-based way to display full-screen menus to the player. Semplicemente tradotto in italiano.

No documentation yet.

No documentation yet.

Release for web with the Quixe interpreter.

Release for web with the Quixe interpreter.

MilleUna World by Leonardo BoselliVersion 1/140826
The part of the MilleUna Framework that manages additional features of the world model.

Inform 7 allows the connections between rooms to be modified during play, but doors never change. This extension makes doors as versatile as rooms.

Modern Conveniences creates kitchen and bathroom kinds of room, which will automatically be furnished with a set of plausible appliances. (This was originally an example in the manual of how to create extensions, and an annotated version may still be found there.) Version 3 adds compatibility with Measured Liquid, modeling flowing water from taps.

Changes the handling of the EXIT action, allowing commands such as EXIT PLATFORM and GET OUT OF CHAIR, making characters leave enterable objects before traveling, and altering the default interpretation of >OUT when the player is neither inside an object nor in a room with an outside exit. Updated for adaptive text.

Changes the one-minute-per-turn rule to account for failed and implicit actions.

Allows the author to define a mood value for characters and then use text substitutions such as '[when bored]The king fidgets on his throne[or sleepy]The king snores[at other times]The king grins[end when].' Moods will be interpreted in 'writing a paragraph' and similar contexts as the mood of the person described in the paragraph, but at other times according to the mood of the person to whom the player is currently speaking.

Provides facilities for the basic reproduction of multiple-channel audio with loops under Glulx.

A music-focused sound extension, which allows authors to loop sounds on different channels and fade between them.

This is just a collection of documentation and worked examples illustrating various features of Inform. There isn't much in the extension per se, but the examples in the documentation can be click-pasted in the Inform IDE for convenience.

Miscellaneous stuff I like to have built in when debugging and programming, but would never want to relase.

Replaces misleading, vague, and narratively-voiced parser messages with instructive, clarifying, and neutral versions, respectively. For Inform 6M62.

Notepad by Jim AikinVersion 3
A system for creating an in-game notepad that the player can write on.

A basic extension of the Implicit Actions extension into actions carried out by NPCs. This extension automatically includes Implicit Actions.

Nuanced Timekeeping by Jeff NymanVersion 1/201001
Provides more nuanced aspects of tracking time within a game.

Numbers the options in disambiguation questions, to help new players and solve the 'disambiguation loop' problem caused by indistinguishable objects.

Numbers the options in disambiguation questions, to help new players and solve the 'disambiguation loop' problem caused by indistinguishable objects. Semplicemente tradotto in italiano.

(I see no description here.)

The ability to treat object kinds as values.

Object Matching by XavidVersion 2
Support for getting the matched object when matching a snippet against a pattern and for disabling clarification when a command or snippet is ambiguous.

A development tool for testing all actions on any given object - or one action on all objects - at once to see whether the game's responses are sensible.

Objects Matching Snippets is a very simple extension that provides a convenient way to search for names of objects within a snippet such as the player's command or the topic understood.

Keeping track of what the player character knows and sees.

An extension to go with Room Description Control, which emulates as closely as possible the behavior of Inform defaults, but allows the intervention of Room Description Control.

(I see no description here.)

Parser Error Details by Zed LopezVersion 1(for Glulx only)
Says where the parser ceased understanding a command, and describes ways the dictionary does know how to use that verb. Tested on 6M62.

Fixes a nasty bug in the I7 error names in Inform 7 version 6M62 (and probably earlier).

Based on Version 11 of Patrollers by Michael Callaghan.

In lieu of compass directions, we may VISIT, ATTEND, GO TO, and FIND various people, events, places, and things. Characters may INVITE, PERMIT, and FORBID each other to or from their respective domains.

We may ask the time when (a description of scenes) began/ended; the number of turns since (a description of scenes) began/ended; if (a future event) is soon; the time/turns until (a future event); the time/turns when (a future event). We may also un-schedule a future event with 'never shall'; begin or end a scene on an event; say a time 'as a time period'; repeat through future events; and change the turns-to-minutes ratio with 'per'.

This grants five new phrases regarding the player's command, the matched text, and the topic understood: if one is a topic listed in a table, if one includes or matches a topic listed in a table, what corresponds to one within a table, and the last phrase corrects a bug so the topic understood may be used within an understand-as-mistake line.

Planner by Nate CullVersion 2/211124
A universal goal planner for self-directed NPCs.

Plugs and Sockets by Sean TurnerVersion 4/170924
System for handling plugs and sockets.

Points Awarding as defined in Version 2/090402 of the Standard Rules by Graham Nelson.

Adds basic typo correction by checking the first few letters of misunderstood input against the printed names of nearby objects. Requires version 15 of Smarter Parser by Aaron Reed. Supports Scope Caching by Mike Ciul for faster performance.

Possible Movements by Peter OrmeVersion 2/130115
This provides two commands available to the player: "exits" which lists all the obvious exits in the current location, and "enterables" which lists the enterable things.

Postures by Emily ShortVersion 2/180528
Postures defines three postures -- seated, standing, and reclining -- and allows pieces of furniture to specify which postures are possible and preferred when the player is on those furnishings.

Power Sources provides an implementation of plugs and batteries, and is designed to be used alongside Computers or as a base for other device implementations. It requires Plugs and Sockets by Sean Turner.

Provides a way to customise the prepositions used to refer to containment or support, and perhaps other custom relationships added by other extensions.

'Printing the name' rules make TWO passes over the same object when Inform needs to determine the appropriate article to print. This is a non-issue for many rules, but 'printing the name' rules with side effects may need to know which stage is currently being processed (article-choosing or name-printing), so that they can avoid double-execution of any side effects.

A light testing extension to identify rooms and game items that may still be lacking descriptions or other properties.

Facilitate giving switched on/off to kinds other than devices.

Questions by Michael CallaghanVersion 5/150418(for Glulx only)
An extension to allow us to suspend normal parser input to receive and respond to answers to questions.

An extension to Reactable Quips to allow for more traditional menu-based conversation.

Randomness by Mikael SegercrantzVersion 2/170921
Random number generation using a simple seedable pseudorandom number generator.

Rapid Prototyping by B David PaulsenVersion 1(for Glulx only)
A way to create and extend a game world on the fly during testing via a REPL idiom.

Reactable Quips by Michael MartinVersion 10/171116
A table-based approach to NPC conversation chains, as well as allowing rules to fire on lines of conversation.

Real Date and Time by Ron NewcombVersion 2(for Glulx only)
Allows the author to get the real-world time and date from the player's computer.

Real-Time Delays by Erik TempleVersion 1/100607(for Glulx only)
Allows the author to specify a delay of a given number of seconds/milliseconds before continuing the action.

Recorded Endings by Emily ShortVersion 5(for Glulx only)
Records the endings the player encounters in multiple play-throughs to an external file; then adds an ENDINGS option to the final question to allow the player to review which endings he has seen so far.

Allows the player to travel between regions. Useful for example when the player travels between large regions far apart from each other (e.g. cities), or for traveling in vehicles and public transportation.

allowing relative directional movement as well as locationally relative descriptions.

(I see no description here.)

(I see no description here.)

Adds some helpful testing commands for changing default responses.

Responsive Disambiguation is a plug-and-play extension; it should have its desired effect merely by including it.

Automatically corrects commands given to NPCs where the order is reversed, for example HELLO, ALICE instead of ALICE, HELLO.

Rewrite the Command Line by Ron NewcombVersion 2/110202(for Glulx only)
Allows us to erase then rewrite the commands our player types in.

Rideable Vehicles by Gavin LambertVersion 1/200619
Improves how rideable vehicles and animals interact with other supporters.

Rideable Vehicles by Graham NelsonVersion 3/220311
Vehicles which one sits on top of, rather than inside, such as elephants or motorcycles.

A framework by which the author can considerably change the listing of objects in a room description. Includes facilities for concealing objects arbitrarily and changing the order in which objects are listed.

Fixes some issues in Standard Rules related to printing room descriptions with enterable supporters. Experimental.

This utility extension allows players to define replacements to alter their own commands. It does not affect the world model or the game itself in any way, only the user interface.

Scenery Words by XavidVersion 1/170913
This extensions loops over all the rooms in your games and tries examining words in the room description to see how the game responds. This is designed to catch words players expect to be able to examine, but cannot due to author oversight.

Scheduled Activities by John ClemensVersion 10/220110
An extension to allow scheduling of activities. For 6M62

Scopability by Brady GarvinVersion 1/210620
The ability to toggle objects' scopability; the parser does not acknowledge the existence of unscopable objects, even if they are explicitly added to scope.

Scope Caching by Mike CiulVersion 2/120725
Gives things the 'marked visible' property, to check the visibility of something without repeating the entire scope loop each time. Works with Epistemology by Eric Eve, Conditional Backdrops by Mike Ciul, and Remembering by Aaron Reed.

Allows us to ask why the Deciding the Scope For Something activity is running, so we can modify the scope only when we absolutely need to. Highly useful for giving NPCs commands over telephones or while in darkness, creating 'can hear' relations, or modifying how Inform parses the command line.

Scoring by Leonardo BoselliVersion 1/140824
About the score.

Scoring IT by Leonardo BoselliVersion 1/140824
About the score. Translated in Italian.

On startup, asks user 'Are you using a screenreader?' and sets a global that can subsequently be tested. For 6M62.

Doors and switches that cannot be acted upon until they are discovered.

Doors and switches that cannot be acted upon until they are discovered.

Allows commands of the form GET X, Y, AND Z to be parsed.

Allows non-player characters to follow the player (or one another); adds a FOLLOW command and a corresponding STOP FOLLOWING command so that the player can issue these orders to non-player characters. Adds adaptive text features.

Allows non-player characters to follow the player (or one another); adds a FOLLOW command and a corresponding STOP FOLLOWING command so that the player can issue these orders to non-player characters. Semplicemente tradotto in italiano.

Simple Graphical Window by Emily ShortVersion 10/161003(for Glulx only)
Provides a graphics window in one part of the screen, in which the author can place images; with provision for scaling, tiling, or centering images automatically. Glulx only.

Simple Graphical Window by Leonardo BoselliVersion 8/140908(for Glulx only)
Provides a graphics window in one part of the screen, in which the author can place images; with provision for scaling, tiling, or centering images automatically, as well as setting a background color. Glulx only. Modified because of changes in 6L38 release.

Simple HTML Window by Leonardo BoselliVersion 2/140731(for Glulx only)
Provides an HTML window in the left part of the screen, in which the player may write anything. Glulx only.

Simple Spelling by Alice GroveVersion 2/160807
Simple Spelling aims to make stories more screen-reader-friendly by allowing players to request the spelling of any visible thing. This extension adds two actions: 'listing visible items for spelling' and 'spelling the numbered word.'

Singing Reloaded by ShinVersion 1
Singing as defined in Version 2/090402 of the Standard Rules by Graham Nelson.

A room description extension based on Room Description Control (which is required). All contents of a room are summarized in a single paragraph, starting with the regular room description.

Small Kindnesses by Aaron ReedVersion 13/140501
Provides a number of small interface improvements for players, understanding commands like GO BACK and GET IN, an EXITS command which automatically runs after failed movement, a USE verb, and more. Compatible with Modified Exit and Approaches by Emily Short, Keyword Interface by Aaron Reed, and Implicit Actions by Eric Eve.

Smarter Parser by Aaron ReedVersion 16/210817
Understands a broader range of input than the standard parser, and can direct new players towards proper syntax.

Some functions for setting and use of snippets (parts of the player's command).

Spanish Language by Sebastian ArgVersion 1/210825
To make Spanish the language of play.

Speechless by Zed LopezVersion 1
Make the player unable to speak or interact with others by speech, and block references to the player being able to speak.

Reduce the size of games using Room Description Control by removing unused Standard Rules material.

Startup Precomputation by Dannii WillisVersion 1/160718(for Glulx only)
A system for precomputing slow startup code

Story Substrate by Jeff NymanVersion 1/200930
Provides information about the substrate that a story is executing on.

Strange Loopiness by Zed LopezVersion 1/211127
Repeat variants for: until loop; loop counting down over a numeric or enumerated value range; loop n times. For any loop, optionally assign a loop counter variable; for looping through tables optionally assign a row number variable. Allows more flexible syntax for the existing repeat loops. For 6M62.

Exposes the snippets referring to each noun.

Supercredits by Zed LopezVersion 1/211206
Provides the Supercredits command to list the complete list of extension credits (i.e., including those that use authorial modesty) alphabetized by author name then extension name, and formatted nicely. The whole extension is marked Not for Release. For 6M62.

Supplemental by Jeff NymanVersion 1/200930
Personal extension to keep the main source text clean.

Swearing as defined in Version 2/090402 of the Standard Rules by Graham Nelson.

Switch by Zed LopezVersion 2/220329
A switch statement. Tested with 6M62.

Tab Removal by Nathanael NerodeVersion 1/210314
For commands with tabs in them, replaces tabs with spaces before passing them on to the game.

Tabulate by Zed LopezVersion 1/210919
Provides a phrase to go from a text to a table name, and a not-for-release tabulate action to show the contents of a table. For 6M62.

An extension to go with Room Description Control, providing a different style of room description than the default. Parenthetical remarks such as (open) and (in which are...) are omitted in favor of full English sentences. Removes the requirement for Text Variations.

Takeability by Mike CiulVersion 1/110404
(I see no description here.)

Text Capture by Eric EveVersion 8
Allows the capture of text that would otherwise be sent to the screen, so that the text can be further manipulated, displayed at some other point, or simply discarded. Version 6/120511 allows the use of unicode in Glulx.

Text Loops by Zed LopezVersion 1
Loop through characters, words, lines, or paragraphs in a text.

Textile by Zed LopezVersion 1/220331
Text utility functions.

(I see no description here.)

A conversation system tracking facts known, phrases spoken, and subjects of conversation.

Applies title case to room names printed as a heading or in the status line. Creates the printing a heading activity for further customization. Tested with Inform 6M62. Requires Undo Output Control by Erik Temple or by Nathanael Nerode to handle the case of room name printing after UNDO.

Title Page by Gavin LambertVersion 1/200510
Provides an intro screen to the story, offering an image and menu.

Title Page by Jon IngoldVersion 4/200510
Provides an intro panel to the game, offering a menu, a restore and restart prompt, a quotation and (under Glulx) a picture. Updated to version 3 for compatibility with Inform 6L02 and later by Emily Short. Updated to version 4 by Gavin Lambert to fix an error with 'use skip intro'.

Fornisce un pannello introduttivo al gioco, con un menù, la possibilità di caricare e ricominciare, una citazione e (in Glulx) una figura. Semplicemente tradotto dall'originale.

Transit System provides a train-car kind which follows a schedule around the map, allowing the player or other characters to get on or off.

Trial by Zed LopezVersion 1
Simple means to use a command ('try') to launch tests of code that isn't naturally command-centric. Facilitates testing such code with regtest. For 6M62.

Provides a framework for listing inventories in natural sentences, akin to Infocom's game Trinity. Separates carried and worn objects, followed by objects that contains other objects. What's listed in the third section is customizable via a rulebook. Objects can be marked as not listed when carried or worn as well as marked as having their contents listed in the inventory when they're empty. This extension is based upon the extension Written Inventory by Jon Ingold.

Adds a tutorial mode, which is on by default, to any game, to introduce key actions for the novice player. Can be revised or expanded by the author.

(I see no description here.)

Underside by Eric EveVersion 6/210627
Allows objects to be put under other objects. An underside usually starts out closed so that its contents are hidden from view. Requires Version 7 (or later) of Bulk Limiter; the space under objects is limited by bulk. Underside is compatible with Version 10 or later of Implicit Actions, but does not require it. Version 5 of Underside avoids features deprecated in Version 6E59 of Inform.

Undo Output Control by Erik TempleVersion 5/170902
In addition to allowing control over UNDO default messages, provides hooks into UNDO processing, including multiple ways to suspend UNDO temporarily, to place limitations on UNDO (such as allowing only one UNDO in a row), to undo the current turn from code, and to control when the game state is saved. Using the latter, we can effectively control which turn UNDO returns us to. Also allows changing the words which invoke UNDO and OOPS. Also allows the story to edit a blank command before analyzing it. Updated to Inform 6M62.

Provides hooks into UNDO processing, including multiple ways to suspend UNDO temporarily, to place limitations on UNDO (such as allowing only one UNDO in a row), to undo the current turn from code, and to control when the game state is saved. Using the latter, we can effectively control which turn UNDO returns us to. Also allows changing the words which invoke UNDO and OOPS, and allows the story to edit a blank command before analyzing it. Updated to Inform 6M62.

Unicode File IO by Zed LopezVersion 2/220219(for Glulx only)
Experimental support for reading and writing external files that may include characters longer than a byte. For 6M62.

Allows an author to verify that an interpreter can support specific Unicode effects.

Unified Glulx Input by Andrew PlotkinVersion 3/160213(for Glulx only)
Unified Glulx Input is an attempt to tidy up all the messy I6 APIs that you need to customize your game's input system.

Unit Testing by Peter OrmeVersion 2/150205
A developer extension that lets you write unit tests (asserts) in Inform 7.

Unit Tests by Zed LopezVersion 7
For unit testing. Tested with 6M62.

Universal Opening by Peter OrmeVersion 1/120223
This extension provides you with testing commands for force opening things. The commands are all in sections marked as "not for release" - this is intended to be a tool during development and test, not for actual games.

Unknown Word Error by Mike CiulVersion 2/170531
Provides Infocom-style parser messages such as 'I don't know the word 'kludge'.'

Will run the Unsuccessful Attempt By rules for all characters, including the player. Also silences the library messages printed by the built-in Check rules.

I7's line number phrase returns lines with left and right whitespace trimmed; other than using regexps, there isn't a built-in means to access the raw untrimmed line. This adds an ``untrimmed line number`` phrase.

Allows individual actions to take a different number of seconds, or no time at all. Also allows the standard time taken per turn to be defined as so many seconds, which can be varied during the course of play

Verb Stripping by Nathanael NerodeVersion 1/171007
Removes a number of verbs from the standard rules; verbs which might cause confusion in a game whose theme is not adventure.

Verbal Commands by Zed LopezVersion 1/211213
Provides a 'verbs' command to output known verbs, a 'conjugate' command to demonstrate the conjugation of a given verb, and a 'meaning' command to report whether a verb is for saying only, means a property or what relationship it means if it means a relationship. The whole extension is marked Not for Release. For 6M62.

Verbs by Zed LopezVersion 1/211231
Provides a phrase that, given a text, returns a corresponding verb if it exists. For 6M62.

Allow certain things in adjacent rooms to be examined.

Containers and actor that limit their contents by volume. Modeled after Bulk Limiter by Eric Eve, but understands length, width, and height as well as total size.

Vorple by Juhana LeinonenVersion 3/191117(for Glulx only)
Core functionality of Vorple, including JavaScript evaluation and adding HTML elements.

Vorple Command Prompt Control by Juhana LeinonenVersion 3/181103(for Glulx only)
Manually triggering parser commands, changing the contents of the command prompt and manipulating the command history.

Vorple Element Manipulation by Juhana LeinonenVersion 3/181103(for Glulx only)
Adding, removing, hiding, moving and other basic manipulation of HTML document elements.

Vorple Hyperlinks by Juhana LeinonenVersion 3/181103(for Glulx only)
Hyperlinks that either open a web site, execute a parser command or evaluate JavaScript code.

Vorple Modal Windows by Juhana LeinonenVersion 3/190914(for Glulx only)
Modal windows are dialog prompts or other information windows that pop up on top of the play area and require user action to dismiss.

Vorple Multimedia by Juhana LeinonenVersion 3/191119(for Glulx only)
Displaying images and playing sounds and music.

Vorple Notifications by Juhana LeinonenVersion 3/181103(for Glulx only)
Notifications that display a short message on the screen and disappear after a few seconds.

Vorple equivalent of Basic Screen Effects by Emily Short. Waiting for a keypress, clearing the screen, aligning, styling and coloring text.

Vorple Status Line by Juhana LeinonenVersion 3/181103(for Glulx only)
The Vorple version of the standard status line.

Vorple Tooltips by Juhana LeinonenVersion 3/181103(for Glulx only)
Tooltips that can be activated on request or when the mouse cursor is moved over an element.

World Knowledge by Jeff NymanVersion 1/210906
Mechanics to represent the player's knowledge and understanding about the world.

Just Version 3 of Written Inventory by Jon Ingold made adaptive. Provides a framework for listing inventories in natural sentences. Separates carried and worn objects, followed by objects that contains other objects. What's listed in the third section is customisable via a rulebook.

Xorshift by Dannii WillisVersion 1/140818
Allows Inform 7's random number generator to be replaced with one that is consistent across all interpreters