=================================
 IFM: Interactive Fiction Mapper
=================================

About 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.

For detailed documentation, see the `IFM user guide <doc/html/index.html>`_.

Copyright
=========

IFM and its utility programs are free software, and you may redistribute
them under certain conditions; see the files ``COPYING`` and
``COPYING.DOC`` for details.

Installation
============

See the file ``INSTALL`` for installation details.  But it basically boils
down to::

    ./configure
    make
    su -c 'make install'

If you want to build IFM on Windows, you'll need to install Cygwin_ first.
Then, use the same commands as above.

Hacking
=======

IFM is hosted at Bitbucket_.  You're free to hack on it to your heart's
content.  If you have just done a ``hg clone`` to get a copy, you'll need
some extra tools installed to build it:

* GNU ``make``.
* The GNU autotools: ``autoconf``, ``automake``.
* Parser generator tools: ``lex``, ``yacc`` (or ``bison``).
* Sphinx_ to generate the IFM manual (and you'll need to install Pygments_
  and ``pyifhilite`` from the ``contrib`` directory if you want syntax
  highlighting).

To get things started, run ``autogen.sh``.  Then build as normal.

If you want to hack things on Windows, you'll need to install Cygwin_, as
per installation.

Finally...
==========

Feel free to send comments, bug reports, suggestions, etc. to me.  I am
Glenn Hutchings (zondo42@googlemail.com).

Happy mapping!

.. _Bitbucket: http://www.bitbucket.org/zondo/ifm
.. _Sphinx: http://sphinx.pocoo.org
.. _Pygments: http://pygments.org
.. _Cygwin: http://www.cygwin.com

.. Local Variables:
.. mode: rst
.. End:
