Mercurial > hg > early-roguelike
diff rogue5/rogue.html.in @ 33:f502bf60e6e4
Import Rogue 5.4 from the Roguelike Restoration Project (r1490)
author | elwin |
---|---|
date | Mon, 24 May 2010 20:10:59 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rogue5/rogue.html.in Mon May 24 20:10:59 2010 +0000 @@ -0,0 +1,1060 @@ +<!-- 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