Document explicitly what m-prefix does to each command
[aNetHack.git] / dat / endgame.des
blobb41db352f6a86c8771147fc74bd9173654666118
1 # NetHack 3.6   endgame.des     $NHDT-Date: 1432512783 2015/05/25 00:13:03 $  $NHDT-Branch: master $:$NHDT-Revision: 1.13 $
2 #       Copyright (c) 1989 by Jean-Christophe Collet
3 #       Copyright (c) 1992,1993 by Izchak Miller, David Cohrs,
4 #                      and Timo Hakulinen
5 # NetHack may be freely redistributed.  See license for details.
7 # These are the ENDGAME levels: earth, air, fire, water, and astral.
8 # The top-most level, the Astral Level, has 3 temples and shrines.
9 # Players are supposed to sacrifice the Amulet of Yendor on the appropriate
10 # shrine.
12 MAZE:"earth",' '
13 FLAGS: noteleport,hardfloor,shortsighted
14 MESSAGE: "Well done, mortal!"
15 MESSAGE: "But now thou must face the final Test..."
16 MESSAGE: "Prove thyself worthy or perish!"
18 GEOMETRY:center,center
19 # The player lands, upon arrival, in the
20 # lower-right cavern.  The location of the
21 # portal to the next level is randomly chosen.
22 # This map has no visible outer boundary, and
23 # is mostly diggable "rock".
24 MAP
25                                                                             
26   ...                                                                       
27  ....                ..                                                     
28  .....             ...                                      ..              
29   ....              ....                                     ...            
30    ....              ...                ....                 ...      .     
31     ..                ..              .......                 .      ..     
32                                       ..  ...                        .      
33               .                      ..    .                         ...    
34              ..  ..                  .     ..                         .     
35             ..   ...                        .                               
36             ...   ...                                                       
37               .. ...                                 ..                     
38                ....                                 ..                      
39                           ..                                       ...      
40                          ..                                       .....     
41   ...                                                              ...      
42  ....                                                                       
43    ..                                                                       
44                                                                             
45 ENDMAP
47 REPLACE_TERRAIN:(0,0,75,19), ' ', ('.', unlit), 5%
49 #  Since there are no stairs, this forces the hero's initial placement
50 TELEPORT_REGION:(69,16,69,16),(0,0,0,0)
51 PORTAL:(0,0,75,19),(65,13,75,19),"air"
52 #  Some helpful monsters.  Making sure a
53 #  pick axe and at least one wand of digging
54 #  are available.
55 MONSTER:('@',"Elvenking"),(67,16)
56 MONSTER:('H',"minotaur"),(67,14)
57 #  An assortment of earth-appropriate nasties
58 #  in each cavern.
59 MONSTER:('E',"earth elemental"),(52,13),hostile
60 MONSTER:('E',"earth elemental"),(53,13),hostile
61 MONSTER:('T',"rock troll"),(53,12)
62 MONSTER:('H',"stone giant"),(54,12)
64 MONSTER:('S',"pit viper"),(70,05)
65 MONSTER:('&',"barbed devil"),(69,06)
66 MONSTER:('H',"stone giant"),(69,08)
67 MONSTER:(''',"stone golem"),(71,08)
68 MONSTER:('&',"pit fiend"),(70,09)
69 MONSTER:('E',"earth elemental"),(70,08),hostile
71 MONSTER:('E',"earth elemental"),(60,03),hostile
72 MONSTER:('H',"stone giant"),(61,04)
73 MONSTER:('E',"earth elemental"),(62,04),hostile
74 MONSTER:('E',"earth elemental"),(61,05),hostile
75 MONSTER:('s',"scorpion"),(62,05)
76 MONSTER:('p',"rock piercer"),(63,05)
78 MONSTER:('U',"umber hulk"),(40,05)
79 MONSTER:('v',"dust vortex"),(42,05)
80 MONSTER:('T',"rock troll"),(38,06)
81 MONSTER:('E',"earth elemental"),(39,06),hostile
82 MONSTER:('E',"earth elemental"),(41,06),hostile
83 MONSTER:('E',"earth elemental"),(38,07),hostile
84 MONSTER:('H',"stone giant"),(39,07)
85 MONSTER:('E',"earth elemental"),(43,07),hostile
86 MONSTER:(''',"stone golem"),(37,08)
87 MONSTER:('S',"pit viper"),(43,08)
88 MONSTER:('S',"pit viper"),(43,09)
89 MONSTER:('T',"rock troll"),(44,10)
91 MONSTER:('E',"earth elemental"),(02,01),hostile
92 MONSTER:('E',"earth elemental"),(03,01),hostile
93 MONSTER:(''',"stone golem"),(01,02)
94 MONSTER:('E',"earth elemental"),(02,02),hostile
95 MONSTER:('T',"rock troll"),(04,03)
96 MONSTER:('T',"rock troll"),(03,03)
97 MONSTER:('&',"pit fiend"),(03,04)
98 MONSTER:('E',"earth elemental"),(04,05),hostile
99 MONSTER:('S',"pit viper"),(05,06)
101 MONSTER:('E',"earth elemental"),(21,02),hostile
102 MONSTER:('E',"earth elemental"),(21,03),hostile
103 MONSTER:('H',"minotaur"),(21,04)
104 MONSTER:('E',"earth elemental"),(21,05),hostile
105 MONSTER:('T',"rock troll"),(22,05)
106 MONSTER:('E',"earth elemental"),(22,06),hostile
107 MONSTER:('E',"earth elemental"),(23,06),hostile
109 MONSTER:('S',"pit viper"),(14,08)
110 MONSTER:('&',"barbed devil"),(14,09)
111 MONSTER:('E',"earth elemental"),(13,10),hostile
112 MONSTER:('T',"rock troll"),(12,11)
113 MONSTER:('E',"earth elemental"),(14,12),hostile
114 MONSTER:('E',"earth elemental"),(15,13),hostile
115 MONSTER:('H',"stone giant"),(17,13)
116 MONSTER:(''',"stone golem"),(18,13)
117 MONSTER:('&',"pit fiend"),(18,12)
118 MONSTER:('E',"earth elemental"),(18,11),hostile
119 MONSTER:('E',"earth elemental"),(18,10),hostile
121 MONSTER:('&',"barbed devil"),(02,16)
122 MONSTER:('E',"earth elemental"),(03,16),hostile
123 MONSTER:('T',"rock troll"),(02,17)
124 MONSTER:('E',"earth elemental"),(04,17),hostile
125 MONSTER:('E',"earth elemental"),(04,18),hostile
127 OBJECT:('`',"boulder"),random
130 MAZE:"air",' '
131 FLAGS: noteleport,hardfloor,shortsighted
132 # The following messages are somewhat obtuse, to make then
133 # equally meaningful if the player can see or not.
134 MESSAGE: "What a strange feeling!"
135 MESSAGE: "You notice that there is no gravity here."
136 GEOMETRY:center,center
137 # The player lands, upon arrival, in the
138 # lower-left area.  The location of the
139 # portal to the next level is randomly chosen.
140 # This map has no visible outer boundary, and
141 # is all "air".
143 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
144 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
145 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
146 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
147 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
148 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
149 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
150 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
151 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
152 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
153 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
154 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
155 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
156 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
157 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
158 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
159 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
160 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
161 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
162 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
163 ENDMAP
164 # Use up and down regions to partition the level into three parts;
165 # teleportation can't cross from one part into another.
166 # The up region is where you'll arrive after activating the portal from
167 # the preceding level; the exit portal is placed inside the down region.
168 TELEPORT_REGION:levregion(01,00,24,20),levregion(25,00,79,20),up
169 TELEPORT_REGION:levregion(56,00,79,20),levregion(01,00,55,20),down
170 PORTAL:levregion(57,01,78,19),(0,0,0,0),"fire"
171 REGION:(00,00,75,19),lit,"ordinary"
172 MONSTER:('E',"air elemental"),random,hostile
173 MONSTER:('E',"air elemental"),random,hostile
174 MONSTER:('E',"air elemental"),random,hostile
175 MONSTER:('E',"air elemental"),random,hostile
176 MONSTER:('E',"air elemental"),random,hostile
177 MONSTER:('E',"air elemental"),random,hostile
178 MONSTER:('E',"air elemental"),random,hostile
179 MONSTER:('E',"air elemental"),random,hostile
180 MONSTER:('E',"air elemental"),random,hostile
181 MONSTER:('E',"air elemental"),random,hostile
182 MONSTER:('E',"air elemental"),random,hostile
184 MONSTER:('e',"floating eye"),random,hostile
185 MONSTER:('e',"floating eye"),random,hostile
186 MONSTER:('e',"floating eye"),random,hostile
188 MONSTER:('y',"yellow light"),random,hostile
189 MONSTER:('y',"yellow light"),random,hostile
190 MONSTER:('y',"yellow light"),random,hostile
192 MONSTER:('A',"couatl"),random
194 MONSTER:'D',random
195 MONSTER:'D',random
196 MONSTER:'D',random
197 MONSTER:'D',random
198 MONSTER:'D',random
200 MONSTER:'E',random
201 MONSTER:'E',random
202 MONSTER:'E',random
203 MONSTER:'J',random
204 MONSTER:'J',random
206 MONSTER:('&',"djinni"),random,hostile
207 MONSTER:('&',"djinni"),random,hostile
208 MONSTER:('&',"djinni"),random,hostile
210 MONSTER:('v',"fog cloud"),random,hostile
211 MONSTER:('v',"fog cloud"),random,hostile
212 MONSTER:('v',"fog cloud"),random,hostile
213 MONSTER:('v',"fog cloud"),random,hostile
214 MONSTER:('v',"fog cloud"),random,hostile
215 MONSTER:('v',"fog cloud"),random,hostile
216 MONSTER:('v',"fog cloud"),random,hostile
217 MONSTER:('v',"fog cloud"),random,hostile
218 MONSTER:('v',"fog cloud"),random,hostile
219 MONSTER:('v',"energy vortex"),random,hostile
220 MONSTER:('v',"energy vortex"),random,hostile
221 MONSTER:('v',"energy vortex"),random,hostile
222 MONSTER:('v',"energy vortex"),random,hostile
223 MONSTER:('v',"energy vortex"),random,hostile
224 MONSTER:('v',"steam vortex"),random,hostile
225 MONSTER:('v',"steam vortex"),random,hostile
226 MONSTER:('v',"steam vortex"),random,hostile
227 MONSTER:('v',"steam vortex"),random,hostile
228 MONSTER:('v',"steam vortex"),random,hostile
231 MAZE:"fire",' '
232 FLAGS: noteleport,hardfloor,shortsighted
233 GEOMETRY:center,center
234 # The player lands, upon arrival, in the
235 # lower-right.  The location of the
236 # portal to the next level is randomly chosen.
237 # This map has no visible outer boundary, and
238 # is mostly open area, with lava lakes and bunches of fire traps.
240 ............................................................................
241 ....LLLLLLLL............L.......................LLL.........................
242 ...LL...................L......................LLLL................LL.......
243 ...L.............LLLL...LL....LL...............LLLLL.............LLL........
244 .LLLL..............LL....L.....LLL..............LLLL..............LLLL......
245 ..........LLLL...LLLL...LLL....LLL......L........LLLL....LL........LLL......
246 ........LLLLLLL...LL.....L......L......LL.........LL......LL........LL...L..
247 ........LL..LLL..LL......LL......LLLL..L.........LL......LLL............LL..
248 ....L..LL....LLLLL.................LLLLLLL.......L......LL............LLLLLL
249 ....L..L.....LL.LLLL.......L............L........LLLLL.LL......LL.........LL
250 ....LL........L...LL......LL.............LLL.....L...LLL.......LLL.........L
251 .....LLLLLL........L.......LLL.............L....LL...L.LLL......LLLLLLL.....
252 ..........LLLL............LL.L.............L....L...LL.........LLL..LLL.....
253 ...........................LLLLL...........LL...L...L........LLLL..LLLLLL...
254 .....LLLL.............LL....LL.......LLL...LL.......L..LLL....LLLLLLL.......
255 .......LLL.........LLLLLLLLLLL......LLLLL...L...........LL...LL...LL........
256 .........LL.......LL.........LL.......LLL....L..LLL....LL.........LL........
257 ..........LLLLLLLLL...........LL....LLL.......LLLLL.....LL........LL........
258 .................L.............LLLLLL............LL...LLLL.........LL.......
259 .................................LL....................LL...................
260 ENDMAP
261 TELEPORT_REGION:(69,16,69,16),(0,0,0,0)
262 PORTAL:(0,0,75,19),(65,13,75,19),"water"
264 TRAP:"fire",random
265 TRAP:"fire",random
266 TRAP:"fire",random
267 TRAP:"fire",random
268 TRAP:"fire",random
269 TRAP:"fire",random
270 TRAP:"fire",random
271 TRAP:"fire",random
272 TRAP:"fire",random
273 TRAP:"fire",random
274 TRAP:"fire",random
275 TRAP:"fire",random
276 TRAP:"fire",random
277 TRAP:"fire",random
278 TRAP:"fire",random
279 TRAP:"fire",random
280 TRAP:"fire",random
281 TRAP:"fire",random
282 TRAP:"fire",random
283 TRAP:"fire",random
284 TRAP:"fire",random
285 TRAP:"fire",random
286 TRAP:"fire",random
287 TRAP:"fire",random
288 TRAP:"fire",random
289 TRAP:"fire",random
290 TRAP:"fire",random
291 TRAP:"fire",random
292 TRAP:"fire",random
293 TRAP:"fire",random
294 TRAP:"fire",random
295 TRAP:"fire",random
296 TRAP:"fire",random
297 TRAP:"fire",random
298 TRAP:"fire",random
299 TRAP:"fire",random
300 TRAP:"fire",random
301 TRAP:"fire",random
302 TRAP:"fire",random
303 TRAP:"fire",random
304 #  An assortment of fire-appropriate nasties
305 MONSTER:('D',"red dragon"),random
306 MONSTER:('&',"balrog"),random
307 MONSTER:('E',"fire elemental"),random,hostile
308 MONSTER:('E',"fire elemental"),random,hostile
309 MONSTER:('v',"fire vortex"),random
310 MONSTER:('d',"hell hound"),random
312 MONSTER:('H',"fire giant"),random
313 MONSTER:('&',"barbed devil"),random
314 MONSTER:('d',"hell hound"),random
315 MONSTER:(''',"stone golem"),random
316 MONSTER:('&',"pit fiend"),random
317 MONSTER:('E',"fire elemental"),random,hostile
319 MONSTER:('E',"fire elemental"),random,hostile
320 MONSTER:('d',"hell hound"),random
321 MONSTER:('E',"fire elemental"),random,hostile
322 MONSTER:('E',"fire elemental"),random,hostile
323 MONSTER:('s',"scorpion"),random
324 MONSTER:('H',"fire giant"),random
326 MONSTER:('d',"hell hound"),random
327 MONSTER:('v',"dust vortex"),random
328 MONSTER:('v',"fire vortex"),random
329 MONSTER:('E',"fire elemental"),random,hostile
330 MONSTER:('E',"fire elemental"),random,hostile
331 MONSTER:('E',"fire elemental"),random,hostile
332 MONSTER:('d',"hell hound"),random
333 MONSTER:('E',"fire elemental"),random,hostile
334 MONSTER:(''',"stone golem"),random
335 MONSTER:('S',"pit viper"),random
336 MONSTER:('S',"pit viper"),random
337 MONSTER:('v',"fire vortex"),random
339 MONSTER:('E',"fire elemental"),random,hostile
340 MONSTER:('E',"fire elemental"),random,hostile
341 MONSTER:('H',"fire giant"),random
342 MONSTER:('E',"fire elemental"),random,hostile
343 MONSTER:('v',"fire vortex"),random
344 MONSTER:('v',"fire vortex"),random
345 MONSTER:('&',"pit fiend"),random
346 MONSTER:('E',"fire elemental"),random,hostile
347 MONSTER:('S',"pit viper"),random
349 MONSTER:(':',"salamander"),random,hostile
350 MONSTER:(':',"salamander"),random,hostile
351 MONSTER:('H',"minotaur"),random
352 MONSTER:(':',"salamander"),random,hostile
353 MONSTER:('v',"steam vortex"),random
354 MONSTER:(':',"salamander"),random,hostile
355 MONSTER:(':',"salamander"),random,hostile
357 MONSTER:('H',"fire giant"),random
358 MONSTER:('&',"barbed devil"),random
359 MONSTER:('E',"fire elemental"),random,hostile
360 MONSTER:('v',"fire vortex"),random
361 MONSTER:('E',"fire elemental"),random,hostile
362 MONSTER:('E',"fire elemental"),random,hostile
363 MONSTER:('d',"hell hound"),random
364 MONSTER:('H',"fire giant"),random
365 MONSTER:('&',"pit fiend"),random
366 MONSTER:('E',"fire elemental"),random,hostile
367 MONSTER:('E',"fire elemental"),random,hostile
369 MONSTER:('&',"barbed devil"),random
370 MONSTER:(':',"salamander"),random,hostile
371 MONSTER:('v',"steam vortex"),random
372 MONSTER:(':',"salamander"),random,hostile
373 MONSTER:(':',"salamander"),random,hostile
375 OBJECT:('`',"boulder"),random
376 OBJECT:('`',"boulder"),random
377 OBJECT:('`',"boulder"),random
378 OBJECT:('`',"boulder"),random
379 OBJECT:('`',"boulder"),random
382 MAZE:"water",' '
383 FLAGS: noteleport,hardfloor,shortsighted
384 MESSAGE: "You find yourself suspended in an air bubble surrounded by water."
385 GEOMETRY:center,center
386 # The player lands upon arrival to an air bubble
387 # within the leftmost third of the level.  The
388 # portal to the next level is randomly located in an air
389 # bubble within the rightmost third of the level.
390 # Bubbles are generated by special code in mkmaze.c for now.
392 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
393 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
394 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
395 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
396 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
397 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
398 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
399 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
400 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
401 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
402 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
403 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
404 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
405 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
406 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
407 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
408 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
409 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
410 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
411 WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
412 ENDMAP
413 TELEPORT_REGION:(0,0,25,19),(0,0,0,0)
414 PORTAL:(51,0,75,19),(0,0,0,0),"astral"
415 # A fisherman's dream...
416 MONSTER:(';',"giant eel"),random
417 MONSTER:(';',"giant eel"),random
418 MONSTER:(';',"giant eel"),random
419 MONSTER:(';',"giant eel"),random
420 MONSTER:(';',"giant eel"),random
421 MONSTER:(';',"giant eel"),random
422 MONSTER:(';',"giant eel"),random
423 MONSTER:(';',"giant eel"),random
424 MONSTER:(';',"electric eel"),random
425 MONSTER:(';',"electric eel"),random
426 MONSTER:(';',"electric eel"),random
427 MONSTER:(';',"electric eel"),random
428 MONSTER:(';',"electric eel"),random
429 MONSTER:(';',"electric eel"),random
430 MONSTER:(';',"electric eel"),random
431 MONSTER:(';',"electric eel"),random
432 MONSTER:(';',"kraken"),random
433 MONSTER:(';',"kraken"),random
434 MONSTER:(';',"kraken"),random
435 MONSTER:(';',"kraken"),random
436 MONSTER:(';',"kraken"),random
437 MONSTER:(';',"kraken"),random
438 MONSTER:(';',"kraken"),random
439 MONSTER:(';',"kraken"),random
440 MONSTER:(';',"kraken"),random
441 MONSTER:(';',"shark"),random
442 MONSTER:(';',"shark"),random
443 MONSTER:(';',"shark"),random
444 MONSTER:(';',"shark"),random
445 MONSTER:(';',"piranha"),random
446 MONSTER:(';',"piranha"),random
447 MONSTER:(';',"piranha"),random
448 MONSTER:(';',"piranha"),random
449 MONSTER:(';',"jellyfish"),random
450 MONSTER:(';',"jellyfish"),random
451 MONSTER:(';',"jellyfish"),random
452 MONSTER:(';',"jellyfish"),random
453 MONSTER:';',random
454 MONSTER:';',random
455 MONSTER:';',random
456 MONSTER:';',random
457 # These guys feel like home here
458 MONSTER:('E',"water elemental"),random,hostile
459 MONSTER:('E',"water elemental"),random,hostile
460 MONSTER:('E',"water elemental"),random,hostile
461 MONSTER:('E',"water elemental"),random,hostile
462 MONSTER:('E',"water elemental"),random,hostile
463 MONSTER:('E',"water elemental"),random,hostile
464 MONSTER:('E',"water elemental"),random,hostile
465 MONSTER:('E',"water elemental"),random,hostile
466 MONSTER:('E',"water elemental"),random,hostile
467 MONSTER:('E',"water elemental"),random,hostile
468 MONSTER:('E',"water elemental"),random,hostile
469 MONSTER:('E',"water elemental"),random,hostile
470 MONSTER:('E',"water elemental"),random,hostile
471 MONSTER:('E',"water elemental"),random,hostile
472 MONSTER:('E',"water elemental"),random,hostile
473 MONSTER:('E',"water elemental"),random,hostile
474 MONSTER:('E',"water elemental"),random,hostile
475 MONSTER:('E',"water elemental"),random,hostile
476 MONSTER:('E',"water elemental"),random,hostile
479 MAZE:"astral",' '
480 FLAGS: noteleport,hardfloor,nommap,shortsighted,solidify
481 MESSAGE: "You arrive on the Astral Plane!"
482 MESSAGE: "Here the High Temple of %d is located."
483 MESSAGE: "You sense alarm, hostility, and excitement in the air!"
484 GEOMETRY:center,center
486                               ---------------                              
487                               |.............|                              
488                               |..---------..|                              
489                               |..|.......|..|                              
490 ---------------               |..|.......|..|               ---------------
491 |.............|               |..|.......|..|               |.............|
492 |..---------..-|   |-------|  |..|.......|..|  |-------|   |-..---------..|
493 |..|.......|...-| |-.......-| |..|.......|..| |-.......-| |-...|.......|..|
494 |..|.......|....-|-.........-||..----+----..||-.........-|-....|.......|..|
495 |..|.......+.....+...........||.............||...........+.....+.......|..|
496 |..|.......|....-|-.........-|--|.........|--|-.........-|-....|.......|..|
497 |..|.......|...-| |-.......-|   -|---+---|-   |-.......-| |-...|.......|..|
498 |..---------..-|   |---+---|    |-.......-|    |---+---|   |-..---------..|
499 |.............|      |...|-----|-.........-|-----|...|      |.............|
500 ---------------      |.........|...........|.........|      ---------------
501                      -------...|-.........-|...-------                     
502                            |....|-.......-|....|                           
503                            ---...|---+---|...---                           
504                              |...............|                             
505                              -----------------                             
506 ENDMAP
508 IF [75%] {
509   TERRAIN:fillrect (17,14, 30,18),'.'
510   TERRAIN:fillrect (44,14, 57,18),'.'
511   WALLIFY
513   $hall = selection:floodfill(37,18)
514   LOOP [6 + 3d4] {
515     MONSTER:('A',"Angel"),rndcoord($hall),noalign,hostile
516     [50%]: MONSTER:random,rndcoord($hall),hostile
517   }
520 # Rider locations
521 $place = { (23,9),(37,14),(51,9) }
522 SHUFFLE: $place
524 # Where the player will land on arrival
525 TELEPORT_REGION:(29,15,45,15),(30,15,44,15)
526 # Lit courts
527 REGION:(01,05,16,14),lit,"ordinary",filled,irregular
528 REGION:(31,01,44,10),lit,"ordinary",filled,irregular
529 REGION:(61,05,74,14),lit,"ordinary",filled,irregular
530 # A Sanctum for each alignment
531 # The shrines' alignments are shuffled for
532 # each game
533 REGION:(04,07,10,11),lit,"temple"
534 REGION:(34,03,40,07),lit,"temple"
535 REGION:(64,07,70,11),lit,"temple"
536 ALTAR:(07,09),align[0],sanctum
537 ALTAR:(37,05),align[1],sanctum
538 ALTAR:(67,09),align[2],sanctum
539 # Doors
540 DOOR:closed,(11,09)
541 DOOR:closed,(17,09)
542 DOOR:locked,(23,12)
543 DOOR:locked,(37,08)
544 DOOR:closed,(37,11)
545 DOOR:closed,(37,17)
546 DOOR:locked,(51,12)
547 DOOR:locked,(57,09)
548 DOOR:closed,(63,09)
549 # Non diggable and phazeable everywhere
550 NON_DIGGABLE:(00,00,74,19)
551 NON_PASSWALL:(00,00,74,19)
552 # Moloch's horde
553 # West round room
554 MONSTER:('@',"aligned priest"),(18,09),noalign,hostile
555 MONSTER:('@',"aligned priest"),(19,08),noalign,hostile
556 MONSTER:('@',"aligned priest"),(19,09),noalign,hostile
557 MONSTER:('@',"aligned priest"),(19,10),noalign,hostile
558 MONSTER:('A',"Angel"),(20,09),noalign,hostile
559 MONSTER:('A',"Angel"),(20,10),noalign,hostile
560 MONSTER:('&',"Pestilence"),$place[0],hostile
561 # South-central round room
562 MONSTER:('@',"aligned priest"),(36,12),noalign,hostile
563 MONSTER:('@',"aligned priest"),(37,12),noalign,hostile
564 MONSTER:('@',"aligned priest"),(38,12),noalign,hostile
565 MONSTER:('@',"aligned priest"),(36,13),noalign,hostile
566 MONSTER:('A',"Angel"),(38,13),noalign,hostile
567 MONSTER:('A',"Angel"),(37,13),noalign,hostile
568 MONSTER:('&',"Death"),$place[1],hostile
569 # East round room
570 MONSTER:('@',"aligned priest"),(56,09),noalign,hostile
571 MONSTER:('@',"aligned priest"),(55,08),noalign,hostile
572 MONSTER:('@',"aligned priest"),(55,09),noalign,hostile
573 MONSTER:('@',"aligned priest"),(55,10),noalign,hostile
574 MONSTER:('A',"Angel"),(54,09),noalign,hostile
575 MONSTER:('A',"Angel"),(54,10),noalign,hostile
576 MONSTER:('&',"Famine"),$place[2],hostile
578 # The aligned horde
580 # We do not know in advance the alignment of the
581 # player.  The mpeaceful bit will need resetting
582 # when the level is created.  The setting here is
583 # but a place holder.
585 # West court
586 MONSTER:('@',"aligned priest"),(12,07),chaos,hostile
587 MONSTER:('@',"aligned priest"),(13,07),chaos,peaceful
588 MONSTER:('@',"aligned priest"),(14,07),law,hostile
589 MONSTER:('@',"aligned priest"),(12,11),law,peaceful
590 MONSTER:('@',"aligned priest"),(13,11),neutral,hostile
591 MONSTER:('@',"aligned priest"),(14,11),neutral,peaceful
592 MONSTER:('A',"Angel"),(11,05),chaos,hostile
593 MONSTER:('A',"Angel"),(12,05),chaos,peaceful
594 MONSTER:('A',"Angel"),(13,05),law,hostile
595 MONSTER:('A',"Angel"),(11,13),law,peaceful
596 MONSTER:('A',"Angel"),(12,13),neutral,hostile
597 MONSTER:('A',"Angel"),(13,13),neutral,peaceful
598 # Central court
599 MONSTER:('@',"aligned priest"),(32,09),chaos,hostile
600 MONSTER:('@',"aligned priest"),(33,09),chaos,peaceful
601 MONSTER:('@',"aligned priest"),(34,09),law,hostile
602 MONSTER:('@',"aligned priest"),(40,09),law,peaceful
603 MONSTER:('@',"aligned priest"),(41,09),neutral,hostile
604 MONSTER:('@',"aligned priest"),(42,09),neutral,peaceful
605 MONSTER:('A',"Angel"),(31,08),chaos,hostile
606 MONSTER:('A',"Angel"),(32,08),chaos,peaceful
607 MONSTER:('A',"Angel"),(31,09),law,hostile
608 MONSTER:('A',"Angel"),(42,08),law,peaceful
609 MONSTER:('A',"Angel"),(43,08),neutral,hostile
610 MONSTER:('A',"Angel"),(43,09),neutral,peaceful
611 # East court
612 MONSTER:('@',"aligned priest"),(60,07),chaos,hostile
613 MONSTER:('@',"aligned priest"),(61,07),chaos,peaceful
614 MONSTER:('@',"aligned priest"),(62,07),law,hostile
615 MONSTER:('@',"aligned priest"),(60,11),law,peaceful
616 MONSTER:('@',"aligned priest"),(61,11),neutral,hostile
617 MONSTER:('@',"aligned priest"),(62,11),neutral,peaceful
618 MONSTER:('A',"Angel"),(61,05),chaos,hostile
619 MONSTER:('A',"Angel"),(62,05),chaos,peaceful
620 MONSTER:('A',"Angel"),(63,05),law,hostile
621 MONSTER:('A',"Angel"),(61,13),law,peaceful
622 MONSTER:('A',"Angel"),(62,13),neutral,hostile
623 MONSTER:('A',"Angel"),(63,13),neutral,peaceful
625 # Assorted nasties
626 MONSTER:'L',random,hostile
627 MONSTER:'L',random,hostile
628 MONSTER:'L',random,hostile
629 MONSTER:'V',random,hostile
630 MONSTER:'V',random,hostile
631 MONSTER:'V',random,hostile
632 MONSTER:'D',random,hostile
633 MONSTER:'D',random,hostile
634 MONSTER:'D',random,hostile