Merge from vendor branch GCC:
[dragonfly.git] / games / larn / README
1 Larn is a dungeon type game program.  Larn is a adventure/action game similar
2 in concept to rogue or hack, but with a much different feel. 
3 Try it, you'll like it!
4
5 You will have to edit the Makefile to reflect your configuration.  Define
6 LARNHOME as the place where the larn auxiliary files will reside, and
7 BINDIR as the place where the larn executable should be placed.  Type
8 "make" to compile, or "make all" to compile and install ("make install"
9 does just the install).
10
11 Here's a list of what is in each of the various source files:
12
13 Fixed.Bugs               this is a list of the things that were changed
14                                 since ver 11.0
15 Makefile                 makefile script to compile the program
16 Make.lint                makefile script to run larn sources through lint
17 README                   this is what you are now reading
18 bill.c          code for the letters of praise if player wins
19 config.c        data definitions for the installation dependent data --
20                     savefilenames, where the scorefiles are, etc.
21 create.c        code to create the dungeon and all objects
22 data.c          data definitions for the game -- no code here
23 diag.c          code to produce diagnostic data for wizards, & savegame stuff
24 display.c       code to update the display on the screen
25 fortune.c               code for the fortune cookies
26 global.c        code for globally used functions that are specific to larn
27 header.h        constant and structure definitions
28 help.c          code for the help screens in the game of larn
29 .holidays               data file which lists upcoming holidays
30 io.c                code to handle file and terminal i/o
31 .larn.help.uue  larn help file (UUENCODED)
32 .larnmaze               data file for pre-made mazes
33 .larnopts               a sample .larnopts option data file
34 .lfortune               data file which contains the hints
35 main.c          code for the main command control and parsing
36 monster.c       code to handle attack and defense modes with monsters
37 moreobj.c               code for the fountains, altars, thrones
38 movem.c         code to move the monsters around the dungeon
39 nap.c           code to sleep for less than a second
40 object.c        code to handle objects in the dungeon
41 regen.c                 code to regenerate the player and advance game time
42 savelev.c       code to get/put a level from level storage into working
43                 level memory
44 scores.c        code to process and manage the scoreboard
45 signal.c        code to handle UNIX signals that are trapped
46 store.c         code for the larn thrift shoppe, bank, trading post, lrs
47 tok.c           code for the input front end and options file processing
48
49 To find out how to play the game, run it and type in a '?' to get the help
50 screens.  By the way, the wizards password is "pvnert(x)" and to become wizard
51 type in an underscore, you are then prompted for the password.  Wizards are
52 non-scoring characters that get enlightenment, everlasting expanded 
53 awareness, and one of every object in the game.  They help the author to debug
54 the game.
55
56 Note regarding the wizard id:  If you are using userid's, then WIZID must be
57 set to the userid of the person who can become wizard.  If you are using
58 player id's, WIZID must be set to the playerid (edit file .playerids if needed)
59 of the player who can become wizard.
60
61 You may want to clear out the scoreboard.  The command "larn -c" will make a
62 new scoreboard.  It will prompt you for the wizards password.
63
64 BUGS & FIXES:
65
66 James McNamara has volunteered to maintain the latest sources, and provide
67 latest bug fixes to anyone who asks.  Both James and I will field requests for
68 sources, for those who ask.
69
70                           ___   Prince of Gems (alias Noah Morgan)
71                          /.  \  USENET: panda!condor!noah
72                          \   /  at GenRad Inc.  Bolton MA
73                           \ /
74                            v
75
76 Below is some additional info about the installation of larn:
77
78 Install: Notes on the game LARN installation.
79 Larn is copyrighted 1986 by Noah Morgan.
80 This file (below) originally by James D. McNamara, last update 7/27/86 by nm
81
82 THIS DISTRIBUTION:
83
84         You should receive six (6) shar files, which are:
85
86         larn.part-1
87         larn.part-2
88         larn.part-3
89         larn.part-4
90         larn.part-5
91         larn.part-6
92
93 I.      Use /bin/sh (or your system equivalent) to "unravel" shar files
94         larn.part-1, ..., larn.part-6.  I suggest you do this directly
95         into $LARNHOME (See Section III.).  Notable files:
96
97         README  -       The author's how-to.
98         MANIFEST -      Files you should have.
99
100 III.    Edit a copy of "Makefile" and leave the edited version in $LARNHOME.
101
102 All the "configuration" options are tidily near the top of the "Makefile."
103 Here are the ones you probably will want to edit:
104
105 LARNHOME        I specified (literally) the directory, with path from root,
106         where "larn" will reside.  This included where I put the *.c files,
107         it is where the *.o files ended up, as well as all data and *.h files.
108         i suspect the *.c and intallation-documentation files can be moved off,
109         but the data and bits must all remain here for execution.
110
111 BINDIR          I specified (literally) the directory, with path from root,
112         where the executable "larn" will reside.  The "Makefile" will dump
113         the "a.out", named "larn", in this directory.  My BINDIR was not
114         my LARNHOME, so $BINDIR/larn was the ONLY file dumed here.  You'll
115         probably have to chmod it for public execute, etc.
116
117
118 OPTIONS         This is how *I* specified them... they are documented in-line:
119         OPTIONS = -DWIZZARD -DWIZID=157 -DEXTRA -DBSD -DSAVEINHOME
120
121 IV.     Compile the bugger.  Read "README" before you do.  You have a couple
122         of options here:
123
124         make                    - will not install, suspect good for updates.
125         make all                - compile (and) intall
126         make install            - just install
127
128         I did "make" and then "make install" -- seems to work "ok", but
129         "make all" probably safer, if I had known.  Note that "Makefile"
130         is the default file for "make."
131
132 V.      Execute and have fun.  If wizard code "ok", larn -c will refresh the
133         scoreboard.  Play and win (or get killed) to put somebody on the
134         scoreboard.
135
136 VI.     BUGS and FIXES.
137
138         Please forward any bug-fixes in these regards to me (or Noah), so I may
139         compile a fix-list for other installers.  Thanks.
140
141 Regards,
142 ===============================================================================
143 James D. McNamara                    CSNET:   jim@bu-cs
144                                      ARPANET: jim%bu-cs@csnet-relay
145                                      UUCP:    ...harvard!bu-cs!jim
146                                      BITNET:  jim%bu-cs%csnet-relay.arpa@wiscvm
147 ===============================================================================
148