			     int-fiction

		   An Interactive Fiction Frontend
		  Alan Shutko <ats@hubert.wustl.edu>

This is the first official release of int-fiction, a unix frontend to
IF games and their interpreter.  It was written to solve the problem
of having lots of portable IF datafiles (TADS, ZIP, Scottfree, etc.)
and having to remember which interpreter to use with which game.

int-fiction pops up a menu listing games available on your system,
showing the title and a short description.  You use the cursor keys to
choose a game and int-fiction will load the correct interpreter on the
game.

This works as follows.  You put your game files wherever you want.
Place the interpreters likewise.  And set a few environment variables
to list the locations of each.  There's a master list of games,
descriptions and data files.  Then the program will search your path
for the games, and only show the ones you have on your system.

INSTALLATION:

Edit the top of the Makefile for your favored compiler, flags, etc.
Linux users may need to change the -lcurses in LOADLIBES to
-lncurses.  Change the GAME_LIST and IF_PATH if you want them compiled
into the executable.  (You can still change them later with
environment variables.)  Finally, decide where you want the program
places, and set INSTALL_DIR.  The game files will be placed in the
lib/, bin/, and man/ directories under this.  Then type 'make'.

To install it, either copy it by hand or invoke 'make install'.

CONFIGURATION:

int-fiction is entirely configured through a configuration file and
environment variables, and can suit any configuration.  The
game list is included (and installed by default).  

THE GAME LIST
       int-fiction  uses  a  game  list  to  describe  the  name,
       description, filename, and system for games.  The file  is
       simple:   the  fields  are in order separated with the `|'
       character, on a single line.  For example,
       Zork I|The original|zork1.dat|ZIP
       describes the original Zork, and specifies it  as  running
       with  a ZIP interpreter.  The filename should be specified
       without a path, as int-fiction can find it using its  path
       (see  below).   Any value can be used for the system: int-
       fiction will look for a matching environment  variable  to
       run.

       The game list is either compiled into the program (usually
       "/usr/local/lib/int-fiction.lst") or it can  be  specified
       with the IF_GAME_LIST environment variable.

       A  game  in the game list can be in any of the directories
       listed in the path and it will be found as a  valid  game.
       This  lets you move games as you see fit, say to load some
       from a CD or off an NFS-mount from another machine.  If  a
       game  is not found, it will not be listed, allowing you to
       share your game listings with others (and the author)  and
       only choosing from those you have on your system.

       I would also be interested in any additions or changes you
       make to the game list, since I have not yet played all the
       games and couldn't write good descriptions.  8^)

ENVIRONMENT VARIABLES
       IF_PATH
       This  variable controls where int-fiction looks for files.
       It resembles a normal path, being a number of  directories
       separated  by  colons,  but it has one notable difference.
       Look at this path:
       /usr/games//:/home/ats/infocom:/cdrom/pc
       In this path, you'll notice  two  trailing  slashes  after
       "/usr/games".   This  means  that  int-fiction is to check
       that directory, and all directories below it.   The  other

                        December 10, 1996                       1

       elements of the path ("/home/ats/infocom" and "/cdrom/pc")
       do not end in double slashes,  so  int-fiction  will  only
       check that directory for games, no lower directories.

       IF_GAME_LIST
       This  variable controls the location of the game list.  It
       should be the absolute pathname of the game list.

       "System"_INTERPRETER
       This is a family of variables, each naming an  interpreter
       for  a  system.   For  example, if your game list has some
       entries which describe the system as ZIP, you would have a
       ZIP_INTERPRETER  variable with the command you wish to use
       to execute a ZIP interpreter (such as jzip or xzip).   The
       variable  may  name any command in your path, or it may be
       an absolute pathname.  It is run as command datafile

       Common  variables  include  ZIP_INTERPRETER,  SCOTT_INTER-
       PRETER, and TADS_INTERPRETER.
