Hush Full Node software. We were censored from Github, this is where all development happens now.
https://hush.is
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1060 lines
35 KiB
1060 lines
35 KiB
<!-- Creator : groff version 1.18.1 -->
|
|
<!-- CreationDate: Sat Dec 31 10:58:15 2005 -->
|
|
<html>
|
|
<head>
|
|
<meta name="generator" content="groff -Thtml, see www.gnu.org">
|
|
<meta name="Content-Style" content="text/css">
|
|
<title></title>
|
|
</head>
|
|
<body>
|
|
|
|
<h1 align=center><b>A Guide to the Dungeons of Doom</b></h1>
|
|
|
|
<h2 align=center><i>Michael C. Toy<br>
|
|
Kenneth C. R. C. Arnold</i></h2>
|
|
|
|
<h3 align=center>Computer Systems Research
|
|
Group<br>
|
|
Department of Electrical Engineering and Computer
|
|
Science<br>
|
|
University of California<br>
|
|
Berkeley, California 94720</h3>
|
|
|
|
|
|
<h2 align=center><i>ABSTRACT</i></h2>
|
|
|
|
<blockquote>
|
|
<blockquote>
|
|
<p align="justify"><b><i><font size="2">Rogue</font></i></b><font size="2"> is a visual CRT based fantasy game which runs under the
|
|
UNIX† timesharing system. This paper describes how
|
|
to play rogue, and gives a few hints for those who might otherwise get
|
|
lost in the Dungeons of Doom. </font></p>
|
|
</blockquote>
|
|
</blockquote>
|
|
|
|
<h2 align="justify"><b>1. Introduction</b></h2>
|
|
|
|
<p align="justify">You have just finished your years as a
|
|
student at the local fighter’s guild. After much
|
|
practice and sweat you have finally completed your training
|
|
and are ready to embark upon a perilous adventure. As a test
|
|
of your skills, the local guildmasters have sent you into
|
|
the Dungeons of Doom. Your task is to return with the Amulet
|
|
of Yendor. Your reward for the completion of this task will
|
|
be a full membership in the local guild. In addition, you
|
|
are allowed to keep all the loot you bring back from the
|
|
dungeons.</p>
|
|
|
|
<p align="justify">In preparation for your journey, you are
|
|
given an enchanted mace, a bow, and a quiver of arrows taken
|
|
from a dragon’s hoard in the far off Dark Mountains.
|
|
You are also outfitted with elf-crafted armor and given
|
|
enough food to reach the dungeons. You say goodbye to family
|
|
and friends for what may be the last time and head up the
|
|
road.</p>
|
|
|
|
<p align="justify">You set out on your way to the dungeons and
|
|
after several days of uneventful travel, you see the
|
|
ancient ruins that mark the entrance to the Dungeons of
|
|
Doom. 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 weapons, put on your armor, eat what
|
|
is almost your last food, and enter the
|
|
dungeons.</p>
|
|
|
|
<h2 align="justify"><b>2. What is going on here?</b></h2>
|
|
<p align="justify">You have just begun a game of rogue. Your
|
|
goal is to grab as much treasure as you can, find the Amulet
|
|
of Yendor, and get out of the Dungeons of Doom alive. On the
|
|
screen, a map of where you have been and what you have seen
|
|
on the current dungeon level is kept. As you explore more of
|
|
the level, it appears on the screen in front of
|
|
you.</p>
|
|
<p align="justify">Rogue differs from most computer fantasy
|
|
games in that it is screen oriented. Commands are all one or
|
|
two keystrokes<sup>1 </sup>and the
|
|
results of your commands are displayed graphically on the
|
|
screen rather than being explained in words<sup>2</sup>.</p>
|
|
<p align="justify">Another major difference between rogue and other computer fantasy games is that once you have solved
|
|
all the puzzles in a standard fantasy game, it has lost most
|
|
of its excitement and it ceases to be fun. Rogue, on the
|
|
other hand, generates a new dungeon every time you play it
|
|
and even the author finds it an entertaining and exciting
|
|
game.</p>
|
|
|
|
<h2 align="justify"><b>3. What do all those things on the screen mean?</b></h2>
|
|
<p align="justify">In order to understand what is going on in
|
|
rogue you have to first get some grasp of what rogue is
|
|
doing with the screen. The rogue screen is intended to
|
|
replace the “You can see ...” descriptions of
|
|
standard fantasy games. Figure 1 is a sample of what a
|
|
rogue screen might look like.</p>
|
|
|
|
<div align="center">
|
|
|
|
<table><tr><td>
|
|
<pre>
|
|
____________________________________________________________
|
|
|
|
|
|
------------
|
|
|..........+
|
|
|..@....]..|
|
|
|....B.....|
|
|
|..........|
|
|
-----+------
|
|
|
|
|
|
|
|
Level: 1 Gold: 0 Hp: 12(12) Str: 16(16) Arm: 4 Exp: 1/0
|
|
|
|
Figure 1
|
|
____________________________________________________________
|
|
</pre>
|
|
</td></tr></table>
|
|
</div>
|
|
<h3 align="justify"><b>3.1. The bottom line</b></h3>
|
|
<p align="justify">At the bottom line of the screen are a few
|
|
pieces of cryptic information describing your current
|
|
status. Here is an explanation of what these things
|
|
mean:<br>
|
|
</p>
|
|
|
|
<table border="0" width="100%" id="table1" cellspacing="3" cellpadding="3">
|
|
<tr>
|
|
<td width="7%" valign="top">
|
|
<p align="justify">Level</td>
|
|
<td>
|
|
<p align="justify">This number indicates how deep you
|
|
have gone in the dungeon. It starts at one and goes up as
|
|
you go deeper into the dungeon.</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">
|
|
<p align="justify">Gold</td>
|
|
<td>
|
|
<p align="justify">The number of gold pieces you have managed to find and keep with you
|
|
so far.</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">
|
|
<p align="justify">Hp</td>
|
|
<td>
|
|
<p align="justify">Your current and maximum health points.
|
|
Health 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 health points by resting. The number in
|
|
parentheses is the maximum number your health points can
|
|
reach.</p>
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">
|
|
<p align="justify">Str</td>
|
|
<td>
|
|
|
|
<p align="justify">Your current strength and maximum ever
|
|
strength. This can be any integer less than or equal to 31,
|
|
or greater than or equal to three. The higher the num- ber,
|
|
the stronger you are. The number in the parentheses is the
|
|
maximum strength you have attained so far this
|
|
game.</p>
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">
|
|
<p align="justify">Arm</td>
|
|
<td>
|
|
<p align="justify">Your current armor protection. This
|
|
number indicates how effective your armor is in stopping
|
|
blows from unfriendly creatures. The higher this number is,
|
|
the more effective the armor.</p>
|
|
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top">
|
|
<p align="justify">Exp</td>
|
|
<td>
|
|
<p align="justify">These two numbers give your current
|
|
experience level and experience points. As you do things,
|
|
you gain experience points. At certain experience point
|
|
totals, you gain an experience level. The more experienced
|
|
you are, the better you are able to fight and to withstand
|
|
magical attacks.</p>
|
|
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<p align="justify"> </p>
|
|
|
|
<h3 align="justify"><b>3.2. The top line</b></h3>
|
|
<p align="justify">The top line of the screen is reserved for
|
|
printing messages that describe things that are impossible
|
|
to represent visually. If you see a “--More--”
|
|
on the top line, this means that rogue wants to print
|
|
another message on the screen, but it wants to make certain
|
|
that you have read the one that is there first. To read the
|
|
next message, just type a space.</p>
|
|
|
|
|
|
<h3 align="justify"><b>3.3. The rest of the screen</b></h3>
|
|
<p align="justify">The rest of the screen is the map of the
|
|
level as you have explored it so far. Each symbol on the
|
|
screen repre- sents something. Here is a list of what the
|
|
various symbols mean:</p>
|
|
<table border="0" width="100%" id="table2" cellspacing="3" cellpadding="3">
|
|
<tr>
|
|
<td width="7%" align="center" valign="top">
|
|
<p align="justify">@</td>
|
|
<td>
|
|
<p align="justify">This symbol represents you, the adventurer.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">- |</td>
|
|
<td>
|
|
<p align="justify">These symbols represent the walls of rooms.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">+</td>
|
|
<td>
|
|
<p align="justify">A door to/from a room.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">.</td>
|
|
<td>
|
|
<p align="justify">The floor of a room.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">#</td>
|
|
<td>
|
|
<p align="justify">The floor of a passage between rooms.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">*</td>
|
|
<td>
|
|
<p align="justify">A pile or pot of gold.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">)</td>
|
|
<td>
|
|
<p align="justify">A weapon of some sort.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">]</td>
|
|
<td>
|
|
<p align="justify">A piece of armor.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">!</td>
|
|
<td>
|
|
<p align="justify">A flask containing a magic potion.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">?</td>
|
|
<td>
|
|
<p align="justify">A piece of paper, usually a magic scroll.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">=</td>
|
|
<td>
|
|
<p align="justify">A ring with magic properties</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">/</td>
|
|
<td>
|
|
<p align="justify">A magical staff or wand</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">^</td>
|
|
<td>
|
|
<p align="justify">A trap, watch out for these.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">%</td>
|
|
<td>
|
|
<p align="justify">A staircase to other levels</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">:</td>
|
|
<td>
|
|
<p align="justify">A piece of food.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="center" valign="top">
|
|
<p align="justify">A-Z</td>
|
|
<td>
|
|
<p align="justify">The uppercase letters represent the various
|
|
inhabitants of the Dungeons of Doom. Watch out, they can be nasty and
|
|
vicious.</td>
|
|
</tr>
|
|
</table>
|
|
|
|
|
|
<h2 align="justify"><b>4. Commands</b></h2>
|
|
<p align="justify">Commands are given to rogue by typing one or two characters.
|
|
Most commands can be preceded by a count to repeat them (e.g. typing “10s” will
|
|
do ten searches). Commands for which counts make no sense have the count
|
|
ignored. To cancel a count or a prefix, type <ESCAPE> . The list of commands is
|
|
rather long, but it can be read at any time during the game
|
|
with the “?” command. Here it is for reference,
|
|
with a short explanation of each
|
|
command.<br>
|
|
</p>
|
|
|
|
<div align="center">
|
|
|
|
<table border="0" cellspacing="3" cellpadding="3" id="table3">
|
|
<tr>
|
|
<td valign="top" align="left">
|
|
<p>?</td>
|
|
<td align="justify">
|
|
<p align="justify">The help command. Asks for a character to give help
|
|
on. If you type a “*”, it will list all the commands, otherwise it will
|
|
explain what the character you typed does.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>/</td>
|
|
<td align="justify">
|
|
<p>This is the “What is that on the screen?” command. A
|
|
“/” followed by any character that you see on the level, will tell you
|
|
what that character is. For instance, typing “/@” will tell you that the
|
|
“@” symbol represents you, the player.</td>
|
|
</tr>
|
|
<tr>
|
|
<td nowrap align="left" valign="top" colspan="2">
|
|
<p>h, H, ^H</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
</td>
|
|
<td align="justify">
|
|
<p align="justify">Move left. You move one space to the left. If you use
|
|
upper case “h”, you will continue to move left until you run into
|
|
something. This works for all movement commands (e.g. “L” means run in
|
|
direction “l”) If you use the “control” “h”, you will continue moving in
|
|
the specified direction until you pass something interesting or run into
|
|
a wall. You should experiment with this, since it is a very useful
|
|
command, but very difficult to describe. This also works for all movement
|
|
commands.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>j</td>
|
|
<td align="justify">
|
|
<p align="justify">Move down.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>k</td>
|
|
<td align="justify">
|
|
<p align="justify">Move up.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>l</td>
|
|
<td align="justify">
|
|
<p align="justify">Move right.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>y</td>
|
|
<td align="justify">
|
|
<p align="justify">Move diagonally up and left.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>u</td>
|
|
<td align="justify">
|
|
<p align="justify">Move diagonally up and right.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>b</td>
|
|
<td align="justify">
|
|
<p align="justify">Move diagonally down and left.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>n</td>
|
|
<td align="justify">
|
|
<p align="justify">Move diagonally down and right.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>t</td>
|
|
<td align="justify">
|
|
<p align="justify">Throw an object. This is a prefix command. When followed with a
|
|
direction it throws an object in the specified direction. (e.g. type
|
|
“th” to throw something to the
|
|
left.)</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>f</td>
|
|
<td align="justify">
|
|
<p align="justify">Fight until someone dies. When followed with a direction this will force you to fight the creature
|
|
in that direction until either you or it bites the big
|
|
one.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>m</td>
|
|
<td align="justify">
|
|
<p align="justify">Move onto something without picking it up. This will move you one
|
|
space in the direction you specify and, if there is an object there you
|
|
can pick up, it won’t do it.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>z</td>
|
|
<td align="justify">
|
|
<p align="justify">Zap prefix. Point a staff or wand in a given direction and fire it.
|
|
Even non-directional staves must be pointed in some direction to be
|
|
used.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>^</td>
|
|
<td align="justify">
|
|
<p align="justify">Identify trap command. If a trap is on your map and you can’t
|
|
remember what type it is, you can get rogue to remind you by getting
|
|
next to it and typing “^” followed by the direction that would move
|
|
you on top of it.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>s</td>
|
|
<td align="justify">
|
|
<p align="justify">Search for traps and secret doors. Examine each space immediately
|
|
adjacent to you for the existence of a trap or secret door. There is a
|
|
large chance that even if there is something there, you won’t find it,
|
|
so you might have to search a while before you find something.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>></td>
|
|
<td align="justify">
|
|
<p>Climb down a staircase to the next level. Not surprisingly, this can only be done if you are
|
|
standing on staircase.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p><</td>
|
|
<td align="justify">
|
|
<p>Climb up a staircase to the level above. This can’t be done without
|
|
the Amulet of Yendor
|
|
in your possession.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>.</td>
|
|
<td align="justify">
|
|
<p>Rest. This is the “do nothing” command. This is good for waiting and
|
|
healing.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>,</td>
|
|
<td align="justify">
|
|
<p>Pick up something. This picks up whatever you are currently standing on, if you are
|
|
standing on anything at all.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>i</td>
|
|
<td align="justify">
|
|
<p>Inventory. List what you are carrying in
|
|
your pack.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>I</td>
|
|
<td align="justify">
|
|
<p>Selective inventory. Tells you what a single item in your pack is.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>q</td>
|
|
<td align="justify">
|
|
<p align="justify">Quaff one of the potions you are carrying.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>r</td>
|
|
<td align="justify">
|
|
<p align="justify">Read one of the scrolls in your pack.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>e</td>
|
|
<td align="justify">
|
|
<p align="justify">Eat food from your pack.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>w</td>
|
|
<td align="justify">
|
|
<p align="justify">Wield a weapon. Take a weapon out of your pack and carry it for use
|
|
in combat, replacing the one you are currently using (if any).</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>W</td>
|
|
<td align="justify">
|
|
<p align="justify">Wear armor. You can only wear one suit of armor at a time. This
|
|
takes extra time.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>T</td>
|
|
<td align="justify">
|
|
<p align="justify">Take armor off. You can’t remove armor that is cursed. This takes
|
|
extra time.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>P</td>
|
|
<td align="justify">
|
|
<p align="justify">Put on a ring. You can wear only two rings at a time (one on each
|
|
hand). If you aren’t wearing any rings, this command will ask you which
|
|
hand you want to wear it on, otherwise, it will place it on the unused
|
|
hand. The program assumes that you wield your sword in your right hand.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>R</td>
|
|
<td align="justify">
|
|
<p align="justify">Remove a ring. If you are only wearing one ring, this command takes
|
|
it off. If you are wearing two, it will ask you which one you wish to
|
|
remove,</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>d</td>
|
|
<td align="justify">
|
|
<p align="justify">Drop an object. Take something out of your pack and leave it lying
|
|
on the floor. Only one object can occupy each space. You cannot drop a
|
|
cursed object at all if you are wielding or wearing it.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>c</td>
|
|
<td align="justify">
|
|
<p align="justify">Call an object something. If you have a type of object in your pack
|
|
which you wish to remember something about, you can use the call command
|
|
to give a name to that type of object. This is usually used when you
|
|
figure out what a potion, scroll, ring, or staff is after you pick it
|
|
up, or when you want to remember which of those swords in your pack you
|
|
were wielding.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>D</td>
|
|
<td align="justify">
|
|
<p align="justify">Print out which things you’ve discovered something about. This
|
|
command will ask you what type of thing you are interested in. If you
|
|
type the character for a given type of object (<i>e.g.</i>
|
|
“!” for potion) it will tell you which kinds of
|
|
that type of object you’ve discovered (<i>i.e.</i>, figured out what they
|
|
are). This command works for
|
|
potions, scrolls, rings, and staves and
|
|
wands.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>o</td>
|
|
<td align="justify">
|
|
<p align="justify">Examine and set options. This command is further explained in the
|
|
section on options.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>^R</td>
|
|
<td align="justify">
|
|
<p>Redraws the screen. Useful if spurious messages or transmission
|
|
errors have messed up the display.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>^P</td>
|
|
<td align="justify">
|
|
<p align="justify">Print last message. Useful when a message disappears before you can
|
|
read it. This only repeats the last message that was not a mistyped
|
|
command so that you don’t loose anything by accidentally typing the
|
|
wrong character instead of ^P.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top" colspan="2">
|
|
<p><ESCAPE></td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
</td>
|
|
<td align="justify">
|
|
Cancel a command, prefix, or count.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>!</td>
|
|
<td align="justify">
|
|
<p align="justify">Escape to a shell for some commands.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>Q</td>
|
|
<td align="justify">
|
|
<p align="justify">Quit. Leave the game.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>S</td>
|
|
<td align="justify">
|
|
<p align="justify">Save the current game in a file. It will ask you whether you wish to
|
|
use the default save file.
|
|
<i>Caveat</i>: Rogue won’t let you start up a copy of
|
|
a saved game, and it removes the save file as soon as you
|
|
start up a restored game. This is to prevent people from
|
|
saving a game just before a dangerous position and then
|
|
restart- ing it if they die. To restore a saved game, give
|
|
the file name as an argument to rogue. As
|
|
in</p>
|
|
<p align="justify">% rogue
|
|
<i>save_file</i></p>
|
|
<p align="justify">To restart from the default save file (see below), run </p>
|
|
<p align="justify">% rogue -r</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>v</td>
|
|
<td align="justify">
|
|
<p align="justify">Prints the program version number.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>)</td>
|
|
<td align="justify">
|
|
<p align="justify">Print the weapon you are currently wielding</td>
|
|
</tr>
|
|
<tr>
|
|
<td height="28" align="left" valign="top">
|
|
<p>]</td>
|
|
<td height="28" align="justify">
|
|
<p align="justify">Print the armor you are currently wearing</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>=</td>
|
|
<td align="justify">
|
|
<p align="justify">Print the rings you are currently wearing</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="left" valign="top">
|
|
<p>@</td>
|
|
<td align="justify">
|
|
<p align="justify">Reprint the status line on the message line</td>
|
|
</tr>
|
|
</table>
|
|
|
|
</div>
|
|
|
|
<h2 align="justify"><b>5. Rooms</b></h2>
|
|
<p align="justify">Rooms in the dungeons are either lit or
|
|
dark. If you walk into a lit room, the entire room will be
|
|
drawn on the screen as soon as you enter. If you walk into a
|
|
dark room, it will only be displayed as you explore it. Upon
|
|
leaving a room, all monsters inside the room are erased from
|
|
the screen. In the darkness you can only see one space in
|
|
all directions around you. A corridor is always
|
|
dark.</p>
|
|
|
|
<h2 align="justify"><b>6. Fighting</b></h2>
|
|
<p align="justify">If you see a monster and you wish to fight
|
|
it, just attempt to run into it. Many times a monster you
|
|
find will mind its own business unless you attack it. It is
|
|
often the case that discretion is the better part of
|
|
valor.</p>
|
|
|
|
<h2 align="justify"><b>7. Objects you can find</b></h2>
|
|
<p align="justify">When you find something in the dungeon, it
|
|
is common to want to pick the object up. This is
|
|
accomplished in rogue by walking over the object (unless you
|
|
use the “m” prefix, see above). If you are
|
|
carrying too many things, the pro- gram will tell you and it
|
|
won’t pick up the object, other- wise it will add it
|
|
to your pack and tell you what you just picked
|
|
up.</p>
|
|
|
|
<p align="justify">Many of the commands that operate on
|
|
objects must prompt you to find out which object you want to
|
|
use. If you change your mind and don’t want to do that
|
|
command after all, just type an
|
|
<ESCAPE> and the command will be
|
|
aborted.</p>
|
|
|
|
<p align="justify">Some objects, like armor and weapons, are
|
|
easily dif- ferentiated. Others, like scrolls and potions,
|
|
are given labels which vary according to type. During a
|
|
game, any two of the same kind of object with the same label
|
|
are the same type. However, the labels will vary from game
|
|
to game.</p>
|
|
|
|
<p align="justify">When you use one of these labeled objects,
|
|
if its effect is obvious, rogue will remember what it is for
|
|
you. If it’s effect isn’t extremely obvious you
|
|
will be asked what you want to scribble on it so you will
|
|
recognize it later, or you can use the “call”
|
|
command (see above).</p>
|
|
|
|
<h3 align="justify"><b>7.1. Weapons</b></h3>
|
|
<p align="justify">Some weapons, like arrows, come in bunches,
|
|
but most come one at a time. In order to use a weapon, you
|
|
must wield it. To fire an arrow out of a bow, you must first
|
|
wield the bow, then throw the arrow. You can only wield one
|
|
weapon at a time, but you can’t change weapons if the
|
|
one you are currently wielding is cursed. The commands to
|
|
use weapons are “w” (wield) and “t”
|
|
(throw).</p>
|
|
|
|
<h3 align="justify"><b>7.2. Armor</b></h3>
|
|
|
|
<p align="justify">There are various sorts of armor lying around in the dungeon. Some of it is
|
|
enchanted, some is cursed, and some is just normal. Different armor types have
|
|
different armor protection. The higher the armor protection, the more protection the armor affords against the blows of
|
|
monsters. Here is a list of the various armor types and
|
|
their normal armor protection:</p>
|
|
<div align="center">
|
|
<table border="1" cellspacing="3" cellpadding="3" id="table4" style="border-collapse: collapse">
|
|
<tr>
|
|
<th><i>Type</i></th>
|
|
<th><i>Protection</i></th>
|
|
</tr>
|
|
<tr>
|
|
<td>None</td>
|
|
<td align="center">0</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Leather armor</td>
|
|
<td align="center">2</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Studded leather / Ring mail</td>
|
|
<td align="center">3</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Scale mail </td>
|
|
<td align="center">4</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Chain mail </td>
|
|
<td align="center">5</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Banded mail / Splint mail</td>
|
|
<td align="center">6</td>
|
|
</tr>
|
|
<tr>
|
|
<td>Plate mail </td>
|
|
<td align="center">7</td>
|
|
</tr>
|
|
</table>
|
|
<p> </div>
|
|
<p align="justify">
|
|
If a piece of armor is enchanted, its
|
|
armor protection will be higher than normal. If a suit of
|
|
armor is cursed, its armor protection will be lower, and you
|
|
will not be able to remove it. However, not all armor with a
|
|
protection that is lower than normal is
|
|
cursed.
|
|
|
|
</p>
|
|
|
|
<p align="justify">The commands to use weapons are
|
|
“W” (wear) and “T” (take
|
|
off).</p>
|
|
|
|
<h3 align="justify">
|
|
|
|
<b>7.3. Scrolls</b></h3>
|
|
<p align="justify">Scrolls come with titles in an unknown tongue<sup>3</sup>. After you read a scroll, it
|
|
disappears from your pack. The com mand to use a
|
|
scroll is “r” (read).</p>
|
|
|
|
<h3 align="justify">
|
|
|
|
<b>7.4. Potions</b>
|
|
|
|
</h3>
|
|
|
|
<p align="justify">Potions are labeled by the color of the
|
|
liquid inside the flask. They disappear after being quaffed.
|
|
The command to use a scroll is “q”
|
|
(quaff).</p>
|
|
|
|
<h3 align="justify"><b>7.5. Staves and Wands</b></h3>
|
|
<p align="justify">Staves and wands do the same kinds of
|
|
things. Staves are identified by a type of wood; wands by a
|
|
type of metal or bone. They are generally things you want to
|
|
do to some- thing over a long distance, so you must point
|
|
them at what you wish to affect to use them. Some staves are
|
|
not affected by the direction they are pointed, though.
|
|
Staves come with multiple magic charges, the number being
|
|
random, and when they are used up, the staff is just a piece
|
|
of wood or metal.</p>
|
|
|
|
<p align="justify">The command to use a wand or staff is
|
|
“z” (zap)</p>
|
|
|
|
<h3 align="justify"><b>7.6. Rings</b></h3>
|
|
|
|
<p align="justify">Rings are very useful items, since they are
|
|
relatively permanent magic, unlike the usually fleeting
|
|
effects of potions, scrolls, and staves. Of course, the bad
|
|
rings are also more powerful. Most rings also cause you to
|
|
use up food more rapidly, the rate varying with the type of
|
|
ring. Rings are differentiated by their stone settings. The
|
|
com- mands to use rings are “P” (put on) and
|
|
“R” (remove).</p>
|
|
|
|
<h3 align="justify"><b>7.7. Food</b></h3>
|
|
|
|
<p align="justify">Food is necessary to keep you going. If you
|
|
go too long without eating you will faint, and eventually
|
|
die of starvation. The command to use food is
|
|
“e” (eat).</p>
|
|
|
|
<h2 align="justify"><b>8. Options</b></h2>
|
|
<p align="justify">Due to variations in personal tastes and
|
|
conceptions of the way rogue should do things, there are a
|
|
set of options you can set that cause rogue to behave in
|
|
various different ways.</p>
|
|
|
|
<h3 align="justify"><b>8.1 Setting the options</b></h3>
|
|
|
|
<p align="justify">There are two ways to set the options. The
|
|
first is with the “o” command of rogue; the
|
|
second is with the “ROGUEOPTS” environment
|
|
variable.</p>
|
|
|
|
<h3 align="justify"><b>8.1.1. Using the ‘o’ command</b></h3>
|
|
|
|
<p align="justify">When you type “o” in rogue, it
|
|
clears the screen and displays the current settings for all
|
|
the options. It then places the cursor by the value of the
|
|
first option and waits for you to type. You can type a
|
|
<RETURN> which means to go to the next
|
|
option, a “−” which means to go to the
|
|
previous option, an <ESCAPE> which
|
|
means to return to the game, or you can give the option a
|
|
value. For boolean options this merely involves typing
|
|
“t” for true or “f” for false. For
|
|
string options, type the new value followed by a
|
|
<RETURN> .</p>
|
|
|
|
<h3 align="justify"><b>8.1.2. Using the ROGUEOPTS variable</b></h3>
|
|
|
|
<p align="justify">The ROGUEOPTS variable is a string
|
|
containing a comma separated list of initial values for the
|
|
various options. Boolean variables can be turned on by
|
|
listing their name or turned off by putting a
|
|
“no” in front of the name. Thus to set up an
|
|
environment variable so that <b>jump</b> is on, <b>terse</b>
|
|
is off, and the <b>name</b> is set to “Blue
|
|
Meanie”, use the command</p>
|
|
|
|
<p align="justify">% setenv ROGUEOPTS
|
|
"jump,noterse,name=Blue Meanie"<sup>4</sup></p>
|
|
|
|
<h3 align="justify"><b>8.2. Option list</b></h3>
|
|
|
|
<p align="justify">Here is a list of the options and an
|
|
explanation of what each one is for. The default value for
|
|
each is enclosed in square brackets. For character string
|
|
options, input over fifty characters will be
|
|
ignored.</p>
|
|
|
|
<p align="justify"><b>terse</b>
|
|
[<i>noterse</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">
|
|
Useful for those who are tired of the
|
|
sometimes lengthy messages of rogue. This is a useful option
|
|
for playing on slow terminals, so this option defaults to
|
|
<i>terse</i> if you are on a slow (1200 baud or under)
|
|
terminal.</p>
|
|
</blockquote>
|
|
|
|
<p align="justify"><b>jump</b>
|
|
[<i>nojump</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">If this option is set, running moves will
|
|
not be displayed until you reach the end of the move. This
|
|
saves considerable cpu and display time. This option
|
|
defaults to <i>jump</i> if you are using a slow
|
|
terminal.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>flush</b>
|
|
[<i>noflush</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">All typeahead is thrown away after each round of battle. This is useful for those who type far
|
|
ahead and then watch in dismay as a Bat kills
|
|
them.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>seefloor</b>
|
|
[<i>seefloor</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">Display the floor around you on the screen
|
|
as you move through dark rooms. Due to the amount of
|
|
characters generated, this option defaults to
|
|
<i>noseefloor</i> if you are using a slow
|
|
terminal.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>passgo</b>
|
|
[<i>nopassgo</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">Follow turnings in passageways. If you run
|
|
in a pas- sage and you run into stone or a wall, rogue will
|
|
see if it can turn to the right or left. If it can only turn
|
|
one way, it will turn that way. If it can turn either or
|
|
neither, it will stop. This algorithm can sometimes lead to
|
|
slightly confusing occurrences which is why it defaults to
|
|
<i>nopassgo</i>.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>tombstone</b>
|
|
[<i>tombstone</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">Print out the tombstone at the end if you
|
|
get killed. This is nice but slow, so you can turn it off if
|
|
you like.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>inven</b>
|
|
[<i>overwrite</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">Inventory type. This can have one of three
|
|
values: <i>overwrite</i>, <i>slow</i>, or <i>clear</i>. With
|
|
<i>overwrite</i> the top lines of the map are overwritten
|
|
with the list when inventory is requested or when
|
|
“Which item do you wish to <b>. . .</b>? ”
|
|
questions are answered with a “*”. How- ever, if
|
|
the list is longer than a screenful, the screen is cleared.
|
|
With <i>slow</i>, lists are displayed one item at a time on
|
|
the top of the screen, and with <i>clear</i>, the screen is
|
|
cleared, the list is displayed, and then the dungeon level
|
|
is re-displayed. Due to speed considerations, <i>clear</i>
|
|
is the default for terminals without clear-to-end-of-line
|
|
capabilities.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>name</b> [account
|
|
name]</p>
|
|
<blockquote>
|
|
<p align="justify">This is the name of your character. It is
|
|
used if you get on the top ten scorer’s
|
|
list.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>fruit</b>
|
|
[<i>slime-mold</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">This should hold the name of a fruit that
|
|
you enjoy eating. It is basically a whimsy that rogue uses
|
|
in a couple of places.</p>
|
|
</blockquote>
|
|
<p align="justify"><b>file</b>
|
|
[<i>~/rogue.save</i>]</p>
|
|
<blockquote>
|
|
<p align="justify">The default file name for saving the game.
|
|
If your phone is hung up by accident, rogue will
|
|
automatically save the game in this file. The file name may
|
|
start with the special character “~” which
|
|
expands to be your home directory.</p>
|
|
</blockquote>
|
|
<h2 align="justify"><b>9. Scoring</b></h2>
|
|
|
|
<p align="justify">Rogue usually maintains a list of the top
|
|
scoring people or scores on your machine. Depending on how
|
|
it is set up, it can post either the top scores or the top
|
|
players. 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 on the list, you will be inserted in the proper
|
|
place under your current name. How many scores are kept can
|
|
also be set up by whoever installs it on your
|
|
machine.</p>
|
|
|
|
<p align="justify">If you quit the game, you get out with all
|
|
of your gold intact. If, however, you get killed in the
|
|
Dungeons of Doom, your body is forwarded to your
|
|
next-of-kin, along with 90% of your gold; ten percent of
|
|
your gold is kept by the Dungeons’ wizard as a fee<sup>5</sup>. This should make you
|
|
consider whether you want to take one last hit at that
|
|
monster and possibly live, or quit and thus stop with
|
|
whatever you have. If you quit, you do get all your gold,
|
|
but if you swing and live, you might find
|
|
more.</p>
|
|
|
|
<p align="justify">If you just want to see what the current top players/games list is, you can
|
|
type</p>
|
|
<p align="justify">% rogue −s</p>
|
|
|
|
<h2 align="justify"><b>10. Acknowledgements</b></h2>
|
|
|
|
<p align="justify">Rogue was originally conceived of by Glenn
|
|
Wichman and Michael Toy. Ken Arnold and Michael Toy then
|
|
smoothed out the user interface, and added jillions of new
|
|
features. We would like to thank Bob Arnold, Michelle Busch,
|
|
Andy Hatcher, Kipp Hickman, Mark Horton, Daniel Jensen, Bill
|
|
Joy, Joe Kalash, Steve Maurer, Marty McNary, Jan Miller, and
|
|
Scott Nelson for their ideas and assistance; and also the
|
|
teeming multitudes who graciously ignored work, school, and
|
|
social life to play rogue and send us bugs, complaints, suggestions, and just plain flames. And also
|
|
Mom.</p>
|
|
<table border="0" width="100%" cellspacing="3" cellpadding="0" id="table5">
|
|
<tr>
|
|
<td align="right" valign="top"><sup>†</sup></td>
|
|
<td>UNIX is a registered trademark of The Open Group</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="right" valign="top"><sup>1</sup></td>
|
|
<td>As opposed to pseudo English sentences.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="right" valign="top"><sup>2</sup></td>
|
|
<td>A minimum screen size of 24 lines by 80 columns is required. If the
|
|
screen is larger, only the 24x80 section
|
|
will be used for the map.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="right" valign="top"><sup>3</sup></td>
|
|
<td>Actually, it's a dialect spoken only by the twenty-seven members of
|
|
a tribe in Outer Mongolia, but you're not supposed to know that.</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="right" valign="top"><sup>4</sup></td>
|
|
<td>For those of you who use the Bourne shell sh (1), the commands would be<p>$ ROGUEOPTS="jump,noterse,name=Blue Meanie"<br>
|
|
$ export ROGUEOPTS<br>
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<td align="right" valign="top"><sup>5</sup></td>
|
|
<td>The Dungeon's wizard is named Wally the Wonder Badger. Invocations
|
|
should be accompanied by a sizable donation.</td>
|
|
</tr>
|
|
</table>
|
|
</body>
|
|
</html>
|
|
|