Mercurial > hg > early-roguelike
comparison rogue3/rogue.r.in @ 88:07c4d4883ef2
rogue3: begin porting to autoconf.
Rogue V3 can now be built with './configure && make'. This is
preliminary: 'make install' does not work yet.
author | John "Elwin" Edwards |
---|---|
date | Sat, 24 Aug 2013 13:36:13 -0700 |
parents | rogue3/rogue.r@b343f42c1f01 |
children |
comparison
equal
deleted
inserted
replaced
87:f871cb0539d3 | 88:07c4d4883ef2 |
---|---|
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 | |