################################################################################
# Sprint VII, by st
################################################################################
#
# Thanks to elliott, HangedMan, Nomi, N78291 and monqy for the early testing
# and feedback.
#
################################################################################
{{

function base_monster_setup(e)
  e.kmons("A = goblin / frilled lizard / giant cockroach / endoplasm / ball python /\
           bat / kobold / rat / dart slug / gnoll band /\
           hobgoblin / jackal band / ribbon worm / adder / quokka /\
           gnoll bouda band / orc band / orc priest band /\
           glass eye / hound / iguana / ogre / orc wizard band /\
           phantom / scorpion / skeleton / gnoll sergeant band /\
           centaur / jelly / water moccasin / ice beast / crimson imp /\
           necrophage / quasit / zombie / sky beast / bullfrog /\
           crocodile / brain worm / mummy / orc warrior band / wight band /\
           kobold brigand band / warg / wolf / black bear / river rat /\
           weeping skull / iron imp / white imp / ufetubus / fire bat")
  e.kmons("B = steam dragon / killer bee band / hornet /\
           manticore / wyvern / troll / two-headed ogre / yak band /\
           komodo dragon / wraith / unseen horror /\
           basilisk / cyclops band / efreet /\
           acid dragon / blink frog band / vampire mosquito band /\
           gargoyle / molten gargoyle /\
           kobold demonologist band / deep troll /\
           deep elf pyromancer / deep elf zephyrmancer / boulder beetle /\
           orc high priest band w:5 / orc sorcerer band w:5 / orc knight band /\
           flayed ghost / freezing wraith / shadow wraith / shadow /\
           redback w:20 / phantasmal warrior / cane toad / hell rat /\
           black mamba / rime drake / hydra w:5 / polar bear / lindwurm /\
           elephant / death yak / wolf band / dream sheep band /\
           swamp drake / bog body / tyrant leech / swamp dragon w:3 /\
           merfolk band w:5 / merfolk siren w:3 / sea snake / snapping turtle /\
           tarantella / jumping spider / demonic crawler /\
           small abomination / guardian mummy / spriggan /\
           orange demon / hellwing / smoke demon / ynoxinul / ice devil /\
           red devil / laughing skull / centaur band")
  e.kmons("C = eye of devastation / hydra / skeletal warrior band w:5 /\
           catoblepas / vampire / wandering mushroom /\
           guardian serpent / rakshasa w:5 / slime creature band w:5 /\
           centaur warrior band w:5 / ugly thing w:5 / arcanist w:5 /\
           occultist w:5 / simulacrum / ogre mage band w:5 /\
           wolf spider / yaktaur / air elemental / fire elemental /\
           water elemental / earth elemental / deep elf knight band w:5 /\
           great orb of eyes / naga mage band w:5 / naga warrior band w:5 /\
           necromancer band w:5 / orc knight band w:5 /\
           harpy band w:5 / fire crab / redback band /\
           wind drake / deep elf pyromancer w:3 / shapeshifter / zombie /\
           skeleton / death knight / eidolon / elephant band w:5 /\
           death yak band w:5 / swamp dragon /\
           merfolk avatar / alligator snapping turtle / anaconda / nagaraja /\
           merfolk javelineer band w:5 / merfolk impaler band w:5 /\
           merfolk aquamancer band w:5 / ghost moth / emperor scorpion /\
           vampire knight / vampire mage / large abomination /\
           spriggan druid / spriggan rider / death cob /\
           hell hound band w:5 / neqoxec / simulacrum / sixfirhy /\
           chaos spawn / ice devil / sun demon / rust devil /\
           hell hog band w:5 / alligator band w:5 / minotaur")
  e.kmons("D = fire dragon w:20 / yaktaur band w:5 / ice dragon w:20 /\
           ugly thing band w:5 / sphinx / iron troll /\
           orc warlord band / yaktaur captain band w:5 /\
           deep troll shaman band w:5 / fire giant w:20 / frost giant w:20 /\
           hell knight band / storm dragon / glowing shapeshifter /\
           bone dragon / stone giant / deep elf annihilator /\
           deep elf death mage / deep elf high priest /\
           deep elf demonologist / deep elf sorcerer / shadow dragon /\
           titan w:5 / death knight / ettin /\
           nagaraja / dancing weapon / dire elephant band /\
           glass eye / vault guard / ghoul band w:5 /\
           mummy priest / spriggan air mage / spriggan berserker /\
           spriggan defender / base draconian w:70 / nonbase draconian w:5 /\
           base draconian band w:5 / lorocyproca / daeva / angel /\
           profane servitor / soul eater / hell beast / cherub / apis / ophan /\
           balrug / green death / blizzard demon / deep elf blademaster /\
           deep elf master archer / war gargoyle")
  e.kmons("E = lich / tentacled monstrosity / golden dragon /\
           iron dragon / quicksilver dragon / titan / acid blob /\
           azure jelly / golden eye / ancient lich w:5 /\
           rockslime / reaper / royal mummy w:3 / curse toe / ghost moth /\
           killer klown / nonbase draconian w:15 /\
           nonbase draconian band w:15 / storm dragon / shadow dragon /\
           hellephant / balrug w:5 / deep elf blademaster / cacodemon /\
           deep elf master archer / blizzard demon / executioner /\
           green death / hellion / tormentor / iron elemental w:3 /\
           death drake w:2 / hell sentinel w:2 / brimstone fiend w:2 /\
           ice fiend w:2 / tzitzimitl w:2 / moth of wrath w:5 /\
           balrug band w:5")
  e.kmons("F = orb of fire / electric golem / ancient lich / royal mummy /\
           hell sentinel / brimstone fiend / ice fiend / tzitzimitl /\
           pandemonium lord w:20 / pearl dragon / titan")
  e.kmons("G = goblin / frilled lizard / giant cockroach / endoplasm /\
           ball python /\
           bat / kobold / rat / gnoll /\
           hobgoblin / jackal band / adder / quokka /\
           orc / scorpion / glass eye / skeleton /\
           zombie / river rat / ufetubus")
  e.kmons("H = Sigmund / Jessica / Blork the orc / Crazy Yiuf / Duvessa band /\
           Edmund / Ijyb / Grinder / Pikel band / Pargi / Terence / Menkaure /\
           Prince Ribbit")
  e.kmons("I = Erica / Erolcha / Eustachio / Gastronok / Grum band / Harold /\
           Joseph / Josephine band / Maurice / Psyche / Sonja / Urug")
  e.kmons("J = Agnes / Aizul / Azrael band / Donald / Frances / Kirke band /\
           Nergalle / Nessos / Ilsuiw band / Arachne / Polyphemus / Rupert /\
           Saint Roka band / Snorg")
  e.kmons("K = Louise / Nikola / Frederick / Boris / Margery band /\
           Dissolution / Xtahua / the Lernaean hydra / Jory / Mennas / Mara")
  e.kmons("L = Khufu band / Tiamat band / Murray / Mnoleg / Gloorx Vloq /\
           Lom Lobon / Cerebov w:5 / Dispater / Asmodeus / Antaeus /\
           Ereshkigal / Ignacio / Geryon / the Royal Jelly /\
           the Serpent of Hell")
  e.kmons("M = stone giant / cyclops / frost giant /\
           fire giant / ettin / deep troll / iron troll")
  e.kmons("N = stone giant / titan / frost giant / fire giant / ettin")
  e.kmons("O = deep elf pyromancer w:15 / deep elf zephyrmancer w:15 /\
           deep elf annihilator / deep elf knight band / deep elf death mage /\
           deep elf high priest / deep elf knight / deep elf sorcerer /\
           deep elf demonologist /\
           deep elf master archer w:3 / deep elf blademaster w:3")
  e.kmons("P = deep elf annihilator / deep elf death mage /\
           deep elf sorcerer / deep elf high priest / deep elf demonologist /\
           deep elf master archer / deep elf blademaster")
  e.kmons("Q = skeleton / zombie / skeletal warrior band /\
           ghoul / vampire knight / vampire mage band / lich w:5 / eidolon /\
           guardian mummy / mummy priest w:5")
  e.kmons("R = royal mummy w:3 / mummy priest / lich / ancient lich /\
           ghoul band / skeletal warrior band / vampire knight /\
           vampire mage band")
  e.kmons("S = orange demon / hellwing / smoke demon / ynoxinul /\
           red devil / sixfirhy / chaos spawn / ice devil w:20 / sun demon /\
           rust devil / neqoxec band / green death w:5 / blizzard demon w:5 /\
           balrug w:5 / cacodemon w:5 / hell beast / reaper w:5 / soul eater /\
           lorocyproca")
  e.kmons("T = balrug / blizzard demon / green death / reaper / cacodemon /\
           lorocyproca / brimstone fiend / ice fiend / tzitzimitl /\
           hell sentinel / executioner")
  e.kmons("U = place:Slime:$ / slime creature band /\
           rockslime / azure jelly / acid blob /\
           glass eye w:3 / quicksilver ooze w:3 / eye of devastation /\
           golden eye w:3 / shining eye w:3")
  e.kmons("V = azure jelly / rockslime / acid blob")
  e.kmons("W = acid dragon / steam dragon / fire dragon / ice dragon /\
           storm dragon / swamp drake / lindwurm / rime drake /\
           shadow dragon w:5")
  e.kmons("X = shadow dragon / iron dragon / quicksilver dragon /\
           golden dragon")
  e.kmons("Y = base draconian")
  e.kmons("Z = nonbase draconian")
  e.subst("1 = A:30 H:2")
  e.subst("2 = B:76 A:15 C:5 I:4")
  e.subst("3 = C:76 B:15 D:5 J:4")
  e.subst("4 = D:71 C:20 E:5 K:4")
  e.subst("5 = E:44 D:30 F:5 L:2 K:15")
  e.subst("6 = F:70 E:25 L:10")
end


function general_item_setup(e)
  e.kitem("^ = superb_item ident:all w:590 /\
          potion of heal wounds ident:all q:4 w:3 /\
          potion of haste ident:all q:4 w:3 /\
          scroll of fog w:1 ident:all /\
          potion of might ident:all w:2 /\
          scroll of acquirement q:1 w:1 ident:all /\
          scroll of enchant weapon ident:all q:4 w:2 /\
          scroll of enchant armour ident:all q:4 w:2 /\
          scroll of brand weapon ident:all")
  e.kitem("| = superb_item ident:all w:66 / star_item ident:all w:33")
  e.kitem("* = star_item ident:all w:66 / any ident:all w:33")
  e.kitem("% = any ident:all")
  e.kitem("! = potion of heal wounds ident:all q:2 w:30 /\
          potion of curing ident:all w:20 / potion of might ident:all /\
          potion of haste ident:all /\
          potion of resistance ident:all w:5 /\
          potion of brilliance ident:all / potion of berserk rage ident:all /\
          potion of mutation ident:all")
  e.kitem("? = scroll of blinking ident:all / scroll of identify ident:all /\
          scroll of fog ident:all / scroll of fear ident:all /\
          scroll of enchant weapon ident:all q:2 /\
          scroll of enchant armour ident:all q:2")
  e.kitem(") = battleaxe plus:9 good_item ident:all /\
    battleaxe plus:7 randart ident:all /\
    executioner's axe plus:7 good_item ident:all /\
    executioner's axe plus:5 randart ident:all /\
    broad axe plus:11 good_item ident:all /\
    broad axe plus:9 randart ident:all /\
    glaive plus:9 good_item ident:all /\
    glaive plus:7 randart ident:all /\
    bardiche plus:7 good_item ident:all /\
    bardiche plus:5 randart ident:all /\
    demon trident plus:9 good_item ident:all /\
    demon trident plus:7 randart ident:all /\
    great mace plus:9 good_item ident:all /\
    great mace plus:7 randart ident:all /\
    giant spiked club plus:9 good_item ident:all /\
    giant spiked club plus:7 randart ident:all /\
    demon whip plus:9 good_item ident:all /\
    demon whip plus:7 randart ident:all /\
    double sword plus:9 good_item ident:all /\
    double sword plus:7 randart ident:all /\
    triple sword plus:7 good_item ident:all /\
    triple sword plus:5 randart ident:all /\
    demon blade plus:11 good_item ident:all /\
    demon blade plus:9 randart ident:all /\
    great sword plus:9 good_item ident:all /\
    great sword plus:7 randart ident:all /\
    lajatang plus:9 good_item ident:all /\
    lajatang plus:7 randart ident:all /\
    longbow plus:7 ego:heavy ident:all w:15 /\
    triple crossbow plus:7 good_item ident:all w:15")
  e.kitem("] = plate armour plus:12 ident:all /\
    plate armour plus:8 good_item ident:all /\
    chain mail plus:8 ident:all /\
    chain mail plus:6 good_item ident:all /\
    robe plus:4 ego:resistance ident:all /\
    fire dragon scales plus:10 ident:all /\
    ice dragon scales plus:10 ident:all /\
    swamp dragon scales plus:9 ident:all /\
    swamp dragon scales plus:5 good_item ident:all /\
    acid dragon scales plus:8 ident:all /\
    acid dragon scales plus:4 good_item ident:all /\
    quicksilver dragon scales good_item ident:all w:5 /\
    storm dragon scales plus:12 ident:all w:5 /\
    storm dragon scales plus:8 good_item ident:all w:5 /\
    shadow dragon scales plus:12 ident:all w:5 /\
    shadow dragon scales plus:8 good_item ident:all w:5 /\
    gold dragon scales plus:14 ident:all /\
    gold dragon scales plus:10 good_item ident:all /\
    pair of gloves plus:4 ident:all /\
    pair of gloves plus:2 good_item ident:all /\
    pair of boots plus:4 ident:all /\
    pair of boots plus:2 good_item ident:all /\
    helmet plus:4 ident:all /\
    helmet plus:2 good_item ident:all /\
    cloak plus:4 ident:all /\
    cloak plus:2 good_item ident:all /\
    hat plus:4 ident:all /\
    hat plus:2 good_item ident:all /\
    tower shield plus:5 ident:all /\
    tower shield plus:3 good_item ident:all /\
    barding plus:6 ident:all w:5")
  e.kitem("( = battleaxe plus:6 ego:none ident:all /\
    battleaxe plus:3 good_item ident:all /\
    executioner's axe plus:3 ego:none ident:all /\
    executioner's axe plus:0 good_item ident:all /\
    broad axe plus:9 ego:none ident:all /\
    broad axe plus:6 good_item ident:all /\
    glaive plus:6 ego:none ident:all /\
    glaive plus:3 good_item ident:all /\
    bardiche plus:3 ego:none ident:all /\
    bardiche plus:0 good_item ident:all /\
    demon trident plus:6 ego:none ident:all /\
    demon trident plus:3 good_item ident:all /\
    great mace plus:6 ego:none ident:all /\
    great mace plus:3 good_item ident:all /\
    giant spiked club plus:6 ego:none ident:all /\
    giant spiked club plus:3 good_item ident:all /\
    demon whip plus:6 ego:none ident:all /\
    demon whip plus:3 good_item ident:all /\
    double sword plus:6 ego:none ident:all /\
    double sword plus:3 good_item ident:all /\
    triple sword plus:3 ego:none ident:all /\
    triple sword plus:0 good_item ident:all /\
    demon blade plus:6 ego:none ident:all /\
    demon blade plus:3 good_item ident:all /\
    great sword plus:6 ego:none ident:all /\
    great sword plus:3 good_item ident:all /\
    lajatang plus:6 ego:none ident:all /\
    lajatang plus:3 good_item ident:all /\
    longbow plus:5 good_item ident:all w:15 /\
    triple crossbow plus:0 good_item ident:all w:15")
  e.kitem("[ = plate armour plus:7 ident:all /\
    plate armour plus:4 good_item ident:all /\
    chain mail plus:7 ident:all w:20 /\
    chain mail plus:4 good_item ident:all w:20 /\
    robe plus:4 ident:all /\
    robe plus:1 good_item ident:all /\
    fire dragon scales plus:7 ident:all /\
    ice dragon scales plus:7 ident:all /\
    swamp dragon scales plus:5 ident:all /\
    acid dragon scales plus:5 ident:all /\
    quicksilver dragon scales ident:all w:5 /\
    storm dragon scales plus:6 ident:all w:5 /\
    shadow dragon scales plus:6 ident:all w:5 /\
    gold dragon scales plus:8 ident:all /\
    pair of gloves plus:2 ident:all /\
    pair of gloves plus:0 good_item ident:all /\
    pair of boots plus:2 ident:all /\
    pair of boots plus:0 good_item ident:all /\
    helmet plus:2 ident:all /\
    helmet plus:0 good_item ident:all /\
    cloak plus:2 ident:all /\
    cloak plus:0 good_item ident:all /\
    hat plus:2 ident:all /\
    hat plus:0 good_item ident:all /\
    tower shield plus:3 ident:all /\
    tower shield plus:0 good_item ident:all /\
    barding plus:2 ident:all w:5")
end

function general_setup(e)
  crawl.set_max_runes(3)
  e.tags("no_rotate no_hmirror no_vmirror")
  e.tags("no_item_gen no_trap_gen no_pool_fixup")
  e.kfeat("& = closed_door")
  e.marker("& = lua:restrict_door()")
  e.colour("& = lightgrey")
  e.kfeat("~ = closed_door")
  e.marker("~ = lua:restrict_door()")
  e.kfeat("< = closed_door")
  e.marker("< = lua:restrict_door()")
  e.kfeat("> = closed_door")
  e.marker("> = lua:restrict_door()")
  e.kfeat("# = closed_door")
  e.marker("# = lua:restrict_door()")
  e.kfeat("_ = closed_door")
  e.marker("_ = lua:restrict_door()")
  e.kfeat("= = closed_door")
  e.marker("= = lua:restrict_door()")
  e.colour("=~<>#_ = yellow")
  e.kfeat("@ = floor")
--  e.colour("@ = yellow")
--  e.ftile("@ = floor_crypt")
  dgn.set_random_mon_list("small abomination / nothing")
end

function metal_vault_setup(e)
  e.tags("the_vault_of_metal")
  e.colour("v = red")
  e.tile("v = dngn_metal_iron")
  e.kitem("a = ring of protection from fire ident:all /\
          ring of protection from cold ident:all /\
          ring of positive energy ident:all /\
          ring of willpower ident:all /\
          ring of fire ident:all /\
          ring of ice ident:all /\
          ring of see invisible ident:all /\
          ring of poison resistance ident:all /\
          any jewellery ident:all")
  e.lua_marker('>', props_marker {
              door_description_suffix=" to the Metal Vault (Medium)",
              })
end

function steel_vault_setup(e)
  e.tags("the_vault_of_steel")
  e.colour("v = red")
  e.tile("v = dngn_metal_iron")
  e.subst("4 = 4:290 M:1 O:1 Q:1 S:1 U:1 W:1 Y:1 J:1")
  e.subst("5 = 5:290 N:1 P:1 R:1 T:1 V:1 X:1 Z:1 K:1")
  e.kitem("a = any weapon randart level:17 ident:all")
  e.kitem("b = any armour randart level:17 ident:all")
  e.kitem("c = ring of slaying plus:3 ident:all /\
          amulet of regeneration ident:all /\
          ring of protection plus:6 ident:all /\
          ring of evasion plus:6 ident:all /\
          ring of strength plus:6 ident:all /\
          ring of intelligence plus:6 ident:all /\
          ring of dexterity plus:6 ident:all /\
          ring of wizardry ident:all /\
          any jewellery ident:all")
  e.lua_marker('~', props_marker {
           door_description_suffix=" to the Steel Vault (Very Hard)",
           })
  e.lua_marker('<', props_marker {
           door_description_suffix=" to the Silver Pit (Extremely Hard)",
           })
end

function crystal_vault_setup(e)
  e.tags("the_vault_of_crystal")
  e.colour("v = red")
  e.tile("v = dngn_metal_iron")
  e.subst("4 = 4:290 M:1 O:1 Q:1 S:1 U:1 W:1 Y:1 J:1")
  e.subst("5 = 5:290 N:1 P:1 R:1 T:1 V:1 X:1 Z:1 K:1")
  e.kitem("c = any jewellery randart level:27 ident:all")
  e.lua_marker('>', props_marker {
           door_description_suffix=" to the Crystal Vault (Extremely Hard)",
           })
end

function iron_vault_setup(e)
  e.tags("the_vault_of_iron")
  e.colour("v = red")
  e.tile("v = dngn_metal_iron")
  e.kitem("c = any jewellery randart level:27 ident:all")
  e.kitem("d = iron rune of zot")
  e.subst("' = ))]]cc")
  e.lua_marker('~', props_marker {
           door_description_suffix=" to the Iron Vault (Extremely Hard)",
           })
end

function armoury_setup(e)
  e.tile("v = dngn_metal_wall_cyan")
  e.kmons("8 = orc warlord")
  e.kmons("9 = orc knight")
  e.kmons("0 = orc knight / vault guard / naga warrior / deep elf knight /\
             deep elf blademaster w:1 / yaktaur captain band w:5")
  e.kitem("a = any weapon level:27 ident:all /\
          broad axe plus:5 ident:all /\
          battleaxe plus:3 ident:all /\
          executioner's axe plus:1 ident:all w:3 /\
          glaive plus:3 ident:all /\
          bardiche plus:1 ident:all w:3 /\
          dire flail plus:5 ident:all /\
          great mace plus:3 ident:all /\
          demon whip plus:3 ident:all w:5 /\
          giant spiked club plus:3 ident:all /\
          quick blade plus:5 ident:all /\
          great sword plus:3 ident:all /\
          double sword plus:3 ident:all /\
          demon blade plus:3 ident:all w:3 /\
          triple sword plus:1 ident:all w:3 /\
          lajatang plus:3 ident:all /\
          longbow plus:3 ident:all /\
          arbalest plus:3 ident:all /\
          any weapon good_item ident:all w:30")
  e.kitem("b = any armour level:27 ident:all /\
          pair of gloves plus:1 ident:all /\
          pair of boots plus:1 ident:all /\
          helmet plus:1 ident:all /\
          cloak plus:1 ident:all /\
          chain mail plus:6 ident:all w:20 /\
          ring mail plus:4 ident:all /\
          scale mail plus:7 ident:all /\
          plate armour plus:5 ident:all /\
          fire dragon scales plus:4 ident:all /\
          ice dragon scales plus:4 ident:all /\
          swamp dragon scales plus:2 ident:all /\
          acid dragon scales plus:2 ident:all /\
          storm dragon scales plus:3 ident:all w:5 /\
          shadow dragon scales plus:3 ident:all w:5 /\
          gold dragon scales plus:2 ident:all /\
          tower shield plus:1 ident:all /\
          any armour good_item ident:all w:20")
  e.kitem("c = any weapon good_item ident:all")
  e.kitem("d = any armour good_item ident:all")
  e.subst("c = ccc(")
  e.subst("d = ddd[")
  e.lua_marker('~', props_marker {
           door_description_suffix=" to the Main Hall (Safe)",
           })
  e.lua_marker('<', props_marker {
        door_description_suffix=" to the Hallway of Sentries (Extremely Hard)",
           })
  e.lua_marker('>', props_marker {
           door_description_suffix=" to the Coven (Very Hard)",
           })
  e.lua_marker('#', props_marker {
           door_description_suffix=" to the Armoury (Hard)",
           })
end

function coven_setup(e)
  e.kmons("0 = deep elf annihilator / deep elf death mage / deep elf sorcerer /\
        deep elf demonologist / deep elf high priest / nonbase draconian w:20 /\
        sphinx / lich / ancient lich w:3 / arcanist w:5 / occultist w:5 /\
        ogre mage / vampire mage / naga mage / nagaraja / base draconian w:20")
  e.kmons("9 = Frederick / Margery band / Boris / Frances")
  e.kfeat("v = crystal_wall")
  e.colour("v = green")
  e.tile("v = wall_emerald")
  e.subst("0 = 0:20 9:1")
  e.kitem("a = any book good_item ident:all")
  e.kitem("b = amulet of faith randart ident:all /\
          amulet of guardian spirit randart ident:all /\
          amulet of magic regeneration randart ident:all /\
          amulet of reflection randart ident:all /\
          amulet of regeneration randart ident:all /\
          ring of slaying plus:5 randart ident:all /\
          any jewellery randart level:27 ident:all w:40")
  e.kitem("c = ring of protection from fire randart ident:all /\
          ring of protection from cold randart ident:all /\
          ring of positive energy randart ident:all /\
          ring of willpower randart ident:all /\
          ring of fire randart ident:all /\
          ring of ice randart ident:all /\
          ring of see invisible randart ident:all /\
          ring of poison resistance randart ident:all /\
          ring of slaying plus:5 ident:all /\
          ring of protection plus:6 randart ident:all /\
          ring of evasion plus:6 randart ident:all /\
          ring of strength plus:6 randart ident:all /\
          ring of intelligence plus:6 randart ident:all /\
          ring of dexterity plus:6 randart ident:all /\
          ring of wizardry ident:all randart")
  e.kitem("d = potion of heal wounds q:5 ident:all")
  e.kitem("e = potion of haste q:5 ident:all")
  e.kitem("f = any wand good_item ident:all")
  e.kitem("h = any magical staff ident:all")
  e.kitem("i = potion of magic q:5 ident:all")
  e.kitem("j = potion of mutation ident:all")
  e.lua_marker('~', props_marker {
           door_description_suffix=" to the Coven (Very Hard)",
           })
end

}}
################################################################################
#
################################################################################
NAME:      pitsprint
TAGS:      sprint
LFLOORCOL: lightgrey
ORIENT:    encompass
DESC:      Sprint VII: "The Pits"
ORDER:     7
SUBVAULT:  A : the_storerooms
SUBVAULT:  B : the_entrance_hall
SUBVAULT:  C : the_vault_of_metal
SUBVAULT:  E : the_armoury
SUBVAULT:  F : the_minivault
SUBVAULT:  G : the_grid_vault
SUBVAULT:  H : the_main_hall
SUBVAULT:  I : the_silver_pit
SUBVAULT:  J : the_coven
SUBVAULT:  K : the_vestibule
SUBVAULT:  L : the_vault_of_steel
SUBVAULT:  N : the_golden_pit
SUBVAULT:  P : the_hallway_of_sentries
SUBVAULT:  R : the_vault_of_crystal
SUBVAULT:  S : the_vault_of_iron
SUBVAULT:  Z : the_final_vault
LFLOORTILE: floor_iron
: general_setup(_G)
MAP
[encoded data, 5670 characters]
ENDMAP


################################################################################
# The Storerooms
################################################################################
NAME:     storerooms_1
TAGS:     the_storerooms unrand
SUBVAULT: Z : storerooms_room_a
SUBVAULT: Y : storerooms_room_b
SUBVAULT: T : the_temple
SUBVAULT: U : equipment_1
# Initial consumables
KITEM: b = any ally scroll ident:all q:1, \
       scroll of amnesia q:5 ident:all, \
       scroll of vulnerability q:2 ident:all
KITEM: c = stone q:10
KITEM: d = potion of invisibility ident:all q:2, \
       potion of berserk rage ident:all q:2, \
       potion of magic q:2 ident:all
# The 3rd equipment room
KITEM: e = rapier plus:2 ego:electrocution ident:all /\
       rapier plus:2 ego:draining ident:all /\
       rapier plus:2 ego:venom ident:all /\
       rapier plus:2 ego:distortion ident:all /\
       rapier plus:2 good_item ident:all
KITEM: f = war axe plus:2 ego:freezing ident:all /\
       war axe plus:2 ego:heavy ident:all /\
       war axe plus:2 good_item ident:all w:5 /\
       broad axe plus:1 ego:freezing ident:all /\
       broad axe plus:1 ego:heavy ident:all /\
       broad axe plus:1 good_item ident:all w:5
KITEM: g = dire flail plus:2 ego:protection ident:all /\
       dire flail plus:2 ego:heavy ident:all /\
       dire flail plus:2 good_item ident:all w:5 /\
       morningstar plus:2 ego:protection ident:all /\
       morningstar plus:2 ego:heavy ident:all /\
       morningstar plus:2 good_item ident:all w:5
KITEM: h = halberd plus:2 ego:protection ident:all /\
       halberd plus:2 ego:venom ident:all /\
       halberd plus:2 good_item ident:all w:5
KITEM: i = lajatang plus:0 ident:all /\
       quarterstaff plus:4 ego:speed ident:all w:15 /\
       quarterstaff plus:4 good_item ident:all w:5
KITEM: j = scimitar plus:2 ego:flaming ident:all /\
       scimitar plus:2 ego:holy_wrath ident:all /\
       scimitar plus:2 good_item ident:all
KITEM: k = pair of gloves mundane ident:all /\
       pair of boots mundane ident:all /\
       helmet mundane ident:all /\
       cloak mundane ident:all /\
       chain mail plus:4 ident:all w:20 /\
       ring mail plus:5 ident:all /\
       scale mail plus:4 ident:all /\
       plate armour plus:3 ident:all
KITEM: l = ring of protection plus:3 ident:all /\
       ring of evasion plus:3 ident:all /\
       ring of strength plus:3 ident:all /\
       ring of intelligence plus:3 ident:all /\
       ring of dexterity plus:3 ident:all
SHUFFLE: efghij
TILE:  v = dngn_metal_wall_cyan
: lua_marker('~', props_marker {
:            door_description_suffix=" to the Temple (Safe)",
:            })
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
vvvvvvvvvvvv
vTTTTTTTTTTv
vTTTTTTTTTTv
vTTTTTTTTTTv
vvvvvvvvvv~v
vabcd+UUU+@v
vvvvvvvvvv.v
v.........G@
v+vvvvv&vvvv
v.vZZZZZZZZv
v.vZZZZZZZZv
v.vZZZZZZZZv
v.vZZZZZZZZv
v.vZZZZZZZZv
v.vZZZZZZZZv
v.vZZZZZZZZv
v.vZZZZZZZZv
v&vvvvvvvvvv
vYYYYYYYv11v
vYYYYYYYv1vvvvvvvvvvv
vYYYYYYYv1v..1.v!!kkv
vYYYYYYYv&v....v!!kkv
vYYYYYYYv2&...2&llhiv
vYYYYYYYv&v....v!!fgv
vYYYYYYY&1v..2.v!!ejv
vvvvvvvvvvvvvvvvvvvvv
ENDMAP

NAME:  equipment_1
TAGS:  equipment_1 unrand
KITEM: a = dagger plus:2 ident:all, /\
           falchion plus:2 ident:all
KITEM: b = hand axe plus:2 ident:all, /\
           mace plus:2 ident:all
KITEM: c = trident plus:2 ident:all, /\
           quarterstaff plus:2 ident:all
SHUFFLE: abc
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
abc
ENDMAP

NAME:  equipment_2
TAGS:  equipment_2
KITEM: a = dagger ego:electrocution ident:all /\
       dagger ego:draining ident:all /\
       dagger ego:venom ident:all
KITEM: b = hand axe ego:freezing ident:all /\
       hand axe ego:heavy ident:all
KITEM: c = mace ego:heavy ident:all /\
       mace ego:protection ident:all /\
       flail ego:heavy ident:all /\
       flail ego:protection ident:all
KITEM: d = trident ego:heavy ident:all
KITEM: e = quarterstaff ego:protection ident:all /\
       quarterstaff ego:speed ident:all
KITEM: f = long sword ego:holy_wrath ident:all /\
       long sword ego:flaming ident:all
KITEM: g = potion of heal wounds q:5 ident:all
KITEM: h = potion of curing q:5 ident:all
KITEM: i = chain mail plus:3 ident:all w:20 /\
       ring mail plus:3 ident:all /\
       scale mail plus:3 ident:all /\
       plate armour plus:2 ident:all
SHUFFLE: abcdef
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
gedai
hfcbi
ENDMAP


NAME:  storerooms_room_a_1
TAGS:  storerooms_room_a unrand
SUBVAULT: U : equipment_2
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
GGv..G&.
..vG..v.
..vvvvv.
..&..Gv.
..&G..&.
..vvvvvv
..&UUUUU
G1vUUUUU
ENDMAP

NAME:  storerooms_room_a_2
TAGS:  storerooms_room_a unrand
SUBVAULT: U : equipment_2
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
UUv.G..G
UUvvvvv&
UUv...G.
UUv.G...
UUvvv&vv
v&v....G
.1......
..G....G
ENDMAP

NAME:  storerooms_room_a_3
TAGS:  storerooms_room_a unrand
SUBVAULT: U : equipment_2
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
.Gv..vUU
..&GGvUU
G.vvvvUU
..v1GvUU
.Gv..vUU
v&v..v&v
.......G
.....G..
ENDMAP

NAME:  storerooms_room_a_4
TAGS:  storerooms_room_a unrand
SUBVAULT: U : equipment_2
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
G..vGvUU
..Gv.vUU
...&GvUU
v&vvvvUU
....GvUU
G....v&v
......1.
....G...
ENDMAP

NAME:  storerooms_room_a_5
TAGS:  storerooms_room_a unrand
SUBVAULT: U : equipment_2
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
..G..vUU
.G...vUU
vv&vvvUU
G..G.vUU
.....vUU
vvv&vv&v
G......1
G......G
ENDMAP

NAME:  storerooms_room_a_6
TAGS:  storerooms_room_a unrand
SUBVAULT: U : equipment_2
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
.Gv..vG.
G.&G.&.G
v&vvvv&v
...GG...
...1G...
vvvv&vvv
..UUUUU.
..UUUUU.
ENDMAP

NAME:  storerooms_room_b_1
TAGS:  storerooms_room_b unrand
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
......1
.vvv...
.v1....
.v.1.v.
....1v.
...vvv.
1.....1
ENDMAP

NAME:  storerooms_room_b_2
TAGS:  storerooms_room_b unrand
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
......1
...v...
...v1..
.vv.vv.
..1v1..
...v...
1.....1
ENDMAP

NAME:  storerooms_room_b_3
TAGS:  storerooms_room_b unrand
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
......1
..v.v..
.vv1vv.
..1..1.
.vv.vv.
..v1v..
1......
ENDMAP

NAME:  storerooms_room_b_4
TAGS:  storerooms_room_b unrand
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
......1
.......
..1v...
..vvv.1
...v...
.......
1..1..1
ENDMAP

NAME:  storerooms_room_b_5
TAGS:  storerooms_room_b unrand
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
..v.v1v
.......
v.v.v.v
...1..1
v.v.v.v
1......
v.v1v.1
ENDMAP

NAME:  storerooms_room_b_6
TAGS:  storerooms_room_b unrand
TILE:  v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
...1...
..vvv..
...1...
v1vvv1v
...1...
..vvv..
...1...
ENDMAP


NAME:    temple_room_1
TAGS:    the_temple unrand
KFEAT:   a = altar_ashenzari
KFEAT:   b = altar_beogh
KFEAT:   c = altar_cheibriados
KFEAT:   d = altar_dithmenos
KFEAT:   e = altar_elyvilon
KFEAT:   f = altar_fedhas
KFEAT:   g = altar_gozag
KFEAT:   h = altar_hepliaklqana
KFEAT:   j = altar_jiyva
KFEAT:   k = altar_kikubaaqudgha
KFEAT:   l = altar_lugonu
KFEAT:   m = altar_makhleb
KFEAT:   n = altar_nemelex_xobeh
KFEAT:   o = altar_okawaru
KFEAT:   q = altar_qazlal
KFEAT:   r = altar_ru
KFEAT:   s = altar_sif_muna
KFEAT:   t = altar_trog
KFEAT:   u = altar_uskayaw
KFEAT:   v = altar_vehumet
KFEAT:   w = altar_wu_jian
KFEAT:   x = altar_xom
KFEAT:   y = altar_yredelemnul
KFEAT:   z = altar_zin
KFEAT:   ' = altar_the_shining_one
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
abcdefghj.
klmnoqrst.
uvwxyz'...
ENDMAP

################################################################################
# Safe places
#
################################################################################
# the Entrance Room
################################################################################
NAME:    entrance_room_1
TAGS:    the_entrance_hall unrand
COLOUR:  v = lightgrey
TILE:    v = wall_crypt_metal
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Storerooms (Easy)",
:           })
: lua_marker('<', props_marker {
:           door_description_suffix=" to the Grid Vault (Hard)",
:           })
: lua_marker('>', props_marker {
:           door_description_suffix=" to the Metal Vault (Medium)",
:           })
: lua_marker('_', props_marker {
:           door_description_suffix=" to the Entrance Hall (Safe)",
:           })
: lua_marker('#', props_marker {
:           door_description_suffix=" leading to the Armoury (Hard)",
:           })
MAP
vvvvvvvvvv<<vvvvvv
v.........@@.....v
v......v..v......v
v...............@#
~@..............@#
v......v..v......v
v...@.....@@.....v
vvvv_vvvvv>>vvvvvv
v...@...v
v.......v
v.......v
v...{...v
v.......v
v.......v
v.......v
vvvvvvvvv
ENDMAP


NAME:    main_hall_1
TAGS:    the_main_hall unrand
COLOUR:  v = lightgrey
TILE:    v = wall_crypt_metal
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Vestibule (Extremely Hard)",
:           })
: lua_marker('<', props_marker {
:           door_description_suffix=" to the Steel Vault (Very Hard)",
:           })
: lua_marker('>', props_marker {
:           door_description_suffix=" to the Crystal Vault (Extremely Hard)",
:           })
: lua_marker('#', props_marker {
:           door_description_suffix=" to the Grid Vault (Hard)",
:           })
: lua_marker('_', props_marker {
:           door_description_suffix=" to a Minivault (Hard)",
:           })
: lua_marker('=', props_marker {
:           door_description_suffix=" leading to the Armoury (Hard)",
:           })
MAP
vvvvv~~vvvvv
v....@@....v
v..........v
<@.v....v..v
<@.........v
v..........v
v..v....v..v
#@.........v
#@.........v
v..v....v..v
v.........@>
v..@@....@@>
vvv__vvvv==v
ENDMAP


################################################################################
# The Vaults
#
################################################################################
# The Metal Vault
################################################################################
# 37
# 27 '2', 7 '1', 3 '3'
NAME:    metal_vault_1
TAGS:    unrand
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v@@v2.............vvv22vv....v!!v*av
v..vv1.............v.2vv.v2v2v!!v**v
v..vvvv222v+vvvvvv...vv......v!!v**v
v..v..vvvvv.vv2.3vv+vv1v1v2v2v!!v**v
v..v....vv...v...v...v.......vv+vv+v
v..+....2v...v...v...v.......v.....v
v..+....1+...+.|.+.2.+......3&.....v
v..+....2v...v...v...v.......v.....v
v..v....vv...v...v...v.......vv+vv+v
v..v..vvvvv.vv2.3vv+vv1v1v2v2v|*v??v
v..vvvv222v+vvvvvv...vv......v|*v??v
v..vv1.............v.2vv.v2v2v*|v??v
v..v2.............vvv22vv....va*v??v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 37
# 27 '2', 7 '1', 3 '3'
NAME:    metal_vault_2
TAGS:    unrand
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v@@....vvvv2.......2vv**a**&2.2&*a*v
v......vvvvv2.....1vvv*****vv.vv|||v
vv....vvvvvvvv...vvvvvvvvvvv.2.vvvvv
vvv++vvvvvv..+...+.2vv.3vv.......vvv
vv....vvv...2vv+vv.....vv....1..2.vv
v...1..v....vv...vv....v...........v
v2.....+...2+.2.2.+..2.+..1..1...3.v
v......v....vv...vv....v...........v
vv...2vvv...2vv+vv.....vv....1..2.vv
vvv++vvvvvv..+...+.2vv.3vv.......vvv
vv....vvvvvvvv...vvvvvvvvvvv.2.vvvvv
v...2..vvvvv2.....1vvv!?!?!vv.vv?!?v
v2....2vvvv2.......2vv?!?!?&2.2&!?!v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 36
# 27 '2', 6 '1', 3 '3'
NAME:    metal_vault_3
TAGS:    unrand
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v@@vvvv.....2vvv2..vvvv??&..2..&|*vv
v..vvv..v+v...1.....vv???vv2.2vv*|*v
v..vv2.vv2vv.....v..2v??vv.....vva|v
v..vv2vv...vv...vvv..v?vv...1..2vv*v
v..vvvv....2vv.vv2vv3vvv.........vvv
v..1vv......v...v.v...v...........vv
v...2+...2..+...+.+...+......1..3..v
v..2vv......v...v.v...v...........vv
v..vvvv....2vv.vv2vv3vvv.........vvv
v..vv2vv...vv...vvv..v!vv...1..2vv*v
v..vv2.vv2vv.....v..2v!!vv.....vv**v
v..vvv..v+v...1.....vv!!!vv2.2vv**av
v..vvvv.....2vvv2..vvvv!!&..2..&**vv
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 36
# 26 '2', 7 '1', 3 '3'
NAME:    metal_vault_4
TAGS:    unrand
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v@@....+..+...vvv........vvv2..2vvvv
v......+..+....1vv..23..vv....vvv?!v
v...2.vv..vv2....vv....vv.1v2vv!?!?v
v..2vvv....vvv2...v2...v.....v!?!?!v
v..vv2......2vvv.vvv..vv.v.v2v?!?!?v
v++v...v..v...v...2v..v......vvv+vvv
v.......12....+.1..+..+...1.3&.....v
v++v...v..v...v...2v..v......vvv+vvv
v..vv2......2vvv.vvv..vv.v.v2v***|*v
v..2vvv....vvv2...v2...v.....v*|a**v
v....2vv..vv2....vv....vv.1v2vv***|v
vv2....+..+....1vv..32..vv....vvva*v
vvvv...+..+...vvv........vvv2..2vvvv
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 37
# 28 '2', 6 '1', 3 '3'
NAME:    metal_vault_5
TAGS:    unrand
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v@@vvv2.2vvv..+...vvv.2.......2.&?!v
v...vv...vv..vv.2.vvv...........v!?v
vv...vv+vv..vvv.2.+.vv..2...2..vv?!v
vvv.........2vv...v..vvv.....vvvv!?v
vv..vvv+vvv...vv+vv..3vvv.1.vvv?!?!v
v2.vv.....vv..v2..v...v.......v!?!?v
v1.+..212..+..+..2+.2.+...1..3vvvvvv
v2.vv.....vv..v2..v...v.......v***av
vv..vvv+vvv...vv+vv..3vvv.1.vvv|***v
vvv.........2vv...v..vvv.....vvvv|*v
vv...vv+vv..vvv.2.+.vv..2...2..vv*av
v2..vv...vv..vv.2.vvv...........v*|v
v.2vvv2.2vvv..+...vvv.2.......2.&**v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 37
# 27 '2', 7 '1', 3 '3'
NAME:    metal_vault_6
TAGS:    unrand
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v......v.2.+....vvv.22vv....vv!!?!?v
v...1vvv.1.vvv...v...vv2.1..2vv?!?!v
v..2vv.+...+.vv..3..vvvv....vvvv?!?v
v..vv.2vv+vv2.vv...vv.1vv..vv2.vv?!v
v..v..vv...vv..+...v............v!?v
v..v..v.....v.2v...v....v..v...2vv&v
v..+..+..2..+..+.2.+....2..2......3v
v..v..v.....v.2v...v....v..v...2vv&v
v..v..vv...vv..+...v............v|*v
v..vv.2vv+vv2.vv...vv.1vv..vv2.vv**v
v...vv.+...+.vv..3..vvvv....vvvva*|v
v...2vvv.1.vvv...v...vv2..1.2vv****v
v.....2v.2.+....vvv.22vv....vv|***av
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 35
# 26 '2', 6 '1', 3 '3'
NAME:    metal_vault_7
TAGS:    unrand
WEIGHT:  5
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v...2vv..+...vv2..vvvvv!?!?!?!?!?vvv
v...vv...v..vv......vvv?!?!vvvvv&vvv
v..vv..2vv..v........vv!vvvv2.2..vvv
v..v...vv1..+.....3...vvv2.......3vv
v.1+..vv....vvv.......vv...1......vv
v2vv..v......2vvv..2...v..........2v
vvv...+.........vv.....v....1......v
vv....v....vvvv.2vv..2.v+.........2v
v2.v..vv1.vv..vv..+.....v+.......2vv
v2vvv..vv.+.22.+..v......vv+1..2.vvv
vvv2vv..v.vv..vv..v..3...2.vvvvvv&vv
vv2..+..+..vvvv...vv...vvvvvvv|****v
v2...v.2vv...2....2vv.vv|***a**|**av
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 35
# 26 '2', 6 '1', 3 '3'
NAME:    metal_vault_8
TAGS:    unrand
WEIGHT:  5
: metal_vault_setup(_G)
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
MAP
v>>vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v..........v..2...v1..2...v!?!?!?!?v
v....2.....+.2.2..v......2v?!?!?!?!v
v..vvvvv...vvvvv+vv.......vvvvv&vvvv
v..+..1v.....2........1....2..2...2v
v..v.2.v...1....vv+vv..............v
v.2v1..v.vvvvv..v..3v..vvv+vv...3..v
v..vvvvv.+..2v..v3..v..v.2..v2.....v
v........v...+..vv+vv..+..2.v..2..2v
v.......2v..2v2.....2..vvvv+v.vvv&vv
vv+vvv...v2..v................v*|**v
v2...+...v+vvv...vvvv+vv1....2v**|*v
v..2.v...........v.2...v......va***v
v...2v..1.......2+..2.2v..2...v*|*av
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP


################################################################################
# The Steel Vault
################################################################################
# 44
# 17 '3', 24 '4', 3 '5'
NAME:   steel_vault_1
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: steel_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v..!!!????v..+........33.........v
v..!!!???vv..+.4......33......4..v
v..!!!!?vv..vvvv4.....vv.....4vvvv
v..!!vvvv..vv||vvvv........vvvv||v
v&vvvv4....4v||.43vvvv++vvvv34.||v
v.5.4....vv.v4........33........4v
v..4..vv...4v5........vv........3v
v.5.4....vv.v4........33........4v
v&vvvv4....4v||.43vvvv++vvvv34.||v
v..ccvvvv..vv||vvvv........vvvv||v
v..cc[[(vv..vvvv4.....vv.....4vvvv
v..cc[[((vv..+.4......33......4.@~
v@@|[[[(((v..+........33........@~
v<<vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 44
# 17 '3', 24 '4', 3 '5'
NAME:   steel_vault_2
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: steel_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
vcccv|||||.......4..........34v..v
vcccvv||4.....4.v.v.4.......4vv..v
v[[[[v|44...4.vv...vv.3....43v...v
v[[[(vv54..vvv.......vvv...3vv...v
v((((!vvvvv.............vvvvv..v.v
v((!!!!v........4v3.......+3..33.v
v!!!!?.&.5.....vv3vv......v...vv.v
v!!??..v........4v3.......+3..33.v
v!??..vvvvv.............vvvvv..v.v
v??..vv54..vvv.......vvv...3vv...v
v?...v|44...4.vv...vv.3....43v...v
v...vv||4.....4.v.v.4.......4vv.@~
v@@.v|||||.......4..........34v.@~
v<<vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP


# 44
# 17 '3', 24 '4', 3 '5'
NAME:   steel_vault_3
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: steel_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v!!!!!!????&.......v.343v|||||.4.v
v!!!!!!????v...........4v..3.3..4v
v++vvvvvvvvv..44...v....v...3...|v
vccc(((([[[v..5v+vvv....+.......|v
vccc((([[[[v..4v..3.....vvvvvvv.vv
vvvvvvvvvvvv.vvv.3vv4...........4v
v54v...v..........vv...3........4v
v4.v.4............3.vv+vvvvv.vvvvv
v..+...vvvv+vvv.v...v.....v......v
v.4v.5.v........v............33..v
v..v.......44...v...v........33..v
v.4v.4....3443......v3...4v.....@~
v@@....v||||||||v4.4v3|||4v.....@~
v<<vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 44
# 17 '3', 24 '4', 3 '5'
NAME:   steel_vault_4
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: steel_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v!!!!v.4v||||||||v.44.v.34v33..44v
v!!!!v4....v44v...........v.....4v
v??!!v......5.............v......v
v??!!v..v..v4.v..v....v...v....33v
v??vvv.vv........vv..vv...vv...vvv
v??v..4..v......v..33..v.v..v.v.4v
vc[&..5...vvvvvv...43............v
vc[v..4..v......v..33..v.v..v.v.4v
vc[vvv.vv........vv..vv...vv...vvv
vc[[[v..v..v4.v..v....v...v....33v
vc[((v......5.............v......v
vc(((v4....v44v...........v.....@~
v@@((v.4v||||||||v.44.v.34v33...@~
v<<vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 44
# 16 '3', 25 '4', 3 '5'
NAME:   steel_vault_5
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: steel_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v!!!!v4...4v5......4v4....33..v..v
v!!!!v.....v........v.........v..v
v!!!!v.....4..3..v..4..v......v..v
v????v4.........4v.....v4....4v33v
v????vvv..vvv..vvv..v..vvv..vvv33v
v[...v...4.........3v3...........v
vc[..&.5...4.33.4.vvvvv..........v
vc[[.v...4.........3v3...........v
vc[[(vvv..vvv..vvv..v..vvv..vvv..v
vcc[(v4.........4v.....v4....4v..v
v.c((v.....4..3..v..4..v......v..v
v..((v.....v........v.........v.@~
v@@.(v4...4v5......4v4....33..v.@~
v<<vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP


################################################################################
# The Crystal Vault
################################################################################
# 47
# 20 '4', 27 '5'
NAME:   crystal_vault_1
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: crystal_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v44v55v5......5......5v55v55v
v44v44v.....5...5.....v44v44v
v++v++v..vvvvvvvvvvv..v++v++v
v........v))))$!!!!v.......5v
v.......5v))))$!!!!v5......4v
v..v..v..v$$$$$$$$$&..v..v.5v
v.......5v]]]]$ccccv5......4v
v........v]]]]$ccccv.......5v
v++v++v..vvvvvvvvvvv..v++v++v
>@.v44v.....5...5.....v44v44v
>@.v44v5......5......5v55v55v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 46
# 20 '4', 26 '5'
NAME:   crystal_vault_2
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: crystal_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v54...v55vcccc$!!!!v5....454v
v54...v..vcccc$!!!!v5....454v
vvvv++v++vvvvv&vvvvv++v++vvvv
v44...................5....4v
v44...v...5...5...5...v....5v
v..v.....v5.v555v.5v.....v.5v
v44...v...5...5...5...v....5v
v44...................5....4v
vvvv++v++vvvvv&vvvvv++v++vvvv
>@....v..v]]]]$))))v5....454v
>@....v55v]]]]$))))v5....454v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 47
# 20 '4', 27 '5'
NAME:   crystal_vault_3
WEIGHT: 5
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: crystal_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v]]))v54..vv....5vv5...5..5.v
v]]))&54.+v...4...vv..4..4..v
v]]))v54+v.........vv5..5..5v
vvvvvvvvv.....4.....vv+vv+vvv
v44..........5v5............v
v5.......4..4v5v4..5..5...5.v
v44..........5v5............v
vvvv++vvv.....4.....vvvvv++vv
v.......vv.........vvc!!v..5v
>@......4vv...4...vvcc!!&.45v
>@......44vv5...5vvccc!!v.55v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 47
# 20 '4', 27 '5'
NAME:   crystal_vault_4
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: crystal_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v5.4.4v5.5.5v55vcccc&.55.v))v
v.....v.....v44vccccv4444v))v
v4.v++v++v++v++vvvvvv+vv+v))v
v..+.....................v))v
v4.+.....5.....5.....5...vv&v
vvvv..v.5v5.v.5v5.v.5v5.....v
v44+.....5.....5.....5...vv&v
v..+.....................v]]v
v..v++v++v++v++vvvvvv+vv+v]]v
>@...4v.....v44v!!!!v4444v]]v
>@...4v5.5.5v55v!!!!&.55.v]]v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 47
# 20 '4', 27 '5'
NAME:   crystal_vault_5
WEIGHT: 5
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: crystal_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v]]vccccv4...5.4..4...5..555v
v]]vccccv..................5v
v]]vv&vvv.5.4.....vvv...5..5v
v]]&4.............v5555v....v
vvvv.........5.4..v5555v5...v
v4...vvv....4...5....vvv...5v
v....v5444v...5..........vvvv
v....v4445v...4...4...4..&))v
v.......vvv5........vvv&vv))v
>@..................v!!!!v))v
>@..4.....4...5..4.5v!!!!v))v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 47
# 20 '4', 27 '5'
NAME:   crystal_vault_6
WEIGHT: 5
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: crystal_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
v]]+44+..+))+..+..+44+..+ccvv
v]]+44+..+))+.5+5.+44+..+ccvv
v++v++v++v++v++v++v++v++v++vv
v..+..+45+..+45+]]+55+..+55vv
v.5+..+54+..+54+]]+55+..+55vv
v++v++v++v++v++v++v++v++v++vv
v..+44+..+55+..+55+..+!!+.5vv
v..+44+..+55+5.+55+.5+!!+5.vv
v++v++v++v++v++v++v++v++v++vv
>@.+..+..+..+))+44+!!+.5+ccvv
>@.+..+5.+5.+))+44+!!+5.+ccvv
vvvvvvvvvvvvvvvvvvvvvvvvvvvvv
ENDMAP


################################################################################
# The Iron Vault
################################################################################
# 42
# 21 '5', 21 '6'
NAME:   iron_vault_1
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: iron_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvv
vv6vv5vvv5vvv6vvv5vvvv
vv+v555+...+...+.5.+6v
vv.+v5+vv6+vv5vvv5+vvv
v6.6vvv6vvv6vvv.vvv.vv
vv.v+vvvv'vvvv.5.+.5.v
vv+vv6vv'''vvvv.vv+.vv
vvv5vvv'''''vvv+v5vvvv
vv565&'''d'''vv.vvv.vv
vv+5+vv'''''vv.6.+.6.v
v6vvv6vv'''vvv+.vv+.vv
vvv'vvvvv'vvv6vvv6v+vv
vvv'vvv.vvv.vvv.vvv.vv
v''6'+.6.+.6.+.5.+.5.v
vv+'vv+.vv+.vv+.vv+.vv
v6v'v5vvv5vvv6vvv5vv~~
vvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 42
# 21 '5', 21 '6'
NAME:   iron_vault_2
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: iron_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvv
vv6+v.vvv5vvv.vvv5vvvv
vvvv.6.+.65v.6.+.6.+5v
v6vvv.vvv.vvv.vvv5vvvv
vv+.v+v.vv+.vv+.vvv.vv
vv6.6v.6.v555v.5.v.5.v
vvv.vvv.+vv.+vv.vv+.vv
v6v+v6vvv6v+v6v+v5v+vv
vv+5+vv6vvv.vvv.vvv.vv
vv565+.55v.6.+.5.v.6.v
vvv5vvv6vv+.+vv.+v+.vv
vvvvvvv&v6vvv6vvv6v+vv
vv''''''vv+.vvv.vvv.vv
v''''''''v.6.+.5.+.5.v
v'''d''''vv.vv+.vv+.vv
vv''''''vvvvv5vvv5vv~~
vvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 44
# 21 '5', 23 '6'
NAME:   iron_vault_3
TAGS:    unrand
WEIGHT: 5
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: iron_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvv
vv6vv+6&''''''d''''''v
v+vv6vvv'''''''''''''v
vv.vv+vvvvvvvvvvvvvvvv
v.6.+5v6v6+.+6v6vv+5vv
vv.vvvv+v+v+v+v+v6vvvv
vv+v.v+5+.+6+.+5+v+.vv
v6v.6.vvvvvvvvvvvv.6.v
vvvv.vv5+6+5v5+6vvv.vv
v5+vvvv+vvv+vvv+v6v+vv
v+v5+v+5+vv6+v+5+v+6vv
v5vvv6vvv6vvv5vvv5vvvv
vv+.vvv.vvv.vvv.vvv.vv
vv.6.+.6.+.5.+.5.+.5.v
vv+.vv+.vv+.vv+.vv+.vv
v5vvv5vvv5vvv6vvv5vv~~
vvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 43
# 21 '5', 22 '6'
NAME:   iron_vault_4
TAGS:    unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: iron_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvv
vv6vvv6vvv6vvv6vvvvvvv
vvv+.+vv.+vv6+vv''''vv
v6+.65+565+.6.&''''''v
vvvv.vvv.vvv6vv''d'''v
v5vv+vvv+vvvvvv''''''v
vvvv5vvv5vvv.vvv''''vv
v6+.6.+.5.+.6.vvvvvvvv
v+vv5vvv5vvv.vvv5+v.vv
vv6vvv6v+v5vvv6vvv.6.v
v+v+.vv+.vv+.vv+.+v.vv
v6v.6.+555v.6.v.5.v+vv
vv+v.vvv.vvv.+vv.vv.vv
vv.vvv5vvv.vvv.+vv.5.v
v.6.+.5.+.5.+.6.vv+.vv
vv.vvv5vvv.vvv.vv5vv~~
vvvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 42
# 20 '5', 22 '6'
NAME:   iron_vault_5
TAGS:    unrand
WEIGHT: 5
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: iron_vault_setup(_G)
MAP
vvvvvvvvvvvvvvvvvvvvvv
vvvvv5vvvv+v+..vv6vvvv
v6+6vv+vv5v6vv..+vv6vv
vvvv+vv6vvvvv+v..v+vvv
v6v6v6vv+vv6v5vv..vv5v
vv+vvv+v5.+vvvv+v..+vv
v6v6v5v.vv5v5v6vvv..vv
vv+vvvvv..vvv+vv5vv.5v
vv6vv6v.vv..+5vvv+v.5v
v656vv+v5.vvvvv6vv..vv
vv6vv5v+vv+6v5vv+..vvv
vv&vvvv6v5vvvv+v..+vvv
v'''''vvvvvv6vv..vv5vv
v''''''vvv5vv+..v+vv+v
v'''d'''vvv+v..+vv5v.v
v''''''''vvv..vv5vvv~~
vvvvvvvvvvvvvvvvvvvvvv
ENDMAP

################################################################################
# Loot Stores
#
################################################################################
# The Armoury
################################################################################
NAME:    armoury_1
TAGS:    the_armoury unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: armoury_setup(_G)
MAP
            v~~vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv<v
            v@@...............................@v
            v........2.3.............3.2.......v
            v..vvvvvvvvvvvvvv##vvvvvvvvvvvvvv..v
            v2.vaavaavccccv......vddddvbbvbbv..v
            v..vaavaavv&&vv......vv&&vvbbvbbv.2v
vvvv        v.3v.....v0030v3....3v0300v.....v..v
v..v        v..v..vvvv....vvv..vvv....vvvv..v3.v
v..v        v2.v..&4....................4&..v..v
_@.v        v..v..vvvv................vvvv..v.2v
_@.vvvvvvvvvv..v.....v..vvvv9999vvvv..v.....v..v
v......22......vaavaav..veev9889vffv..vbbvbbv..v
v..............vaavaav00&eevv99vvff&00vbbvbbv@@v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv>>v
ENDMAP

NAME:    armoury_2
TAGS:    the_armoury unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: armoury_setup(_G)
MAP
            v~~vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv<v
            v@@...............................@v
            v........2.3.............3.2.......v
            v..vvvvvvvvvvvvvv##vvvvvvvvvvvvvv..v
            v2.vaa&030&aav........vbb&030&bbv..v
            v..vaav...vaav3......3vbbv...vbbv.2v
vvvv        v.3vvvv...vvvvvvv..vvvvvvv...vvvv..v
v..v        v..v.........v........v.........v3.v
v..v        v2.v4..........................4v..v
_@.v        v..v.0...0...v99999999v...0...0.v.2v
_@.vvvvvvvvvv..vv&vvv&vv.vvvv88vvvv.vv&vvv&vv..v
v......22......vaaaavccv.veevvvvffv.vddvbbbbv..v
v..............vaaaavccv0&eevvvvff&0vddvbbbbv@@v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv>>v
ENDMAP

NAME:    armoury_3
TAGS:    the_armoury unrand
WEIGHT:  5
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: armoury_setup(_G)
MAP
            v~~vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv<v
            v@@...............................@v
            v........2.3.............3.2.......v
            v..vvvvvvvvvvvvvv##vvvvvvvvvvvvvv..v
            v2.vaaavcvev3v........v3vfvdvbbbv..v
            v..vavavcvev.v.v....v.v.vfvdvbvbv.2v
vvvv        v.3vaaavcvev............vfvdvbbbv..v
v..v        v..vv.vvcvev.v.v....v.v.vfvdvv.vv3.v
v..v        v2.vaaav&v&v............v&v&vbbbv..v
_@.v        v..vavav040v.v.v....v.v.v040vbvbv.2v
_@.vvvvvvvvvv..vaaav........9999........vbbbv..v
v......22......v&vvv.v.v.v.v9889v.v.v.v.vvv&v..v
v..............v0......v030v9999v030v......0v@@v
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv>>v
ENDMAP


################################################################################
# The Coven
################################################################################
# 25
# 6 '4', 19 '0'
NAME:   the_coven_1
TAGS:   the_coven unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: coven_setup(_G)
MAP
vvvvvvvvvvvvvvvvvv~~v
vv4.4vvccccccccvv.@@v
va....vvccccccvv4.4vv
vv.vv..vvv&&vvv...vvv
va0av0...........vvev
va.avv......0v...vgjv
va0av0.0v0..vvv..&fiv
vv.vvv.vvv..0v0..vhjv
va0av0.0v0.......vvdv
va.avv............vvv
va0av0.vv&&vv..0v0.vv
vv.vv.vvbbbbvv.vvv..v
va....vbbbbbbv.0v0..v
vv4.4vvvbbbbvvv....vv
vvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 25
# 6 '4', 19 '0'
NAME:   the_coven_2
TAGS:   the_coven unrand
WEIGHT: 5
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: coven_setup(_G)
MAP
vvvvvvvvvvvvvvvvvv~~v
vcccccccccvvv.....@@v
vcccbbbbvvv..0v....4v
vbbbbbvvv....vvv....v
vbbbvvv......0v0...4v
vb&vv....0v0........v
vvv4.....vvv...0v0..v
vv4..0v0.0v0...vvv..v
v....vvv.......0v0..v
vv...0v0...........vv
vvvvv......0v0...vvvv
vaaavvv4...vvv..v&jdv
vaaaaa&vv4.0v0.vvhijv
vaaaaaaavvv...vvvfgev
vvvvvvvvvvvvvvvvvvvvv
ENDMAP

# 25
# 6 '4', 19 '0'
NAME:   the_coven_3
TAGS:   the_coven unrand
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: coven_setup(_G)
MAP
vvvvvvvvvvvvvvvvvv~~v
vbbbbvv...v0v0v...@@v
vbbbbv4.v.......v..vv
vbbb&v.vvv.....vvv.av
vbbvv4.0v0.....0v0.vv
vvvvv..vvv.0v0.vvv.av
vejgv4..v..vvv..v..av
vhif&...0..0v0..0..av
vdjfv4..v..vvv..v..av
vvvvv..vvv.0v0.vvv.av
vccvv4.0v0.....0v0.vv
vccc&v.vvv.....vvv.av
vccccv4.v...0...v..vv
vccccvvaaavavavaaavvv
vvvvvvvvvvvvvvvvvvvvv
ENDMAP


################################################################################
# Mini-Vaults
################################################################################
NAME:   mini_pit_1
TAGS:   the_minivault unrand
COLOUR: v = white
TILE:   v = wall_cobalt_stone
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
KITEM:  34CBDEJK = superb_item ident:all w:66 /\
                   nothing w:30
: lua_marker('_', props_marker {
:           door_description_suffix=" to a Minivault (Hard)",
:           })
MAP
vvv__vvv
v..@@..v
v.v+vv.v
v.v33+.v
v.+44v.v
v.v43+.v
v.+33v.v
v.vv+v.v
v......v
vvvvvvvv
ENDMAP

NAME:   grid_room_1
TAGS:   the_grid_vault unrand
NSUBST: + = 1:& / *:v
COLOUR: v = white
TILE:   v = wall_cobalt_stone
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
KITEM:  3CDJ = superb_item ident:all w:66 / star_item ident:all w:33
: lua_marker('<', props_marker {
:           door_description_suffix=" to the Main Hall (Safe)",
:           })
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Grid Vault (Hard)",
:           })
MAP
vvvvvvvvvvvvvvvvvvvvvv
v...................@<
v...................@<
v..vvv+vvv+vvv+v+vv..v
v..+v.v.v.v3v.v.v.v..v
v..v.v2v2v3v3v2v2v+..v
v..+v3v3v4v3v4v3v3v..v
v..v.v2v2v3v3v2v2v+..v
v..vv.v.v.v3v.v.v.v..v
v..v+vvv+vvv+vvv+vv..v
v....................v
v.........@@.........v
vvvvvvvvvv~~vvvvvvvvvv
ENDMAP

NAME:   hallway_of_sentries
TAGS:   the_hallway_of_sentries unrand
KFEAT:  & = closed_door
MARKER: & = lua:restrict_door()
TILE:   v = dngn_metal_wall_cyan
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Golden Pit (Nightmare!)",
:           })
: lua_marker('<', props_marker {
:       door_description_suffix=" to the Hallway of Sentries (Extremely Hard)",
:           })
MAP
v~v
v5v
v&v
v6v
v&v
v5v
v&v
v6v
v&v
v5v
v&v
v6v
v&v
v5v
464
464
v5v
v&v
v5v
v&v
v6v
v&v
v5v
v&v
v6v
v&v
v5v
v&v
v6v
v<v
ENDMAP

NAME:   the_vestibule_1
TAGS:   the_vestibule unrand
COLOUR: v = magenta
TILE:   v = dngn_metal_wall_blue
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Vestibule (Extremely Hard)",
:           })
: lua_marker('>', props_marker {
:           door_description_suffix=" to the Final Vault (Nightmare!)",
:           })
MAP
vvvvvvvvvv>>vvvvvvv
vvvv......@@...vvvv
vv....5.....5....vv
v..4...........5..v
v........5........v
v..4...........5..v
vv....4.....5....vv
vvvv.@@........vvvv
vvvvv~~vvvvvvvvvvvv
ENDMAP


################################################################################
# Pits
#
################################################################################
# The Silver Pit
################################################################################
NAME:   silver_pit
TAGS:   the_silver_pit unrand
KITEM:  2ABCDE = silver rune of zot
KITEM:  1abcde = superb_item ident:all w:66 / star_item ident:all w:33 /\
        any ident:all w:133
NSUBST: + = 1:& / *:v
KMONS:  a = orc knight w:20 / orc warrior w:20 / orc warlord w:20 /\
        orc sorcerer / orc high priest
KMONS:  A = orc warlord
KMONS:  b = ogre / two-headed ogre / troll / deep troll /\
        iron troll w:5 / deep troll / ogre mage w:5 /\
        cyclops / stone giant w:5 / ettin w:5
KMONS:  B = titan
KMONS:  c = human / arcanist w:5 / occultist w:5 / / hell knight /\
        vault guard / necromancer
KMONS:  C = Frederick, Louise, Rupert
KMONS:  d = zombie w:15 / skeleton w:15 / simulacrum w:15 /\
        vampire / vampire mage / vampire knight / ghoul w:5 /\
        skeletal warrior w:20 / lich w:3 / bone dragon w:3 / wraith w:3 /\
        freezing wraith w:3 / flayed ghost
KMONS:  D = lich
KMONS:  e = hydra w:20 / swamp dragon / acid dragon / steam dragon /\
        catoblepas / dire elephant / rime drake / lindwurm / komodo dragon /\
        basilisk / swamp drake / wyvern / fire dragon w:5 / ice dragon w:5
KMONS:  E = golden dragon
SUBST:  1 : a, 2 : A
SHUFFLE: aA / bB / cC / dD / eE
COLOUR: v = yellow
TILE:   v = wall_lab_metal
: general_setup(_G)
: general_item_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Silver Pit (Extremely Hard)",
:           })
MAP
v~~vvvvvvvvv
v@@v1111111v
v..+1111111v
v..+1111111v
v..+1112111v
v..+1111111v
v..+1111111v
v..+1111111v
v..v1111111v
vvvvvvvvvvvv
ENDMAP


################################################################################
# The Golden Pit
################################################################################
NAME:   golden_pit
TAGS:   the_golden_pit unrand
KITEM:  2ABCD = golden rune of zot
KITEM:  1abcd = superb_item ident:all w:66 / star_item ident:all w:33 /\
        any ident:all w:33
KMONS:  a = stone giant / frost giant / fire giant / ettin / titan / cyclops
KMONS:  A = titan
# I'm sorry if you get an undead pit here
KMONS:  b = zombie w:20 / skeleton w:20 / simulacrum w:20 /\
        ancient lich w:5 / vampire knight / mummy priest / lich /\
        royal mummy / bone dragon / ghoul / skeletal warrior /\
        guardian mummy
KMONS:  B = ancient lich
KMONS:  c = fire dragon / ice dragon / shadow dragon / iron dragon w:5 /\
        quicksilver dragon w:5 / golden dragon / swamp dragon /\
        hydra
KMONS:  C = quicksilver dragon
KMONS:  d = angel / daeva / cherub
KMONS:  D = pearl dragon
NSUBST: + = 1:& / *:v
SUBST:  1 : a, 2 : A
SHUFFLE: aA / bB / cC / dD
COLOUR: v = yellow
TILE:   v = wall_lab_metal
: general_setup(_G)
: general_item_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Golden Pit (Nightmare!)",
:           })
MAP
vvvvvvvvvvvvvvvvvvvvvvvvv
vvv1111111111111111111vvv
vvv1111111112111111111vvv
vvv1111111111111111111vvv
vvv1111111111111111111vvv
vvvvvv+++++++++++++vvvvvv
v.......................v
v.....................@@v
vvvvvvvvvvvvvvvvvvvvvvv~v
ENDMAP


################################################################################
# The Final Vault
################################################################################
# 65
# ~13 '7', 13 '6', ~12 '0', 4 '5', 23 '9'
NAME:    final_vault
TAGS:    the_final_vault unrand
KMONS:   98 = patrolling orb guardian
KITEM:   8 = orb of zot
SUBST:   0 = 65., 7 = 5.
COLOUR:  v = lightmagenta
TILE:    v = dngn_metal_wall_magenta
: general_setup(_G)
: general_item_setup(_G)
: base_monster_setup(_G)
: lua_marker('~', props_marker {
:           door_description_suffix=" to the Final Vault (Nightmare!)",
:           })
MAP
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
vvvvv.......vvvvvvv...............vvvvvvv........vvvv
vvvv...6.6...vvvvv.................vvvvv.....7....vvv
vvv...........vvv.....vvv999vvv.....vvv..7......7..vv
vv..5...6...5..v....vvv.......vvv....v......7.....0.v
vv....0...0........vv...0...0...vv...v0.7.....7.....v
vv6.....9....0....vv..0.......0..vv..v....7.....7.7.v
vv..0..999........v.....7...7.....v..9......6.......v
vv6...99899.0.....v.7.6...6...6.7.v..9.7.7.....7.7..v
vv..0..999........v.....7...7.....v..9.....7.7......v
vv6.....9....0....vv..0.......0..vv..v..7......7....v
vv....0...0........vv...0...0...vv...v............7.v
vv..5...6...5..v....vvv.......vvv....v....7...7.....v
vvv...........vvv.....vvv999vvv.....vvv............vv
vvvv...6.6...vvvvv.................vvvvv...9999...vvv
vvvvv.......vvvvvvv...............vvvvvvv...@@...vvvv
vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv~~vvvvvvv
ENDMAP
