Files
nethack/dat/gehennom.des
PatR bde9fdd48b revamp baalz level
Quite a bit of special case code for something so inconsequential.
Tweak the baalz level layout a little to make it be a bit more
interesting, and perform custom wallification on it so that the
beetle layout becomes clearly visible.  It looks great with
DECgraphics (and presumably IBMgraphics).  It's recognizeable but
not as interesting with ordinary ascii because corner walls use
'-' or '|' so don't join up nicely.  It looks a little weird
with tiles; the square aspect ratio of individual tiles makes it
end up being very elongated compared to character cell map it was
designed for.

As far as the level layout goes, the pair of secret doors into
Baalzebub's chamber have been give a random alternative.  The two
right-most accessible columns were diggable--I don't know whether
that was intentional; it's been reduced to one right-most column.
The middle pair of legs were asymmetrical; this fixes that.  The
beetle also now has eyes and an entry door in its mouth.
2016-04-04 13:59:23 -07:00

714 lines
21 KiB
Plaintext

# NetHack 3.6 gehennom.des $NHDT-Date: 1432512783 2015/05/25 00:13:03 $ $NHDT-Branch: master $:$NHDT-Revision: 1.13 $
# Copyright (c) 1989 by Jean-Christophe Collet
# Copyright (c) 1992 by M. Stephenson and Izchak Miller
# NetHack may be freely redistributed. See license for details.
#
MAZE: "valley", ' '
FLAGS: noteleport,hardfloor,nommap
GEOMETRY:center,center
MAP
----------------------------------------------------------------------------
|...S.|..|.....| |.....-| |................| |...............| |...|
|---|.|.--.---.| |......--- ----..........-----.-----....---........---.-.|
| |.|.|..| |.| --........| |.............| |.......---| |-...........--|
| |...S..| |.| |.......-----.......------| |--------..---......------- |
|----------- |.| |-......| |....|...-- |...-----................---- |
|.....S....---.| |.......| |....|...| |..............----------- |
|.....|.|......| |.....--- |......--- |....---.......| |
|.....|.|------| |....-- --....-- |-------- ----....--------------- |
|.....|--......---BBB-| |...-- |.......| |..................| |
|..........||........-| --...| |.......| |...||.............| |
|.....|...-||-........------....| |.......---- |...||.............-- |
|.....|--......---...........--------..........| |.......---------...-- |
|.....| |------| |--.......--| |..B......----- -----....| |.| |....--- |
|.....| |......--| ------..| |----..B......| |.--------.-- |-.....---|
|------ |........| |.|....| |.....----BBBB---------...........---.........|
| |........| |...|..| |.....| |-.............--------...........---|
| --.....-----------.| |....-----.....---------- |.........---- |
| |..|..B...........| |.|..........|.| |.|........| |
----------------------------------------------------------------------------
ENDMAP
# Make the path somewhat unpredictable
# If you get "lucky", you may have to go through all three graveyards.
IF [50%] {
TERRAIN:line (50,8),(53,8), '-'
TERRAIN:line (40,8),(43,8), 'B'
}
IF [50%] {
TERRAIN:(27,12),'|'
TERRAIN:line (27,3),(29,3), 'B'
TERRAIN:(28,2), '-'
}
IF [50%] {
TERRAIN:line (16,10),(16,11),'|'
TERRAIN:line (9,13),(14,13), 'B'
}
# Dungeon Description
# The shrine to Moloch.
REGION:(01,06,05,14),lit,"temple"
# The Morgues
REGION:(19,01,24,08),unlit,"morgue",filled,irregular
REGION:(09,14,16,18),unlit,"morgue",filled,irregular
REGION:(37,09,43,14),unlit,"morgue",filled,irregular
# Stairs
STAIR:(01,01),down
# Branch location
BRANCH:(66,17,66,17),(0,0,0,0)
TELEPORT_REGION:(58,09,72,18),(0,0,0,0),down
# Secret Doors
DOOR:locked,(04,01)
DOOR:locked,(08,04)
DOOR:locked,(06,06)
# The altar of Moloch.
ALTAR:(03,10),noalign,shrine
# Non diggable walls - everywhere!
NON_DIGGABLE:(00,00,75,19)
# Objects
# **LOTS** of dead bodies (all human).
# note: no priest(esse)s or monks - maybe Moloch has a *special*
# fate reserved for members of *those* classes.
#
OBJECT:('%',"corpse"),random,montype:"archeologist"
OBJECT:('%',"corpse"),random,montype:"archeologist"
OBJECT:('%',"corpse"),random,montype:"barbarian"
OBJECT:('%',"corpse"),random,montype:"barbarian"
OBJECT:('%',"corpse"),random,montype:"caveman"
OBJECT:('%',"corpse"),random,montype:"cavewoman"
OBJECT:('%',"corpse"),random,montype:"healer"
OBJECT:('%',"corpse"),random,montype:"healer"
OBJECT:('%',"corpse"),random,montype:"knight"
OBJECT:('%',"corpse"),random,montype:"knight"
OBJECT:('%',"corpse"),random,montype:"ranger"
OBJECT:('%',"corpse"),random,montype:"ranger"
OBJECT:('%',"corpse"),random,montype:"rogue"
OBJECT:('%',"corpse"),random,montype:"rogue"
OBJECT:('%',"corpse"),random,montype:"samurai"
OBJECT:('%',"corpse"),random,montype:"samurai"
OBJECT:('%',"corpse"),random,montype:"tourist"
OBJECT:('%',"corpse"),random,montype:"tourist"
OBJECT:('%',"corpse"),random,montype:"valkyrie"
OBJECT:('%',"corpse"),random,montype:"valkyrie"
OBJECT:('%',"corpse"),random,montype:"wizard"
OBJECT:('%',"corpse"),random,montype:"wizard"
#
# Some random weapons and armor.
#
OBJECT:'[',random
OBJECT:'[',random
OBJECT:'[',random
OBJECT:'[',random
OBJECT:')',random
OBJECT:')',random
OBJECT:')',random
OBJECT:')',random
#
# Some random loot.
#
OBJECT:('*',"ruby"),random
OBJECT:'*',random
OBJECT:'*',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'/',random
OBJECT:'/',random
OBJECT:'=',random
OBJECT:'=',random
OBJECT:'+',random
OBJECT:'+',random
OBJECT:'(',random
OBJECT:'(',random
OBJECT:'(',random
# (Not so) Random traps.
TRAP:"spiked pit", (05,02)
TRAP:"spiked pit", (14,05)
TRAP:"sleep gas", (03,01)
TRAP:"board", (21,12)
TRAP:"board", random
TRAP:"dart", (60,01)
TRAP:"dart", (26,17)
TRAP:"anti magic", random
TRAP:"anti magic", random
TRAP:"magic", random
TRAP:"magic", random
# Random monsters.
# The ghosts.
MONSTER:(' ',"ghost"),random
MONSTER:(' ',"ghost"),random
MONSTER:(' ',"ghost"),random
MONSTER:(' ',"ghost"),random
MONSTER:(' ',"ghost"),random
MONSTER:(' ',"ghost"),random
# Add a few bats for atmosphere.
MONSTER:('B',"vampire bat"),random
MONSTER:('B',"vampire bat"),random
MONSTER:('B',"vampire bat"),random
# And a lich for good measure.
MONSTER:'L',random
# Some undead nasties for good measure
MONSTER:'V',random
MONSTER:'V',random
MONSTER:'V',random
MONSTER:'Z',random
MONSTER:'Z',random
MONSTER:'Z',random
MONSTER:'Z',random
MONSTER:'M',random
MONSTER:'M',random
MONSTER:'M',random
MONSTER:'M',random
#
# The Juiblex level
#
MAZE:"juiblex",' '
FLAGS:noteleport,shortsighted
INIT_MAP:mines,'.','}',true,true,unlit,false
# guarantee at least one open spot to ensure successful stair placement
GEOMETRY:left,bottom
MAP
xxxxxxxx
xx...xxx
xxx...xx
xxxx.xxx
xxxxxxxx
ENDMAP
OBJECT:('`',"boulder"),random
GEOMETRY:right,top
MAP
xxxxxxxx
xxxx.xxx
xxx...xx
xx...xxx
xxxxxxxx
ENDMAP
OBJECT:('`',"boulder"),random
# lair
GEOMETRY:center,center
MAP
xx}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}xx
x}}}.}}}}}..}}}..}}}}}..}}}..}}}}}..}}}..}}}}}.}}}x
}}}...}}..}}.}.}}.}}.}}}...}}}.}}}..}}}..}}}}...}}}
x}}}.}}.}}}.}}.}}.}}...}}.}}.....}}.....}....}.}}}x
xx}}}..}}}.}}.}}.}}..}}.....}}.}}}.}}.}}}}}}}}}}}xx
x}}}..}}}}}.}}.}}.}}...}}}}}.....}}.}}}}}}.....}}}x
}}}..}}...}}..}}.}}}.}}}...}}}.}}}.}.}}}}..P.P..}}}
}}.}}}}...}}}}}.}...}}}..P..}}}.}.}}}.}}}}.....}}}}
}.}}}}.}}.}..}.}}}}}}}..P.P..}}}.}}}.}}..}}...}}}}x
x}}}}.}}}}....}}}}}.}}}..P..}}}.}}}}.}}..}}...}}}.}
}}}}..}}.}}..}}}}...}}}}...}}}.}}}}}.}}}}.}}}}}}.}}
}}}...}}...}}}..}}}}}}}}}}}}.....}}}}.}}...}..}.}}}
x}}}..}}.}}}}....}}..}}}..}}.....}}}}.}}}.}....}}}x
xx}}}.}}}}..}}..}}..}}..}}..}}.}}}..}.}..}}}..}}}xx
x}}}.}}}}....}}}}..}}....}}}}}}}...}}}....}}}}.}}}x
}}}...}}}....}}}..}}}....}}}..}}...}}}....}}}...}}}
x}}}.}}}}}..}}}..}}}}}..}}}..}}}}}..}}}..}}}}}.}}}x
xx}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}x}}}}}xx
ENDMAP
# Random registers
$monster = monster: { 'j','b','P','F' }
SHUFFLE: $monster
$place = { (04,02),(46,02),(04,15),(46,15) }
SHUFFLE: $place
# Dungeon description
REGION:(00,00,50,17),unlit,"swamp"
MAZEWALK:(00,09),west
MAZEWALK:(50,08),east
STAIR:levregion(01,00,11,20),(0,0,50,17),down
STAIR:levregion(69,00,79,20),(0,0,50,17),up
BRANCH:levregion(01,00,11,20),(0,0,50,17)
TELEPORT_REGION:levregion(01,00,11,20),(0,0,50,17),up
TELEPORT_REGION:levregion(69,00,79,20),(0,0,50,17),down
FOUNTAIN:$place[0]
MONSTER:('m',"giant mimic"),$place[1],m_feature "fountain"
MONSTER:('m',"giant mimic"),$place[2],m_feature "fountain"
MONSTER:('m',"giant mimic"),$place[3],m_feature "fountain"
# The demon of the swamp
MONSTER:('&',"Juiblex"),(25,08)
# And a couple demons
MONSTER:('i',"lemure"),(43,08)
MONSTER:('i',"lemure"),(44,08)
MONSTER:('i',"lemure"),(45,08)
# Some liquids and gems
OBJECT:'*',(43,06)
OBJECT:'*',(45,06)
OBJECT:'!',(43,09)
OBJECT:'!',(44,09)
OBJECT:'!',(45,09)
# And lots of blobby monsters
MONSTER:$monster[0],(25,06)
MONSTER:$monster[1],(24,07)
MONSTER:$monster[2],(26,07)
MONSTER:$monster[3],(23,08)
MONSTER:$monster[3],(27,08)
MONSTER:$monster[2],(24,09)
MONSTER:$monster[1],(26,09)
MONSTER:$monster[0],(25,10)
MONSTER:'j',random
MONSTER:'j',random
MONSTER:'j',random
MONSTER:'j',random
MONSTER:'P',random
MONSTER:'P',random
MONSTER:'P',random
MONSTER:'P',random
MONSTER:'b',random
MONSTER:'b',random
MONSTER:'b',random
MONSTER:'F',random
MONSTER:'F',random
MONSTER:'F',random
MONSTER:'m',random
MONSTER:'m',random
MONSTER:(';',"jellyfish"),random
MONSTER:(';',"jellyfish"),random
# Some random objects
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'%',random
OBJECT:'%',random
OBJECT:'%',random
OBJECT:('`',"boulder"),random
# Some traps
TRAP:"sleep gas",random
TRAP:"sleep gas",random
TRAP:"anti magic",random
TRAP:"anti magic",random
TRAP:"magic",random
TRAP:"magic",random
#
# The Orcus Level
#
MAZE:"orcus",random
FLAGS: noteleport,shortsighted
GEOMETRY:right,center
# A ghost town
MAP
.|....|....|....|..............|....|........
.|....|....|....|..............|....|........
.|....|....|....|--...-+-------|.............
.|....|....|....|..............+.............
.|.........|....|..............|....|........
.--+-...-+----+--....-------...--------.-+---
.....................|.....|.................
.....................|.....|.................
.--+----....-+---....|.....|...----------+---
.|....|....|....|....---+---...|......|......
.|.........|....|..............|......|......
.----...---------.....-----....+......|......
.|........................|....|......|......
.----------+-...--+--|....|....----------+---
.|....|..............|....+....|.............
.|....+.......|......|....|....|.............
.|....|.......|......|....|....|.............
ENDMAP
MAZEWALK:(00,06),west
# Entire main area
REGION:(01,00,44,16),unlit,"ordinary"
STAIR:(33,15),down
STAIR:levregion(01,00,12,20),levregion(20,01,70,20),up
BRANCH:levregion(01,00,12,20),levregion(20,01,70,20)
TELEPORT_REGION:levregion(01,00,12,20),levregion(20,01,70,20)
# Wall "ruins"
OBJECT:('`',"boulder"),(19,02)
OBJECT:('`',"boulder"),(20,02)
OBJECT:('`',"boulder"),(21,02)
OBJECT:('`',"boulder"),(36,02)
OBJECT:('`',"boulder"),(36,03)
OBJECT:('`',"boulder"),(06,04)
OBJECT:('`',"boulder"),(05,05)
OBJECT:('`',"boulder"),(06,05)
OBJECT:('`',"boulder"),(07,05)
OBJECT:('`',"boulder"),(39,05)
OBJECT:('`',"boulder"),(08,08)
OBJECT:('`',"boulder"),(09,08)
OBJECT:('`',"boulder"),(10,08)
OBJECT:('`',"boulder"),(11,08)
OBJECT:('`',"boulder"),(06,10)
OBJECT:('`',"boulder"),(05,11)
OBJECT:('`',"boulder"),(06,11)
OBJECT:('`',"boulder"),(07,11)
OBJECT:('`',"boulder"),(21,11)
OBJECT:('`',"boulder"),(21,12)
OBJECT:('`',"boulder"),(13,13)
OBJECT:('`',"boulder"),(14,13)
OBJECT:('`',"boulder"),(15,13)
OBJECT:('`',"boulder"),(14,14)
# Doors
DOOR:closed,(23,02)
DOOR:open,(31,03)
DOOR:nodoor,(03,05)
DOOR:closed,(09,05)
DOOR:closed,(14,05)
DOOR:closed,(41,05)
DOOR:open,(03,08)
DOOR:nodoor,(13,08)
DOOR:open,(41,08)
DOOR:closed,(24,09)
DOOR:closed,(31,11)
DOOR:open,(11,13)
DOOR:closed,(18,13)
DOOR:closed,(41,13)
DOOR:open,(26,14)
DOOR:closed,(06,15)
# Special rooms
ALTAR:(24,07),noalign,sanctum
REGION:(22,12,25,16),unlit,"morgue"
REGION:(32,09,37,12),lit,"shop"
REGION:(12,00,15,04),lit,"shop"
# Some traps.
TRAP:"spiked pit", random
TRAP:"sleep gas", random
TRAP:"anti magic", random
TRAP:"fire", random
TRAP:"fire", random
TRAP:"fire", random
TRAP:"magic", random
TRAP:"magic", random
# Some random objects
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
OBJECT:random,random
# The resident nasty
MONSTER:('&',"Orcus"),(33,15)
# And its preferred companions
MONSTER:('Z',"human zombie"),(32,15)
MONSTER:(' ',"shade"),(32,14)
MONSTER:(' ',"shade"),(32,16)
MONSTER:('V',"vampire"),(35,16)
MONSTER:('V',"vampire"),(35,14)
MONSTER:('V',"vampire lord"),(36,14)
MONSTER:('V',"vampire lord"),(36,15)
# Randomly placed companions
MONSTER:('Z',"skeleton"),random
MONSTER:('Z',"skeleton"),random
MONSTER:('Z',"skeleton"),random
MONSTER:('Z',"skeleton"),random
MONSTER:('Z',"skeleton"),random
MONSTER:(' ',"shade"),random
MONSTER:(' ',"shade"),random
MONSTER:(' ',"shade"),random
MONSTER:(' ',"shade"),random
MONSTER:('Z',"giant zombie"),random
MONSTER:('Z',"giant zombie"),random
MONSTER:('Z',"giant zombie"),random
MONSTER:('Z',"ettin zombie"),random
MONSTER:('Z',"ettin zombie"),random
MONSTER:('Z',"ettin zombie"),random
MONSTER:('Z',"human zombie"),random
MONSTER:('Z',"human zombie"),random
MONSTER:('Z',"human zombie"),random
MONSTER:('V',"vampire"),random
MONSTER:('V',"vampire"),random
MONSTER:('V',"vampire"),random
MONSTER:('V',"vampire lord"),random
MONSTER:('V',"vampire lord"),random
# A few more for the party
MONSTER:random,random
MONSTER:random,random
MONSTER:random,random
MONSTER:random,random
MONSTER:random,random
#
# The Asmodeus Level
#
MAZE:"asmodeus",random
FLAGS: noteleport
# First part
GEOMETRY:half-left,center
MAP
---------------------
|.............|.....|
|.............S.....|
|---+------------...|
|.....|.........|-+--
|..---|.........|....
|..|..S.........|....
|..|..|.........|....
|..|..|.........|-+--
|..|..-----------...|
|..S..........|.....|
---------------------
ENDMAP
STAIR:levregion(01,00,6,20),levregion(6,1,70,16),up
BRANCH:levregion(01,00,6,20),levregion(6,1,70,16)
TELEPORT_REGION:levregion(01,00,6,20),levregion(6,1,70,16)
# Doors
DOOR:closed,(04,03)
DOOR:locked,(18,04)
DOOR:closed,(18,08)
#
STAIR:(13,07),down
# Non diggable walls
NON_DIGGABLE:(00,00,20,11)
# Entire main area
REGION:(01,01,20,10),unlit,"ordinary"
# The fellow in residence
MONSTER:('&',"Asmodeus"),(12,07)
# Some random weapons and armor.
OBJECT:'[',random
OBJECT:'[',random
OBJECT:')',random
OBJECT:')',random
OBJECT:'*',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'?',random
# Some traps.
TRAP:"spiked pit", (05,02)
TRAP:"fire", (08,06)
TRAP:"sleep gas", random
TRAP:"anti magic", random
TRAP:"fire", random
TRAP:"magic", random
TRAP:"magic", random
# Random monsters.
MONSTER:(' ',"ghost"),(11,07)
MONSTER:('&',"horned devil"),(10,05)
MONSTER:'L',random
# Some Vampires for good measure
MONSTER:'V',random
MONSTER:'V',random
MONSTER:'V',random
# Second part
GEOMETRY:half-right,center
MAP
---------------------------------
................................|
................................+
................................|
---------------------------------
ENDMAP
MAZEWALK:(32,02),east
# Non diggable walls
NON_DIGGABLE:(00,00,32,04)
DOOR:closed,(32,02)
MONSTER:'&',random
MONSTER:'&',random
MONSTER:'&',random
TRAP:"anti magic", random
TRAP:"fire", random
TRAP:"magic", random
#
# The Baalzebub level
#
MAZE:"baalz",' '
FLAGS: noteleport,corrmaze
GEOMETRY:right,center
# the two pools are fakes used to mark spots which need special wall fixups
# the two iron bars are eyes and spots to their left will be made diggable
MAP
-------------------------------------------------
| ---- ----
| ---- | ----------- |
| ------ | ---------|.........|--P
| F....| -------|...........--------------
---....|--|..................S............|----
+...--....S..----------------|............S...|
---....|--|..................|............|----
| F....| -------|...........-----S--------
| ------ | ---------|.........|--P
| ---- | ----------- |
| ---- ----
-------------------------------------------------
ENDMAP
STAIR:levregion(01,00,15,20),levregion(15,1,70,16),up
BRANCH:levregion(01,00,15,20),levregion(15,1,70,16)
TELEPORT_REGION:levregion(01,00,15,20),levregion(15,1,70,16)
# this actually leaves the farthest right column diggable
NON_DIGGABLE:(00,00,47,12)
MAZEWALK:(00,06),west
STAIR:(44,06),down
DOOR:locked,(00,06)
IF [50%] {
TERRAIN:(34,08),'-'
TERRAIN:(34,04),'S'
TERRAIN:(29,05),'|'
TERRAIN:(29,07),'S'
}
# The fellow in residence
MONSTER:('&',"Baalzebub"),(35,06)
# Some random weapons and armor.
OBJECT:'[',random
OBJECT:'[',random
OBJECT:')',random
OBJECT:')',random
OBJECT:'*',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'?',random
# Some traps.
TRAP:"spiked pit", random
TRAP:"fire", random
TRAP:"sleep gas", random
TRAP:"anti magic", random
TRAP:"fire", random
TRAP:"magic", random
TRAP:"magic", random
# Random monsters.
MONSTER:(' ',"ghost"),(37,07)
MONSTER:('&',"horned devil"),(32,05)
MONSTER:('&',"barbed devil"),(38,07)
MONSTER:'L',random
# Some Vampires for good measure
MONSTER:'V',random
MONSTER:'V',random
MONSTER:'V',random
#
# The Sanctum Level
#
MAZE:"sanctum", ' '
FLAGS: noteleport,hardfloor,nommap
# This is outside the main map, below, so we must do it before adding
# that map and anchoring coordinates to it. This extends the invisible
# barrier up to the top row, which falls outside the drawn map.
NON_PASSWALL:(39,00,41,00)
GEOMETRY:center,center
MAP
----------------------------------------------------------------------------
| -------------- |
| |............| ------- |
| -------............----- |.....| |
| |......................| --.....| --------- |
| ----......................---------|......---- |.......| |
| |........---------..........|......+.........| ------+---..| |
| ---........|.......|..........--S----|.........| |........|..| |
| |..........|.......|.............| |.........-------..---------- |
| |..........|.......|..........---- |..........|....|..|......| |
| |..........|.......|..........| --.......----+---S---S--..| |
| |..........---------..........| |.......|.............|..| |
| ---...........................| -----+-------S---------S--- |
| |...........................| |...| |......| |....|-- |
| ----.....................---- |...---....--- ---......| |
| |.....................| |..........| |.....---- |
| -------...........----- --...------- |.....| |
| |...........| |...| |.....| |
| ------------- ----- ------- |
----------------------------------------------------------------------------
ENDMAP
REGION:(15,07,21,10),lit,"temple"
ALTAR:(18,08),noalign,sanctum
REGION:(41,06,48,11),unlit,"morgue",filled,irregular
# Non diggable walls
NON_DIGGABLE:(00,00,75,19)
# Invisible barrier separating the left & right halves of the level
NON_PASSWALL:(37,00,39,19)
# Doors
DOOR:closed,(40,06)
DOOR:locked,(62,06)
DOOR:closed,(46,12)
DOOR:closed,(53,10)
# Surround the temple with fire
TRAP:"fire",(13,05)
TRAP:"fire",(14,05)
TRAP:"fire",(15,05)
TRAP:"fire",(16,05)
TRAP:"fire",(17,05)
TRAP:"fire",(18,05)
TRAP:"fire",(19,05)
TRAP:"fire",(20,05)
TRAP:"fire",(21,05)
TRAP:"fire",(22,05)
TRAP:"fire",(23,05)
TRAP:"fire",(13,12)
TRAP:"fire",(14,12)
TRAP:"fire",(15,12)
TRAP:"fire",(16,12)
TRAP:"fire",(17,12)
TRAP:"fire",(18,12)
TRAP:"fire",(19,12)
TRAP:"fire",(20,12)
TRAP:"fire",(21,12)
TRAP:"fire",(22,12)
TRAP:"fire",(23,12)
TRAP:"fire",(13,06)
TRAP:"fire",(13,07)
TRAP:"fire",(13,08)
TRAP:"fire",(13,09)
TRAP:"fire",(13,10)
TRAP:"fire",(13,11)
TRAP:"fire",(23,06)
TRAP:"fire",(23,07)
TRAP:"fire",(23,08)
TRAP:"fire",(23,09)
TRAP:"fire",(23,10)
TRAP:"fire",(23,11)
# Some traps.
TRAP:"spiked pit", random
TRAP:"fire", random
TRAP:"sleep gas", random
TRAP:"anti magic", random
TRAP:"fire", random
TRAP:"magic", random
# Some random objects
OBJECT:'[',random
OBJECT:'[',random
OBJECT:'[',random
OBJECT:'[',random
OBJECT:')',random
OBJECT:')',random
OBJECT:'*',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'!',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'?',random
OBJECT:'?',random
# Some monsters.
MONSTER:('&',"horned devil"),(14,12),hostile
MONSTER:('&',"barbed devil"),(18,08),hostile
MONSTER:('&',"erinys"),(10,04),hostile
MONSTER:('&',"marilith"),(07,09),hostile
MONSTER:('&',"nalfeshnee"),(27,08),hostile
# Moloch's horde
MONSTER:('@',"aligned priest"),(20,03),noalign,hostile
MONSTER:('@',"aligned priest"),(15,04),noalign,hostile
MONSTER:('@',"aligned priest"),(11,05),noalign,hostile
MONSTER:('@',"aligned priest"),(11,07),noalign,hostile
MONSTER:('@',"aligned priest"),(11,09),noalign,hostile
MONSTER:('@',"aligned priest"),(11,12),noalign,hostile
MONSTER:('@',"aligned priest"),(15,13),noalign,hostile
MONSTER:('@',"aligned priest"),(17,13),noalign,hostile
MONSTER:('@',"aligned priest"),(21,13),noalign,hostile
# A few nasties
MONSTER:'L',random
MONSTER:'L',random
MONSTER:'V',random
MONSTER:'V',random
MONSTER:'V',random
STAIR:(63,15),up
# Teleporting to this level is allowed after the invocation creates its
# entrance. Force arrival in that case to be on rightmost third of level.
TELEPORT_REGION:levregion(54,1,79,18),(0,0,0,0),down