Source:NetHack 3.6.1/dat/mines.des

From NetHackWiki
(Redirected from Source:Mines.des)
Jump to navigation Jump to search

Below is the full text to mines.des from the source code of NetHack 3.6.1. To link to a particular line, write [[Source:NetHack 3.6.1/dat/mines.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.

 # NetHack 3.6	mines.des	$NHDT-Date: 1432512783 2015/05/25 00:13:03 $  $NHDT-Branch: master $:$NHDT-Revision: 1.25 $
 #	Copyright (c) 1989-95 by Jean-Christophe Collet
 #	Copyright (c) 1991-95 by M. Stephenson
 # NetHack may be freely redistributed.  See license for details.
 #
 
 #	The "fill" level for the mines.
 #
 #	This level is used to fill out any levels not occupied by
 #	specific levels as defined below.
 #
 MAZE: "minefill" , ' '
 INIT_MAP: mines, '.' , ' ' , true , true , random , true
 NOMAP
 #
 STAIR: random, up
 STAIR: random, down
 #
 OBJECT: '*', random
 OBJECT: '*', random
 OBJECT: '*', random
 OBJECT: '(', random
 OBJECT: random, random
 OBJECT: random, random
 OBJECT: random, random
 #
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome lord"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: 'G', random
 MONSTER: 'G', random
 MONSTER: 'h', random
 #
 TRAP: random, random
 TRAP: random, random
 TRAP: random, random
 TRAP: random, random
 TRAP: random, random
 TRAP: random, random
 
 
 # A tragic accident has occurred in Frontier Town....
 # 
 # Minetown variant 1
 # Orcish Town - a variant of Frontier Town that has been
 # overrun by orcs.  Note the barricades (iron bars).
 #
 LEVEL: "minetn-1"
 FLAGS:mazelevel
 INIT_MAP:mines,'.',' ',true,true,random,true
 GEOMETRY:center,center
 MAP
 .....................................
 .----------------F------------------.
 .|.................................|.
 .|.-------------......------------.|.
 .|.|...|...|...|......|..|...|...|.|.
 .F.|...|...|...|......|..|...|...|.|.
 .|.|...|...|...|......|..|...|...|.F.
 .|.|...|...|----......------------.|.
 .|.---------.......................|.
 .|.................................|.
 .|.---------.....--...--...........|.
 .|.|...|...|----.|.....|.---------.|.
 .|.|...|...|...|.|.....|.|..|....|.|.
 .|.|...|...|...|.|.....|.|..|....|.|.
 .|.|...|...|...|.|.....|.|..|....|.|.
 .|.-------------.-------.---------.|.
 .|.................................F.
 .-----------F------------F----------.
 .....................................
 ENDMAP
 
 # Don't let the player fall into his likely death
 TELEPORT_REGION:levregion(01,01,20,19),levregion(20,00,70,19)
 REGION:(00,00,36,16),lit,"ordinary"
 STAIR:levregion(01,03,20,19),(00,00,36,15),up
 STAIR:levregion(61,03,75,19),(00,00,36,15),down
 
 # shame we can't make polluted fountains
 FOUNTAIN:(16,09)
 FOUNTAIN:(25,09)
 
 # the altar's defiled; useful for BUC but never coaligned
 ALTAR:(20,13),noalign,shrine
 
 # set up the shop doors; could be broken down
 DOOR:random,(5,8)
 DOOR:random,(9,8)
 DOOR:random,(13,7)
 DOOR:random,(22,5)
 DOOR:random,(27,7)
 DOOR:random,(31,7)
 DOOR:random,(5,10)
 DOOR:random,(9,10)
 DOOR:random,(15,13)
 DOOR:random,(25,13)
 DOOR:random,(31,11)
 
 # knock a few holes in the shop interior walls
 REPLACE_TERRAIN:(07,04,11,06),'|','.',18%
 REPLACE_TERRAIN:(25,04,29,06),'|','.',18%
 REPLACE_TERRAIN:(07,12,11,14),'|','.',18%
 REPLACE_TERRAIN:(28,12,28,14),'|','.',33%
 
 # One spot each in most shops...
 $place = { (05,04),(09,05),(13,04),(26,04),(31,05),(30,14),(05,14),(10,13),(26,14),(27,13) }
 SHUFFLE:$place
 
 # scatter some bodies
 OBJECT:('%',"corpse"),(20,12),montype:"aligned priest"
 OBJECT:('%',"corpse"),$place[0],montype:"shopkeeper"
 OBJECT:('%',"corpse"),$place[1],montype:"shopkeeper"
 OBJECT:('%',"corpse"),$place[2],montype:"shopkeeper"
 OBJECT:('%',"corpse"),$place[3],montype:"shopkeeper"
 OBJECT:('%',"corpse"),$place[4],montype:"shopkeeper"
 OBJECT:('%',"corpse"),random,montype:"watchman"
 OBJECT:('%',"corpse"),random,montype:"watchman"
 OBJECT:('%',"corpse"),random,montype:"watchman"
 OBJECT:('%',"corpse"),random,montype:"watchman"
 OBJECT:('%',"corpse"),random,montype:"watch captain"
 
 # Rubble!
 LOOP [9 + 2d5] {
   [90%]: OBJECT:('`',"boulder"),random
   OBJECT:('*',"rock"),random
 }
 
 # Guarantee 7 candles since we won't have Izchak available
 OBJECT:('(',"wax candle"),$place[0],quantity:1d2
 OBJECT:('(',"wax candle"),$place[1],quantity:2d2
 OBJECT:('(',"wax candle"),$place[2],quantity:1d2
 OBJECT:('(',"tallow candle"),$place[3],quantity:1d3
 OBJECT:('(',"tallow candle"),$place[2],quantity:1d2
 OBJECT:('(',"tallow candle"),$place[0],quantity:1d2
 
 # go ahead and leave a lamp next to one corpse to be suggestive
 # and some empty wands...
 OBJECT:('(',"oil lamp"),$place[2]
 OBJECT:('/',"striking"),$place[1],uncursed,0
 OBJECT:('/',"striking"),$place[3],uncursed,0
 OBJECT:('/',"striking"),$place[4],uncursed,0
 OBJECT:('/',"magic missile"),$place[4],uncursed,0
 OBJECT:('/',"magic missile"),$place[0],uncursed,0
 
 # the Orcish Army
 
 $inside = selection: floodfill(18,8)
 $near_temple = selection: filter(fillrect(17,8, 23,14), $inside)
 
 LOOP [5 + 1d10] {
     IF [50%] {
         MONSTER: ('o', "orc-captain"), rndcoord($inside), hostile
     } ELSE {
         IF [80%] {
             MONSTER: ('o', "Uruk-hai"), rndcoord($inside), hostile
         } ELSE {
             MONSTER: ('o', "Mordor orc"), rndcoord($inside), hostile
         }
     }
 }
 # shamans can be hanging out in/near the temple
 LOOP [2d3] {
   MONSTER: ('o', "orc shaman"), rndcoord($near_temple), hostile
 }
 # these are not such a big deal
 # to run into outside the bars
 LOOP [9 + 2d5] {
     IF [90%] {
         MONSTER: ('o', "hill orc"), random, hostile
     } ELSE {
         MONSTER: ('o', "goblin"), random, hostile
     }
 }
 
 # Hack to force full-level wallification
 NOMAP
 WALLIFY
 
 
 # Minetown variant 2
 # "Town Square"
 #
 LEVEL: "minetn-2"
 ROOM: "ordinary" , lit, (3,3), (center,center), (31,15) {
 FOUNTAIN: (17, 5)
 FOUNTAIN: (13, 8)
 
 [75%]: SUBROOM: "ordinary", random, (2,0), (2,2) {
   ROOMDOOR: false, closed, west, random
 }
 
 [75%]: SUBROOM: "ordinary", unlit, (5,0), (2,2) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (8,0), (2,2) {
   ROOMDOOR: false, closed, east, random
 }
 
 [75%]: SUBROOM: "ordinary", lit, (16,0), (2,2) {
   ROOMDOOR: false, closed, west, random
 }
 
 [75%]: SUBROOM: "ordinary", unlit, (19,0), (2,2) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (22,0), (2,2) {
   ROOMDOOR: false, locked, south, random
   MONSTER: ('G', "gnome"), random
 }
 
 [75%]: SUBROOM: "ordinary", unlit, (25,0), (2,2) {
   ROOMDOOR: false, closed, east, random
 }
 
 [75%]: SUBROOM: "ordinary", lit, (2,5), (2,2) {
   ROOMDOOR: false, closed, north, random
 }
 
 [75%]: SUBROOM: "ordinary", lit, (5,5), (2,2) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (8,5), (2,2) {
   ROOMDOOR: false, locked, north, random
   MONSTER: ('G', "gnome"), random
 }
 
 SUBROOM: "shop" [90%] , lit, (2,10), (4,3) {
   ROOMDOOR: false, closed, west, random
 }
 
 SUBROOM: "tool shop" [90%], lit, (23,10), (4,3) {
   ROOMDOOR: false, closed, east, random
 }
 
 SUBROOM: "food shop" [90%], lit, (24,5), (3,4) {
   ROOMDOOR: false, closed, north, random
 }
 
 SUBROOM: "candle shop", lit, (11,10), (4,3) {
   ROOMDOOR: false, closed, east, random
 }
 
 [75%]: SUBROOM: "ordinary", unlit, (7,10), (3,3) {
   ROOMDOOR: false, locked, north, random
   MONSTER: ('G', "gnome"), random
 }
 
 SUBROOM: "temple", lit, (19,5), (4,4) {
   ROOMDOOR: false, closed, north, random
   ALTAR:(02,02),align[0],shrine
   MONSTER: ('G', "gnomish wizard"), random
   MONSTER: ('G', "gnomish wizard"), random
 }
 
 [75%]: SUBROOM: "ordinary", lit, (18,10), (4,3) {
   ROOMDOOR: false, locked, west, random
   MONSTER: ('G', "gnome lord"), random
 }
 
 # The Town Watch
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, up
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, down
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
   MONSTER: ('G', "gnome"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   MONSTER: ('h', "dwarf"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
 }
 
 RANDOM_CORRIDORS
 
 
 # Minetown variant 3 by Kelly Bailey
 # "Alley Town"
 #
 LEVEL: "minetn-3"
 ROOM: "ordinary",lit,(3,3),(center,center),(31,15) {
 FOUNTAIN:(01,06)
 FOUNTAIN:(29,13)
 
 SUBROOM:"ordinary",random,(2,2),(2,2) {
   ROOMDOOR: false,closed,south,random
 }
 
 SUBROOM:"tool shop" [30%], lit,(5,3),(2,3) {
   ROOMDOOR: false,closed,south,random
 }
 
 SUBROOM:"ordinary",random,(2,10),(2,3) {
   ROOMDOOR: false, locked, north, random
   MONSTER: 'G',random
 }
 
 SUBROOM:"ordinary",random,(5,9),(2,2) {
   ROOMDOOR: false,closed,north,random
 }
 
 SUBROOM:"temple",lit,(10,2),(3,4) {
   ROOMDOOR: false,closed,east,random
   ALTAR:(1,1),align[0],shrine
   MONSTER: ('G', "gnomish wizard"), random
   MONSTER: ('G', "gnomish wizard"), random
 }
 
 SUBROOM:"ordinary",random,(11,7),(2,2) {
   ROOMDOOR: false,closed,west,random
 }
 
 SUBROOM:"shop",lit,(10,10),(3,3) {
   ROOMDOOR:false,closed,west,random
 }
 
 SUBROOM:"ordinary",random,(14,8),(2,2) {
   ROOMDOOR:false,locked,north,random
   MONSTER: 'G',random
 }
 
 SUBROOM:"ordinary",random,(14,11),(2,2) {
   ROOMDOOR:false,closed,south,random
 }
 
 SUBROOM:"tool shop" [40%],lit,(17,10),(3,3) {
   ROOMDOOR:false,closed,north,random
 }
 
 SUBROOM:"ordinary",random,(21,11),(2,2) {
   ROOMDOOR:false,locked,east,random
   MONSTER:'G',random
 }
 
 SUBROOM:"food shop" [90%],lit,(26,8),(3,2) {
   ROOMDOOR:false,closed,west,random
 }
 
 SUBROOM:"ordinary",random,(16,2),(2,2) {
   ROOMDOOR:false,closed,west,random
 }
 
 SUBROOM:"ordinary",random,(19,2),(2,2) {
   ROOMDOOR:false,closed,north,random
 }
 
 SUBROOM:"wand shop" [30%],lit,(19,5),(3,2) {
   ROOMDOOR:false,closed,west,random
 }
 
 SUBROOM: "candle shop",lit,(25,2),(3,3) {
   ROOMDOOR:false,closed,south,random
 }
 
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 
 }
 
 ROOM: "ordinary", random, random, random, random {
   STAIR: random, up
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, down
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
   MONSTER: ('G', "gnome"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   MONSTER: ('h', "dwarf"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
 }
 
 RANDOM_CORRIDORS
 
 
 # Minetown variant 4 by Kelly Bailey
 # "College Town"
 #
 LEVEL: "minetn-4"
 ROOM: "ordinary",lit,(3,3),(center,center),(30,15) {
 FOUNTAIN:(08,07)
 FOUNTAIN:(18,07)
 
 SUBROOM:"book shop",lit,(4,2),(3,3) {
   ROOMDOOR: false,closed,south,random
 }
 
 SUBROOM:"ordinary",random,(8,2),(2,2) {
   ROOMDOOR: false,closed,south,random
 }
 
 SUBROOM:"temple",lit,(11,3),(5,4) {
   ROOMDOOR: false,closed,south,random
   ALTAR:(2,1),align[0],shrine
   MONSTER: ('G', "gnomish wizard"), random
   MONSTER: ('G', "gnomish wizard"), random
 }
 
 SUBROOM:"ordinary",random,(19,2),(2,2) {
   ROOMDOOR: false,closed,south,random
   MONSTER: 'G', random
 }
 
 SUBROOM:"candle shop",lit,(22,2),(3,3) {
   ROOMDOOR:false,closed,south,random
 }
 
 SUBROOM:"ordinary",random,(26,2),(2,2) {
   ROOMDOOR:false,locked,east,random
   MONSTER: 'G',random
 }
 
 SUBROOM:"tool shop" [90%],lit,(4,10),(3,3) {
   ROOMDOOR:false,closed,north,random
 }
 
 SUBROOM:"ordinary",random,(8,11),(2,2) {
   ROOMDOOR:false,locked,south,random
   MONSTER: ('k',"kobold shaman"),random
   MONSTER: ('k',"kobold shaman"),random
   MONSTER: ('f',"kitten"),random
   MONSTER: 'f',random
 }
 
 SUBROOM:"food shop" [90%],lit,(11,11),(3,2) {
   ROOMDOOR:false,closed,east,random
 }
 
 SUBROOM:"ordinary",random,(17,11),(2,2) {
   ROOMDOOR:false,closed,west,random
 }
 
 SUBROOM:"ordinary",random,(20,10),(2,2) {
   ROOMDOOR:false,locked,north,random
   MONSTER:'G',random
 }
 
 SUBROOM:"shop" [90%],lit,(23,10),(3,3) {
   ROOMDOOR:false,closed,north,random
 }
 
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, up
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, down
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
   MONSTER: ('G', "gnome"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   MONSTER: ('h', "dwarf"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
 }
 
 RANDOM_CORRIDORS
 
 
 # "Grotto Town" by Kelly Bailey
 #
 MAZE: "minetn-5",' '
 GEOMETRY:center,center
 MAP
 -----         ---------                                                    
 |...---  ------.......--    -------                       ---------------  
 |.....----.........--..|    |.....|          -------      |.............|  
 --..-....-.----------..|    |.....|          |.....|     --+---+--.----+-  
  --.--.....----     ----    |.....|  ------  --....----  |..-...--.-.+..|  
   ---.........----  -----   ---+---  |..+.|   ---..-..----..---+-..---..|  
     ----.-....|..----...--    |.|    |..|.|    ---+-.....-+--........--+-  
        -----..|....-.....---- |.|    |..|.------......--................|  
     ------ |..|.............---.--   ----.+..|-.......--..--------+--..--  
     |....| --......---...........-----  |.|..|-...{....---|.........|..--  
     |....|  |........-...-...........----.|..|--.......|  |.........|...|  
     ---+--------....-------...---......--.-------....---- -----------...|  
  ------.---...--...--..-..--...-..---...|.--..-...-....------- |.......--  
  |..|-.........-..---..-..---.....--....|........---...-|....| |.-------   
  |..+...............-+---+-----..--..........--....--...+....| |.|...S.    
 -----.....{....----...............-...........--...-...-|....| |.|...|     
 |..............-- --+--.---------.........--..-........------- |.--+-------
 -+-----.........| |...|.|....|  --.......------...|....---------.....|....|
 |...| --..------- |...|.+....|   ---...---    --..|...--......-...{..+..-+|
 |...|  ----       ------|....|     -----       -----.....----........|..|.|
 -----                   ------                     -------  ---------------
 ENDMAP
 
 IF [75%] {
    IF [50%] {
       TERRAIN:line (25,8),(25,9), '|'
    } ELSE {
       TERRAIN:line (16,13),(17,13), '-'
    }
 }
 IF [75%] {
    IF [50%] {
       TERRAIN:line (36,10),(36,11), '|'
    } ELSE {
       TERRAIN:line (32,15),(33,15), '-'
    }
 }
 IF [50%] {
    TERRAIN:fillrect (21,4,22,5), '.'
    TERRAIN:line (14,9),(14,10), '|'
 }
 IF [50%] {
    TERRAIN:(46,13), '|'
    TERRAIN:line (43,5),(47,5), '-'
    TERRAIN:line (42,6),(46,6), '.'
    TERRAIN:line (46,7),(47,7), '.'
 }
 [50%]: TERRAIN:fillrect (69,11,71,11), '-'
 
 STAIR:(01,01),up
 STAIR:(46,03),down
 FOUNTAIN:(50,09)
 FOUNTAIN:(10,15)
 FOUNTAIN:(66,18)
 
 REGION:(00,00,74,20),unlit,"ordinary"
 REGION:(09,13,11,17),lit,"ordinary"
 REGION:(08,14,12,16),lit,"ordinary"
 REGION:(49,07,51,11),lit,"ordinary"
 REGION:(48,08,52,10),lit,"ordinary"
 REGION:(64,17,68,19),lit,"ordinary"
 REGION:(37,13,39,17),lit,"ordinary"
 REGION:(36,14,40,17),lit,"ordinary"
 REGION:(59,02,72,10),lit,"ordinary"
 
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome lord"), random
 MONSTER: ('G', "gnome lord"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: ('h', "dwarf"), random
 
 # The shops
 REGION:(25,17,28,19),lit,"candle shop"
 DOOR:closed,(24,18)
 REGION:(59,9,67,10),lit,"shop"
 DOOR:closed,(66,08)
 REGION:(57,13,60,15),lit,"tool shop"
 DOOR:closed,(56,14)
 REGION:(05,09,08,10),lit,"food shop"
 DOOR:closed,(07,11)
 # Gnome homes
 DOOR:closed,(04,14)
 DOOR:locked,(01,17)
 MONSTER: ('G', "gnomish wizard"), (02,19)
 DOOR:locked,(20,16)
 MONSTER: 'G', (20,18)
 DOOR:random,(21,14)
 DOOR:random,(25,14)
 DOOR:random,(42,08)
 DOOR:locked,(40,05)
 MONSTER: 'G', (38,07)
 DOOR:random,(59,03)
 DOOR:random,(58,06)
 DOOR:random,(63,03)
 DOOR:random,(63,05)
 DOOR:locked,(71,03)
 DOOR:locked,(71,06)
 DOOR:closed,(69,04)
 DOOR:closed,(67,16)
 MONSTER: ('G', "gnomish wizard"), (67,14)
 OBJECT: '=', (70,14)
 DOOR:locked,(69,18)
 MONSTER: ('G', "gnome lord"), (71,19)
 DOOR:locked,(73,18)
 OBJECT: ('(', "chest"), (73,19)
 DOOR:locked,(50,06)
 OBJECT: '(', (50,03)
 OBJECT: ('`', "statue"), (38,15), montype:"gnome king", 1
 # Temple
 REGION:(29,02,33,04),lit,"temple"
 DOOR:closed,(31,05)
 ALTAR:(31,03),align[0],shrine
 
 
 # "Bustling Town" by Kelly Bailey
 #
 MAZE: "minetn-6",' '
 FLAGS: inaccessibles
 INIT_MAP:mines,'.','-',true,true,lit,true
 GEOMETRY:center,top
 MAP
 .-----................----------------.-
 .|...|................|...|..|...|...|..
 .|...+..--+--.........|...|..|...|...|..
 .|...|..|...|..-----..|...|..|-+---+--..
 .-----..|...|--|...|..--+---+-.........|
 ........|...|..|...+.............-----..
 ........-----..|...|......--+-...|...|..
 .----...|...|+------..{...|..|...+...|..
 .|..+...|...|.............|..|...|...|..
 .|..|...|...|-+-.....---+-------------.|
 .----...--+--..|..-+-|..................
 ...|........|..|..|..|----....---------.
 ...|..T.....----..|..|...+....|......|-.
 ...|-....{........|..|...|....+......|-.
 ...--..-....T.....--------....|......|-.
 .......--.....................----------
 ENDMAP
 
 REGION:(00,00,38,15),lit,"ordinary"
 STAIR:levregion(01,03,20,19),(0,0,39,15),up
 STAIR:levregion(61,03,75,19),(0,0,39,15),down
 FOUNTAIN:(22,07)
 FOUNTAIN:(09,13)
 REGION:(13,5,14,6),unlit,"ordinary"
 REGION:(9,7,11,9),lit,"candle shop"
 REGION:(16,4,18,6),lit,"tool shop"
 REGION:(23,1,25,3),lit,"shop"
 REGION:(22,12,24,13),lit,"food shop"
 REGION:(31,12,36,14),lit,"temple"
 ALTAR:(35,13),align[0],shrine
 
 DOOR:closed,(5,2)
 DOOR:locked,(4,8)
 DOOR:closed,(10,2)
 DOOR:closed,(10,10)
 DOOR:locked,(13,7)
 DOOR:locked,(14,9)
 DOOR:closed,(19,5)
 DOOR:closed,(19,10)
 DOOR:closed,(24,4)
 DOOR:closed,(24,9)
 DOOR:closed,(25,12)
 DOOR:closed,(28,4)
 DOOR:locked,(28,6)
 DOOR:closed,(30,13)
 DOOR:closed,(31,3)
 DOOR:closed,(35,3)
 DOOR:closed,(33,7)
 
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), random
 MONSTER: ('G', "gnome"), (14,6)
 MONSTER: ('G', "gnome lord"), (14,5)
 MONSTER: ('G', "gnome"), (27,8)
 MONSTER: ('G', "gnome lord"), random
 MONSTER: ('G', "gnome lord"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: ('h', "dwarf"), random
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 
 
 # "Bazaar Town" by Kelly Bailey
 #
 LEVEL: "minetn-7"
 ROOM: "ordinary" , lit, (3,3), (center,center), (30,15) {
 FOUNTAIN: (12, 07)
 FOUNTAIN: (11, 13)
 
 [75%]: SUBROOM: "ordinary", random, (2,2), (4,2) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (7,2), (2,2) {
   ROOMDOOR: false, closed, north, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (7,5), (2,2) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", lit, (10,2), (3,4) {
   MONSTER:('G',"gnome"),random
   MONSTER:('Y',"monkey"),random
   MONSTER:('Y',"monkey"),random
   MONSTER:('Y',"monkey"),random
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (14,2), (4,2) {
   ROOMDOOR: false, closed, south, 0
   MONSTER: 'n', random
 }
 
 [75%]: SUBROOM: "ordinary", random, (16,5), (2,2) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", unlit, (19,2), (2,2) {
   ROOMDOOR: false, locked, east, random
   MONSTER: ('G',"gnome king"),random
 }
 
 SUBROOM: "food shop" [50%], lit, (19,5), (2,3) {
   ROOMDOOR: false, closed, south, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (2,7), (2,2) {
   ROOMDOOR: false, closed, east, random
 }
 
 SUBROOM: "tool shop" [50%], lit, (2,10), (2,3) {
   ROOMDOOR: false, closed, south, random
 }
 
 SUBROOM: "candle shop", lit, (5,10),(3,3) {
   ROOMDOOR: false, closed, north, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (11,10), (2,2) {
   ROOMDOOR: false, locked, west, random
   MONSTER: 'G',random
 }
 
 SUBROOM: "shop" [60%], lit, (14,10), (2,3) {
   ROOMDOOR: false, closed, north, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (17,11), (4,2) {
   ROOMDOOR: false, closed, north, random
 }
 
 [75%]: SUBROOM: "ordinary", random, (22,11), (2,2) {
   ROOMDOOR: false, closed, south, random
   SINK: (00,00)
 }
 
 SUBROOM: "food shop" [50%], lit, (25,11), (3,2) {
   ROOMDOOR: false, closed, east, random
 }
 
 SUBROOM: "tool shop" [30%], lit, (25,2), (3,3) {
   ROOMDOOR: false, closed, west, random
 }
 
 SUBROOM: "temple", lit, (24,6), (4,4) {
   ROOMDOOR: false, closed, west, random
   ALTAR:(02,01),align[0],shrine
   MONSTER: ('G', "gnomish wizard"), random
   MONSTER: ('G', "gnomish wizard"), random
 }
 
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watchman"), random, peaceful
 MONSTER: ('@', "watch captain"), random, peaceful
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('Y',"monkey"),random
 MONSTER:('Y',"monkey"),random
 
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, up
 }
 
 ROOM: "ordinary" , random, random, random, random {
   STAIR: random, down
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
   MONSTER: ('G', "gnome"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   MONSTER: ('h', "dwarf"), random
 }
 
 ROOM: "ordinary" , random, random, random, random {
   TRAP: random, random
   MONSTER: ('G', "gnome"), random
 }
 
 RANDOM_CORRIDORS
 
 
 # Mine end level variant 1
 # "Mimic of the Mines"
 #
 MAZE: "minend-1", ' '
 GEOMETRY:center,center
 #1234567890123456789012345678901234567890123456789012345678901234567890
 MAP
 ------------------------------------------------------------------   ------
 |                        |.......|     |.......-...|       |.....|.       |
 |    ---------        ----.......-------...........|       ---...-S-      |
 |    |.......|        |..........................-S-      --.......|      |
 |    |......-------   ---........................|.       |.......--      |
 |    |..--........-----..........................|.       -.-..----       |
 |    --..--.-----........-.....................---        --..--          |
 |     --..--..| -----------..................---.----------..--           |
 |      |...--.|    |..S...S..............---................--            |
 |     ----..-----  ------------........--- ------------...---             |
 |     |.........--            ----------              ---...-- -----      |
 |    --.....---..--                           --------  --...---...--     |
 | ----..-..-- --..---------------------      --......--  ---........|     |
 |--....-----   --..-..................---    |........|    |.......--     |
 |.......|       --......................S..  --......--    ---..----      |
 |--.--.--        ----.................---     ------..------...--         |
 | |....S..          |...............-..|         ..S...........|          |
 --------            --------------------           ------------------------
 ENDMAP
 
 # Dungeon Description
 $place = { (08,16),(13,07),(21,08),(41,14),(50,04),(50,16),(66,01) }
 SHUFFLE: $place
 
 REGION:(26,01,32,01),unlit,"ordinary",filled,irregular
 REGION:(20,08,21,08),unlit,"ordinary"
 REGION:(23,08,25,08),unlit,"ordinary"
 # Secret doors
 DOOR:locked,(07,16)
 DOOR:locked,(22,08)
 DOOR:locked,(26,08)
 DOOR:locked,(40,14)
 DOOR:locked,(50,03)
 DOOR:locked,(51,16)
 DOOR:locked,(66,02)
 # Stairs
 STAIR:(36,04),up
 # Non diggable walls
 NON_DIGGABLE:(00,00,74,17)
 # Niches
 # Note: $place[6] empty
 OBJECT:('*',"diamond"),$place[0]
 OBJECT:('*',"emerald"),$place[0]
 OBJECT:('*',"worthless piece of violet glass"),$place[0]
 MONSTER:'m',$place[0], m_object "luckstone"
 OBJECT:('*',"worthless piece of white glass"),$place[1]
 OBJECT:('*',"emerald"),$place[1]
 OBJECT:('*',"amethyst"),$place[1]
 MONSTER:'m',$place[1], m_object "loadstone"
 OBJECT:('*',"diamond"),$place[2]
 OBJECT:('*',"worthless piece of green glass"),$place[2]
 OBJECT:('*',"amethyst"),$place[2]
 MONSTER:'m',$place[2], m_object "flint"
 OBJECT:('*',"worthless piece of white glass"),$place[3]
 OBJECT:('*',"emerald"),$place[3]
 OBJECT:('*',"worthless piece of violet glass"),$place[3]
 MONSTER:'m',$place[3], m_object "touchstone"
 OBJECT:('*',"worthless piece of red glass"),$place[4]
 OBJECT:('*',"ruby"),$place[4]
 OBJECT:('*',"loadstone"),$place[4]
 OBJECT:('*',"ruby"),$place[5]
 OBJECT:('*',"worthless piece of red glass"),$place[5]
 OBJECT:('*',"luckstone"),$place[5]
 # Random objects
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'(',random
 OBJECT:'(',random
 OBJECT:random,random
 OBJECT:random,random
 OBJECT:random,random
 # Random traps
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 # Random monsters
 MONSTER:('G',"gnome king"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('G',"gnomish wizard"),random
 MONSTER:('G',"gnomish wizard"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('h',"hobbit"),random
 MONSTER:('h',"hobbit"),random
 MONSTER:('h',"dwarf"),random
 MONSTER:('h',"dwarf"),random
 MONSTER:('h',"dwarf"),random
 MONSTER:'h',random
 
 
 # Mine end level variant 2
 # "Gnome King's Wine Cellar"
 #
 MAZE: "minend-2", ' '
 GEOMETRY:center,center
 MAP
 ---------------------------------------------------------------------------
 |...................................................|                     |
 |.|---------S--.--|...|--------------------------|..|                     |
 |.||---|   |.||-| |...|..........................|..|                     |
 |.||...| |-|.|.|---...|.............................|                ..   |
 |.||...|-|.....|....|-|..........................|..|.               ..   |
 |.||.....|-S|..|....|............................|..|..                   |
 |.||--|..|..|..|-|..|----------------------------|..|-.                   |
 |.|   |..|..|....|..................................|...                  |
 |.|   |..|..|----|..-----------------------------|..|....                 |
 |.|---|..|--|.......|----------------------------|..|.....                |
 |...........|----.--|......................|     |..|.......              |
 |-----------|...|.| |------------------|.|.|-----|..|.....|..             |
 |-----------|.{.|.|--------------------|.|..........|.....|....           |
 |...............|.S......................|-------------..-----...         |
 |.--------------|.|--------------------|.|.........................       |
 |.................|                    |.....................|........    |
 ---------------------------------------------------------------------------
 ENDMAP
 
 IF [50%] {
    TERRAIN:(55,14),'-'
    TERRAIN:(56,14),'-'
    TERRAIN:(61,15),'|'
    TERRAIN:(52,5), 'S'
    DOOR:locked, (52,5)
 }
 IF [50%] {
    TERRAIN:(18,1), '|'
    TERRAIN:rect (7,12, 8,13), '.'
 }
 IF [50%] {
    TERRAIN:(49,4), '|'
    TERRAIN:(21,5), '.'
 }
 IF [50%] {
    IF [50%] {
       TERRAIN:(22,1), '|'
    } ELSE {
       TERRAIN:(50,7), '-'
       TERRAIN:(51,7), '-'
    }
 }
 
 
 # Dungeon Description
 FOUNTAIN:(14,13)
 REGION:(23,03,48,06),lit,"ordinary"
 REGION:(21,06,22,06),lit,"ordinary"
 REGION:(14,04,14,04),unlit,"ordinary"
 REGION:(10,05,14,08),unlit,"ordinary"
 REGION:(10,09,11,09),unlit,"ordinary"
 REGION:(15,08,16,08),unlit,"ordinary"
 # Secret doors
 DOOR:locked,(12,02)
 DOOR:locked,(11,06)
 # Stairs
 STAIR:(36,04),up
 # Non diggable walls
 NON_DIGGABLE:(00,00,52,17)
 NON_DIGGABLE:(53,00,74,00)
 NON_DIGGABLE:(53,17,74,17)
 NON_DIGGABLE:(74,01,74,16)
 NON_DIGGABLE:(53,07,55,07)
 NON_DIGGABLE:(53,14,61,14)
 # The Gnome King's wine cellar.
 # the Trespassers sign is a long-running joke
 ENGRAVING:(12,03),engrave,"You are now entering the Gnome King's wine cellar."
 ENGRAVING:(12,04),engrave,"Trespassers will be persecuted!"
 OBJECT:('!',"booze"),(10,07)
 OBJECT:('!',"booze"),(10,07)
 OBJECT:'!',(10,07)
 OBJECT:('!',"booze"),(10,08)
 OBJECT:('!',"booze"),(10,08)
 OBJECT:'!',(10,08)
 OBJECT:('!',"booze"),(10,09)
 OBJECT:('!',"booze"),(10,09)
 OBJECT:('!',"object detection"),(10,09)
 # Objects
 # The Treasure chamber...
 OBJECT:('*',"diamond"),(69,04)
 OBJECT:'*',(69,04)
 OBJECT:('*',"diamond"),(69,04)
 OBJECT:'*',(69,04)
 OBJECT:('*',"emerald"),(70,04)
 OBJECT:'*',(70,04)
 OBJECT:('*',"emerald"),(70,04)
 OBJECT:'*',(70,04)
 OBJECT:('*',"emerald"),(69,05)
 OBJECT:'*',(69,05)
 OBJECT:('*',"ruby"),(69,05)
 OBJECT:'*',(69,05)
 OBJECT:('*',"ruby"),(70,05)
 OBJECT:('*',"amethyst"),(70,05)
 OBJECT:'*',(70,05)
 OBJECT:('*',"amethyst"),(70,05)
 OBJECT:('*',"luckstone"),(70,05)
 # Scattered gems...
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'*',random
 OBJECT:'(',random
 OBJECT:'(',random
 OBJECT:random,random
 OBJECT:random,random
 OBJECT:random,random
 # Random traps
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 # Random monsters.
 MONSTER:('G',"gnome king"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('G',"gnome lord"),random
 MONSTER:('G',"gnomish wizard"),random
 MONSTER:('G',"gnomish wizard"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('G',"gnome"),random
 MONSTER:('h',"hobbit"),random
 MONSTER:('h',"hobbit"),random
 MONSTER:('h',"dwarf"),random
 MONSTER:('h',"dwarf"),random
 MONSTER:('h',"dwarf"),random
 MONSTER:'h',random
 
 
 # "Catacombs" by Kelly Bailey
 # Relies on some very specific behavior of MAZEWALK.
 #
 MAZE:"minend-3",'-'
 FLAGS:nommap
 GEOMETRY:center,bottom
 MAP
  - - - - - - - - - - -- -- - - . - - - - - - - - - -- - - -- - - - - . - - |
 ------...---------.-----------...-----.-------.-------     ----------------|
  - - - - - - - - - - - . - - - . - - - - - - - - - - -- - -- - . - - - - - |
 ------------.---------...-------------------------.---   ------------------|
  - - - - - - - - - - . . - - --- - . - - - - - - - - -- -- - - - - |.....| |
 --.---------------.......------------------------------- ----------|.....S-|
  - - - - |.. ..| - ....... . - - - - |.........| - - - --- - - - - |.....| |
 ----.----|.....|------.......--------|.........|--------------.------------|
  - - - - |..{..| - - -.... . --- - -.S.........S - - - - - - - - - - - - - |
 ---------|.....|--.---...------------|.........|---------------------------|
  - - - - |.. ..| - - - . - - - - - - |.........| - --- . - - - - - - - - - |
 ----------------------...-------.---------------------...------------------|
 ---..| - - - - - - - - . --- - - - - - - - - - - - - - . - - --- - - --- - |
 -.S..|----.-------.------- ---------.-----------------...----- -----.-------
 ---..| - - - - - - - -- - - -- . - - - - - . - - - . - . - - -- -- - - - -- 
 -.S..|--------.---.---       -...---------------...{.---------   ---------  
 --|. - - - - - - - -- - - - -- . - - - --- - - - . . - - - - -- - - - - - - 
 ENDMAP
 
 $place = { (1,15),(68,6),(1,13) }
 SHUFFLE: $place
 
 NON_DIGGABLE:(67,3,73,7)
 NON_DIGGABLE:(0,12,2,16)
 FOUNTAIN:(12,08)
 FOUNTAIN:(51,15)
 REGION:(0,0,75,16),unlit,"ordinary"
 REGION:(38,6,46,10),lit,"ordinary"
 DOOR:closed,(37,8)
 DOOR:closed,(47,8)
 DOOR:closed,(73,5)
 DOOR:closed,(2,15)
 MAZEWALK:(36,8),west,false
 STAIR:(42,8),up
 WALLIFY
 
 # Objects
 OBJECT:('*',"diamond"),random
 OBJECT:'*',random
 OBJECT:('*',"diamond"),random
 OBJECT:'*',random
 OBJECT:('*',"emerald"),random
 OBJECT:'*',random
 OBJECT:('*',"emerald"),random
 OBJECT:'*',random
 OBJECT:('*',"emerald"),random
 OBJECT:'*',random
 OBJECT:('*',"ruby"),random
 OBJECT:'*',random
 OBJECT:('*',"ruby"),random
 OBJECT:('*',"amethyst"),random
 OBJECT:'*',random
 OBJECT:('*',"amethyst"),random
 OBJECT:('*',"luckstone"),$place[0]
 OBJECT:('*',"flint"),$place[1]
 OBJECT:'?',random
 OBJECT:'?',random
 OBJECT:'?',random
 OBJECT:'?',random
 OBJECT:'?',random
 OBJECT:'+',random
 OBJECT:'+',random
 OBJECT:'+',random
 OBJECT:'+',random
 OBJECT:random,random
 OBJECT:random,random
 OBJECT:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 TRAP:random,random
 # One-time annoyance factor
 TRAP:"level teleport",$place[0]
 TRAP:"level teleport",$place[1]
 MONSTER:'M',random
 MONSTER:'M',random
 MONSTER:'M',random
 MONSTER:'M',random
 MONSTER:'M',random
 MONSTER:('M',"ettin mummy"),random
 MONSTER:'V',random
 MONSTER:'Z',random
 MONSTER:'Z',random
 MONSTER:'Z',random
 MONSTER:'Z',random
 MONSTER:'Z',random
 MONSTER:'V',random
 MONSTER:'e',random
 MONSTER:'e',random
 MONSTER:'e',random
 MONSTER:'e',random
 
 
 # end mines.des