Annotation of early-roguelike/rogue3/rogue.r.in, Revision 1.1.1.1
1.1 rubenllo 1: .RP
2: .ds RH A Guide to the Dungeons of Doom
3: .ds CH
4: .ds CF - % -
5: .TL
6: A Guide to the Dungeons of Doom
7: .AU
8: Michael C. Toy
9: .AI
10: Computer Systems Research Group
11: Department of Electrical Engineering and Computer Science
12: University of California
13: Berkeley, California 94720
14: .AB
15: Rogue is a visual CRT based fantasy game which runs
16: under the UNIX timesharing system. This paper describes
17: how to play rogue and gives a few hints for those who might
18: otherwise get lost in the Dungeons of Doom.
19: .AE
20: .NH
21: Introduction
22: .PP
23: You have just finished your years as a student at the local fighter's guild.
24: After much practice and sweat you have finally completed your training and
25: are ready to embark upon a perilous adventure. As a test of your skills,
26: the local guildmasters have sent you into the Dungeons of Doom. Your
27: task is to return with the Amulet of Yendor. Your reward for the completion
28: of this task will be a full membership in the local guild. In addition, you are
29: allowed to keep all the loot you bring back from the dungeons.
30: .PP
31: In preparation for your journey, you are given an enchanted sword, taken
32: from a dragon's hoard in the far off Dark Mountains. You are also outfitted
33: with elf-crafted armor and given enough food to reach the dungeons. You
34: say goodbye to family and friends for what may be the last time and head
35: up the road.
36: .PP
37: You set out on your way to the dungeons and after several days of uneventful
38: travel, you see the ancient ruins that mark the entrance to the Dungeons
39: of Doom. It is late at night so you make camp at the entrance and spend
40: the night sleeping under the open skies. In the morning you gather
41: your sword, put on your armor, eat what is almost your last food and enter
42: the dungeons.
43: .NH
44: What is going on here?
45: .PP
46: You have just begun a game of rogue. Your goal is to grab as much treasure
47: as you can, find the Amulet of Yendor, and get out of the Dungeons of Doom
48: alive. On the screen, a map of where you have been and what you have seen on
49: the current dungeon level is kept. As you explore more of the level,
50: it appears on the screen in front of you.
51: .PP
52: Rogue differs from most computer fantasy games in that it is screen
53: oriented. Commands are all one or two keystrokes\(dg
54: .FS
55: \(dgAs opposed to pseudo English sentences.
56: .FE
57: and the results of your commands are displayed
58: graphically on the screen rather than being explained in words.
59: .PP
60: Another major difference between rogue and other computer fantasy games
61: is that once you have solved all the puzzles in a standard fantasy game,
62: it has lost most of its excitement and it ceases to be fun. Rogue on the
63: other hand generates a new dungeon every time you play it and
64: even the author finds it an entertaining and exciting game.
65: .NH
66: What do all those things on the screen mean?
67: .PP
68: In order to understand what is going on in rogue you have to first get
69: some grasp of what rogue is doing with the screen.
70: The rogue screen is intended to replace the "You can see ..." descriptions
71: of standard fantasy games. Here is a sample of what a rogue screen might
72: look like.
73: .in +1i
74: .nf
75: .cs R 15
76: ---------------------
77: |...................+
78: |...@...........[...|
79: |........B..........|
80: |...................|
81: --------+------------
82:
83:
84: .cs R
85: Level: 1 Gold: 0 Hp: 12(12) Str: 16 Ac: 6 Exp: 1/0
86: .fi
87: .in 0
88: .NH 2
89: The bottom line
90: .PP
91: At the bottom line of the screen is a few pieces of cryptic information,
92: describing your current status. Here is an explanation of what these
93: things mean:
94: .IP Level 8
95: This number indicates how deep you have gone in the dungeon. It starts
96: at one and goes up forever\(dg.
97: .FS
98: \(dgOr until you get killed or decide to quit.
99: .FE
100: .IP Gold
101: The number of gold pieces you have managed to find and keep with
102: you so far.
103: .IP Hp
104: Your current and maximum hit points. Hit points indicate how much
105: damage you can take before you die. The more you get hit in a
106: fight, the lower they
107: get. You can regain hit points by resting. The number in parentheses is
108: the maximum number your hit points can reach.
109: .IP Str
110: Your current strength. This can be any integer less than or
111: equal to eighteen. The higher the number, the stronger you are.
112: .IP Ac
113: Your current armor class. This number indicates how effective
114: your armor is in stopping blows from unfriendly creatures. The lower
115: this number is, the more effective the armor.
116: .IP Exp
117: These two numbers give your current experience level and experience points.
118: As you do things, you gain experience points. At certain experience point
119: totals, you gain an experience level. The more experienced you are, the
120: better you are able to fight and to withstand magical attacks.
121: .NH 2
122: The top line
123: .PP
124: The top line of the screen is reserved for printing messages that describe
125: things that are impossible to represent visually. If you see a
126: "--More--" on the top line, this means that rogue wants to print another
127: message on the screen, but it wants to make certain that you have read
128: the one that is there first. To read the next message, just press a
129: space.
130: .NH 2
131: The rest of the screen
132: .PP
133: The rest of the screen is the map of the level as you have explored it so far.
134: Each symbol on the screen represents something. Here is a list of what
135: the various symbols mean:
136: .IP @
137: This symbol represents you, the adventurer.
138: .IP "-|" 6
139: These symbols represent the walls of rooms.
140: .IP +
141: A door to/from a room.
142: .IP .
143: The floor of a room.
144: .IP #
145: The floor of a passage between rooms.
146: .IP *
147: A pile or pot of gold.
148: .IP )
149: A weapon of some sort.
150: .IP ]
151: A piece of armor.
152: .IP !
153: A flask containing a magic potion.
154: .IP ?
155: A piece of paper, usually a magic scroll.
156: .IP ^
157: A trap, watch out for these.
158: .IP %
159: The passage leading down to the next level.
160: .IP :
161: A piece of food.
162: .IP A-Z
163: The uppercase letters represent the various inhabitants of the
164: Dungeons of Doom. Watch out, they can be mean.
165: .NH
166: Commands
167: .PP
168: Commands are given to rogue by pressing single letters. Most commands can
169: be preceded by a count to repeat them (e.g. typing "10s" will do ten searches)
170: The list of commands is rather long, but it can be read at any time during
171: the game with the ? command. Here it is for reference, with a short
172: explanation of each command.
173: .IP ? 6
174: The help command. Asks for a character to give help on. If you type
175: a "*", it will list all the commands, otherwise it will explain what the
176: character you typed does.
177: .IP /
178: This is the "What is that on the screen?" command. A "/" followed by any
179: character that you see on the level, will tell you what that character
180: is. For instance, typing "/@" will tell you that the @ symbol represents
181: you, the player.
182: .IP "h , H"
183: Move left. You move one space to the left. If you use upper case
184: h, you will continue to move left until you run into something. This
185: works for all movement commands (e.g. "L" means run in direction "l")
186: .IP j
187: Move down.
188: .IP k
189: Move up.
190: .IP l
191: Move right.
192: .IP y
193: Move diagonally up and left.
194: .IP u
195: Move diagonally up and right.
196: .IP b
197: Move diagonally down and left.
198: .IP n
199: Move diagonally down and right.
200: .IP f
201: Find prefix. When followed by a direction it means to continue moving
202: in the specified direction until you pass something interesting or
203: run into a wall.
204: .IP t
205: Throw an object. This is a prefix command. Follow it with a direction and
206: you throw an object in the specified direction. (e.g. type "th" to throw
207: something left.)
208: .IP >
209: If you are standing over the passage down to the next level, this command
210: means to climb down.
211: .IP s
212: Search for traps and secret doors. Examine each space immediately adjacent
213: to you for the existence of a trap or secret door. There is a large chance
214: that even if there is something there, you won't find it so you might
215: have to search a while before you find something.
216: .IP " "
217: (space) Rest. This is the "do nothing" command.
218: This is good for waiting and healing.
219: .IP i
220: Inventory. List what you are carrying in your pack.
221: .IP I
222: Selective inventory. Tells you what a single item in your pack is.
223: .IP q
224: Quaff. Drink one of the potions you are carrying.
225: .IP r
226: Read. Read one of the scrolls in your pack.
227: .IP e
228: Eat food. Take some food out of your pack and eat it.
229: .IP w
230: Wield a weapon. Take a weapon out of your pack and carry it. You must be
231: wielding weapon to use it (except to throw things). To fire an arrow,
232: you must wield the bow. You can only wield one weapon at a time.
233: .IP W
234: Wear armor. Take a piece of armor out of your pack and put it on. You can
235: only wear one suit of armor at a time.
236: .IP T
237: Take armor off. You can't remove armor that is cursed.
238: This takes extra time.
239: .IP d
240: Drop an object. Take something out of your pack and leave it lying
241: on the floor. Only one object can occupy each space.
242: .IP o
243: Examine and set options. This command is further explained in the section
244: on options.
245: .IP ^L
246: REdraws the screen. Useful if spurious messages or transmission errors
247: have messed up the display.
248: .IP v
249: Prints the program version number.
250: .IP Q
251: Quit. Leave the game.
252: .IP R
253: Repeat last message. Useful when a message disappears before you can
254: read it.
255: .IP S
256: Save the current game in a file. Caveat: Rogue won't let you start
257: up a copy of a saved game, and it removes the save file as soon as
258: you start up a restored game. This is to prevent people from saving
259: a game just before a dangerous position and then restarting it
260: if they die. To restore a saved game, give the file name as an argument
261: to rogue. As in
262: .ti +1i
263: .nf
264: % rogue save_file
265: .NH
266: Dealing with objects
267: .PP
268: When you find something in the dungeon, it is common to want to pick the
269: object up. This is accomplished in rogue by walking over the object. If
270: you are carrying too many things, the program will tell you and it won't pick
271: up the object, otherwise it will add it to your pack and if the notify
272: option is set, tell you what you just picked up.
273: .PP
274: Many of the commands that operate on objects must prompt you to find
275: out which object you want to use. If you change your mind and don't want to
276: do that command after all, just press an escape and the command will be
277: aborted.
278: .NH
279: Light
280: .PP
281: Rooms in the dungeons are either lit or dark. If you walk into a lit room,
282: the entire room will be drawn on the screen as soon as you enter. If you
283: walk into a dark room, it will only be displayed as you explore it. Upon
284: leaving a dark room, all objects inside the room which might move are
285: removed from the screen. In the darkness you can only see one space
286: in all directions around you.
287: .NH
288: Fighting
289: .PP
290: If you see a monster and you wish to fight it, just attempt to run into it.
291: Many times a monster you find will mind its own business unless you attack
292: it. It is often the case that discretion is the better part of valor.
293: .NH
294: Armor
295: .PP
296: There are various sorts of armor lying around in the dungeon. Some of it
297: is enchanted, some is cursed and some is just normal. Different armor
298: types have different armor classes. The lower the armor class, the
299: more protection the armor affords against the blows of monsters.
300: If a piece of armor is enchanted or
301: cursed, its armor class will be higher or lower than normal. Here is
302: a list of the various armor types and their normal armor class.
303: .TS
304: center box;
305: c c
306: l | c.
307: Type Class
308: =
309: Leather armor 8
310: Studded leather / Ring mail 7
311: Scale mail 6
312: Chain mail 5
313: Banded mail / Splint mail 4
314: Plate mail 3
315: .TE
316: .NH
317: Options
318: .PP
319: Due to variations in personal tastes and conceptions of the way rogue
320: should do things, there are a set of options you can set that cause
321: rogue to behave in various different ways.
322: .NH 2
323: Setting the options
324: .PP
325: There are basically two ways to set the options. The first is with the
326: "o" command of rogue, the second is with the ROGUEOPTS environment
327: variable. On Version 6 systems, there is no equivalent of
328: the ROGUEOPTS feature.
329: .NH 3
330: Using the "o" command
331: .PP
332: When you press "o" in rogue, it clears the screen and displays the current
333: settings for all the options. It then places the cursor by the value of the
334: first option and waits for you to type. You can type a RETURN which means to
335: go to the next option, a "\-" which means to go to the previous option, an
336: escape which means to return to the game, or you can give the option a
337: value. For boolean options this merely involves pressing "t" for true or
338: "f" for false. For string options, type the new value followed by a
339: return.
340: .NH 3
341: Using the ROGUEOPTS variable
342: .PP
343: The ROGUEOPTS variable is a string containing a comma separated list of
344: initial values for the various options. Boolean variables can be turned
345: on by listing their name and turned off by putting a "no" in front of the
346: name. Thus to set up an environment variable so that jump is on, terse is
347: off, the name is set to "Conan the Barbarian" and the fruit is "mango",
348: use the command
349: .nf
350: .nf
351: .ti +3
352: % setenv ROGUEOPTS "jump,noterse,name=Conan the Barbarian,fruit=mango" \(dg
353: .fi
354: .ti +3
355: % setenv ROGUEOPTS "jump,noterse,name=Conan the Barbarian,fruit=mango" \(dg
356: .fi
357: .FS
358: \(dgFor those of you who use the bourne shell, the commands would be
359: .in +3
360: .nf
361: $ ROGUEOPTS="jump,noterse,name=Conan the Barbarian,fruit=mango"
362: $ export ROGUEOPTS
363: .fi
364: .in +0
365: .FE
366: .NH 2
367: Option list
368: .PP
369: Here is a list of the options and an explanation of what each one is for.
370: The default value for each is enclosed in square brackets.
371: .IP "terse [noterse]" 25
372: Useful for those who are tired of the sometimes lengthy messages of rogue.
373: This is a useful option for those on slow terminals. This option defaults to
374: on if your are on a slow (under 1200 baud) terminal.
375: .IP "jump [nojump]"
376: If this option is set, running moves will not be displayed until you
377: reach the end of the move. This saves considerable cpu time and
378: display time. This option defaults to on if you are using a slow terminal.
379: .IP "step [nostep]
380: When step is set, lists of things, like inventories or "*" responses to
381: "Which item do you wish to xxxx? " questions, are displayed one item
382: at a time on the top of the screen, rather than clearing the screen,
383: displaying the list, then re-displaying the dungeon level.
384: .IP "flush [noflush]"
385: If flush is set, all typeahead is thrown away after each round of battle.
386: This is useful for those who type way ahead and watch to their dismay as
387: a Kobold kills them.
388: .IP "askme [noaskme]"
389: Upon reading a scroll or quaffing a potion which does not automatically
390: identify it upon use, rogue will ask you what to name it so you can
391: recognize it in the future.
392: .IP "name [account name]"
393: This is the name of your character. It is used if you get on the top ten
394: scorer's list. It should be less than eighty characters long.
395: .IP "fruit [slime-mold]"
396: This should hold the name of a fruit that you enjoy eating. It is basically
397: a whimsy that the program uses in a couple of places.
398: .IP "file [rogue3.save]"
399: The default file name for saving the game. If your phone is hung up by
400: accident, rogue will automatically save the game in this file. The
401: file name may contain the special character "~" which expands to be
402: your home directory.
403: .NH
404: Acknowledgements
405: .PP
406: Rogue was originally conceived of by Glenn Wichman and Michael Toy. The
407: help of Ken Arnold in making the program easier to use and putting the
408: finishing touches on is greatly appreciated. I would also like to thank
409: Marty McNary, Scott Nelson, Daniel Jensen, Kipp Hickman, Joe Kalash,
410: Steve Maurer, Bill Joy, Mark Horton and Jan Miller for their ideas
411: and assistance.
CVSweb