IFM - Interactive Fiction Mapper

[Note: This web page is not actively maintained at this time.]

IFM is written by Glenn Hutchings. Version 5.2 is available from the Interactive Fiction Archive. Specific links include:

What is IFM?

IFM is a language and a program for keeping track of your progress through an Interactive Fiction game. You can record each room you visit and its relation to other rooms, the initial locations of useful items you find, and the tasks you need to perform in order to solve the game.

The IFM mapping commands are designed so that you can easily add to the map as you explore the game. You type in the rooms you visit and the directions you move in to reach other rooms, and IFM calculates the position of each room relative to the others. A map can consist of several independent sections, allowing you to divide up the map however you like.

The IFM task commands, if used, allow you to specify the order in which game-solving tasks must be done. The IFM program can then calculate and print different styles of walkthrough for the game.

IFM can write hardcopy maps directly to PostScript, suitable for printing or viewing. It can also write maps in Fig format, which can be viewed and edited using Xfig, or converted into many other formats.

There are a couple of utility programs bundled with IFM including tkifm and scr2ifm.


tkifm is a simple graphical interface to IFM. To use it, you need to have Tcl/Tk installed (probably v8.0 or greater).

tkifm provides you with a window allowing you to edit IFM input (or just view it, if you want to use your own editor), and menus to view the maps you've generated so far or print them to a PostScript file.


scr2ifm is a program that takes one or more Infocom-style transcripts of an IF game and creates a map in IFM format. It's a perl script, so you'll need perl (version 5.002 or greater).

scr2ifm is designed for people who want maps of their games but don't want the hassle of making one themselves (how lazy can you get?). As long as you bear in mind a few simple things while playing, the map-making process is completely automatic. With a tiny amount of effort, you can also add other nice IFM features (items and tasks) too.

scr2ifm was inspired by Frobot, another transcript-reading mapper. But scr2ifm in combination with IFM does a much better job.

Feedback on how well it does (or not) would be appreciated. scr2ifm has been tested on several different types of transcript (Infocom, Inform, TADS, Magnetic Scrolls), but is probably still far from bullet-proof.

IFM Syntax Highlighting

If you happen to use the VIM editor (a vi-clone) then you can use ifm.vim to give you syntax highlighting when editing IFM files. (Written for VIM 5.3)

IFM Maps

Note: none of these were approved by the author(s) of the original games and they are in no way guaranteed to be accurate or useful. If you need a Postscript viewer or converter I recommend Ghostscript and Ghostview

Some of these maps use options added to IFM 5.0, if you're still using a previous version you should upgrade to the latest version. Be carefull using these as examples, many do things the hard way since they were written for earlier versions of IFM.

If you make any maps using IFM (or come across any not found here), I'd appreciate it if you e-mailed me a copy.

I ask that you please e-mail me any fixes, additions, or changes you make to any of these maps. I'll take changes in whatever format you send but I would highly prefer that any changes are sent as a unified diff, a context diff, or the entire edited file (in that order of preference). No matter how you send the changes please indicate the revision number your changes are based on (given on the Id: line at the top of the file).

Maps with task lists:

Maps without tasks (or with broken task dependencies):

Unfinished/Partial Maps: (use at your own risk!)

Best Viewed With Any Browser
Last Modified: $Date: 2008/02/05 16:35:38 $
Dave Chapeskie <>