[comp.sources.games] v03i001: NetHack2.2 - display oriented dungeons and dragons, Part01/20

games-request@tekred.TEK.COM (12/02/87)

Submitted by: mike@genat.UUCP (Mike Stephenson)
Comp.sources.games: Volume 3, Issue 1
Archive-name: nethack2.2/Part01

	[This is the latest version of NetHack.  It is a full source
	 distribution (~1Mb).  Be sure to save this away, as subsequent
	 postings will be context diffs from this source.  -br]

#! /bin/sh
# This is a shell archive.  Remove anything before this line, then unpack
# it by saving it into a file and typing "sh file".  To overwrite existing
# files, type "sh file -c".  You can also feed this as standard input via
# unshar, or by typing "sh <file", e.g..  If this archive is complete, you
# will see the following message at the end:
#		"End of archive 1 (of 20)."
# Contents:  README MANIFEST Guidebook decl.c
# Wrapped by billr@tekred on Tue Dec  1 16:24:45 1987
PATH=/bin:/usr/bin:/usr/ucb ; export PATH
if test -f README -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"README\"
else
echo shar: Extracting \"README\" \(7320 characters\)
sed "s/^X//" >README <<'END_OF_README'
X			      NetHack V2.2 README
X
X	This file contains information on the 2.2 release of NetHack.  For
Xinformation on previous releases, see the README.OLD file.  For a detailed
Xhistory of the game, see the README.ORIG file, which contains three separate
Xreadme files, dating back to the original release of the game (then named
Xhack) by Jay Fenlason.
X
X	This release of the game contains a large number of bug fixes, as
Xwell as several new features.  There has been a large amount of play-testing
Xdone on this release, as it is to be a complete release (approximately 1Mb)
Xof source and uuencoded auxilary files.  For a detailed list of bug fixes,
Xand additions look at the file "Fixes.2.2".  I cannot guarantee that every
Xmodification done has been included, but I have done my best to chronicle the
Xchanges and fixes made there.  Here are the high points:
X
X  1)	New flags in "config.h" (some of these were included in 1.4f):
X
X	COM_COMPL	Command line completion by John S. Bien
X	GRAPHICS	Funky screen character support (Eric S. Raymond)
X	HACKOPTIONS	Support DGK-style HACKOPTIONS processing (ESR)
X	RPH		Various hacks by Richard P. Hughey
X	KJSMODS		Various changes made by Kevin Sweet
X	BVH		Additions by Bruce Holloway
X
X	In addition, in an MSDOS enviornment, when GRAPHICS is defined:
X
X	MSDOSCOLOR	Colour highlighting of monsters, etc.
X
X	Of the above, I haven't tested HACKOPTIONS and MSDOSCOLOR.  If you
X	find bugs in these, send me the reports.
X
X  2)	New objects:
X
X	blindfold - allows you to avoid the gaze of a Floating Eye and to
X		    use your telepathy on command if you have it.
X
X	mirror - scares monsters if you use it on them (and other uses).
X
X	ring of polymorph - (usually cursed) forces random polymorphs.
X
X	ring of polymorph control - prevents system shock and allows choice of
X				    creature to polymorph into.
X
X  3)	New Files:
X
X	- A new set of documentation, the "Guidebook to the Mazes of Menace"
X	has been supplied by Eric S. Raymond.  The guidebook is written for
X	nroff using the "mn" macro set supplied with Bnews 2.11 or greater.
X	Since not everyone has these macros, I have run the guidebook through
X	nroff, and supplied it in flat ascii format as well.  [Moderator's
X	note: because of past problems, I ran the formatted version
X	through "col -b" before passing it on to remove ^H's, etc.  -br]
X
X	- A copy of "HACK.CNF" which has been renamed "NetHack.cnf" was
X	supplied by Steve Creps. The file decl.c has been updated to reflect
X	this change.
X
X	- A new "Makefile" for the AT&T Unix machines has been added.
X
X	- I was hoping to get documentation on "NANSI.SYS" as well, but got
X	no responses to the mail I sent the author, direct and via Bill
X	Randle at tekred.  As per usual, I will gladly publish any relevant
X	documentation I get.
X
X  4)	Major game changes:
X
X	- Shop generation has been significantly changed.  A new structure
X	has been introduced which allows shops (except the "general" type)
X	to have up to three different types of object inside.  There is also
X	a new "distribution pattern" parameter which tells the generation
X	code how to lay out the shop (this is preliminary to the addition of
X	two new types of shop, the temple and barracks - more on this later).
X
X	- Shopkeepers will now tell you how much they expect for each object
X	you pick up.  This gives you the ability to haggle with the merchant
X	in question by dropping and picking up objects until you are more or
X	less satisfied with the price.  I have re-written "getprice()" in
X	shk.c in an attempt to make sure that you cannot actually sell any
X	particular object for more than the shopkeeper will charge for it.
X
X	- Another change to shopkeepers has them potentially getting angry if
X	you stay beside them after not paying your bill.  Each they time they
X	ask you to pay up, there is a chance they will decide they don't like
X	people who don't pay...
X
X	- A new monster, the hydra, has been added (as you have probably seen
X	on the net).  I haven't had much chance to test out this feature of
X	the game.  Mirrors have also been added, and seem to work quite well.
X
X	- Changes have been made to the object ocurrence chances in objects.h,
X	so that the relatively rare tools, etc. have at least a 1% chance of
X	showing up.
X
X	- Throwing and zapping code has been modified so that there is a
X	chance that said can be done through a doorway.  Bolts can still
X	bounce however...
X
X	- The infamous and dreaded makemon() bug has been eliminated.  In
X	addition to this, "r"ats and "K"obolds have been added back into the
X	game.  "K"ops no longer leave treasure (just what they were carrying,
X	plus maybe a club or whistle).
X
X	- Two new "super"swords have been added.  They are the katana named
X	"Snickersnee" which is +5 on damage (due to sharpness), and the long
X	sword "Excalibur" which is +rnd(10) to hit, +5 on damage, and has a
X	couple of other features I won't go into right now.  The only way
X	for a character to get "Excalibur" is as a gift from someone.  You
X	cannot write the word "Excalibur" on things for some reason...
X
X	- There have been two additions to disallow infinite wand charges.
X	First of all, wands with less than zero charges will automatically
X	turn to dust (thanks to Kevin Sweet).  Next, a wand of cancellation
X	will set the number of charges in the wand to -1, which will make it
X	forever useless, (thanks to Ron Wessels).
X
X  5)	Minor game changes:
X
X	- The fountain code has been tightened slightly so you can no longer
X	dip objects into a fountain or drink from one while you are floating
X	in mid-air due to levitation.
X
X	- Teleporting to hell via a teleportation trap will no longer occur
X	if the character does not have fire resistance.  I found this just
X	too arbitrary a way to die (and so did several other people who com-
X	plained about it).
X
X	- A new trap, the "polymorph" trap has been added by Richard Hughey.
X	It's inclusion is dependant on having "KAA" defined.
X
X	- In wizard mode, the wizard player has infinite wishes, and the
X	ability to instantly identify everything (s)he is carrying. The wizard
X	player is also no longer limited by the standard multiple / bonus res-
X	trictions on objects wished for.
X
X	- Random number generation has been changed around to make it (I hope)
X	more unpredictable.
X
X	- A large number of typos have been fixed, and all of the British
X	spellings converted to American.  I would like to see a shell script
X	to allow conversion back (or something like that) in the future.
X
X	- I have done a "make depend" for the makefiles to reflect a slight
X	restructuring in the order of inclusion of header files.
X
X  6)	Future additions:
X
X	- Steve Creps is working on "barracks" and "soldier" code which is
X	now ready for addition.  I have added the "soldier" side into the
X	game, but haven't really tested it.  Steve will be adding the
X	"barracks" section in and sending me the resulting patches.  There
X	will be a minor (read patch) release as soon as he can get the code
X	integrated into this release and sent up here to me.
X
X	- There are also several other new room projects in the works which
X	should be able to be included in that minor release, along with any
X	bug reports that are made in the interim.
X
X						Mike Stephenson
X
XMail:	Genamation Inc.		Phone:	(416) 475-9434
X	351 Steelcase Rd. W
X	Markham, Ontario.	UUCP:	uunet!{mnetor, utzoo}!genat!mike
X	Canada   L3R 3W1
END_OF_README
if test 7320 -ne `wc -c <README`; then
    echo shar: \"README\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f MANIFEST -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"MANIFEST\"
else
echo shar: Extracting \"MANIFEST\" \(3864 characters\)
sed "s/^X//" >MANIFEST <<'END_OF_MANIFEST'
X   File Name		Archive #	Description
X-----------------------------------------------------------
X Fixes.2.2                13	
X Guidebook                 1	
X Guidebook.mn              3	
X MANIFEST                  1	This shipping list
X Make.ini                 20	
X Makefile.att              9	
X Makefile.pc              18	
X Makefile.tcc             18	
X Makefile.unix            17	
X Makefile.xenix           17	
X Maketcc.ini              20	
X NetHack.cnf               6	
X README                    1	
X README.OLD               16	
X README.ORIG              14	
X alloc.c                  19	
X apply.c                   8	
X bones.c                  19	
X cmd.c                    13	
X config.h                 16	
X data.base                14	
X date.h                   13	
X decl.c                    1	
X do.c                     15	
X do_name.c                15	
X do_wear.c                14	
X dog.c                    18	
X dogmove.c                16	
X dothrow.c                17	
X eat.c                     9	
X edog.h                    8	
X end.c                    15	
X engrave.c                11	
X eshk.h                   20	
X extern.h                 20	
X fight.c                   8	
X flag.h                   19	
X fountain.c               16	
X func_tab.h               20	
X gen.h                    11	
X gold.h                    3	
X hack.c                    6	
X hack.h                   20	
X help                     18	
X hh                       20	
X invent.c                  4	
X ioctl.c                  20	
X lev.c                    10	
X make.exe.uu               2	
X makedefs.c                2	
X makemon.c                15	
X mfndpos.h                20	
X mhitu.c                  10	
X mklev.c                   7	
X mkmaze.c                 18	
X mkobj.c                  18	
X mkroom.h                 20	
X mkshop.c                 17	
X mon.c                     7	
X monmove.c                11	
X monst.c                  19	
X monst.h                  18	
X msdos.c                   9	
X msdos.h                  20	
X nansi.sys.uu             19	
X nethack.6                18	
X nethack.cnf              20	
X nethack.sh               20	
X netquest.sh              20	
X o_init.c                 17	
X obj.h                    20	
X objclass.h               14	
X objects.h                 9	
X objnam.c                 11	
X onames.h                 15	
X options.c                10	
X pager.c                  14	
X pcmain.c                 12	
X pctty.c                  18	
X pcunix.c                 19	
X permonst.h                5	
X polyself.c               17	
X potion.c                 10	
X pray.c                   17	
X pri.c                    12	
X prisym.c                 16	
X read.c                    8	
X rip.c                    20	
X rm.h                     19	
X rnd.c                    20	
X rumors.base               6	
X rumors.c                 19	
X rumors.kaa               19	
X rumors.mrx               20	
X save.c                   13	
X search.c                 19	
X shk.c                     4	
X shknam.c                 14	
X sit.c                    19	
X spell.c                  13	
X spell.h                  20	
X steal.c                  18	
X termcap.c                16	
X termcap.cnf              20	
X termcap.uu                5	
X timeout.c                19	
X topl.c                   19	
X topten.c                  7	
X track.c                  20	
X trap.c                    3	
X trap.h                    4	
X u_init.c                 11	
X unixmain.c               12	
X unixtty.c                15	
X unixunix.c               13	
X vault.c                  17	
X version.c                12	
X wield.c                  19	
X wizard.c                 12	
X worm.c                   18	
X worn.c                   20	
X write.c                  16	
X wseg.h                   20	
X you.h                    19	
X zap.c                     5	
END_OF_MANIFEST
if test 3864 -ne `wc -c <MANIFEST`; then
    echo shar: \"MANIFEST\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f Guidebook -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"Guidebook\"
else
echo shar: Extracting \"Guidebook\" \(42898 characters\)
sed "s/^X//" >Guidebook <<'END_OF_Guidebook'
X
X
X
X
X
X
X
X
X
X
X                           A Guide to the Mazes of Menace
X
X
X                                   Eric S. Raymond
X                                 Thyrsus Enterprises
X                                  Malvern, PA 19355
X
X
X
X          1.  Introduction
X
X               You have just finished your years as a student at the  local
X          adventurer's  guild.   After much practice and sweat you have fi-
X          nally completed your training and are  ready  to  embark  upon  a
X          perilous  adventure.   As a test of your skills, the local guild-
X          masters have sent you into the Dungeons of Doom.  Your task is to
X          return with the Amulet of Yendor.  Your reward for the completion
X          of this task will be a  full membership in the local  guild.   In
X          addition,  you  are  allowed  to keep all the loot you bring back
X          from the dungeons.
X
X               You have abilities and strengths for dealing  with  the  ha-
X          zards  of  adventure  that will vary depending on your background
X          and training. Here is a summary of the character classes:
X
X               Cavemen and Cavewomen start with  exceptional  strength  and
X          neolithic weapons.
X
X               Tourists start out with lots of gold (suitable for  shopping
X          with)  and  an  expensive  camera. Most monsters don't like being
X          photographed.
X
X               Wizards start out with a fair selection of  magical  goodies
X          and a particular affinity for things thaumaturgical.
X
X               Archeologists understand dungeons pretty  well.  This  makes
X          them  able  to move quickly and sneak up on dungeon nasties. They
X          start equipped with proper tools for a scientific expedition.
X
X               Elves are agile and quick and have keen senses; very  little
X          of what goes on around an Elf will escape him or her. The quality
X          of Elven craftsmanship often gives them an advantage  in  weapons
X          and armor.
X
X               Valkyries are hardy warrior women. Their upbringing  in  the
X          harsh Northlands makes them strong and inures them to extremes of
X          cold, and instills stealth and cunning in them.
X
X               Healers are wise in the apothecary and  medical  arts.  They
X          know  the  herbs  and  simples that can restore vitality and ease
X
X
X          A Guide to the Mazes of Menace                                  1
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  2
X
X
X          pain and neutralize poisons, and they can divine a being's  state
X          of health or sickness.
X
X               Knights are distinguished from the common run of fighter  by
X          their devotion to the ideal of chivalry and the surpassing excel-
X          lence of their armor.
X
X               Barbarians are warriors out of the hinterland,  hardened  to
X          battle.   They  begin  their  quests  with  naught  but  uncommon
X          strength, a trusty hauberk, and a great two-handed sword.
X
X               Samurai are the elite warriors of feudal  Nippon.  They  are
X          lightly  armored  and  quick, and wear the dai-sho, two swords of
X          the deadliest sharpness.
X
X               Ninja are the spy-assassins of Japan.  They  are  quick  and
X          stealthy,  though not as strong as fighters. Their characteristic
X          weapon is the deadly shuriken or throwing-star.
X
X               Priests and Priestesses are clerics militant, armed and  ar-
X          mored  to  advance  the  cause of righteousness but also equipped
X          with some skills in arts thaumaturgic. Their ability  to  commune
X          with  deities  via prayer occasionally extricates them from peril
X          -- but can also put them in it.
X
X               You set out on your way to the dungeons  and  after  several
X          days  of  uneventful  travel, you see the ancient ruins that mark
X          the entrance to the Mazes of Menace.  It is late  at  night,   so
X          you  make camp at the entrance and spend the night sleeping under
X          the open skies.   In the morning you gather your weapons and dev-
X          ices, eat what is almost your last food, and enter the dungeons.
X
X          2.  What is going on here?
X
X               You have just begun a game of nethack.  Your goal is to grab
X          as  much  treasure as you can, find the Amulet of Yendor, and get
X          out of the Mazes of Menace alive.  On the screen, a map of  where
X          you have been and what you have seen on the current dungeon level
X          is kept.  As you explore more of the level,  it  appears  on  the
X          screen in front of you.
X
X               Nethack differs from most computer fantasy games (other than
X          its  ancestors  hack and rogue and its cousin larn) in that it is
X          screen oriented.  Commands are all one or two keystrokes (as  op-
X          posed to sentences in some losing parser's notion of English) and
X          the results of your commands are  displayed  graphically  on  the
X          screen  rather  than  being  explained in words (a minimum screen
X          size of 24 lines by  80  columns is required; if  the  screen  is
X          larger, only a 24x80 section will be used for the map).
X
X               Another major difference between nethack and other  computer
X          fantasy  games  is that once you have solved all the puzzles in a
X          standard fantasy game, it has lost most of its excitement and  it
X          ceases  to  be  fun.  Nethack, on the other hand, generates a new
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  3
X
X
X          dungeon every time you play it and even the authors still find it
X          an entertaining and exciting game.
X
X          3.  What do all those things on the screen mean?
X
X               In order to understand what is going on in nethack you  have
X          to first get some grasp of what nethack is doing with the screen.
X          The nethack screen is intended to replace the  "You can see  ..."
X          descriptions of text fantasy games.  Figure 1 is a sample of what
X          a nethack screen might look like.
X
X          3.1.  The bottom line
X
X               At the bottom line of the screen are a  few pieces of  cryp-
X          tic  information  describing your current status.  Here is an ex-
X          planation of what these things mean:
X
X          Level
X               This number indicates how deep you have gone in the dungeon.
X               It  starts  at  one  and  goes  up as you go deeper into the
X               dungeon.
X
X          Gold The number of gold pieces you have managed to find and  keep
X               with you so far.
X
X          Hp   Your current and maximum health points.   Health points  in-
X               dicate  how  much  damage  you can take before you die.  The
X               more you get hit in a fight, the lower they get.    You  can
X               regain  health points by resting.  The number in parentheses
X               is the maximum number your health points can reach.
X
X               ____________________________________________________________
X
X                   ------------
X                   |..........+
X                   |..@....]..|
X                   |....B.....|
X                   |..........|
X                   -----+------
X
X
X
X               Lev 1  Gp 0  Hp 12(12) Ep 3(3)  Ac 8  Str 16(16)  Exp: 1/0
X               ____________________________________________________________
X
X                                         Figure 1
X
X
X          Ep   Energy points. This tells you the level of mystic energy you
X               have  available for spell casting. When you type `x' to list
X               your spells, each will have a spell point cost beside it  in
X               parentheses. You will not see this if your site's version of
X               the game has been configured to omit spells.
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  4
X
X
X          Ac   Your current armor protection.  This  number  indicates  how
X               effective  your  armor  is in stopping blows from unfriendly
X               creatures.  The lower this number is, the more effective the
X               armor.
X
X          Str  Your current strength and maximum ever strength.   This  can
X               be  any integer less than or equal to 18, or greater than or
X               equal to three (occasionally you may get super-strengths  of
X               the  form  18/xx).  The higher the number,  the stronger you
X               are. The number in the parentheses is the  maximum  strength
X               you have attained so far this game.
X
X          Exp  These two numbers give your current experience level and ex-
X               perience  points.    As  you  do things, you gain experience
X               points.   At certain experience point totals,  you  gain  an
X               experience level.   The more experienced you are, the better
X               you are able to fight and to withstand magical attacks.
X
X          3.2.  The top line
X
X               The top line of the screen is reserved for printing messages
X          that  describe  things that are impossible to represent visually.
X          If you see a  "--More--"  on  the  top  line,   this  means  that
X          nethack  wants  to  print  another  message on the screen, but it
X          wants to make certain that you have read the one  that  is  there
X          first.  To read the next message, just type a space.
X
X          3.3.  The rest of the screen
X
X               The rest of the screen is the map of the level as  you  have
X          explored  it so far.   Each symbol on the screen represents some-
X          thing.  Here is a list of what the various symbols mean:
X
X          - and |
X               These form the walls of a room (or maze).
X
X          .    this is the floor of a room.
X
X          #    this is a corridor.
X
X          >    this is the staircase to the next level.
X
X          <    the staircase to the previous level.
X
X          `    A large boulder.
X
X          @    You (usually) or another human.
X
X          ^    A trap.
X
X          )    A weapon of some sort.
X
X          (    Some other useful object (key, rope, dynamite, camera...)
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  5
X
X
X          [    A suit of armor.
X
X          %    A piece of food (not necessarily healthy...).
X
X          /    A wand.
X
X          =    A ring.
X
X          ?    A scroll.
X
X          !    A magic potion.
X
X          +    A spellbook containing a spell you can learn; (but usually a
X               doorway).
X
X          }    A pool of water
X
X          {    A fountain (your dungeon may not have these).
X
X          \    An opulent throne (You may not have this either).
X
X          $    A pile or pot of gold.
X
X          a-zA-Z
X               The uppercase letters represent the various  inhabitants  of
X               the  Mazes  of Menace.  Watch out, they can be nasty and vi-
X               cious.  Sometimes, however, they can be helpful.
X
X          4.  Commands
X
X               Commands are given to nethack by typing one or  two  charac-
X          ters.   Most  commands  can be preceded by a count to repeat them
X          (e.g. typing "10s" will do ten  searches).   Commands  for  which
X          counts  make  no sense have the count ignored.  To cancel a count
X          or a prefix, type <ESCAPE>.  The list of commands is rather long,
X          but  it can be read at any time during the game with the "?" com-
X          mand.  Here it is for reference, with a short explanation of each
X          command.
X
X          ?    help: print a help list.
X
X          Q    Quit the game.
X
X          S    Save the game.
X
X          !    Escape to a shell.
X
X          ^Z   Suspend the game (UNIX versions with job control only).
X
X          <    up: go up the staircase (if you are standing on it).
X
X          >    down: go down (just like up).
X
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  6
X
X
X          [kjhlyubn]
X               go one step in the direction indicated.
X
X                   k: north (i.e., to the top of the screen),
X                   j: south, h: west, l: east, y: ne, u: nw, b: se, n: sw.
X
X          KJHLYUBN
X               Go in that direction until you hit a wall or run into  some-
X               thing.
X
X          m[kjhlyubn]
X               prefix: move without picking up any objects.
X
X          M[kjhlyubn]
X               prefix: move far, no pickup.
X
X          g[kjhlyubn]
X               prefix: move until something interesting is found.
X
X          G[kjhlyubn]
X               as previous, but forking of corridors is not considered  in-
X               teresting.
X
X          i    print your inventory.
X
X          I    print selected parts of your inventory, like in
X
X                   I* - all gems in inventory;
X                   IU - all unpaid items;
X                   IX - all used up items that are on your shopping bill;
X                   I$ - count your money.
X
X          s    search for secret doors and traps around you.
X
X          ^    ask for the type of a trap you found earlier.
X
X          )    ask for current wielded weapon.
X
X          [    ask for current armor.
X
X          =    ask for current rings.
X
X          $    count how many gold pieces you are carrying.
X
X          .    rest, do nothing.
X
X          ,    pick up some things.
X
X          :    look at what is here.
X
X          ^T   teleport.
X
X          ^R   redraw the screen.
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  7
X
X
X          ^P   repeat last message (subsequent  ^P's  repeat  earlier  mes-
X               sages).
X
X          /    (followed by any symbol) tell what this symbol represents.If
X               you  see  fancy  graphics  on  your screen it may ask you to
X               specify a location rather than taking a symbol argument.
X
X          \    tell what has been discovered.
X
X          e    eat food.
X
X          w    wield weapon. w- means: wield nothing, use bare hands.
X
X          q    drink (quaff) a potion.
X
X          r    read a scroll.
X
X          T    Takeoff armor.  Remove Ring.
X
X          W    Wear armor.
X
X          P    Put on a ring.
X
X          X    transcribe (learn) a spell.
X
X          x    print a list of know spells.
X
X          z    zap a wand.
X
X          Z    zap a spell; same as the `# cast' extended command
X
X          t    throw an object or shoot an arrow.
X
X          p    pay your shopping bill.
X
X          d    drop something. d7a: drop seven items of object a.
X
X          D    Drop several things.  In answer to the question "What  kinds
X               of  things  do  you  want to drop? [!%= au]" you should give
X               zero or more object symbols possibly followed by 'a'  and/or
X               'u'.
X
X          a    apply - Generic command for using a key to lock or unlock  a
X               door, using a camera, using a rope, etc.
X
X          c    call: name a certain object or class of objects.
X
X          C    Call: Name an individual monster.
X
X          E    Engrave: Write a message in  the  dust  on  the  floor.   E-
X               means: use fingers for writing.
X
X          O    Set options. You will be asked to enter an option line.   If
X               this  is empty, the current options are reported.  Otherwise
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  8
X
X
X               it should be a list of options separated by commas. Possible
X               boolean   options   are:  oneline,  time,  news,  tombstone,
X               rest_on_space, fixinvlet, beginner, male, female.  They  can
X               be negated by prefixing them with answer to the question"Who
X               are you?"; it may  have  a  suffix.  A  compound  option  is
X               endgame;  it  is  followed by a description of what parts of
X               the list of topscorers should be printed when  the  game  is
X               finished.  There  is  also  a  graphics option that sets the
X               characters used for screen displays. Usually  one  will  not
X               want  to  use  the  'O'  command,  but instead put a HACKOP-
X               TIONS="...." line in one's environment.
X
X          v    print version number.
X
X          V    display the game history (about one page).
X
X               You can put a number before most  commands  to  repeat  them
X          that many times, as in "20s" or "40.".
X
X          5.  Rooms
X
X               Rooms in the dungeons are either lit or dark.   If you  walk
X          into  a  lit room, the entire room will be drawn on the screen as
X          soon as you enter.  If you walk into a dark room, it will only be
X          displayed  as  you explore it.  Upon leaving a room, all monsters
X          inside the room are erased from the screen.   In the darkness you
X          can  only see one space in all directions around you.  A corridor
X          is always dark.
X
X          6.  Fighting
X
X               If you see a monster and you wish to fight it,  just attempt
X          to  run into it.  Many times a monster you find will mind its own
X          business unless you attack it.  It is often the case that discre-
X          tion is the better part of valor.
X
X          7.  Objects you can find
X
X               When you find something in the dungeon, it is common to want
X          to  pick the object up.  This is accomplished in nethack by walk-
X          ing over the object (unless you use the  "m"  prefix, see above).
X          If  you  are  carrying too many things, the program will tell you
X          and it won't pick up the object,  otherwise it  will  add  it  to
X          your pack and tell you what you just picked up.
X
X               Many of the commands that operate on objects must prompt you
X          to  find  out  which  object you want to use.  If you change your
X          mind and don't want to do that command after all,  just  type  an
X          <ESCAPE> and the command will be aborted.
X
X               Some objects, like armor and weapons, are  easily  differen-
X          tiated.   Others,   like  scrolls  and  potions, are given labels
X          which vary according to type.  During a game, any two of the same
X          kind  of  object with the same label are the same type.  However,
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                  9
X
X
X          the labels will vary from game to game.
X
X               When you use one of these labeled objects,  if its effect is
X          obvious, nethack will remember what it is for you.  If its effect
X          isn't extremely obvious you will be asked what you want to scrib-
X          ble  on  it  so  you  will recognize it later, or you can use the
X          "call" command (see above).
X
X          7.1.  Weapons
X
X               Some weapons, like arrows, come in bunches,  but  most  come
X          one  at  a   time.   In order to use a weapon, you must wield it.
X          To fire an arrow out of a  bow,  you must first  wield  the  bow,
X          then  throw  the arrow.  You can only wield one weapon at a time,
X          but you can't change weapons if the one you are currently  wield-
X          ing  is  cursed.  The commands to use weapons are "w" (wield) and
X          "t" (throw).
X
X          7.2.  Armor
X
X               There are  various  sorts  of  armor  lying  around  in  the
X          dungeon.    Some  of it is enchanted, some is cursed, and some is
X          just normal.  Different armor types have different armor  protec-
X          tion.    The higher the armor protection, the more protection the
X          armor affords against the blows of monsters.  Here is  a  partial
X          list of the various armor types and the level of armor protection
X          each will give.
X
X                       plate mail               3
X                       splint mail              4
X                       banded mail              4
X                       chain mail               5
X                       scale mail               6
X                       ring mail                7
X                       studded leather armor    7
X                       leather armor            8
X                       elven cloak              9
X
X               If a piece of armor is enchanted, its armor protection  will
X          be  higher  than normal.  If a suit of armor is cursed, its armor
X          protection will be lower, and you will not be able to remove  it.
X          However,  not all armor with a protection that is lower than nor-
X          mal is cursed and some enchanted armor is also "cursed"  prevent-
X          ing removal.
X
X               The commands to use weapons are  "W"  (wear)  and  "T" (take
X          off).
X
X          7.3.  Scrolls
X
X               Scrolls come with titles in an unknown  tongue.   After  you
X          read  a scroll, it disappears from your pack.  The command to use
X          a scroll is "r" (read).
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 10
X
X
X          7.4.  Potions
X
X               Potions are labeled by the color of the  liquid  inside  the
X          flask.  They disappear after being quaffed.  The command to use a
X          scroll is "q" (quaff).
X
X          7.5.  Staves and Wands
X
X               Staves and wands do the same kinds of things.    Staves  are
X          identified  by  a type of wood; wands by a type of metal or bone.
X          They are generally things you want to do to something over a long
X          distance,  so  you  must point them at what you wish to affect to
X          use them.   Some staves are not affected by  the  direction  they
X          are  pointed,  though.   Staves come with multiple magic charges,
X          the number being random, and when they are used up, the staff  is
X          just a piece of wood or metal.
X
X               The command to use a wand or staff is "z" (zap)
X
X          7.6.  Rings
X
X               Rings are very useful items, since they are relatively  per-
X          manent  magic,   unlike  the usually fleeting effects of potions,
X          scrolls, and staves.  Of course, both good and bad rings are more
X          powerful.    Most rings also cause you to use up food more rapid-
X          ly, the rate varying with the type of ring.  Rings are  differen-
X          tiated  by their stone settings.  Some rings are cursed, prevent-
X          ing removal.  This can happen to helpful and harmful rings alike.
X
X               The commands to use rings are "P" (put on) and "R" (remove).
X
X          7.7.  Spellbooks
X
X               Spellbooks are tomes of mighty magic.  When  read  with  the
X          `transcribe'  command  X,  they plant the knowledge of a spell in
X          your head and disappear - unless the attempt backfires. Reading a
X          spellbook  can  be  harmful to your health if it is cursed or the
X          mystic runes are at  too  high  a  level  for  your  thaumaturgic
X          skills!
X
X               Casting spells can also backfire.  If you attempt to cast  a
X          spell  well above your level, or cast it at a time when your luck
X          is particularly bad, you can end up wasting both the  energy  and
X          the time required in casting.
X
X               The `x' command lists your current spells, each preceded  by
X          the  spell  points  they  require.  to cast a spell, type `Z' and
X          answer the questions.
X
X          7.8.  Food
X
X               Food is necessary to keep you going.   If you  go  too  long
X          without  eating you will faint, and eventually die of starvation.
X          The command to use food is "e" (eat).
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 11
X
X
X          7.9.  Options
X
X               Due to variations in personal tastes and conceptions of  the
X          way  nethack should do things, there are a set of options you can
X          set that cause nethack to behave in various different ways.
X
X          7.10.  Setting the options
X
X               There are two ways to set the options.   The first  is  with
X          the   "O"   command  of nethack;  the second is with the "HACKOP-
X          TIONS" environment variable.
X
X          7.11.  Using the `O' command
X
X               When you type "O" in nethack, it queries you for  an  option
X          string which is parsed as though it were a HACKOPTIONS value.
X
X          7.12.  Using the HACKOPTIONS variable
X
X               The HACKOPTIONS variable is a string  containing  a   comma-
X          separated list of initial values for the various options. Boolean
X          variables can be turned on by listing their name or turned off by
X          putting  a  `!' or "no" in front of the name.  You can set string
X          variables by following the variable name with a colon (this char-
X          acter  was  chosen over = to avoid conflict with the ring symbol)
X          and the value of the string. The value is terminated by the  next
X          comma or the end of string.
X
X               Thus to set up an environment variable so that  `female'  is
X          on,  `pickup'  is  off, and the name is set to "Blue Meanie", you
X          would enter the command
X
X               % setenv HACKOPTIONS "female,!pickup,name:Blue Meanie"
X
X          in csh, or
X
X               $ HACKOPTIONS="female,!pickup,name:Blue Meanie"
X               $ export HACKOPTIONS
X
X          in sh or ksh.
X
X          7.13.  Customization options
X
X               Here is a list of the options and  an  explanation  of  what
X          each  one  is  for.    The  default value for each is enclosed in
X          square brackets.  For character string options, input over  fifty
X          characters will be ignored.
X
X               Note: some of the options listed may be inactive if the game
X          has been subsetted.
X
X          standout
X               (default on)  use  standout  where  appropriate  in  display
X               lists.
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 12
X
X
X          null
X               (default off) don't send padding nulls to the tty.
X
X          tombstone
X               (default on) display tombstone graphic on death.
X
X          news
X               (default on) read hack news if present.
X
X          conf
X               (default on) have user confirm attacks  on  dogs  and  shop-
X               keepers.
X
X          silent
X               (default on) suppress terminal beeps.
X
X          pick
X               (default on) pick up things you move onto by default.
X
X          IBMB
X               (default off, PC-HACK only) for machines with an IBM-PC com-
X               patible BIOS ROM.
X
X          DECR
X               (default off, PC-HACK only) for machines  with  DEC  Rainbow
X               compatible BIOS ROMs.
X
X          rawi
X               (default off) force raw (not cbreak mode) input.
X
X          sort
X               (default on) sort the pack contents by type when  displaying
X               inventory.
X
X          packorder
X               (default `)[%?+/=!(*0  )')  specify  order  to  list  object
X               types  in.  The value of this option should be a string con-
X               taining the symbols for the various object types.
X
X          dogname
X               give your (first) dog a name (eg. dogname:Fang).
X
X          time
X               (default off) show game time in turns on bottom line.
X
X          restonspace
X               (default off) make spacebar a synonym for `.'.
X
X          fixinv
X               (default on) an object's inventory letter sticks to it until
X               it's  dropped.   If  this is off, everything after a dropped
X               object shifts letters.
X
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 13
X
X
X          male
X               (default  on,  most  hackers  are  male)  sets  the  player-
X               character's sex.
X
X          female
X               (default  off)  sets  the  player-character's  sex   (equal-
X               opportunity feature :-)).
X
X          name
X               (defaults to player's username) Set  the  player-character's
X               name.
X
X          graphics
X               (default ` |-++++.:<>^{}\"') set the  graphics  symbols  for
X               screen  displays.   The  graphics option (if used) should be
X               last, followed by a string of up to ", 17 chars to  be  used
X               instead  of the default map-drawing chars. Replacing for any
X               of these chars causes it to be replaced in the dungeon level
X               displays,  except  that the five instances of + are used for
X               top left, top right, bottom  left,  bottom  right  and  door
X               squares  respectively. The last four characters are required
X               only if the corresponding options are configured in.
X
X          endgame
X               Endgame is followed by a description of what  parts  of  the
X               scorelist you want to see. You might for example say:
X
X               `endgame:own scores/5 top scores/4 around my score'.
X
X               In the PC-HACK version, options may be set in  a  configura-
X               tion file on disk as well as from the hack options.
X
X          7.14.  Scoring
X
X               Nethack usually maintains a list of the top  scoring  people
X          or scores on your machine.  Depending on how it is set up, it can
X          post either the top scores or the top  players.   In  the  latter
X          case,   each account on the machine can post only one non-winning
X          score on this list.   If you score higher than  someone  else  on
X          this list, or better your previous score on the list, you will be
X          inserted in the proper place under your current name.   How  many
X          scores are kept can also be set up by whoever installs it on your
X          machine.
X
X               If you quit the game, you get out with all of your gold  in-
X          tact.    If,   however,   you get killed in the Dungeons of Doom,
X          your body is forwarded to your next-of-kin, along  with  90%   of
X          your  gold;  ten  percent  of  your gold is kept by the Dungeons'
X          wizard as a fee.  This should make you consider whether you  want
X          to  take  one last hit at that monster and possibly live, or quit
X          and thus stop with whatever you have.  If you quit,  you  do  get
X          all your gold, but if you swing and live, you might find more.
X
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 14
X
X
X               If you just want to see what the current top players/  games
X          list is, you can type
X
X               % nethack -s
X
X          8.  Credits
X
X               The original hack game was modeled on the Berkeley UNIX `ro-
X          gue' game.  Large portions of this paper were shamelessly cribbed
X          from A Guide to the Dungeons of Doom, by Michael C. Toy and  Ken-
X          neth C. R. C. Arnold.
X
X               NetHack is the product of literally dozens of people's work.
X          A  list of some of those who made major additions to the game ap-
X          pears below:
X
X          Jay Fenlason
X               wrote the original release of "Hack",  with  helpfrom  Kenny
X               Woodland, Mike Thome and Jon Payne.
X
X          Andries Brouwer
X               did a major re-write on the program andpublshed  (at  least)
X               two versions to the Usenet.
X
X          Don G. Kneller
X               ported the 1.0.3 version of Hack to  the  PC,  creating  PC-
X               Hack.
X
X               The following folks didn't actually re-write  the  game,  or
X          port it to a new machine, but have made significant contributions
X          to the playability of the game:
X
X          ins_akaa@jhunix.UUCP (Ken Arromdee)
X               New character classes. New weapons code. Armor  weights  im-
X               plemented. New tools code. Polymorph Self code. Bug fixes.
X
X          srt@ucla-cs (Scott R. Turner)
X               Rockmole & Keystone Kops code. Squeaky Board & Magic  traps.
X               Fountain code.  More bug fixes.
X
X          gil@cornell.UUCP (Gil Neiger)
X               Magic Marker code. Fountain code enhancements.  Enhancements
X               to dozens of routines. More bug fixes (esp. in hack.zap.c).
X
X          ericb@hplsla.UUCP (Eric Backus)
X               The #dip mods to fountain code. Yet more bug fixes.
X
X          mike@genat.UUCP (Mike Stephenson)
X               New character classes and traps.  Throne  Rooms.  Spellbooks
X               and  spellcasting.   Praying.  Endgame enhancements. Nethack
X               release and coordination.
X
X          eric@snark (Eric S. Raymond)
X               The GRAPHICS option. Changes to make character classes  more
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 15
X
X
X               individual  and  mythohistorically authentic. Better random-
X               number generation. The blindfold tool. The 'Z'  spellcasting
X               command  synonym. General cleanup of much grotty code, remo-
X               val of magic numbers. More  bug  fixes.  This  Guide  you're
X               reading.
X
X               You too can enhance this game and join the hallowed ranks of
X          the net.benefactors. Happy hacking!
X
X          Appendix A: Weapon Types in Hack
X
X               This material is adapted from a digest of email  replies  to
X          Carole Chang (carole@uhcc.uhccux.ha). Major sources were:
X
X                       Paul Anderson           pha@net1.ucsd.edu
X                       Vernon Lee              scorpion@rice.edu
X                       Bryan Ewbank            ihlph!bdewbank
X
X          Some terminological corrections (notably the correct set of  dis-
X          tinctions  for the great mace/morningstar/flail controversy) were
X          made by your editor (eric@snark), and a good  bit  of  historical
X          context added.
X
X
X          8.1.  Polearms
X
X               The following weapons are all "pole arms", meaning that they
X          are  wooden  shafts  (5-9' long) capped with a particular weapon-
X          head. We list these first as they are most likely  to  mystify  a
X          novice hacker.
X
X          glaive
X               a short polearm with a straight blade  at  the  end  of  the
X               shaft.  Rare in Europe; more popular in non-Western cultures
X               under other names, as in the Zulu war assegai  and  Japanese
X               ashigaru's pike.
X
X          halberd
X               a long (typically 6' or more) polearm ending with  a  single
X               axe-head,  backed  by a spike and tipped by a spear-head. An
X               extremely popular weapon in Europe from the Dark Ages to  as
X               late as 1650. You can see them in pictures of royal or elite
X               Spanish, English, and French troops or the  Vatican's  Swiss
X               Guards.
X
X          bill-guisarme
X               a polearm, ends in a spear-head with a spike on one side and
X               a hook on the other.
X
X          fauchard
X               a polearm topped by a curved sickle-blade.
X
X          bec-de-corbin
X               (literally  "crow's-beak")  a  polearm  ending  in  a  stout
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 16
X
X
X               spear-point,  with  a small axe-head on one side and a beak-
X               shaped spike on the other. This weapon was designed  to  act
X               like   a  can-opener  for  infantry  fighting  plate-armored
X               knights.
X
X          guisarme
X               a polearm, ends with a sharpened pruning hook.
X
X          spetum
X               a polearm, ends with a spear-blade that has a smaller  blade
X               jutting  at an angle from either side; the idea was to catch
X               an opponent's weapon between two blades and disarm him  with
X               a twist of the shaft.  Compare the japanese sai.
X
X          partisan
X               a polearm, has a spear-head with a small axe-head to  either
X               side.  Peasant  levies often carried these; hence our modern
X               usage of  `partisans'  to  describe  guerilla  or  irregular
X               troops.
X
X          lucern
X               a polearm, ends  in  a  forward-pointing  and  one  or  more
X               curved,  downward-pointing (i.e.perpendicular) spikes. Named
X               after the Swiss city and canton of Lucerne.
X
X          voulge
X               a polearm, with a straight single-edged blade depending from
X               one side of the shaft's end.
X
X          ranseur
X               a polearm, ends with a broad spear-head with  a  flat  base,
X               and  a broader "hilt" (often a straight piece with sharpened
X               ends) behind it. As with the spetum, the idea was  to  catch
X               weapons between the blade and "hilt".
X
X
X
X          8.2.  Blade weapons
X
X               Blades were, in most  pre-gunpowder  martial  cultures,  the
X          preferred  weapon for one-on-one combat. Nethack includes several
X          kinds:
X
X          dagger
X               broadly speaking, could describe any blade less  than  about
X               two  feet  long.  But  `dagger'  tends  to suggest a hilted,
X               double-edged weapon.
X
X          short
X               are 2-3' long and used for stabbing. The  Roman  legionary's
X               gladius  and  the  American  frontiersman's Bowie knife were
X               both short swords.
X
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 17
X
X
X          broad
X               are 3-4' long; they have sharpened edged  for  chopping  and
X               cleaving.
X
X          long are also 3-4' long; they are narrower  with  sharpened  tips
X               for stabbing and slashing.
X
X          two-handed
X               are 5-6' long, with long handles because they  require  both
X               hands to use.
X
X          bastard
X               a cleaving weapon 4-5' long, which can be wielded  with  one
X               or (more effectively) two hands.
X
X          scimitar
X               a type of curved, single-edged blade popular  since  ancient
X               times  in  the  Near East, designed for slashing and drawing
X               strokes. Recent European weapons modeled on it  include  the
X               sabre and cutlass.
X
X          katana
X               the long, slender, sabre-like swords of the  Japanese  samu-
X               rai,  often  considered  the finest blade weapons ever made.
X               Japanese forging techniques produced what was  in  effect  a
X               micro-layered  composite of high and low carbon steels, giv-
X               ing the blade its unique razor-sharpness and flexibility.
X
X
X          8.3.  Missile weapons
X
X               These are all weapons meant to transfer kinetic energy to  a
X          target via a rigid thrown projectile.
X
X          bow  in nethack, probably represents the 'self  bow',  a  smaller
X               single-piece  or  composite bow firing short feather-quilled
X               arrows (rather than the classic Robin Hood longbow with  its
X               yard-long shafts).
X
X          crossbow
X               a mechanically-cranked  bow  firing  stubby  conical-profile
X               bolts,  sometimes  finned. Had a lower rate of fire than the
X               self- or long-bow but fearsome penetrating power.
X
X          javelin
X               a lightweight, flexible throwing spear.
X
X          dart not the three-inch, needle-pointed pub dart associated  with
X               ale  and  tweed  caps;  rather,  its  progenitor,  a shorter
X               javelin-like projectile that was mostly soft-iron head. Bar-
X               rages  of  these  were  thrown  as first volleys in infantry
X               skirmishes to foul the opponents' shields.
X
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
X
X
X
X          A Guide to the Mazes of Menace                                 18
X
X
X          shuriken
X               a flat, spiked wheel designed to be  thrown  with  a  wrist-
X               flick  so  the  blades  spin like a buzz-saw in flight. Also
X               called a `throwing star' or (in India) the `chakram'.
X
X
X          8.4.  Miscellaneous strange weapons
X
X          bardiche
X               (literally, "bearded axe") a short shaft (5') with an  enor-
X               mous  long axe-head, connected at at least two places. Basi-
X               cally a huge axe (or a short voulge).
X
X          morning-star
X               usually a spiked ball attached by a chain  to  a  truncheon-
X               like  handle.  The  term is sometimes used to describe maces
X               with spiked heads.
X
X          flail
X               several chains, possibly  spiked  and  possibly  with  small
X               balls on the ends, stapled to a truncheon.
X
X          crysknife
X               a fantasy weapon adapted from Frank Herbert's "Dune"  books.
X               On  Herbert's Arrakis, the fierce Fremen made their personal
X               weapons from the scimitar teeth of the shai hulud, the great
X               sandworms of the Dune deserts.
X
X          aklys
X               a long thong with a weight at the end. Holding the other end
X               of  the thong, you throw the weight; the thong entangles the
X               target, and the weight whaps it.
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X          Nethack Version 2.0                            September 25, 1987
X
X
X
END_OF_Guidebook
if test 42898 -ne `wc -c <Guidebook`; then
    echo shar: \"Guidebook\" unpacked with wrong size!
fi
# end of overwriting check
fi
if test -f decl.c -a "${1}" != "-c" ; then 
  echo shar: Will not over-write existing file \"decl.c\"
else
echo shar: Extracting \"decl.c\" \(2361 characters\)
sed "s/^X//" >decl.c <<'END_OF_decl.c'
X/*	SCCS Id: @(#)decl.c	2.1	87/10/19
X/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
X
X#include	"hack.h"
Xchar nul[40];			/* contains zeros */
Xchar plname[PL_NSIZ];		/* player name */
X
X#ifdef GRAPHICS
Xstruct symbols defsyms = {
X    ' ', '|', '-', '-', '-', '-', '-', '+', '.', '#', '<', '>', '^',
X#ifdef FOUNTAINS
X    '}', '{',
X#endif
X#ifdef NEWCLASS
X    '\\',
X#endif
X#ifdef SPIDERS
X    '"',
X#endif
X};
Xstruct symbols showsyms;	/* will contain the symbols actually used */
X#endif	/* GRAPHICS /**/
X
X#ifdef DGK
Xchar hackdir[PATHLEN];		/* where rumors, help, record are */
Xchar levels[PATHLEN];		/* where levels are */
Xchar lock[FILENAME];		/* pathname of level files */
Xchar permbones[PATHLEN];	/* where permanent copy of bones go */
Xint ramdisk = FALSE;		/* whether to copy bones to levels or not */
Xstruct symbols symbol = {'|', '-', '-', '-', '-', '-', '+', '.', '#'};
Xint saveprompt = TRUE;
Xchar *alllevels = "levels.*";
Xchar *allbones = "bones.*";
Xchar *configfile = "NetHack.cnf";	/* read by read_config_file() */
X#else
Xchar lock[PL_NSIZ+4] = "1lock";	/* long enough for login name .99 */
X#endif
X
Xboolean in_mklev, restoring;
Xstruct rm levl[COLNO][ROWNO]; /* level map */
X
X#ifndef QUEST
X#include "mkroom.h"
Xstruct mkroom rooms[MAXNROFROOMS+1];
Xcoord doors[DOORMAX];
X#endif
Xstruct monst *fmon = 0;
Xstruct trap *ftrap = 0;
Xstruct gold *fgold = 0;
Xstruct obj *fobj = 0, *fcobj = 0, *invent = 0, *uwep = 0, *uarm = 0,
X	*uarm2 = 0, *uarmh = 0, *uarms = 0, *uarmg = 0, *uright = 0,
X	*uleft = 0, *uchain = 0, *uball = 0;
Xstruct flag flags;
Xstruct you u;
X#ifdef SPELLS
Xstruct spell spl_book[MAXSPELL + 1];
X#endif
Xstruct rm levl[COLNO][ROWNO];	/* level map */
Xstruct monst youmonst;	/* dummy; used as return value for boomhit */
X
Xxchar dlevel = 1;
Xxchar xupstair, yupstair, xdnstair, ydnstair;
Xchar *save_cm = 0, *killer, *nomovemsg;
X
Xlong moves = 1;
Xlong wailmsg = 0;
Xint multi = 0;
Xchar	*occtxt;
X#ifdef DGKMOD
Xint	occtime;
X#endif
X#ifdef REDO
Xint	in_doagain = FALSE;
X#endif
X
Xchar *HI, *HE;		/* set up in termcap.c */
X#ifdef MSDOSCOLOR
Xchar *HI_MON, *HI_OBJ;	/* set up in termcap.c */
X#endif
X
Xchar genocided[60];
Xchar fut_geno[60];
X#ifdef KAA
Xboolean	stoned;				/* done to monsters hit by 'c' */
Xboolean	unweapon;
X#endif
X 
Xxchar curx,cury;
Xxchar seelx, seehx, seely, seehy;	/* corners of lit room */
X
Xcoord bhitpos;
X
Xchar quitchars[] = " \r\n\033";
END_OF_decl.c
if test 2361 -ne `wc -c <decl.c`; then
    echo shar: \"decl.c\" unpacked with wrong size!
fi
# end of overwriting check
fi
echo shar: End of archive 1 \(of 20\).
cp /dev/null ark1isdone
MISSING=""
for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ; do
    if test ! -f ark${I}isdone ; then
	MISSING="${MISSING} ${I}"
    fi
done
if test "${MISSING}" = "" ; then
    echo You have unpacked all 20 archives.
    rm -f ark[1-9]isdone ark[1-9][0-9]isdone
else
    echo You still need to unpack the following archives:
    echo "        " ${MISSING}
fi
##  End of shell archive.
exit 0