Inform - Resources - Extensions

About extensions  

Complete catalogue  

Model world  
Directions and doors  
NPCs  
Time  

Parsing  
Listing objects  
Menus and displays  

Mathematical fns  
Textual fns  
Programming  
Z-Machine  
Glulx  

Debugging  
Licenses and help  

Replacements  

About Library Extensions

Library extensions provide optional extra features and are not usually included in the standard Inform distribution: instead, designers download them as and when needed. They are documented and maintained by their original authors.

A library extension file is written in standard Inform source code, but its filename usually ends ".h" rather than ".inf". It is normally installed simply by putting it into the same folder that the standard library files inhabit.

Some more complicated extensions come with documentation files, others provide short examples of their use, but for most extensions the best way to get an idea of what they do is to open them in a text editor and read them. Comments at the top of the file often provide useful information.

The generic way to use an extension is to Include it, just as if it were a library file. If there is no other indication, then do so immediately after Grammar has been included.

If you create a new extension, please give it a descriptive, not-too-long name that hasn't been used before. Before publishing it, please enlist beta-testers to give it a try, and if possible ask around to find what features other designers might want (or not want).

If you use an extension in your game, it is polite to credit the author in some way. If you want to go a step further and comment on how useful you found the extension, one way to do so is to send a review to Emily Short's Guide to Inform Library Contributions. This page does not attempt to be complete, but it does offer (somewhat subjective) descriptions of some popular extensions and reviews of how useful they are.


Last updated 24 December 2007. This web site has not been fully supported since April 2008. Information may be out of date. This page was originally managed by Emily Short.