OSDN Git Service

upgrade to 3.6.2
[jnethack/source.git] / dat / endgame.des
1 # NetHack 3.6   endgame.des     $NHDT-Date: 1546303680 2019/01/01 00:48:00 $  $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.14 $
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.
6 #
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.
11
12 MAZE:"earth",' '
13 FLAGS: noteleport,hardfloor,shortsighted
14 MESSAGE: "\82æ\82­\82â\82Á\82½\81C\92è\96½\82Ì\8eÒ\82æ\81I"
15 MESSAGE: "\82µ\82©\82µ\81C\93ð\82Í\8dÅ\8cã\82Ì\8e\8e\97û\82É\92¼\96Ê\82µ\82Ä\82¢\82é\81D\81D\81D"
16 MESSAGE: "\93ð\8e©\90g\89¿\92l\82 \82é\82à\82Ì\82©\94Û\82©\82ð\8e¦\82¹\81I"
17
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
46
47 REPLACE_TERRAIN:(0,0,75,19), ' ', ('.', unlit), 5%
48
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)
63 #
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
70 #
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)
77 #
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)
90 #
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)
100 #
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
108 #
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
120 #
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
126
127 OBJECT:('`',"boulder"),random
128
129
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: "\82È\82ñ\82Æ\8aï\96­\82È\8a´\8ao\82¾\81I"
135 MESSAGE: "\82 \82È\82½\82Í\82±\82±\82É\82Í\8fd\97Í\82ª\82È\82¢\82±\82Æ\82É\8bC\82ª\82Â\82¢\82½\81D"
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".
142 MAP
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
183
184 MONSTER:('e',"floating eye"),random,hostile
185 MONSTER:('e',"floating eye"),random,hostile
186 MONSTER:('e',"floating eye"),random,hostile
187
188 MONSTER:('y',"yellow light"),random,hostile
189 MONSTER:('y',"yellow light"),random,hostile
190 MONSTER:('y',"yellow light"),random,hostile
191
192 MONSTER:('A',"couatl"),random
193
194 MONSTER:'D',random
195 MONSTER:'D',random
196 MONSTER:'D',random
197 MONSTER:'D',random
198 MONSTER:'D',random
199
200 MONSTER:'E',random
201 MONSTER:'E',random
202 MONSTER:'E',random
203 MONSTER:'J',random
204 MONSTER:'J',random
205
206 MONSTER:('&',"djinni"),random,hostile
207 MONSTER:('&',"djinni"),random,hostile
208 MONSTER:('&',"djinni"),random,hostile
209
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
229
230
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.
239 MAP
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"
263
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
311 #
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
318 #
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
325 #
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
338 #
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
348 #
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
356 #
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
368 #
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
374
375 OBJECT:('`',"boulder"),random
376 OBJECT:('`',"boulder"),random
377 OBJECT:('`',"boulder"),random
378 OBJECT:('`',"boulder"),random
379 OBJECT:('`',"boulder"),random
380
381
382 MAZE:"water",' '
383 FLAGS: noteleport,hardfloor,shortsighted
384 MESSAGE: "\82 \82È\82½\82Í\8e©\95ª\82ª\90\85\92\86\82Ì\8bó\8bC\82Ì\96A\82Ì\82È\82©\82É\95\82\97V\82µ\82Ä\82¢\82é\82±\82Æ\82É\8bC\82Ã\82¢\82½\81D"
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.
391 MAP
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
477
478
479 MAZE:"astral",' '
480 FLAGS: noteleport,hardfloor,nommap,shortsighted,solidify
481 MESSAGE: "\82 \82È\82½\82Í\90¸\97ì\8aE\82É\93\9e\92\85\82µ\82½\81I"
482 MESSAGE: "\82±\82±\82É\82Í\82 \82È\82½\82Ì\90_\82Ì\91å\90_\93a\82ª\82 \82é\81D"
483 MESSAGE: "\82 \82È\82½\82Í\8aë\8c¯\82ð\8a´\82\81C\8b»\95±\82µ\82½\81I"
484 GEOMETRY:center,center
485 MAP
486                               ---------------                              
487                               |.............|                              
488                               |..---------..|                              
489                               |..|.......|..|                              
490 ---------------               |..|.......|..|               ---------------
491 |.............|               |..|.......|..|               |.............|
492 |..---------..-|   |-------|  |..|.......|..|  |-------|   |-..---------..|
493 |..|.......|...-| |-.......-| |..|.......|..| |-.......-| |-...|.......|..|
494 |..|.......|....-|-.........-||..----+----..||-.........-|-....|.......|..|
495 |..|.......+.....+...........||.............||...........+.....+.......|..|
496 |..|.......|....-|-.........-|--|.........|--|-.........-|-....|.......|..|
497 |..|.......|...-| |-.......-|   -|---+---|-   |-.......-| |-...|.......|..|
498 |..---------..-|   |---+---|    |-.......-|    |---+---|   |-..---------..|
499 |.............|      |...|-----|-.........-|-----|...|      |.............|
500 ---------------      |.........|...........|.........|      ---------------
501                      -------...|-.........-|...-------                     
502                            |....|-.......-|....|                           
503                            ---...|---+---|...---                           
504                              |...............|                             
505                              -----------------                             
506 ENDMAP
507
508 # chance to alter above map and turn the wings of the bottom-center into
509 # a pair of big (5x15) rooms
510 $loopindx = 0
511 LOOP [2] {
512   $loopindx = $loopindx + 1
513 # 3.6.[01]: 75% chance that both sides opened up, 25% that neither did;
514 # 3.6.2: 60% twice == 36% chance that both sides open up, 24% left side
515 # only, 24% right side only, 16% that neither side opens up
516   IF [60%] {
517     IF [$loopindx == 1] {
518       TERRAIN:fillrect (17,14, 30,18),'.'
519       WALLIFY
520 # temporarily close off the area to be filled so that it doesn't cover
521 # the entire entry area
522       TERRAIN:(33,18), '|'
523       $hall = selection:floodfill(30,16)
524 # re-connect the opened wing with the rest of the map
525       TERRAIN:(33,18), '.'
526     } ELSE {
527       TERRAIN:fillrect (44,14, 57,18),'.'
528       WALLIFY
529       TERRAIN:(41,18), '|'
530       $hall = selection:floodfill(44,16)
531       TERRAIN:(41,18), '.'
532     }
533 # extra monsters; was [6 + 3d4] when both wings were opened up at once
534     LOOP [3 + 2d3] {
535       MONSTER:('A',"Angel"),rndcoord($hall),noalign,hostile
536       [50%]: MONSTER:random,rndcoord($hall),hostile
537     }
538   }
539 }
540
541 # Rider locations
542 $place = { (23,9),(37,14),(51,9) }
543 SHUFFLE: $place
544
545 # Where the player will land on arrival
546 TELEPORT_REGION:(29,15,45,15),(30,15,44,15)
547 # Lit courts
548 REGION:(01,05,16,14),lit,"ordinary",filled,irregular
549 REGION:(31,01,44,10),lit,"ordinary",filled,irregular
550 REGION:(61,05,74,14),lit,"ordinary",filled,irregular
551 # A Sanctum for each alignment
552 # The shrines' alignments are shuffled for
553 # each game
554 REGION:(04,07,10,11),lit,"temple"
555 REGION:(34,03,40,07),lit,"temple"
556 REGION:(64,07,70,11),lit,"temple"
557 ALTAR:(07,09),align[0],sanctum
558 ALTAR:(37,05),align[1],sanctum
559 ALTAR:(67,09),align[2],sanctum
560 # Doors
561 DOOR:closed,(11,09)
562 DOOR:closed,(17,09)
563 DOOR:locked,(23,12)
564 DOOR:locked,(37,08)
565 DOOR:closed,(37,11)
566 DOOR:closed,(37,17)
567 DOOR:locked,(51,12)
568 DOOR:locked,(57,09)
569 DOOR:closed,(63,09)
570 # Non diggable and phazeable everywhere
571 NON_DIGGABLE:(00,00,74,19)
572 NON_PASSWALL:(00,00,74,19)
573 # Moloch's horde
574 # West round room
575 MONSTER:('@',"aligned priest"),(18,09),noalign,hostile
576 MONSTER:('@',"aligned priest"),(19,08),noalign,hostile
577 MONSTER:('@',"aligned priest"),(19,09),noalign,hostile
578 MONSTER:('@',"aligned priest"),(19,10),noalign,hostile
579 MONSTER:('A',"Angel"),(20,09),noalign,hostile
580 MONSTER:('A',"Angel"),(20,10),noalign,hostile
581 MONSTER:('&',"Pestilence"),$place[0],hostile
582 # South-central round room
583 MONSTER:('@',"aligned priest"),(36,12),noalign,hostile
584 MONSTER:('@',"aligned priest"),(37,12),noalign,hostile
585 MONSTER:('@',"aligned priest"),(38,12),noalign,hostile
586 MONSTER:('@',"aligned priest"),(36,13),noalign,hostile
587 MONSTER:('A',"Angel"),(38,13),noalign,hostile
588 MONSTER:('A',"Angel"),(37,13),noalign,hostile
589 MONSTER:('&',"Death"),$place[1],hostile
590 # East round room
591 MONSTER:('@',"aligned priest"),(56,09),noalign,hostile
592 MONSTER:('@',"aligned priest"),(55,08),noalign,hostile
593 MONSTER:('@',"aligned priest"),(55,09),noalign,hostile
594 MONSTER:('@',"aligned priest"),(55,10),noalign,hostile
595 MONSTER:('A',"Angel"),(54,09),noalign,hostile
596 MONSTER:('A',"Angel"),(54,10),noalign,hostile
597 MONSTER:('&',"Famine"),$place[2],hostile
598 #
599 # The aligned horde
600 #
601 # We do not know in advance the alignment of the
602 # player.  The mpeaceful bit will need resetting
603 # when the level is created.  The setting here is
604 # but a place holder.
605 #
606 # West court
607 MONSTER:('@',"aligned priest"),(12,07),chaos,hostile
608 MONSTER:('@',"aligned priest"),(13,07),chaos,peaceful
609 MONSTER:('@',"aligned priest"),(14,07),law,hostile
610 MONSTER:('@',"aligned priest"),(12,11),law,peaceful
611 MONSTER:('@',"aligned priest"),(13,11),neutral,hostile
612 MONSTER:('@',"aligned priest"),(14,11),neutral,peaceful
613 MONSTER:('A',"Angel"),(11,05),chaos,hostile
614 MONSTER:('A',"Angel"),(12,05),chaos,peaceful
615 MONSTER:('A',"Angel"),(13,05),law,hostile
616 MONSTER:('A',"Angel"),(11,13),law,peaceful
617 MONSTER:('A',"Angel"),(12,13),neutral,hostile
618 MONSTER:('A',"Angel"),(13,13),neutral,peaceful
619 # Central court
620 MONSTER:('@',"aligned priest"),(32,09),chaos,hostile
621 MONSTER:('@',"aligned priest"),(33,09),chaos,peaceful
622 MONSTER:('@',"aligned priest"),(34,09),law,hostile
623 MONSTER:('@',"aligned priest"),(40,09),law,peaceful
624 MONSTER:('@',"aligned priest"),(41,09),neutral,hostile
625 MONSTER:('@',"aligned priest"),(42,09),neutral,peaceful
626 MONSTER:('A',"Angel"),(31,08),chaos,hostile
627 MONSTER:('A',"Angel"),(32,08),chaos,peaceful
628 MONSTER:('A',"Angel"),(31,09),law,hostile
629 MONSTER:('A',"Angel"),(42,08),law,peaceful
630 MONSTER:('A',"Angel"),(43,08),neutral,hostile
631 MONSTER:('A',"Angel"),(43,09),neutral,peaceful
632 # East court
633 MONSTER:('@',"aligned priest"),(60,07),chaos,hostile
634 MONSTER:('@',"aligned priest"),(61,07),chaos,peaceful
635 MONSTER:('@',"aligned priest"),(62,07),law,hostile
636 MONSTER:('@',"aligned priest"),(60,11),law,peaceful
637 MONSTER:('@',"aligned priest"),(61,11),neutral,hostile
638 MONSTER:('@',"aligned priest"),(62,11),neutral,peaceful
639 MONSTER:('A',"Angel"),(61,05),chaos,hostile
640 MONSTER:('A',"Angel"),(62,05),chaos,peaceful
641 MONSTER:('A',"Angel"),(63,05),law,hostile
642 MONSTER:('A',"Angel"),(61,13),law,peaceful
643 MONSTER:('A',"Angel"),(62,13),neutral,hostile
644 MONSTER:('A',"Angel"),(63,13),neutral,peaceful
645 #
646 # Assorted nasties
647 MONSTER:'L',random,hostile
648 MONSTER:'L',random,hostile
649 MONSTER:'L',random,hostile
650 MONSTER:'V',random,hostile
651 MONSTER:'V',random,hostile
652 MONSTER:'V',random,hostile
653 MONSTER:'D',random,hostile
654 MONSTER:'D',random,hostile
655 MONSTER:'D',random,hostile