\documentstyle[titlepage]{article} \textheight 215mm \textwidth 160mm \oddsidemargin 0mm \evensidemargin 0mm \topmargin 0mm \newcommand{\nd}{\noindent} \newcommand{\tb}[1]{\tt #1 \hfill} \newcommand{\bb}[1]{\bf #1 \hfill} \newcommand{\ib}[1]{\it #1 \hfill} \newcommand{\blist}[1] {\begin{list}{$\bullet$} {\leftmargin 30mm \topsep 2mm \partopsep 0mm \parsep 0mm \itemsep 1mm \labelwidth 28mm \labelsep 2mm #1}} \newcommand{\elist}{\end{list}} % this will make \tt underscores look better, but requires that % math subscripts will never be used in this document \catcode`\_=12 \begin{document} % input file: guideboo.mn %.ds h0 " %.ds h1 %.ds h2 \% %.ds f0 " \title{\LARGE A Guide to the Mazes of Menace:\\ \Large Guidebook for {\it NetHack\/} 3.1} \author{Eric S. Raymond\\ (Extensively edited and expanded for 3.0 by Mike Threepoint)\\ Thyrsus Enterprises\\ Malvern, PA 19355 \date{January 9, 1993} \maketitle %.hn 1 \section{Introduction} You have just finished your years as a student at the local adventurer's guild. After much practice and sweat you have finally completed your training and are ready to embark upon a perilous adventure. To prove your worthiness, the local guildmasters have sent you into the Mazes of Menace. Your quest is to retrieve the Amulet of Yendor. According to legend, the gods will grant immortality to the one who recovers this artifact; true or not, its recovery will bring honor and full guild membership (not to mention the attentions of certain wealthy wizards). Your abilities and strengths for dealing with the hazards of adventure will vary with your background and training. \blist{} \item[\bb{Archeologists}]% understand dungeons pretty well; this enables them to move quickly and sneak up on dungeon nasties. They start equipped with proper tools for a scientific expedition. \item[\bb{Barbarians}]% are warriors out of the hinterland, hardened to battle. They begin their quests with naught but uncommon strength, a trusty hauberk, and a great two-handed sword. \item[\bb{Cavemen {\rm and} Cavewomen}] start with exceptional strength and neolithic weapons. \item[\bb{Elves}]% are agile, quick, and sensitive; very little of what goes on will escape an Elf. The quality of Elven craftsmanship often gives them an advantage in arms and armor. \item[\bb{Healers}]% are wise in medicine and the apothecary. They know the herbs and simples that can restore vitality, ease pain, anesthetize, and neutralize poisons; and with their instruments, they can divine a being's state of health or sickness. Their medical practice earns them quite reasonable amounts of money, which they enter the dungeon with. \item[\bb{Knights}]% are distinguished from the common skirmisher by their devotion to the ideals of chivalry and by the surpassing excellence of their armor. \item[\bb{Priests {\rm and} Priestesses}]% are clerics militant, crusaders advancing the cause of righteousness with arms, armor, and arts thaumaturgic. Their ability to commune with deities via prayer occasionally extricates them from peril---but can also put them in it. \item[\bb{Rogues}]% are agile and stealthy thieves, who carry daggers, lock picks, and poisons to put on darts. \item[\bb{Samurai}]% are the elite warriors of feudal Nippon. They are lightly armored and quick, and wear the % {\it dai-sho}, two swords of the deadliest keenness. \item[\bb{Tourists}]% start out with lots of gold (suitable for shopping with), a credit card, lots of food, some maps, and an expensive camera. Most monsters don't like being photographed. \item[\bb{Valkyries}]% are hardy warrior women. Their upbringing in the harsh Northlands makes them strong and inures them to extremes of cold, and instills in them stealth and cunning. \item[\bb{Wizards}]% start out with a fair selection of magical goodies and a particular affinity for dweomercraft. \elist \nd You set out for the dungeon and after several days of uneventful travel, you see the ancient ruins that mark the entrance to the Mazes of Menace. It is late at night, so you make camp at the entrance and spend the night sleeping under the open skies. In the morning, you gather your gear, eat what may be your last meal outside, and enter the dungeon. %.hn 1 \section{What is going on here?} You have just begun a game of {\it NetHack}. Your goal is to grab as much treasure as you can, retrieve the Amulet of Yendor, and escape the Mazes of Menace alive. On the screen is kept a map of where you have been and what you have seen on the current dungeon level; as you explore more of the level, it appears on the screen in front of you. When {\it NetHack\/}'s ancestor {\it rogue\/} first appeared, its screen orientation was almost unique among computer fantasy games. Since then, screen orientation has become the norm rather than the exception; {\it NetHack\/} continues this fine tradition. Unlike text adventure games that input commands in pseudo-English sentences and explain the results in words, {\it NetHack\/} commands are all one or two keystrokes and the results are displayed graphically on the screen. A minimum screen size of 24 lines by 80 columns is recommended; if the screen is larger, only a $21\times80$ section will be used for the map. {\it NetHack\/} generates a new dungeon every time you play it; even the authors still find it an entertaining and exciting game despite having won several times. %.hn 1 \section{What do all those things on the screen mean?} In order to understand what is going on in {\it NetHack}, first you must understand what {\it NetHack\/} is doing with the screen. The {\it NetHack\/} screen replaces the ``You see \ldots'' descriptions of text adventure games. Figure 1 is a sample of what a {\it NetHack\/} screen might look like. \vbox{ \begin{verbatim} The bat bites! ------ |....| ---------- |.<..|####...@...$.| |....-# |...B....+ |....| |.d......| ------ -------|-- Player the Rambler St:12 Dx:7 Co:18 In:11 Wi:9 Ch:15 Neutral Dlvl:1 G:0 HP:9(12) Pw:3(3) AC:10 Xp:1/19 T:257 Weak \end{verbatim} \begin{center} Figure 1 \end{center} %.hn 2 \subsection*{The status lines (bottom)} The bottom two lines of the screen contain several cryptic pieces of information describing your current status. If either status line becomes longer than the width of the screen, you might not see all of it. Here are explanations of what the various status items mean (though your configuration may not have all the status items listed below): \blist{} \item[\bb{Rank}] Your character's name and professional ranking (based on the experience level, see below). \item[\bb{Strength}] A measure of your character's strength, one of your six basic attributes. Your attributes can range from 3 to 18 inclusive (occasionally you may get super-strengths of the form 18/xx). The higher your strength, the stronger you are. Strength affects how successfully you perform physical tasks and how much damage you do in combat. \item[\bb{Dexterity}] Dexterity affects your chances to hit in combat, to avoid traps, and do other tasks requiring agility or manipulation of objects. \item[\bb{Constitution}] Constitution affects your ability to withstand injuries and other strains on your stamina. \item[\bb{Intelligence}] Intelligence affects your ability to cast spells. \item[\bb{Wisdom}] Wisdom comes from your religious affairs. It affects your magical energy. \item[\bb{Charisma}] Charisma affects how certain creatures react toward you. In particular, it can affect the prices shopkeepers offer you. \item[\bb{Alignment}] {\it Lawful}, {\it Neutral\/} or {\it Chaotic}. Basically, Lawful is good and Chaotic is evil. Your alignment influences how other monsters react toward you. \item[\bb{Dungeon Level}] How deep you have gone into the dungeon. It starts at one and increases as you go deeper into the dungeon. The Amulet of Yendor is reputed to be somewhere beneath the twentieth level. \item[\bb{Gold}] The number of gold pieces you have. \item[\bb{Hit Points}] Your current and maximum hit points. Hit points indicate how much damage you can take before you die. The more you get hit in a fight, the lower they get. You can regain hit points by resting. The number in parentheses is the maximum number your hit points can reach. \item[\bb{Power}] Spell points. This tells you how much mystic energy ({\it mana\/}) you have available for spell casting. When you type `{\tt +}' to list your spells, each will have a spell point cost beside it in parentheses. You will not see this if your dungeon has been set up without spells. \item[\bb{Armor Class}] A measure of how effectively your armor stops blows from unfriendly creatures. The lower this number is, the more effective the armor; it is quite possible to have negative armor class. \item[\bb{Experience}] Your current experience level and experience points. As you adventure, you gain experience points. At certain experience point totals, you gain an experience level. The more experienced you are, the better you fight and withstand magical attacks. Many dungeons show only your experience level here. \item[\bb{Time}] The number of turns elapsed so far, displayed if you have the {\it time\/} option set. \item[\bb{Hunger Status}] Your current hunger status, ranging from % {\it Satiated\/} down to {\it Fainting}. If your hunger status is normal, it is not displayed. Additional status flags may appear after the hunger status: {\it Conf\/} when you're confused, {\it Sick\/} when sick, {\it Blind\/} when you can't see, {\it Stun\/} when stunned, and {\it Hallu\/} when hallucinating. \elist %.hn 2 \subsection*{The message line (top)} The top line of the screen is reserved for messages that describe things that are impossible to represent visually. If you see a ``{\tt --More--}'' on the top line, this means that {\it NetHack\/} has another message to display on the screen, but it wants to make certain that you've read the one that is there first. To read the next message, just press the space bar. %.hn 2 \subsection*{The map (rest of the screen)} The rest of the screen is the map of the level as you have explored it so far. Each symbol on the screen represents something. You can set the {\it graphics\/} option to change some of the symbols the game uses; otherwise, the game will use default symbols. Here is a list of what the default symbols mean: \blist{} \item[\tb{- and |}] The walls of a room, or an open door. \item[\tb{.}] The floor of a room, or a doorless doorway. \item[\tb{\#}] A corridor, or possibly a kitchen sink or drawbridge (if your dungeon has sinks). \item[\tb{<}] A way to the previous level. \item[\tb{>}] A way to the next level. \item[\tb{+}] A closed door, or a spell book containing a spell you can learn (if your dungeon has spell books). \item[\tb{@}] A human (you, usually). \item[\tb{\$}] A pile of gold. \item[\tb{\^}] A trap (once you detect it). \item[\tb{)}] A weapon. \item[\tb{[}] A suit or piece of armor. \item[\tb{\%}] A piece of food (not necessarily healthy). \item[\tb{?}] A scroll. \item[\tb{/}] A wand. \item[\tb{=}] A ring. \item[\tb{!}] A potion. \item[\tb{(}] A useful item (pick-axe, key, lamp \ldots). \item[\tb{"}] An amulet, or a spider web. \item[\tb{*}] A gem or rock (possibly valuable, possibly worthless). \item[\tb{`}] A boulder or statue. \item[\tb{0}] An iron ball. \item[\tb{_}] An altar, or an iron chain. \item[\tb{\}}] A pool of water or moat or a pool of lava. \item[\tb{\{}] A fountain (your dungeon may not have fountains). \item[\tb{$\backslash$}] An opulent throne (your dungeon may not have thrones either). \item[\tb{a-zA-Z \& other symbols}] Letters and certain other symbols represent the various inhabitants of the Mazes of Menace. Watch out, they can be nasty and vicious. Sometimes, however, they can be helpful. You need not memorize all these symbols; you can ask the game what any symbol represents with the `{\tt /}' command (see the Commands section for more info). \elist %.hn 1 \section{Commands} Commands are given to {\it NetHack\/} by typing one or two characters; {\it NetHack\/} then asks questions to find out what it needs to know to do your bidding. For example, a common question in the form ``{\tt What do you want to use? [a-zA-Z\ ?*]}'', asks you to choose an object you are carrying. Here, ``{\tt a-zA-Z}'' are the inventory letters of your possible choices. Typing `{\tt ?}' gives you an inventory list of these items, so you can see what each letter refers to. In this example, there is also a `{\tt *}' indicating that you may choose an object not on the list, if you wanted to use something unexpected. Typing a `{\tt *}' lists your entire inventory, so you can see the inventory letters of every object you're carrying. Finally, if you change your mind and decide you don't want to do this command after all, you can press the `ESC' key to abort the command. You can put a number before most commands to repeat them that many times; for example, ``{\tt 10s}'' will search ten times. If you have the {\it number\_pad\/} option set, you must type `{\tt n}' to prefix a count, so the example above would be typed ``{\tt n10s}'' instead. Commands for which counts make no sense ignore them. In addition, movement commands can be prefixed for greater control (see below). To cancel a count or a prefix, press the `ESC' key. The list of commands is rather long, but it can be read at any time during the game through the `{\tt ?}' command, which accesses a menu of helpful texts. Here are the commands for your reference: \blist{} \item[\tb{?}] Help menu: display one of several help texts available. \item[\tb{/}] Tell what a symbol represents. You may choose to specify a location or type a symbol (or even a whole word) to define. If the {\it help\/} option is on, and {\it NetHack\/} has some special information about an object or a monster that you looked at, you'll be asked if you want ``{\tt More info?}''. If {\it help\/} is off, then you'll only get the special information if you explicitly ask for it by typing in the name of the monster or object. \item[\tb{\&}] Tell what a command does. \item[\tb{<}] Go up a staircase to the previous level (if you are on the stairs). \item[\tb{>}] Go down a staircase to the next level (if you are on the stairs). \item[\tb{[yuhjklbn]}] Go one step in the direction indicated (see Figure 2). If there is a monster there, you will fight the monster instead. Only these one-step movement commands cause you to fight monsters; the others (below) are ``safe.'' \begin{center} \begin{tabular}{cc} \verb+ y k u + & \verb+ 7 8 9 +\\ \verb+ \ | / + & \verb+ \ | / +\\ \verb+ h- . -l + & \verb+ 4- . -6 +\\ \verb+ / | \ + & \verb+ / | \ +\\ \verb+ b j n + & \verb+ 1 2 3 +\\ & (if {\it number\_pad\/} set) \end{tabular} \end{center} \begin{center} Figure 2 \end{center} \item[\tb{[YUHJKLBN]}] Go in that direction until you hit a wall or run into something. \item[\tb{m[yuhjklbn]}] Prefix: Move without picking up any objects. \item[\tb{M[yuhjklbn]}] Prefix: Move far, no pickup. \item[\tb{g[yuhjklbn]}] Prefix: Move until something interesting is found. \item[\tb{G[yuhjklbn] or [yuhjklbn]}] Prefix: Same as `{\tt g}', but forking of corridors is not considered interesting. \item[\tb{.}] Rest, do nothing for one turn. \item[\tb{a}] Apply (use) a tool (pick-axe, key, lamp \ldots). \item[\tb{A}] Remove all armor. Use `{\tt T}' (take off) to take off only one piece of armor. \item[\tb{\^{}A}] Redo the previous command. \item[\tb{c}] Close a door. \item[\tb{C}] Call (name) an individual monster. \item[\tb{\^{}C}] Panic button. Quit the game. \item[\tb{d}] Drop something.\\ {\tt d7a} -- drop seven items of object {\it a}. \item[\tb{D}] Drop several things. In answer to the question ``{\tt What kinds of things do you want to drop? [!\%= au]}'' you should type zero or more object symbols possibly followed by `{\tt a}' and/or `{\tt u}'.\\ {\tt Da} -- drop all objects, without asking for confirmation.\\ {\tt Du} -- drop only unpaid objects (when in a shop).\\ {\tt D\%u} -- drop only unpaid food. \item[\tb{\^{}D}] Kick something (usually a door). \item[\tb{e}] Eat food. \item[\tb{E}] Engrave a message on the floor. Engraving the word ``{\tt Elbereth}'' will cause most monsters to not attack you hand-to-hand (but if you attack, you will rub it out); this is often useful to give yourself a breather. (This feature may be compiled out of the game, so your version might not necessarily have it.)\\ {\tt E-} -- write in the dust with your fingers. \item[\tb{i}] List your inventory (everything you're carrying). \item[\tb{I}] List selected parts of your inventory.\\ {\tt I*} -- list all gems in inventory;\\ {\tt Iu} -- list all unpaid items;\\ {\tt Ix} -- list all used up items that are on your shopping bill;\\ {\tt I\$} -- count your money. \item[\tb{o}] Open a door. \item[\tb{O}] Set options. You will be asked to enter an option line. If you enter a blank line, the current options are reported. Entering `{\tt ?}' will get you explanations of the various options. Otherwise, you should enter a list of options separated by commas. The available options are listed later in this Guidebook. Options are usually set before the game, not with the `{\tt O}' command; see the section on options below. \item[\tb{p}] Pay your shopping bill. \item[\tb{P}] Put on a ring or other accessory (amulet, blindfold). \item[\tb{\^{}P}] Repeat previous message (subsequent {\tt \^{}P}'s repeat earlier messages). \item[\tb{q}] Quaff (drink) a potion. \item[\tb{Q}] Quit the game. \item[\tb{r}] Read a scroll or spell book. \item[\tb{R}] Remove an accessory (ring, amulet, etc). \item[\tb{\^{}R}] Redraw the screen. \item[\tb{s}] Search for secret doors and traps around you. It usually takes several tries to find something. \item[\tb{S}] Save the game. The game will be restored automatically the next time you play. \item[\tb{t}] Throw an object or shoot a projectile. \item[\tb{T}] Take off armor. \item[\tb{\^{}T}] Teleport, if you have the ability. \item[\tb{v}] Display version number. \item[\tb{V}] Display the game history. \item[\tb{w}] Wield weapon.\\ {\tt w-} -- wield nothing, use your bare hands. \item[\tb{W}] Wear armor. \item[\tb{x}] List the spells you know (same as `{\tt +}'). \item[\tb{X}] Enter explore (discovery) mode. \item[\tb{z}] Zap a wand. \item[\tb{Z}] Zap (cast) a spell. \item[\tb{\^{}Z}] Suspend the game (UNIX versions with job control only). \item[\tb{:}] Look at what is here. \item[\tb{;}] Show what type of thing a visible symbol corresponds to. \item[\tb{,}] Pick up some things. \item[\tb{@}] Toggle the {\it pickup\/} option on and off. \item[\tb{\^{}}] Ask for the type of a trap you found earlier. \item[\tb{)}] Tell what weapon you are wielding. \item[\tb{[}] Tell what armor you are wearing. \item[\tb{=}] Tell what rings you are wearing. \item[\tb{"}] Tell what amulet you are wearing. \item[\tb{(}] Tell what tools you are using. \item[\tb{\$}] Count your gold pieces. \item[\tb{+}] List the spells you know (same as `{\tt x}'). \item[\tb{$\backslash$}] Show what types of objects have been discovered. \item[\tb{!}] Escape to a shell. \item[\tb{\#}] Perform an extended command. As you can see, the authors of {\it NetHack\/} used up all the letters, so this is a way to introduce the less useful commands, or commands used under limited circumstances. You may obtain a list of them by entering `{\tt ?}'. What extended commands are available depend on what features the game was compiled with. \elist \nd If your keyboard has a meta key (which, when pressed in combination with another key, modifies it by setting the `meta' [8th, or `high'] bit), you can invoke the extended commands by meta-ing the first letter of the command. In {\it OS/2, PC\/ {\rm and} ST NetHack}, the `Alt' key can be used in this fashion. \blist{} \item[\tb{M-a}] Adjust inventory letters (the {\it fixinv\/} option must be ``on'' to do this). \item[\tb{M-c}] Talk to someone. \item[\tb{M-d}] Dip an object into something. \item[\tb{M-f}] Force a lock. \item[\tb{M-i}] Invoke an object's special powers. \item[\tb{M-j}] Jump to another location. \item[\tb{M-l}] Loot a box on the floor. \item[\tb{M-m}] Use a monster's special ability. \item[\tb{M-n}] Name an item or type of object. \item[\tb{M-o}] Offer a sacrifice to the gods. \item[\tb{M-p}] Pray to the gods for help. \item[\tb{M-r}] Rub a lamp. \item[\tb{M-s}] Sit down. \item[\tb{M-t}] Turn undead. \item[\tb{M-u}] Untrap something (usually a trapped object). \item[\tb{M-v}] Print compile time options for this version of {\it NetHack}. \item[\tb{M-w}] Wipe off your face. \elist \nd If the {\it number\_pad\/} option is on, some additional letter commands are available: \blist{} \item[\tb{j}] Jump to another location. Same as ``{\tt \#jump}'' or ``{\tt M-j}''. \item[\tb{k}] Kick something (usually a door). Same as `{\tt \^{}D}'. \item[\tb{l}] Loot a box on the floor. Same as ``{\tt \#loot}'' or ``{\tt M-l}''. \item[\tb{N}] Name an object or type of object. Same as ``{\tt \#name}'' or ``{\tt M-N}''. \item[\tb{u}] Untrap a trapped object or door. Same as ``{\tt \#untrap}'' or ``{\tt M-u}''. \elist %.hn 1 \section{Rooms and corridors} Rooms and corridors in the dungeon are either lit or dark. Any lit areas within your line of sight will be displayed; dark areas are only displayed if they are within one space of you. Walls and corridors remain on the map as you explore them. Secret corridors are hidden. You can find them with the `{\tt s}' (search) command. %.hn 2 \subsection*{Doorways} Doorways connect rooms and corridors. Some doorways have no doors; you can walk right through. Others have doors in them, which may be open, closed, or locked. To open a closed door, use the `{\tt o}' (open) command; to close it again, use the `{\tt c}' (close) command. You can get through a locked door by using a tool to pick the lock with the `{\tt a}' (apply) command, or by kicking it open with the `{\tt \^{}D}' (kick) command. Open doors cannot be entered diagonally; you must approach them straight on, horizontally or vertically. Doorways without doors are not restricted. Doors can be useful for shutting out monsters. Most monsters cannot open doors, although a few don't need to (ex.\ ghosts can walk through doors). Secret doors are hidden. You can find them with the `{\tt s}' (search) command. %.hn 2 \subsection*{Traps (`{\tt \^{}}')} There are traps throughout the dungeon to snare the unwary delver. For example, you may suddenly fall into a pit and be stuck for a few turns. Traps don't appear on your map until you see one triggered by moving onto it, or you discover it with the `{\tt s}' (search) command. Monsters can fall prey to traps, too. %.hn 1 \section{Monsters} Monsters you cannot see are not displayed on the screen. Beware! You may suddenly come upon one in a dark place. Some magic items can help you locate them before they locate you, which some monsters do very well. %.hn 2 \subsection*{Fighting} If you see a monster and you wish to fight it, just attempt to walk into it. Many monsters you find will mind their own business unless you attack them. Some of them are very dangerous when angered. Remember: Discretion is the better part of valor. %.hn 2 \subsection*{Your pet} You start the game with a little dog (`{\tt d}') or cat (`{\tt f}'), which follows you about the dungeon and fights monsters with you. Like you, your pet needs food to survive. It usually feeds itself on fresh carrion and other meats. If you're worried about it or want to train it, you can feed it, too, by throwing it food. Your pet also gains experience from killing monsters, and can grow over time, gaining hit points and doing more damage. Initially, your pet may even be better at killing things than you, which makes pets useful for low-level characters. Your pet will follow you up and down staircases, if it is next to you when you move. Otherwise, your pet will be stranded, and may become wild. %.hn 2 \subsection*{Ghost levels} You may encounter the shades and corpses of other adventurers (or even former incarnations of yourself!) and their personal effects. Ghosts are hard to kill, but easy to avoid, since they're slow and do little damage. You can plunder the deceased adventurer's possessions; however, they are likely to be cursed. Beware of whatever killed the former player. %.hn 1 \section{Objects} When you find something in the dungeon, it is common to want to pick it up. In {\it NetHack}, this is accomplished automatically by walking over the object (unless you turn off the {\it pickup\/} option (see below), or move with the `{\tt m}' prefix (see above)), or manually by using the `{\tt ,}' command. If you're carrying too many things, {\it NetHack\/} will tell you so and won't pick up anything more. Otherwise, it will add the object(s) to your pack and tell you what you just picked up. When you pick up an object, it is assigned an inventory letter. Many commands that operate on objects must ask you to find out which object you want to use. When {\it NetHack\/} asks you to choose a particular object you are carrying, you are usually presented with a list of inventory letters to choose from (see Commands, above). Some objects, such as weapons, are easily differentiated. Others, like scrolls and potions, are given descriptions which vary according to type. During a game, any two objects with the same description are the same type. However, the descriptions will vary from game to game. When you use one of these objects, if its effect is obvious, {\it NetHack\/} will remember what it is for you. If its effect isn't extremely obvious, you will be asked what you want to call this type of object so you will recognize it later. You can also use the ``{\tt \#name}'' command for the same purpose at any time, to name all objects of a particular type or just an individual object. %.hn 2 \subsection*{Curses and blessings} Any object that you find may be cursed, even if the object is otherwise helpful. The most common effect of a curse is being stuck with (and to) the item. Cursed weapons weld themselves to your hand when wielded, so you cannot unwield them. Any cursed item you wear is not removable by ordinary means. In addition, cursed arms and armor usually, but not always, bear negative enchantments that make them less effective in combat. Other cursed objects may act poorly or detrimentally in other ways. Objects can also become blessed. Blessed items usually work better or more beneficially than normal uncursed items. For example, a blessed weapon will do more damage against demons. There are magical means of bestowing or removing curses upon objects, so even if you are stuck with one, you can still have the curse lifted and the item removed. Priests and Priestesses have an innate sensitivity to curses and blessings, so they can more easily avoid cursed objects than other character classes. An item with unknown curse status, and an item which you know to be uncursed, will be distinguished in your inventory by the presence of the word ``uncursed'' in the description of the latter. The exception is if this description isn't needed; you can look at the inventory description and know that you have discovered whether it's cursed. This applies to items which have ``plusses,'' and items with charges. %.hn 2 \subsection*{Weapons (`{\tt )}')} Given a chance, most monsters in the Mazes of Menace will gratuitously kill you. You need weapons for self-defense (killing them first). Without a weapon, you do only 1--2 hit points of damage (plus bonuses, if any). There are wielded weapons, like maces and swords, and thrown weapons, like arrows. To hit monsters with a weapon, you must wield it and attack them, or throw it at them. To shoot an arrow out of a bow, you must first wield the bow, then throw the arrow. Crossbows shoot crossbow bolts. Slings hurl rocks and (other) gems. You can wield only one weapon at a time, but you can change weapons unless you're wielding a cursed one. Enchanted weapons have a ``plus'' (which can also be a minus) that adds to your chance to hit and the damage you do to a monster. The only way to find out if a weapon is enchanted is to have it magically identified somehow. Those of you in the audience who are AD\&D players, be aware that each weapon which exists in AD\&D does the same damage to monsters in {\it NetHack}. Some of the more obscure weapons (such as the % {\it aklys}, {\it lucern hammer}, and {\it bec-de-corbin\/}) are defined in an appendix to {\it Unearthed Arcana}, an AD\&D supplement. The commands to use weapons are `{\tt w}' (wield) and `{\tt t}' (throw). %.hn 2 \subsection*{Armor (`{\tt [}')} Lots of unfriendly things lurk about; you need armor to protect yourself from their blows. Some types of armor offer better protection than others. Your armor class is a measure of this protection. Armor class (AC) is measured as in AD\&D, with 10 being the equivalent of no armor, and lower numbers meaning better armor. Each suit of armor which exists in AD\&D gives the same protection in {\it NetHack}. Here is an (incomplete) list of the armor classes provided by various suits of armor: \begin{center} \begin{tabular}{lllll} dragon scale mail & 1 & \makebox[20mm]{} & chain mail & 5\\ plate mail & 3 & & scale mail & 6\\ bronze plate mail & 4 & & ring mail & 7\\ splint mail & 4 & & studded leather armor & 7\\ banded mail & 4 & & leather armor & 8\\ elven mithril-coat & 5 & & no armor & 10 \end{tabular} \end{center} \nd You can also wear other pieces of armor (ex.\ helmets, boots, shields, cloaks) to lower your armor class even further, but you can only wear one item of each category (one suit of armor, one cloak, one helmet, one shield, and so on). If a piece of armor is enchanted, its armor protection will be better (or worse) than normal, and its ``plus'' (or minus) will subtract from your armor class. For example, a +1 chain mail would give you better protection than normal chain mail, lowering your armor class one unit further to 4. When you put on a piece of armor, you immediately find out the armor class and any ``plusses'' it provides. Cursed pieces of armor usually have negative enchantments (minuses) in addition to being unremovable. The commands to use armor are `{\tt W}' (wear) and `{\tt T}' (take off). %.hn 2 \subsection*{Food (`{\tt \%}')} Food is necessary to survive. If you go too long without eating you will faint, and eventually die of starvation. Unprotected food does not stay fresh indefinitely; after a while it will spoil, and be unhealthy to eat. Food stored in ice boxes or tins (``cans'' to you Americans) will usually stay fresh, but ice boxes are heavy, and tins take a while to open. When you kill monsters, they usually leave corpses which are also ``food.'' Many, but not all, of these are edible; some also give you special powers when you eat them. A good rule of thumb is ``you are what you eat.'' You can name one food item after something you like to eat with the {\it fruit\/} option, if your dungeon has it. The command to eat food is `{\tt e}'. %.hn 2 \subsection*{Scrolls (`{\tt ?}')} Scrolls are labeled with various titles, probably chosen by ancient wizards for their amusement value (ex.\ ``READ ME,'' or ``HOLY BIBLE'' backwards). Scrolls disappear after you read them (except for blank ones, without magic spells on them). One of the most useful of these is the % {\it scroll of identify}, which can be used to determine what another object is, whether it is cursed or blessed, and how many uses it has left. Some objects of subtle enchantment are difficult to identify without these. If you receive mail while you are playing (on versions compiled with this feature), a mail daemon may run up and deliver it to you as a % {\it scroll of mail}. To use this feature, you must let {\it NetHack\/} know where to look for new mail by setting the ``MAIL'' environment variable to the file name of your mailbox. You may also want to set the ``MAILREADER'' environment variable to the file name of your favorite reader, so {\it NetHack\/} can shell to it when you read the scroll. The command to read a scroll is `{\tt r}'. %.hn 2 \subsection*{Potions (`{\tt !}')} Potions are distinguished by the color of the liquid inside the flask. They disappear after you quaff them. Clear potions are potions of water. Sometimes these are blessed or cursed, resulting in holy or unholy water. Holy water is the bane of the undead, so potions of holy water are good thing to throw (`{\tt t}') at them. It also is very useful when you dip (``{\tt \#dip}'') other objects in it. The command to drink a potion is `{\tt q}' (quaff). %.hn 2 \subsection*{Wands (`{\tt /}')} Magic wands have multiple magical charges. Some wands are directional---you must give a direction to zap them in. You can also zap them at yourself (just give a `{\tt .}' or `{\tt s}' for the direction), but it is often unwise. Other wands are nondirectional---they don't ask for directions. The number of charges in a wand is random, and decreases by one whenever you use it. The command to use a wand is `{\tt z}' (zap). %.hn 2 \subsection*{Rings (`{\tt =}')} Rings are very useful items, since they are relatively permanent magic, unlike the usually fleeting effects of potions, scrolls, and wands. Putting on a ring activates its magic. You can wear only two rings, one on each ring finger. Most rings also cause you to grow hungry more rapidly, the rate varying with the type of ring. The commands to use rings are `{\tt P}' (put on) and `{\tt R}' (remove). %.hn 2 \subsection*{Spell books (`{\tt +}')} Spell books are tomes of mighty magic. When studied with the `{\tt r}' (read) command, they bestow the knowledge of a spell---unless the attempt backfires. Reading a cursed spell book, or one with mystic runes beyond your ken can be harmful to your health! A spell can also backfire when you cast it. If you attempt to cast a spell well above your experience level, or cast it at a time when your luck is particularly bad, you can end up wasting both the energy and the time required in casting. Casting a spell calls forth magical energies and focuses them with your naked mind. Releasing the magical energy releases some of your memory of the spell with it. Each time you cast a spell, your familiarity with it will dwindle, until you eventually forget the details completely and must relearn it. The command to read a spell book is the same as for scrolls, `{\tt r}' (read). The `{\tt +}' command lists your current spells and the number of spell points they require. The `{\tt Z}' (cast) command casts a spell. %.hn 2 \subsection*{Tools (`{\tt (}')} Tools are miscellaneous objects with various purposes. Some tools, like wands, have a limited number of uses. For example, lamps burn out after a while. Other tools are containers, which objects can be placed into or taken out of. The command to use tools is `{\tt a}' (apply). %.hn 3 \subsection*{Chests and boxes} You may encounter chests or boxes in your travels. These can be opened with the ``{\tt \#loot}'' extended command when they are on the floor, or with the `{\tt a}' (apply) command when you are carrying one. However, chests are often locked, and require you to either use a key to unlock it, a tool to pick the lock, or to break it open with brute force. Chests are unwieldy objects, and must be set down to be unlocked (by kicking them, using a key or lock picking tool with the `{\tt a}' (apply) command, or by using a weapon to force the lock with the ``{\tt \#force}'' extended command). Some chests are trapped, causing nasty things to happen when you unlock or open them. You can check for and try to deactivate traps with the ``{\tt \#untrap}'' extended command. %.hn 2 \subsection*{Amulets (`{\tt "}')} Amulets are very similar to rings, and often more powerful. Like rings, amulets have various magical properties, some beneficial, some harmful, which are activated by putting them on. The commands to use amulets are the same as for rings, `{\tt P}' (put on) and `{\tt R}' (remove). %.hn 2 \subsection*{Gems (`{\tt *}')} Some gems are valuable, and can be sold for a lot of gold pieces. Valuable gems increase your score if you bring them with you when you exit. Other small rocks are also categorized as gems, but they are much less valuable. %.hn 2 \subsection*{Large rocks (`{\tt `}')} Statues and boulders are not particularly useful, and are generally heavy. It is rumored that some statues are not what they seem. %.hn 2 \subsection*{Gold (`{\tt \$}')} Gold adds to your score, and you can buy things in shops with it. Your version of {\it NetHack\/} may display how much gold you have on the status line. If not, the `{\tt \$}' command will count it. %.hn 1 \section{Options} Due to variations in personal tastes and conceptions of how {\it NetHack\/} should do things, there are options you can set to change how {\it NetHack\/} behaves. %.hn 2 \subsection*{Setting the options} Options may be set in a number of ways. Within the game, the `{\tt O}' command allows you to view all options and change most of them. You can also set options automatically by placing them in the ``NETHACKOPTIONS'' environment variable or a configuration file. Some versions of {\it NetHack\/} also have front-end programs that allow you to set options before starting the game. %.hn 2 \subsection*{Using the NETHACKOPTIONS environment variable} The NETHACKOPTIONS variable is a comma-separated list of initial values for the various options. Some can only be turned on or off. You turn one of these on by adding the name of the option to the list, and turn it off by typing a `{\tt !}' or ``{\tt no}'' before the name. Others take a character string as a value. You can set string options by typing the option name, a colon, and then the value of the string. The value is terminated by the next comma or the end of string. For example, to set up an environment variable so that {\it female\/} is on, {\it pickup\/} is off, the {\it name\/} is set to ``Blue Meanie'', and the {\it fruit\/} is set to ``papaya'', you would enter the command \begin{verbatim} setenv NETHACKOPTIONS "female,!pickup,name:Blue Meanie,fruit:papaya" \end{verbatim} \nd in {\it csh}, or \begin{verbatim} NETHACKOPTIONS="female,!pickup,name:Blue Meanie,fruit:papaya" export NETHACKOPTIONS \end{verbatim} \nd in {\it sh\/} or {\it ksh}. %.hn 2 \subsection*{Using a configuration file} Any line in the configuration file starting with ``{\tt OPTIONS=}'' may be filled out with options in the same syntax as in NETHACKOPTIONS. Any line starting with ``{\tt GRAPHICS=}'', ``{\tt MONSTERS=}'', or ``{\tt OBJECTS=}'' is taken as defining the {\it graphics\/}, {\it monsters\/}, or {\it objects\/} options in a different syntax, a sequence of decimal numbers giving the character position in the current font to be used in displaying each entry. Such a sequence can be continued to multiple lines by putting a `{\tt \verb+\+}' at the end of each line to be continued. Any line starting with `{\tt \#}' is treated as a comment. The default name of the configuration file varies on different operating systems, but NETHACKOPTIONS can also be set to the full name of a file you want to use (possibly preceded by an `{\tt @}'). %.hn 2 \subsection*{Customization options} Here are explanations of the various options do. Character strings longer than fifty characters are truncated. Some of the options listed may be inactive in your dungeon. \blist{} \item[\ib{BIOS}] Use BIOS calls to update the screen display quickly and to read the keyboard (allowing the use of arrow keys to move) on machines with an IBM PC compatible BIOS ROM (default off, {\it OS/2, PC\/ {\rm and} ST NetHack\/} only). \item[\ib{catname}] Name your starting cat (ex.\ ``{\tt catname:Morris}''). Cannot be set with the `{\tt O}' command. \item[\ib{checkpoint}] Save game state after each level change, for possible recovery after program crash (default on). \item[\ib{color}] Use color for different monsters, objects, and dungeon features (default on for microcomputers). \item[\ib{confirm}] Have user confirm attacks on pets, shopkeepers, and other peaceable creatures (default on). \item[\ib{DECgraphics}] Use a predefined selection of characters from the DEC VT-xxx/DEC Rainbow/ ANSI line-drawing character set to display the dungeon instead of having to define a full graphics set yourself (default off). Cannot be set with the `{\tt O}' command. \item[\ib{disclose}] Offer to identify your inventory and intrinsics when the game ends (default on). \item[\ib{dogname}] Name your starting dog (ex.\ ``{\tt dogname:Fang}''). Cannot be set with the `{\tt O}' command. \item[\ib{female}] Set your sex (default off). Cannot be set with the `{\tt O}' command. \item[\ib{fixinv}] An object's inventory letter sticks to it when it's dropped (default on). If this is off, dropping an object shifts all the remaining inventory letters. \item[\ib{fruit}] Name a fruit after something you enjoy eating (ex.\ ``{\tt fruit:mango}'') (default ``{\tt slime mold}''). Basically a nostalgic whimsy that {\it NetHack\/} uses from time to time. You should set this to something you find more appetizing than slime mold. Apples, oranges, pears, bananas, and melons already exist in {\it NetHack}, so don't use those. \item[\ib{graphics}] Set the graphics symbols for screen displays (default ``\verb& |--------||.-|++.##<>& \verb&<>\^"_\\#{}.}..## #}|-\\/*!)(0#@*/-\\||\\-//-\\| |\\-/&''). If specified, the {\it graphics\/} option should come last, followed by a string of 1--69 characters to be used instead of the default map-drawing characters. The dungeon map will use the characters you specify instead of the default symbols. Remember that you may need to escape some of these characters if, for example, you use {\it csh}. The {\it DECgraphics\/} and {\it IBMgraphics\/} options use predefined selections of graphics symbols, so you need not go to the trouble of setting up a full graphics string for these common cases. These two options also set up proper handling of graphics characters for such terminals, so you should specify them as appropriate even if you override the selections with your own graphics string. Note that this option string is now escape-processed in conventional C fashion. This means that `\verb+\+' is a prefix to take the following character literally, and not as a special prefix. Your graphics strings for {\it NetHack\/} 2.2 and older versions may contain a `\verb+\+'; it must be doubled for the same effect now. The special escape form `\verb+\m+' switches on the meta bit in the following character, and the `{\tt \^{}}' prefix causes the following character to be treated as a control character (so any `{\tt \^{}}' in your old graphics strings should be changed to `\verb+\^+' now). Also note that there are more symbols in a different order than used for {\it NetHack\/} 3.0. The order of the symbols is: solid rock, vertical wall, horizontal wall, upper left corner, upper right corner, lower left corner, lower right corner, cross wall, upward T wall, downward T wall, leftward T wall, rightward T wall, no door, vertical open door, horizontal open door, vertical closed door, horizontal closed door, floor of a room, dark corridor, lit corridor, stairs up, stairs down, ladder up, ladder down, trap, web, altar, throne, kitchen sink, fountain, pool or moat, ice, lava, vertical lowered drawbridge, horizontal lowered drawbridge, vertical raised drawbridge, horizontal raised drawbridge, air, cloud, under water, vertical beam, horizontal beam, left slant, right slant, digging beam, camera flash beam, left boomerang, right boomerang, four glyphs giving the sequence for magic resistance displays; the eight surrounding glyphs for swallowed display; nine glyphs for explosions. An explosion consists of three rows (top, middle, and bottom) of three characters. The explosion is centered in the center of this $3 \times 3$ array. You might want to use `{\tt +}' for the corners and T walls for a more aesthetic, boxier display. Note that in the next release, new symbols may be added, or the present ones rearranged. Cannot be set with the `{\tt O}' command. \item[\ib{help}] If more information is available for an object looked at with the `{\tt /}' command, ask if you want to see it (default on). Turning help off makes just looking at things faster, since you aren't interrupted with the ``{\tt More info?}'' prompt, but it also means that you might miss some interesting and/or important information. \item[\ib{hilite\_pet}] Highlight pets when color is turned off (default off). \item[\ib{IBMgraphics}] Use a predefined selection of IBM extended ASCII characters to display the dungeon instead of having to define a full graphics set yourself (default off). Cannot be set with the `{\tt O}' command. \item[\ib{ignintr}] Ignore interrupt signals, including breaks (default off). \item[\ib{legacy}] Display an introductory message when starting the game (default on). \item[\ib{lit\_corridor}] Show corridor squares seen by night vision or a light source held by your character as lit (default off). \item[\ib{male}] Set your sex (default on, most hackers are male). Cannot be set with the `{\tt O}' command. \item[\ib{monsters}] Set the characters used to display monster classes (default ``\verb+abcdefghijklmnopqrstuv+ \verb+wxyzABCDEFGHIJKLMNOPQRSTUVWXYZ@ \\&;:~]+''). This string is subjected to the same processing as the {\it graphics\/} option. The order of the symbols is ant or other insect, blob, cockatrice, dog or other canine, eye or sphere, feline, gremlin, humanoid, imp or minor demon, jelly, kobold, leprechaun, mimic, nymph, orc, piercer, quadruped, rodent, spider, trapper or lurker above, unicorn, vortex, worm, xan or other mythical/fantastic insect, light, zruty, angelic being, bat, centaur, dragon, elemental, fungus or mold, gnome, giant humanoid, invisible stalker, jabberwock, Keystone Kop, lich, mummy, naga, ogre, pudding or ooze, quantum mechanic, rust monster, snake, troll, umber hulk, vampire, wraith, xorn, yeti or ape or other large beast, zombie, human, ghost, golem, demon, sea monster, lizard, long worm tail, and mimic. Cannot be set with the `{\tt O}' command. \item[\ib{msghistory}] The number of top line messages to save (and recall with `{\tt \^{}P}') (default 20). Cannot be set with the `{\tt O}' command. \item[\ib{name}] Set your character's name (defaults to your user name). You can also set your character class by appending a dash and the first letter of the character class (that is, by suffixing one of ``{\tt -A -B -C -E -H -K -P -R -S -T -V -W}''). If ``{\tt -@}'' is used for the class, then a random one will be automatically chosen. Cannot be set with the `{\tt O}' command. \item[\ib{news}] Read the {\it NetHack\/} news file, if present (default on). Since the news is shown at the beginning of the game, there's no point in setting this with the `{\tt O}' command. \item[\ib{null}] Send padding nulls to the terminal (default off). \item[\ib{number\_pad}] Use the number keys to move instead of {\tt [yuhjklbn]} (default off). \item[\ib{objects}] Set the characters used to display object classes (default ``\verb&])[="(%!?+/$*`0_.&''). This string is subjected to the same processing as the {\it graphics\/} option. The order of the symbols is illegal-object (should never be seen), weapon, armor, ring, amulet, tool, food, potion, scroll, spell book, wand, gold, gem or rock, boulder or statue, iron ball, chain, and venom. Cannot be set with the `{\tt O}' command. \item[\ib{packorder}] Specify the order to list object types in (default ``\verb&\")[\%?+/=!(*`0_&''). The value of this option should be a string containing the symbols for the various object types. \item[\ib{pettype}] Specify the type of your initial pet, if you are playing a character class that uses both types of pets. Possible values are ``{\tt cat}'' and ``{\tt dog}''. Cannot be set with the `{\tt O}' command. \item[\ib{pickup}] Pick up things you move onto by default (default on). \item[\ib{rawio}] Force raw (non-ctrl-break) mode for faster output and more bulletproof input (MS-DOS sometimes treats `{\tt \^{}P}' as a printer toggle without it) (default off). Note: DEC Rainbows hang if this is turned on. Cannot be set with the `{\tt O}' command. \item[\ib{rest\_on\_space}] Make the space bar a synonym for the `{\tt .}' (rest) command (default off). \item[\ib{safe\_pet}] Prevent you from (knowingly) attacking your pets (default on). \item[\ib{scores}] Control what parts of the score list you are shown at the end (ex.\ ``{\tt scores:5top scores/4around my score/own scores}''). Only the first letter of each category (`{\tt t}', `{\tt a}' or `{\tt o}') is necessary. \item[\ib{showexp}] Show your accumulated experience points on bottom line (default off). \item[\ib{showscore}] Show your approximate accumulated score on bottom line (default off). \item[\ib{silent}] Suppress terminal beeps (default on). \item[\ib{sortpack}] Sort the pack contents by type when displaying inventory (default on). \item[\ib{standout}] Boldface monsters and ``{\tt --More--}'' (default off). \item[\ib{time}] Show the elapsed game time in turns on bottom line (default off). \item[\ib{tombstone}] Draw a tombstone graphic upon your death (default on). \item[\ib{verbose}] Provide more commentary during the game (default on). \item[\ib{windowtype}] Select which windowing system to use, such as ``{\tt tty}'' or ``{\tt X11}'' (default depends on version). Cannot be set with the `{\tt O}' command. \elist %.hn 1 \section{Scoring} {\it NetHack\/} maintains a list of the top scores or scorers on your machine, depending on how it is set up. In the latter case, each account on the machine can post only one non-winning score on this list. If you score higher than someone else on this list, or better your previous score, you will be inserted in the proper place under your current name. How many scores are kept can also be set up when {\it NetHack\/} is compiled. Your score is chiefly based upon how much experience you gained, how much loot you accumulated, how deep you explored, and how the game ended. If you quit the game, you escape with all of your gold intact. If, however, you get killed in the Mazes of Menace, the guild will only hear about 90\,\% of your gold when your corpse is discovered (adventurers have been known to collect finder's fees). So, consider whether you want to take one last hit at that monster and possibly live, or quit and stop with whatever you have. If you quit, you keep all your gold, but if you swing and live, you might find more. If you just want to see what the current top players/games list is, you can type \begin{verbatim} nethack -s all \end{verbatim} on most versions. %.hn 1 \section{Explore mode} {\it NetHack\/} is an intricate and difficult game. Novices might falter in fear, aware of their ignorance of the means to survive. Well, fear not. Your dungeon may come equipped with an ``explore'' or ``discovery'' mode that enables you to keep old save files and cheat death, at the paltry cost of not getting on the high score list. There are two ways of enabling explore mode. One is to start the game with the {\tt -X} switch. The other is to issue the `{\tt X}' command while already playing the game. The other benefits of explore mode are left for the trepid reader to discover. \section{Credits} The original % {\it hack\/} game was modeled on the Berkeley {\it rogue\/} game. Large portions of this paper were shamelessly cribbed from % {\it A Guide to the Dungeons of Doom}, by Michael C. Toy and Kenneth C. R. C. Arnold. Small portions were adapted from {\it Further Exploration of the Dungeons of Doom}, by Ken Arromdee. {\it NetHack\/} is the product of literally dozens of people's work. Main events in the course of the game development are described below: \bigskip \nd {\it Jay Fenlason\/} wrote the original {\it Hack\/} with help from {\it Kenny Woodland}, {\it Mike Thome}, and {\it Jon Payne}. \medskip \nd {\it Andries Brouwer\/} did a major re-write, transforming {\it Hack\/} into a very different game, and published (at least) three versions (1.0.1, 1.0.2, and 1.0.3) for UNIX machines to the Usenet. \medskip \nd {\it Don G. Kneller\/} ported {\it Hack\/} 1.0.3 to Microsoft C and MS-DOS, producing {\it PC Hack\/} 1.01e, added support for DEC Rainbow graphics in version 1.03g, and went on to produce at least four more versions (3.0, 3.2, 3.51, and 3.6). \medskip \nd {\it R. Black\/} ported {\it PC Hack\/} 3.51 to Lattice C and the Atari 520/1040ST, producing {\it ST Hack\/} 1.03. \medskip \nd {\it Mike Stephenson\/} merged these various versions back together, incorporating many of the added features, and produced {\it NetHack\/} version 1.4. He then coordinated a cast of thousands in enhancing and debugging {\it NetHack\/} 1.4 and released {\it NetHack\/} versions 2.2 and 2.3. \medskip \nd Later, Mike coordinated a major rewrite of the game, heading a team which included {\it Ken Arromdee}, {\it Jean-Christophe Collet}, {\it Steve Creps}, {\it Eric Hendrickson}, {\it Izchak Miller}, {\it Eric S. Raymond}, {\it John Rupley}, {\it Mike Threepoint}, and {\it Janet Walz}, to produce {\it NetHack\/} 3.0c. \medskip \nd {\it NetHack\/} 3.0 was ported to the Atari by {\it Eric R. Smith}, to OS/2 by {\it Timo Hakulinen}, and to VMS by {\it David Gentzel}. The three of them and {\it Kevin Darcy\/} later joined the main development team to produce subsequent revisions of 3.0. \medskip \nd {\it Olaf Seibert\/} ported {\it NetHack\/} 2.3 and 3.0 to the Amiga. {\it Norm Meluch}, {\it Stephen Spackman\/} and {\it Pierre Martineau\/} designed overlay code for {\it PC NetHack\/} 3.0. {\it Johnny Lee\/} ported {\it NetHack\/} 3.0 to the Macintosh. Along with various other Dungeoneers, they continued to enhance the PC, Macintosh, and Amiga ports through the later revisions of 3.0. \medskip \nd Headed by {\it Mike Stephenson\/} and coordinated by {\it Izchak Miller\/} and {\it Janet Walz}, the development team which now included {\it Ken Arromdee}, {\it David Cohrs}, {\it Jean-Christophe Collet}, {\it Kevin Darcy}, {\it Matt Day}, {\it Timo Hakulinen}, {\it Steve Linhart}, {\it Dean Luick}, {\it Pat Rankin}, {\it Eric Raymond}, and {\it Eric Smith\/} undertook a radical revision of 3.0. They re-structured the game's design, and re-wrote major parts of the code. They added multiple dungeons, a new display, special individual character quests, a new endgame and many other new features, and produced {\it NetHack\/} 3.1. \medskip \nd {\it Ken Lorber}, {\it Gregg Wonderly\/} and {\it Greg Olson}, with help from {\it Richard Addison}, {\it Mike Passaretti}, and {\it Olaf Seibert}, developed {\it NetHack\/} 3.1 for the Amiga. \medskip \nd {\it Norm Meluch\/} and {\it Kevin Smolkowski}, with help from {\it Carl Schelin}, {\it Stephen Spackman}, {\it Steve VanDevender}, and {\it Paul Winner}, ported {\it NetHack\/} 3.1 to the PC. \medskip \nd {\it Jon W\"atte}, with help from {\it Ross Brown}, {\it Mike Engber}, {\it David Hairston}, {\it Michael Hamel}, {\it Jonathan Handler}, {\it Johnny Lee}, {\it Tim Lennan}, {\it Rob Menke}, {\it Andy Swanson}, and especially from {\it Hao-yang Wang}, developed {\it NetHack\/} 3.1 for the Macintosh. \medskip \nd {\it Timo Hakulinen\/} ported {\it NetHack\/} 3.1 to OS/2. {\it Eric Smith\/} ported {\it NetHack\/} 3.1 to the Atari. {\it Pat Rankin}, with help from {\it Joshua Delahunty}, is responsible for the VMS version of {\it NetHack\/} 3.1. \medskip \nd {\it Dean Luick}, with help from {\it David Cohrs}, developed {\it NetHack\/} 3.1 for X11. \bigskip \nd From time to time, some depraved individual out there in netland sends a particularly intriguing modification to help out with the game. The Gods of the Dungeon sometimes make note of the names of the worst of these miscreants in this, the list of Dungeoneers: \begin{center} \begin{tabular}{lll} Richard Addison & Eric Hendrickson & Mike Passaretti \\ Tom Almy & Bruce Holloway & Pat Rankin \\ Ken Arromdee & Richard P. Hughey & Eric S. Raymond \\ Eric Backus & Ari Huttunen & Frederick Roeber \\ John S. Bien & John Kallen & John Rupley \\ Ralf Brown & Del Lamb & Carl Schelin \\ Ross Brown & Greg Laskin & Olaf Seibert \\ David Cohrs & Johnny Lee & Kevin Sitze \\ Jean-Christophe Collet & Tim Lennan & Eric R. Smith \\ Steve Creps & Merlyn LeRoy & Kevin Smolkowski \\ Kevin Darcy & Steve Linhart & Michael Sokolov \\ Matthew Day & Ken Lorber & Stephen Spackman \\ Joshua Delahunty & Dean Luick & Andy Swanson \\ Bill Dyer & Benson I. Margulies & Kevin Sweet \\ Mike Engber & Pierre Martineau & Scott R. Turner \\ Jochen Erwied & Roland McGrath & Steve VanDevender \\ Mike Gallop & Norm Meluch & Janet Walz \\ David Gentzel & Rob Menke & Hao-yang Wang \\ Mark Gooderum & Deron Meranda & Jon W\"atte \\ David Hairston & Bruce Mewborne & Tom West \\ Timo Hakulinen & Izchak Miller & Paul Winner \\ Michael Hamel & Gil Neiger & Gregg Wonderly \\ Jonathan Handler & Greg Olson & \end{tabular} \end{center} %\vfill %\begin{flushleft} %\small %Microsoft and MS-DOS are registered trademarks of Microsoft Corporation.\\ %%%Don't need next line if a UNIX macro automatically inserts footnotes. %UNIX is a registered trademark of AT\&T.\\ %Lattice is a trademark of Lattice, Inc.\\ %Atari and 1040ST are trademarks of Atari, Inc.\\ %AMIGA is a trademark of Commodore-Amiga, Inc.\\ %%.sm %Brand and product names are trademarks or registered trademarks %of their respective holders. %\end{flushleft} \end{document}