Source:NetHack 3.6.0/dat/gehennom.des

From NetHackWiki
Jump to: navigation, search

Below is the full text to gehennom.des from the source code of NetHack 3.6.0. To link to a particular line, write [[Source:NetHack 3.6.0/dat/gehennom.des#line123]], for example.

The NetHack General Public License applies to screenshots, source code and other content from NetHack.

This content was modified from the original NetHack source code distribution (by splitting up NetHack content between wiki pages, and possibly further editing). See the page history for a list of who changed it, and on what dates.

  1. # NetHack 3.6	gehennom.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 by M. Stephenson and Izchak Miller
  4. # NetHack may be freely redistributed.  See license for details.
  5. #
  6.  
  7. MAZE: "valley", ' '
  8. FLAGS: noteleport,hardfloor,nommap
  9. GEOMETRY:center,center
  10. MAP
  11. ----------------------------------------------------------------------------
  12. |...S.|..|.....|  |.....-|      |................|   |...............| |...|
  13. |---|.|.--.---.|  |......--- ----..........-----.-----....---........---.-.|
  14. |   |.|.|..| |.| --........| |.............|   |.......---| |-...........--|
  15. |   |...S..| |.| |.......-----.......------|   |--------..---......------- |
  16. |----------- |.| |-......| |....|...-- |...-----................----       |
  17. |.....S....---.| |.......| |....|...|  |..............-----------          |
  18. |.....|.|......| |.....--- |......---  |....---.......|                    |
  19. |.....|.|------| |....--   --....-- |-------- ----....---------------      |
  20. |.....|--......---BBB-|     |...--  |.......|    |..................|      |
  21. |..........||........-|    --...|   |.......|    |...||.............|      |
  22. |.....|...-||-........------....|   |.......---- |...||.............--     |
  23. |.....|--......---...........--------..........| |.......---------...--    |
  24. |.....| |------| |--.......--|   |..B......----- -----....| |.|  |....---  |
  25. |.....| |......--| ------..| |----..B......|       |.--------.-- |-.....---|
  26. |------ |........|  |.|....| |.....----BBBB---------...........---.........|
  27. |       |........|  |...|..| |.....|  |-.............--------...........---|
  28. |       --.....-----------.| |....-----.....----------     |.........----  |
  29. |        |..|..B...........| |.|..........|.|              |.|........|    |
  30. ----------------------------------------------------------------------------
  31. ENDMAP
  32.  
  33. # Make the path somewhat unpredictable
  34. # If you get "lucky", you may have to go through all three graveyards.
  35. IF [50%] {
  36. TERRAIN:line (50,8),(53,8), '-'
  37. TERRAIN:line (40,8),(43,8), 'B'
  38. }
  39. IF [50%] {
  40. TERRAIN:(27,12),'|'
  41. TERRAIN:line (27,3),(29,3), 'B'
  42. TERRAIN:(28,2), '-'
  43. }
  44. IF [50%] {
  45. TERRAIN:line (16,10),(16,11),'|'
  46. TERRAIN:line (9,13),(14,13), 'B'
  47. }
  48.  
  49.  
  50. # Dungeon Description
  51. # The shrine to Moloch.
  52. REGION:(01,06,05,14),lit,"temple"
  53. # The Morgues
  54. REGION:(19,01,24,08),unlit,"morgue",filled,irregular
  55. REGION:(09,14,16,18),unlit,"morgue",filled,irregular
  56. REGION:(37,09,43,14),unlit,"morgue",filled,irregular
  57. # Stairs
  58. STAIR:(01,01),down
  59. # Branch location
  60. BRANCH:(66,17,66,17),(0,0,0,0)
  61. TELEPORT_REGION:(58,09,72,18),(0,0,0,0),down
  62.  
  63. # Secret Doors
  64. DOOR:locked,(04,01)
  65. DOOR:locked,(08,04)
  66. DOOR:locked,(06,06)
  67.  
  68. # The altar of Moloch.
  69. ALTAR:(03,10),noalign,shrine
  70.  
  71. # Non diggable walls - everywhere!
  72. NON_DIGGABLE:(00,00,75,19)
  73.  
  74. # Objects
  75. # **LOTS** of dead bodies (all human).
  76. # note: no priest(esse)s or monks - maybe Moloch has a *special*
  77. #       fate reserved for members of *those* classes.
  78. #
  79. OBJECT:('%',"corpse"),random,montype:"archeologist"
  80. OBJECT:('%',"corpse"),random,montype:"archeologist"
  81. OBJECT:('%',"corpse"),random,montype:"barbarian"
  82. OBJECT:('%',"corpse"),random,montype:"barbarian"
  83. OBJECT:('%',"corpse"),random,montype:"caveman"
  84. OBJECT:('%',"corpse"),random,montype:"cavewoman"
  85. OBJECT:('%',"corpse"),random,montype:"healer"
  86. OBJECT:('%',"corpse"),random,montype:"healer"
  87. OBJECT:('%',"corpse"),random,montype:"knight"
  88. OBJECT:('%',"corpse"),random,montype:"knight"
  89. OBJECT:('%',"corpse"),random,montype:"ranger"
  90. OBJECT:('%',"corpse"),random,montype:"ranger"
  91. OBJECT:('%',"corpse"),random,montype:"rogue"
  92. OBJECT:('%',"corpse"),random,montype:"rogue"
  93. OBJECT:('%',"corpse"),random,montype:"samurai"
  94. OBJECT:('%',"corpse"),random,montype:"samurai"
  95. OBJECT:('%',"corpse"),random,montype:"tourist"
  96. OBJECT:('%',"corpse"),random,montype:"tourist"
  97. OBJECT:('%',"corpse"),random,montype:"valkyrie"
  98. OBJECT:('%',"corpse"),random,montype:"valkyrie"
  99. OBJECT:('%',"corpse"),random,montype:"wizard"
  100. OBJECT:('%',"corpse"),random,montype:"wizard"
  101. #
  102. # Some random weapons and armor.
  103. #
  104. OBJECT:'[',random
  105. OBJECT:'[',random
  106. OBJECT:'[',random
  107. OBJECT:'[',random
  108. OBJECT:')',random
  109. OBJECT:')',random
  110. OBJECT:')',random
  111. OBJECT:')',random
  112. #
  113. # Some random loot.
  114. #
  115. OBJECT:('*',"ruby"),random
  116. OBJECT:'*',random
  117. OBJECT:'*',random
  118. OBJECT:'!',random
  119. OBJECT:'!',random
  120. OBJECT:'!',random
  121. OBJECT:'?',random
  122. OBJECT:'?',random
  123. OBJECT:'?',random
  124. OBJECT:'/',random
  125. OBJECT:'/',random
  126. OBJECT:'=',random
  127. OBJECT:'=',random
  128. OBJECT:'+',random
  129. OBJECT:'+',random
  130. OBJECT:'(',random
  131. OBJECT:'(',random
  132. OBJECT:'(',random
  133.  
  134. # (Not so) Random traps.
  135. TRAP:"spiked pit", (05,02)
  136. TRAP:"spiked pit", (14,05)
  137. TRAP:"sleep gas", (03,01)
  138. TRAP:"board", (21,12)
  139. TRAP:"board", random
  140. TRAP:"dart", (60,01)
  141. TRAP:"dart", (26,17)
  142. TRAP:"anti magic", random
  143. TRAP:"anti magic", random
  144. TRAP:"magic", random
  145. TRAP:"magic", random
  146.  
  147. # Random monsters.
  148. # The ghosts.
  149. MONSTER:(' ',"ghost"),random
  150. MONSTER:(' ',"ghost"),random
  151. MONSTER:(' ',"ghost"),random
  152. MONSTER:(' ',"ghost"),random
  153. MONSTER:(' ',"ghost"),random
  154. MONSTER:(' ',"ghost"),random
  155. # Add a few bats for atmosphere.
  156. MONSTER:('B',"vampire bat"),random
  157. MONSTER:('B',"vampire bat"),random
  158. MONSTER:('B',"vampire bat"),random
  159. # And a lich for good measure.
  160. MONSTER:'L',random
  161. # Some undead nasties for good measure
  162. MONSTER:'V',random
  163. MONSTER:'V',random
  164. MONSTER:'V',random
  165. MONSTER:'Z',random
  166. MONSTER:'Z',random
  167. MONSTER:'Z',random
  168. MONSTER:'Z',random
  169. MONSTER:'M',random
  170. MONSTER:'M',random
  171. MONSTER:'M',random
  172. MONSTER:'M',random
  173. #
  174. # The Juiblex level
  175. #
  176. MAZE:"juiblex",' '
  177. FLAGS:noteleport,shortsighted
  178. INIT_MAP:mines,'.','}',true,true,unlit,false
  179. # guarantee at least one open spot to ensure successful stair placement
  180. GEOMETRY:left,bottom
  181. MAP
  182. xxxxxxxx
  183. xx...xxx
  184. xxx...xx
  185. xxxx.xxx
  186. xxxxxxxx
  187. ENDMAP
  188. OBJECT:('`',"boulder"),random
  189. GEOMETRY:right,top
  190. MAP
  191. xxxxxxxx
  192. xxxx.xxx
  193. xxx...xx
  194. xx...xxx
  195. xxxxxxxx
  196. ENDMAP
  197. OBJECT:('`',"boulder"),random
  198. # lair
  199. GEOMETRY:center,center
  200. MAP
  201. xx}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}xx
  202. x}}}.}}}}}..}}}..}}}}}..}}}..}}}}}..}}}..}}}}}.}}}x
  203. }}}...}}..}}.}.}}.}}.}}}...}}}.}}}..}}}..}}}}...}}}
  204. x}}}.}}.}}}.}}.}}.}}...}}.}}.....}}.....}....}.}}}x
  205. xx}}}..}}}.}}.}}.}}..}}.....}}.}}}.}}.}}}}}}}}}}}xx
  206. x}}}..}}}}}.}}.}}.}}...}}}}}.....}}.}}}}}}.....}}}x
  207. }}}..}}...}}..}}.}}}.}}}...}}}.}}}.}.}}}}..P.P..}}}
  208. }}.}}}}...}}}}}.}...}}}..P..}}}.}.}}}.}}}}.....}}}}
  209. }.}}}}.}}.}..}.}}}}}}}..P.P..}}}.}}}.}}..}}...}}}}x
  210. x}}}}.}}}}....}}}}}.}}}..P..}}}.}}}}.}}..}}...}}}.}
  211. }}}}..}}.}}..}}}}...}}}}...}}}.}}}}}.}}}}.}}}}}}.}}
  212. }}}...}}...}}}..}}}}}}}}}}}}.....}}}}.}}...}..}.}}}
  213. x}}}..}}.}}}}....}}..}}}..}}.....}}}}.}}}.}....}}}x
  214. xx}}}.}}}}..}}..}}..}}..}}..}}.}}}..}.}..}}}..}}}xx
  215. x}}}.}}}}....}}}}..}}....}}}}}}}...}}}....}}}}.}}}x
  216. }}}...}}}....}}}..}}}....}}}..}}...}}}....}}}...}}}
  217. x}}}.}}}}}..}}}..}}}}}..}}}..}}}}}..}}}..}}}}}.}}}x
  218. xx}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}xx
  219. ENDMAP
  220. # Random registers
  221. $monster = monster: { 'j','b','P','F' }
  222. SHUFFLE: $monster
  223.  
  224. $place = { (04,02),(46,02),(04,15),(46,15) }
  225. SHUFFLE: $place
  226.  
  227. # Dungeon description
  228. REGION:(00,00,50,17),unlit,"swamp"
  229. MAZEWALK:(00,09),west
  230. MAZEWALK:(50,08),east
  231. STAIR:levregion(01,00,11,20),(0,0,50,17),down
  232. STAIR:levregion(69,00,79,20),(0,0,50,17),up
  233. BRANCH:levregion(01,00,11,20),(0,0,50,17)
  234. TELEPORT_REGION:levregion(01,00,11,20),(0,0,50,17),up
  235. TELEPORT_REGION:levregion(69,00,79,20),(0,0,50,17),down
  236. FOUNTAIN:$place[0]
  237. MONSTER:('m',"giant mimic"),$place[1],m_feature "fountain"
  238. MONSTER:('m',"giant mimic"),$place[2],m_feature "fountain"
  239. MONSTER:('m',"giant mimic"),$place[3],m_feature "fountain"
  240. # The demon of the swamp
  241. MONSTER:('&',"Juiblex"),(25,08)
  242. # And a couple demons
  243. MONSTER:('i',"lemure"),(43,08)
  244. MONSTER:('i',"lemure"),(44,08)
  245. MONSTER:('i',"lemure"),(45,08)
  246. # Some liquids and gems
  247. OBJECT:'*',(43,06)
  248. OBJECT:'*',(45,06)
  249. OBJECT:'!',(43,09)
  250. OBJECT:'!',(44,09)
  251. OBJECT:'!',(45,09)
  252. # And lots of blobby monsters
  253. MONSTER:$monster[0],(25,06)
  254. MONSTER:$monster[1],(24,07)
  255. MONSTER:$monster[2],(26,07)
  256. MONSTER:$monster[3],(23,08)
  257. MONSTER:$monster[3],(27,08)
  258. MONSTER:$monster[2],(24,09)
  259. MONSTER:$monster[1],(26,09)
  260. MONSTER:$monster[0],(25,10)
  261. MONSTER:'j',random
  262. MONSTER:'j',random
  263. MONSTER:'j',random
  264. MONSTER:'j',random
  265. MONSTER:'P',random
  266. MONSTER:'P',random
  267. MONSTER:'P',random
  268. MONSTER:'P',random
  269. MONSTER:'b',random
  270. MONSTER:'b',random
  271. MONSTER:'b',random
  272. MONSTER:'F',random
  273. MONSTER:'F',random
  274. MONSTER:'F',random
  275. MONSTER:'m',random
  276. MONSTER:'m',random
  277. MONSTER:(';',"jellyfish"),random
  278. MONSTER:(';',"jellyfish"),random
  279. # Some random objects
  280. OBJECT:'!',random
  281. OBJECT:'!',random
  282. OBJECT:'!',random
  283. OBJECT:'%',random
  284. OBJECT:'%',random
  285. OBJECT:'%',random
  286. OBJECT:('`',"boulder"),random
  287. # Some traps
  288. TRAP:"sleep gas",random
  289. TRAP:"sleep gas",random
  290. TRAP:"anti magic",random
  291. TRAP:"anti magic",random
  292. TRAP:"magic",random
  293. TRAP:"magic",random
  294. #
  295. # The Orcus Level
  296. #
  297. MAZE:"orcus",random
  298. FLAGS: noteleport,shortsighted
  299. GEOMETRY:right,center
  300. # A ghost town
  301. MAP
  302. .|....|....|....|..............|....|........
  303. .|....|....|....|..............|....|........
  304. .|....|....|....|--...-+-------|.............
  305. .|....|....|....|..............+.............
  306. .|.........|....|..............|....|........
  307. .--+-...-+----+--....-------...--------.-+---
  308. .....................|.....|.................
  309. .....................|.....|.................
  310. .--+----....-+---....|.....|...----------+---
  311. .|....|....|....|....---+---...|......|......
  312. .|.........|....|..............|......|......
  313. .----...---------.....-----....+......|......
  314. .|........................|....|......|......
  315. .----------+-...--+--|....|....----------+---
  316. .|....|..............|....+....|.............
  317. .|....+.......|......|....|....|.............
  318. .|....|.......|......|....|....|.............
  319. ENDMAP
  320. MAZEWALK:(00,06),west
  321. # Entire main area
  322. REGION:(01,00,44,16),unlit,"ordinary"
  323. STAIR:(33,15),down
  324. STAIR:levregion(01,00,12,20),levregion(20,01,70,20),up
  325. BRANCH:levregion(01,00,12,20),levregion(20,01,70,20)
  326. TELEPORT_REGION:levregion(01,00,12,20),levregion(20,01,70,20)
  327. # Wall "ruins"
  328. OBJECT:('`',"boulder"),(19,02)
  329. OBJECT:('`',"boulder"),(20,02)
  330. OBJECT:('`',"boulder"),(21,02)
  331. OBJECT:('`',"boulder"),(36,02)
  332. OBJECT:('`',"boulder"),(36,03)
  333. OBJECT:('`',"boulder"),(06,04)
  334. OBJECT:('`',"boulder"),(05,05)
  335. OBJECT:('`',"boulder"),(06,05)
  336. OBJECT:('`',"boulder"),(07,05)
  337. OBJECT:('`',"boulder"),(39,05)
  338. OBJECT:('`',"boulder"),(08,08)
  339. OBJECT:('`',"boulder"),(09,08)
  340. OBJECT:('`',"boulder"),(10,08)
  341. OBJECT:('`',"boulder"),(11,08)
  342. OBJECT:('`',"boulder"),(06,10)
  343. OBJECT:('`',"boulder"),(05,11)
  344. OBJECT:('`',"boulder"),(06,11)
  345. OBJECT:('`',"boulder"),(07,11)
  346. OBJECT:('`',"boulder"),(21,11)
  347. OBJECT:('`',"boulder"),(21,12)
  348. OBJECT:('`',"boulder"),(13,13)
  349. OBJECT:('`',"boulder"),(14,13)
  350. OBJECT:('`',"boulder"),(15,13)
  351. OBJECT:('`',"boulder"),(14,14)
  352. # Doors
  353. DOOR:closed,(23,02)
  354. DOOR:open,(31,03)
  355. DOOR:nodoor,(03,05)
  356. DOOR:closed,(09,05)
  357. DOOR:closed,(14,05)
  358. DOOR:closed,(41,05)
  359. DOOR:open,(03,08)
  360. DOOR:nodoor,(13,08)
  361. DOOR:open,(41,08)
  362. DOOR:closed,(24,09)
  363. DOOR:closed,(31,11)
  364. DOOR:open,(11,13)
  365. DOOR:closed,(18,13)
  366. DOOR:closed,(41,13)
  367. DOOR:open,(26,14)
  368. DOOR:closed,(06,15)
  369. # Special rooms
  370. ALTAR:(24,07),noalign,sanctum
  371. REGION:(22,12,25,16),unlit,"morgue"
  372. REGION:(32,09,37,12),lit,"shop"
  373. REGION:(12,00,15,04),lit,"shop"
  374. # Some traps.
  375. TRAP:"spiked pit", random
  376. TRAP:"sleep gas", random
  377. TRAP:"anti magic", random
  378. TRAP:"fire", random
  379. TRAP:"fire", random
  380. TRAP:"fire", random
  381. TRAP:"magic", random
  382. TRAP:"magic", random
  383. # Some random objects
  384. OBJECT:random,random
  385. OBJECT:random,random
  386. OBJECT:random,random
  387. OBJECT:random,random
  388. OBJECT:random,random
  389. OBJECT:random,random
  390. OBJECT:random,random
  391. OBJECT:random,random
  392. OBJECT:random,random
  393. OBJECT:random,random
  394. # The resident nasty
  395. MONSTER:('&',"Orcus"),(33,15)
  396. # And its preferred companions
  397. MONSTER:('Z',"human zombie"),(32,15)
  398. MONSTER:(' ',"shade"),(32,14)
  399. MONSTER:(' ',"shade"),(32,16)
  400. MONSTER:('V',"vampire"),(35,16)
  401. MONSTER:('V',"vampire"),(35,14)
  402. MONSTER:('V',"vampire lord"),(36,14)
  403. MONSTER:('V',"vampire lord"),(36,15)
  404. # Randomly placed companions
  405. MONSTER:('Z',"skeleton"),random
  406. MONSTER:('Z',"skeleton"),random
  407. MONSTER:('Z',"skeleton"),random
  408. MONSTER:('Z',"skeleton"),random
  409. MONSTER:('Z',"skeleton"),random
  410. MONSTER:(' ',"shade"),random
  411. MONSTER:(' ',"shade"),random
  412. MONSTER:(' ',"shade"),random
  413. MONSTER:(' ',"shade"),random
  414. MONSTER:('Z',"giant zombie"),random
  415. MONSTER:('Z',"giant zombie"),random
  416. MONSTER:('Z',"giant zombie"),random
  417. MONSTER:('Z',"ettin zombie"),random
  418. MONSTER:('Z',"ettin zombie"),random
  419. MONSTER:('Z',"ettin zombie"),random
  420. MONSTER:('Z',"human zombie"),random
  421. MONSTER:('Z',"human zombie"),random
  422. MONSTER:('Z',"human zombie"),random
  423. MONSTER:('V',"vampire"),random
  424. MONSTER:('V',"vampire"),random
  425. MONSTER:('V',"vampire"),random
  426. MONSTER:('V',"vampire lord"),random
  427. MONSTER:('V',"vampire lord"),random
  428. # A few more for the party
  429. MONSTER:random,random
  430. MONSTER:random,random
  431. MONSTER:random,random
  432. MONSTER:random,random
  433. MONSTER:random,random
  434. #
  435. # The Asmodeus Level
  436. #
  437. MAZE:"asmodeus",random
  438. FLAGS: noteleport
  439. # First part
  440. GEOMETRY:half-left,center
  441. MAP
  442. ---------------------
  443. |.............|.....|
  444. |.............S.....|
  445. |---+------------...|
  446. |.....|.........|-+--
  447. |..---|.........|....
  448. |..|..S.........|....
  449. |..|..|.........|....
  450. |..|..|.........|-+--
  451. |..|..-----------...|
  452. |..S..........|.....|
  453. ---------------------
  454. ENDMAP
  455. STAIR:levregion(01,00,6,20),levregion(6,1,70,16),up
  456. BRANCH:levregion(01,00,6,20),levregion(6,1,70,16)
  457. TELEPORT_REGION:levregion(01,00,6,20),levregion(6,1,70,16)
  458.  
  459. # Doors
  460. DOOR:closed,(04,03)
  461. DOOR:locked,(18,04)
  462. DOOR:closed,(18,08)
  463. #
  464. STAIR:(13,07),down
  465. # Non diggable walls
  466. NON_DIGGABLE:(00,00,20,11)
  467. # Entire main area
  468. REGION:(01,01,20,10),unlit,"ordinary"
  469. # The fellow in residence
  470. MONSTER:('&',"Asmodeus"),(12,07)
  471. # Some random weapons and armor.
  472. OBJECT:'[',random
  473. OBJECT:'[',random
  474. OBJECT:')',random
  475. OBJECT:')',random
  476. OBJECT:'*',random
  477. OBJECT:'!',random
  478. OBJECT:'!',random
  479. OBJECT:'?',random
  480. OBJECT:'?',random
  481. OBJECT:'?',random
  482. # Some traps.
  483. TRAP:"spiked pit", (05,02)
  484. TRAP:"fire", (08,06)
  485. TRAP:"sleep gas", random
  486. TRAP:"anti magic", random
  487. TRAP:"fire", random
  488. TRAP:"magic", random
  489. TRAP:"magic", random
  490. # Random monsters.
  491. MONSTER:(' ',"ghost"),(11,07)
  492. MONSTER:('&',"horned devil"),(10,05)
  493. MONSTER:'L',random
  494. # Some Vampires for good measure
  495. MONSTER:'V',random
  496. MONSTER:'V',random
  497. MONSTER:'V',random
  498. # Second part
  499. GEOMETRY:half-right,center
  500. MAP
  501. ---------------------------------
  502. ................................|
  503. ................................+
  504. ................................|
  505. ---------------------------------
  506. ENDMAP
  507. MAZEWALK:(32,02),east
  508. # Non diggable walls
  509. NON_DIGGABLE:(00,00,32,04)
  510. DOOR:closed,(32,02)
  511. MONSTER:'&',random
  512. MONSTER:'&',random
  513. MONSTER:'&',random
  514. TRAP:"anti magic", random
  515. TRAP:"fire", random
  516. TRAP:"magic", random
  517.  
  518. #
  519. # The Baalzebub level
  520. #
  521. MAZE:"baalz",' '
  522. FLAGS: noteleport,corrmaze
  523. GEOMETRY:right,center
  524. MAP
  525. -------------------------------------------------
  526. |                    ---               ----      
  527. |          ----      |   ------------  |         
  528. | ------      |  --------|..........|---         
  529. | |....|  -------|...........--------------      
  530. ---....|--|..................S............|----  
  531. ....--....S..----------------|............S...|  
  532. ---....|--|..................|............|----  
  533. | |....|  -------|...........-----S--------      
  534. | ------      |  --------|..........|---         
  535. |          ----     |    ------------  |         
  536. |                   ---                ----      
  537. -------------------------------------------------
  538. ENDMAP
  539. STAIR:levregion(01,00,15,20),levregion(15,1,70,16),up
  540. BRANCH:levregion(01,00,15,20),levregion(15,1,70,16)
  541. TELEPORT_REGION:levregion(01,00,15,20),levregion(15,1,70,16)
  542. NON_DIGGABLE:(00,00,46,12)
  543. MAZEWALK:(00,06),west
  544. STAIR:(44,06),down
  545. # The fellow in residence
  546. MONSTER:('&',"Baalzebub"),(35,06)
  547. # Some random weapons and armor.
  548. OBJECT:'[',random
  549. OBJECT:'[',random
  550. OBJECT:')',random
  551. OBJECT:')',random
  552. OBJECT:'*',random
  553. OBJECT:'!',random
  554. OBJECT:'!',random
  555. OBJECT:'?',random
  556. OBJECT:'?',random
  557. OBJECT:'?',random
  558. # Some traps.
  559. TRAP:"spiked pit", random
  560. TRAP:"fire", random
  561. TRAP:"sleep gas", random
  562. TRAP:"anti magic", random
  563. TRAP:"fire", random
  564. TRAP:"magic", random
  565. TRAP:"magic", random
  566. # Random monsters.
  567. MONSTER:(' ',"ghost"),(37,07)
  568. MONSTER:('&',"horned devil"),(32,05)
  569. MONSTER:('&',"barbed devil"),(38,07)
  570. MONSTER:'L',random
  571. # Some Vampires for good measure
  572. MONSTER:'V',random
  573. MONSTER:'V',random
  574. MONSTER:'V',random
  575. #
  576. # The Sanctum Level
  577. #
  578. MAZE:"sanctum", ' '
  579. FLAGS: noteleport,hardfloor,nommap
  580. # This is outside the main map, below, so we must do it before adding
  581. # that map and anchoring coordinates to it. This extends the invisible
  582. # barrier up to the top row, which falls outside the drawn map.
  583. NON_PASSWALL:(39,00,41,00)
  584. GEOMETRY:center,center
  585. MAP
  586. ----------------------------------------------------------------------------
  587. |             --------------                                               |
  588. |             |............|             -------                           |
  589. |       -------............-----         |.....|                           |
  590. |       |......................|        --.....|            ---------      |
  591. |    ----......................---------|......----         |.......|      |
  592. |    |........---------..........|......+.........|     ------+---..|      |
  593. |  ---........|.......|..........--S----|.........|     |........|..|      |
  594. |  |..........|.......|.............|   |.........-------..----------      |
  595. |  |..........|.......|..........----   |..........|....|..|......|        |
  596. |  |..........|.......|..........|      --.......----+---S---S--..|        |
  597. |  |..........---------..........|       |.......|.............|..|        |
  598. |  ---...........................|       -----+-------S---------S---       |
  599. |    |...........................|          |...| |......|    |....|--     |
  600. |    ----.....................----          |...---....---  ---......|     |
  601. |       |.....................|             |..........|    |.....----     |
  602. |       -------...........-----             --...-------    |.....|        |
  603. |             |...........|                  |...|          |.....|        |
  604. |             -------------                  -----          -------        |
  605. ----------------------------------------------------------------------------
  606. ENDMAP
  607. REGION:(15,07,21,10),lit,"temple"
  608. ALTAR:(18,08),noalign,sanctum
  609. REGION:(41,06,48,11),unlit,"morgue",filled,irregular
  610. # Non diggable walls
  611. NON_DIGGABLE:(00,00,75,19)
  612. # Invisible barrier separating the left & right halves of the level
  613. NON_PASSWALL:(37,00,39,19)
  614. # Doors
  615. DOOR:closed,(40,06)
  616. DOOR:locked,(62,06)
  617. DOOR:closed,(46,12)
  618. DOOR:closed,(53,10)
  619. # Surround the temple with fire
  620. TRAP:"fire",(13,05)
  621. TRAP:"fire",(14,05)
  622. TRAP:"fire",(15,05)
  623. TRAP:"fire",(16,05)
  624. TRAP:"fire",(17,05)
  625. TRAP:"fire",(18,05)
  626. TRAP:"fire",(19,05)
  627. TRAP:"fire",(20,05)
  628. TRAP:"fire",(21,05)
  629. TRAP:"fire",(22,05)
  630. TRAP:"fire",(23,05)
  631. TRAP:"fire",(13,12)
  632. TRAP:"fire",(14,12)
  633. TRAP:"fire",(15,12)
  634. TRAP:"fire",(16,12)
  635. TRAP:"fire",(17,12)
  636. TRAP:"fire",(18,12)
  637. TRAP:"fire",(19,12)
  638. TRAP:"fire",(20,12)
  639. TRAP:"fire",(21,12)
  640. TRAP:"fire",(22,12)
  641. TRAP:"fire",(23,12)
  642. TRAP:"fire",(13,06)
  643. TRAP:"fire",(13,07)
  644. TRAP:"fire",(13,08)
  645. TRAP:"fire",(13,09)
  646. TRAP:"fire",(13,10)
  647. TRAP:"fire",(13,11)
  648. TRAP:"fire",(23,06)
  649. TRAP:"fire",(23,07)
  650. TRAP:"fire",(23,08)
  651. TRAP:"fire",(23,09)
  652. TRAP:"fire",(23,10)
  653. TRAP:"fire",(23,11)
  654. # Some traps.
  655. TRAP:"spiked pit", random
  656. TRAP:"fire", random
  657. TRAP:"sleep gas", random
  658. TRAP:"anti magic", random
  659. TRAP:"fire", random
  660. TRAP:"magic", random
  661. # Some random objects
  662. OBJECT:'[',random
  663. OBJECT:'[',random
  664. OBJECT:'[',random
  665. OBJECT:'[',random
  666. OBJECT:')',random
  667. OBJECT:')',random
  668. OBJECT:'*',random
  669. OBJECT:'!',random
  670. OBJECT:'!',random
  671. OBJECT:'!',random
  672. OBJECT:'!',random
  673. OBJECT:'?',random
  674. OBJECT:'?',random
  675. OBJECT:'?',random
  676. OBJECT:'?',random
  677. OBJECT:'?',random
  678. # Some monsters.
  679. MONSTER:('&',"horned devil"),(14,12),hostile
  680. MONSTER:('&',"barbed devil"),(18,08),hostile
  681. MONSTER:('&',"erinys"),(10,04),hostile
  682. MONSTER:('&',"marilith"),(07,09),hostile
  683. MONSTER:('&',"nalfeshnee"),(27,08),hostile
  684. # Moloch's horde
  685. MONSTER:('@',"aligned priest"),(20,03),noalign,hostile
  686. MONSTER:('@',"aligned priest"),(15,04),noalign,hostile
  687. MONSTER:('@',"aligned priest"),(11,05),noalign,hostile
  688. MONSTER:('@',"aligned priest"),(11,07),noalign,hostile
  689. MONSTER:('@',"aligned priest"),(11,09),noalign,hostile
  690. MONSTER:('@',"aligned priest"),(11,12),noalign,hostile
  691. MONSTER:('@',"aligned priest"),(15,13),noalign,hostile
  692. MONSTER:('@',"aligned priest"),(17,13),noalign,hostile
  693. MONSTER:('@',"aligned priest"),(21,13),noalign,hostile
  694. # A few nasties
  695. MONSTER:'L',random
  696. MONSTER:'L',random
  697. MONSTER:'V',random
  698. MONSTER:'V',random
  699. MONSTER:'V',random
  700. STAIR:(63,15),up
  701. # Teleporting to this level is allowed after the invocation creates its
  702. # entrance.  Force arrival in that case to be on rightmost third of level.
  703. TELEPORT_REGION:levregion(54,1,79,18),(0,0,0,0),down