mirror of
https://codeberg.org/noisytoot/notnotdnethack.git
synced 2024-11-21 16:55:06 +00:00
420 lines
11 KiB
Modula-2
420 lines
11 KiB
Modula-2
# SCCS Id: @(#)dungeon.def 3.4 1996/03/10
|
|
# Copyright (c) 1990-95 by M. Stephenson
|
|
# NetHack may be freely redistributed. See license for details.
|
|
#
|
|
# The dungeon description file for the "standard" 3.1 NetHack.
|
|
#
|
|
# Note: The order of the definition of dungeons in this file
|
|
# reflects in their order of creation in the real dungeon.
|
|
# The "Main" branch must *always* be first.
|
|
# Also note that the order of the dungeons in this file
|
|
# determines the order in which branch levels are assigned.
|
|
# If two dungeons have overlapping ranges for their entry
|
|
# points, then you should list the dungeon with the _least_
|
|
# number of choices for its branch level _first_.
|
|
#
|
|
|
|
DUNGEON: "The Dungeons of Doom" "D" (25, 5)
|
|
ALIGNMENT: unaligned
|
|
BRANCH: "The Gnomish Mines" @ (4, 0) portal
|
|
RNDLEVEL: "villag" "O" @ (4, 0) 4
|
|
BRANCH: "The Ice Caves" @ (4, 0) portal
|
|
BRANCH: "The Dismal Swamp" @ (4, 0) portal
|
|
BRANCH: "The Black Forest" @ (4, 0) portal
|
|
BRANCH: "The Archipelago" @ (4, 0) portal
|
|
%REINCARNATION LEVEL: "rogue" "R" @ (15, 4)
|
|
BRANCH: "Nowhere" @ (4, 0) portal
|
|
LEVEL: "oracle" "O" @ (5, 5)
|
|
CHAINBRANCH: "Vlad's Tower" "oracle" + (0,0) no_up up
|
|
CHAINBRANCH: "The Collapsed Mineshaft" "oracle" + (0,0)
|
|
LEVALIGN: neutral
|
|
CHAINBRANCH: "Lokoban" "oracle" + (1, 0) up
|
|
CHAINLEVEL: "qstlb" "none" "oracle" + (6, 2)
|
|
CHAINBRANCH: "The Quest" "qstlb" + (0, 0) portal
|
|
RNDLEVEL: "bigrm" "B" @ (10, 10) 75 5
|
|
RNDLEVEL: "bgrmb" "G" @ (15, 10) 50 4
|
|
BRANCH: "Fort Ludios" @ (14, 8) portal
|
|
|
|
RNDLEVEL: "stor" "S" @ (5, 20) 90 7
|
|
BRANCH: "The Lost Tomb" @ (5, 25)
|
|
BRANCH: "The Sunless Sea" @ (5, 25)
|
|
BRANCH: "The Temple of Moloch" @ (5, 25)
|
|
|
|
BRANCH: "The Void" @ (10, 25) no_down
|
|
RNDLEVEL: "chall" "none" @ (-5, 4) 6
|
|
LEVALIGN: chaotic
|
|
RNDLEVEL: "castle" "none" @ (-1, 0) 6
|
|
CHAINBRANCH: "Gehennom" "castle" + (0, 0) no_down
|
|
|
|
RNDLEVEL: "lawlev" "L" @ (12, 8) 3
|
|
LEVALIGN: lawful
|
|
CHAINBRANCH: "Law Quest" "lawlev" + (0, 0) portal
|
|
LEVEL: "neulev" "N" @ (12, 8)
|
|
LEVALIGN: neutral
|
|
CHAINBRANCH: "Neutral Quest" "neulev" + (0, 0) portal
|
|
RNDLEVEL: "chalev" "C" @ (12, 8) 3
|
|
LEVALIGN: chaotic
|
|
CHAINBRANCH: "Chaos Quest" "chalev" + (0, 0) portal
|
|
BRANCH: "The Elemental Planes" @ (1, 0) no_down up
|
|
|
|
#
|
|
# Gehennom
|
|
#
|
|
# Now re-worked for 3.1, hell is hopefully going to be a little
|
|
# less boring. Also, in 3.1, the tower is not considered as a
|
|
# part of hell, but is set up as a separate dungeon.
|
|
#
|
|
# Gehennom is no longer considered "hellish" as a complete dungeon.
|
|
# That is, fire resistance is no longer a condition for survival in
|
|
# it. However, Gehennom, and the special levels in it in particular,
|
|
# is abundant with fire traps. As a result, fire resistance is still
|
|
# a prudent survival strategy in Gehennom.
|
|
#
|
|
# Note: Gehennom *must* be the second dungeon defined so that
|
|
# monsters can properly migrate here under certain
|
|
# circumstances.
|
|
#
|
|
# Final layout should be: 3 abyss 3 hell 1 valley 1 cleft 1 sanctum 6 wiz
|
|
# Valley of the Dead, Endless Stair (5 levels), wiz1 - wiz3,
|
|
# abyss, hell1, abyss, hell2, abyss, fake1 - fake 3, hell3,
|
|
# vibrating square(maze), sanctum.
|
|
#
|
|
DUNGEON: "Gehennom" "G" (20, 0)
|
|
DESCRIPTION: mazelike
|
|
DESCRIPTION: hellish
|
|
ALIGNMENT: noalign
|
|
LEVEL: "valley" "V" @ (1, 0)
|
|
LEVEL: "stair1" "H" @ (2, 0)
|
|
LEVEL: "stair2" "I" @ (3, 0)
|
|
LEVEL: "stair3" "J" @ (4, 0)
|
|
LEVEL: "stair4" "K" @ (5, 0)
|
|
LEVEL: "stair5" "L" @ (6, 0)
|
|
LEVEL: "sanctum" "none" @ (-1, 0)
|
|
LEVEL: "wizard1" "none" @ (7, 0)
|
|
CHAINLEVEL: "wizard2" "X" "wizard1" + (1, 0)
|
|
CHAINLEVEL: "wizard3" "none" "wizard1" + (2, 0)
|
|
LEVEL: "hell3" "none" @ (-3, 0)
|
|
LEVALIGN: lawful
|
|
RNDLEVEL: "hell2" "A" @ (-6, 0) 4
|
|
LEVALIGN: lawful
|
|
RNDLEVEL: "hell" "B" @ (-9, 0) 4
|
|
LEVALIGN: lawful
|
|
RNDLEVEL: "abys2" "C" @ (-12,9) 4
|
|
LEVALIGN: chaotic
|
|
RNDLEVEL: "abyss" "D" @ (-12,9) 6
|
|
LEVALIGN: chaotic
|
|
RNDLEVEL: "brine" "none" @ (-12,9) 3
|
|
LEVALIGN: chaotic
|
|
LEVEL: "fakewiz1" "none" @ (-12,9)
|
|
LEVEL: "fakewiz2" "F" @ (-12,9)
|
|
LEVEL: "fakewiz3" "G" @ (-12,9)
|
|
|
|
##
|
|
DUNGEON: "Nowhere" "none" (1, 0)
|
|
ALIGNMENT: neutral
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "nowhere" "none" @ (1, 0)
|
|
|
|
|
|
DUNGEON: "The Collapsed Mineshaft" "Y" (1, 0)
|
|
ALIGNMENT: lawful
|
|
DESCRIPTION: mazelike
|
|
RNDLEVEL: "minend" "none" @ (1, 0) 4
|
|
|
|
#
|
|
# The Mines of the Gnomes of Zurich.
|
|
#
|
|
DUNGEON: "The Gnomish Mines" "M" (9, 1)
|
|
ALIGNMENT: lawful
|
|
DESCRIPTION: mazelike
|
|
RNDLEVEL: "minetn" "T" @ (4, 1) 7
|
|
LEVELDESC: town
|
|
LEVEL: "mineking" "E" @ (-1, 0)
|
|
ENTRY: 2
|
|
|
|
#
|
|
# The ice caves
|
|
#
|
|
DUNGEON: "The Ice Caves" "I" (9,1)
|
|
ALIGNMENT: lawful
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "icetwn" "T" @ (4, 0)
|
|
LEVELDESC: town
|
|
LEVEL: "iceboss" "B" @ (-1, 0)
|
|
ENTRY: 2
|
|
|
|
#
|
|
# The black forest
|
|
#
|
|
DUNGEON: "The Black Forest" "B" (9, 1)
|
|
ALIGNMENT: chaotic
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "bftemple" "T" @ (4, 0)
|
|
LEVELDESC: town
|
|
LEVEL: "bfboss" "B" @ (-1, 0)
|
|
ENTRY: 2
|
|
|
|
#
|
|
# The dismal swamp
|
|
#
|
|
DUNGEON: "The Dismal Swamp" "Z" (9, 1)
|
|
ALIGNMENT: lawful
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "dsbog" "T" @ (4, 0)
|
|
LEVELDESC: town
|
|
LEVEL: "dsboss" "B" @ (-1, 0)
|
|
ENTRY: 2
|
|
#
|
|
# The archipelago
|
|
#
|
|
DUNGEON: "The Archipelago" "A" (9, 1)
|
|
ALIGNMENT: neutral
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "leveetwn" "T" @ (4, 0)
|
|
LEVELDESC: town
|
|
LEVEL: "arcboss" "B" @ (-1, 0)
|
|
ENTRY: 2
|
|
|
|
# Law Quest
|
|
|
|
DUNGEON: "Law Quest" "L" (13, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: lawful
|
|
ENTRY: -1
|
|
LEVEL: "towrtop" "none" @ (1,0)
|
|
LEVEL: "atower3" "J" @ (2,0)
|
|
LEVEL: "atower2" "I" @ (3,0)
|
|
LEVEL: "atower1" "H" @ (4,0)
|
|
LEVEL: "arcfort" "none" @ (5,0)
|
|
LEVEL: "arcward" "G" @ (6,0)
|
|
LEVEL: "arcadia3" "F" @ (7,0)
|
|
LEVEL: "arcadia2" "E" @ (8,0)
|
|
LEVEL: "arcadia1" "D" @ (9,0)
|
|
LEVEL: "illregrd" "none" @ (10,0)
|
|
LEVEL: "path3" "C" @ (11,0)
|
|
LEVEL: "path2" "B" @ (12,0)
|
|
LEVEL: "path1" "A" @ (13,0)
|
|
|
|
#LEVEL: "tower9" "P" @ (2,0)
|
|
#LEVEL: "tower8" "O" @ (3,0)
|
|
#LEVEL: "tower7" "N" @ (4,0)
|
|
#LEVEL: "tower6" "M" @ (5,0)
|
|
|
|
# Neutral Quest
|
|
|
|
DUNGEON: "Neutral Quest" "N" (7, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: neutral
|
|
LEVEL: "gatetwn" "none" @ (1,0)
|
|
LEVEL: "out1" "A" @ (2,0)
|
|
LEVEL: "out2" "B" @ (3,0)
|
|
LEVEL: "out3" "C" @ (4,0)
|
|
LEVEL: "out4" "D" @ (5,0)
|
|
LEVEL: "spire" "E" @ (6,0)
|
|
LEVEL: "sumall" "none" @ (7,0)
|
|
BRANCH: "The Dispensary" @ (2, 4)
|
|
BRANCH: "The Spire" @ (6, 0) up
|
|
BRANCH: "The Lost Cities" @ (-1, 0)
|
|
|
|
|
|
#
|
|
# Lethe Gorge and R'lyeh
|
|
#
|
|
DUNGEON: "The Lost Cities" "R" (13, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: neutral
|
|
RNDLEVEL: "leth-a" "F" @ (1, 0) 2
|
|
LEVEL: "lethe-b" "G" @ (2, 0)
|
|
RNDLEVEL: "leth-c" "H" @ (3, 0) 2
|
|
RNDLEVEL: "leth-d" "I" @ (4, 0) 2
|
|
LEVEL: "lethe-e" "J" @ (5, 0)
|
|
LEVEL: "lethe-f" "K" @ (6, 0)
|
|
LEVEL: "lethe-g" "L" @ (7, 0)
|
|
LEVEL: "lethe-z" "M" @ (8, 0)
|
|
RNDLEVEL: "nkai-a" "N" @ (9, 0) 2
|
|
LEVEL: "nkai-b" "O" @ (10, 0)
|
|
LEVEL: "nkai-c" "P" @ (11, 0)
|
|
LEVEL: "nkai-z" "Q" @ (12, 0)
|
|
LEVEL: "rlyeh" "none" @ (13, 0)
|
|
ENTRY: 2
|
|
|
|
|
|
# Chaos Quests (0, 1, 2)
|
|
|
|
DUNGEON: "Chaos Quest" "C" (9, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: chaotic
|
|
LEVEL: "chaosf" "none" @ (1, 0)
|
|
LEVEL: "chaoss" "A" @ (2, 0)
|
|
LEVEL: "chaost" "B" @ (3, 0)
|
|
LEVEL: "chaosm" "none" @ (4, 0)
|
|
LEVEL: "chaosfrh" "none" @ (5, 0)
|
|
LEVEL: "chaosffh" "C" @ (6, 0)
|
|
LEVEL: "chaossth" "D" @ (7, 0)
|
|
LEVEL: "chaosvth" "E" @ (8, 0)
|
|
LEVEL: "chaose" "none" @ (9, 0)
|
|
|
|
DUNGEON: "Chaos Quest" "S" (10, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: chaotic
|
|
LEVEL: "ossa1" "none" @ (1, 0)
|
|
LEVEL: "mith1" "none" @ (2, 0)
|
|
LEVEL: "mith2" "none" @ (3, 0)
|
|
LEVEL: "mith3" "none" @ (4, 0)
|
|
LEVEL: "cat1" "none" @ (5, 0)
|
|
LEVEL: "cat2" "none" @ (6, 0)
|
|
LEVEL: "cat3" "none" @ (7, 0)
|
|
|
|
DUNGEON: "Chaos Quest" "F" (15, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: chaotic
|
|
LEVEL: "frst1" "none" @ (1, 0)
|
|
LEVEL: "frst2" "none" @ (2, 0)
|
|
LEVEL: "frst3" "none" @ (3, 0)
|
|
LEVEL: "ford" "none" @ (4, 0)
|
|
LEVEL: "frst4" "none" @ (5, 0)
|
|
LEVEL: "mord1" "none" @ (6, 0)
|
|
LEVEL: "mord2" "none" @ (7, 0)
|
|
LEVEL: "spi1" "none" @ (8, 0)
|
|
LEVEL: "mdpth1" "none" @ (9, 0)
|
|
LEVEL: "mdpth2" "I" @ (10, 0)
|
|
LEVEL: "mdpth3" "J" @ (11, 0)
|
|
LEVEL: "bore1" "K" @ (12, 0)
|
|
LEVEL: "bore2" "L" @ (13, 0)
|
|
LEVEL: "bore3" "M" @ (14, 0)
|
|
LEVEL: "bore4" "none" @ (15, 0)
|
|
|
|
|
|
#
|
|
# The Questdungeon
|
|
#
|
|
# This is a proto-dungeon. The level file names will be prepended with
|
|
# the first letter of the character name during initialization.
|
|
# A special "x-fill" level must be defined in the levels description
|
|
# file. It will be used for all levels not defined explicitly below.
|
|
#
|
|
DUNGEON: "The Quest" "Q" (5, 3)
|
|
LEVEL: "x-strt" "none" @ (1, 1)
|
|
LEVEL: "x-loca" "L" @ (3, 1)
|
|
LEVEL: "x-goal" "none" @ (-1, 0)
|
|
|
|
#
|
|
# Lokoban
|
|
#
|
|
DUNGEON: "Lokoban" "none" (1, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: neutral
|
|
ENTRY: -1
|
|
LEVEL: "soko1" "none" @ (1, 0)
|
|
|
|
#
|
|
# The Central Vault of Croesus.
|
|
#
|
|
DUNGEON: "Fort Ludios" "K" (1, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: unaligned
|
|
RNDLEVEL: "knox" "K" @ (-1, 0) 3
|
|
|
|
#
|
|
#
|
|
#The void
|
|
#
|
|
#
|
|
DUNGEON: "The Void" "none" (5, 0)
|
|
ALIGNMENT: unaligned
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "nearvoid" "none" @ (1, 0)
|
|
LEVEL: "nrvoid2" "none" @ (2, 0)
|
|
LEVEL: "aligvoid" "none" @ (3, 0)
|
|
LEVEL: "farvoid" "none" @ (4, 0)
|
|
LEVEL: "ilsensin" "none" @ (5, 0)
|
|
BRANCH: "Sacristy" @ (3, 0) no_down
|
|
|
|
|
|
DUNGEON: "Sacristy" "none" (1, 0)
|
|
ALIGNMENT: unaligned
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "sacris" "none" @ (1, 0)
|
|
|
|
### The Lost Tomb ###
|
|
DUNGEON: "The Lost Tomb" "L" (1, 0)
|
|
ALIGNMENT: chaotic
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "tomb" "L" @ (1, 0)
|
|
|
|
### The Sunless Sea ###
|
|
DUNGEON: "The Sunless Sea" "none" (1, 0)
|
|
ALIGNMENT: chaotic
|
|
DESCRIPTION: mazelike
|
|
RNDLEVEL: "sea" "none" @ (1, 0) 4
|
|
|
|
### The Temple of Moloch ###
|
|
DUNGEON: "The Temple of Moloch" "none" (1, 0)
|
|
ALIGNMENT: chaotic
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "mtemple" "none" @ (1, 0)
|
|
|
|
##
|
|
DUNGEON: "The Dispensary" "none" (1, 0)
|
|
ALIGNMENT: neutral
|
|
DESCRIPTION: mazelike
|
|
LEVEL: "lbyrnth" "none" @ (1, 0)
|
|
|
|
|
|
##
|
|
DUNGEON: "The Spire" "none" (15, 0)
|
|
ALIGNMENT: neutral
|
|
DESCRIPTION: mazelike
|
|
ENTRY: -1
|
|
LEVEL: "sigil" "none" @ (1, 0)
|
|
LEVEL: "stairs2" "none" @ (2, 0)
|
|
LEVEL: "stairs1" "none" @ (3, 0)
|
|
LEVEL: "stairs2" "none" @ (4, 0)
|
|
LEVEL: "stairs1" "none" @ (5, 0)
|
|
LEVEL: "stairs2" "none" @ (6, 0)
|
|
LEVEL: "stairs1" "none" @ (7, 0)
|
|
LEVEL: "stairs2" "none" @ (8, 0)
|
|
LEVEL: "stairs1" "none" @ (9, 0)
|
|
LEVEL: "stairs2" "none" @ (10, 0)
|
|
LEVEL: "stairs1" "none" @ (11, 0)
|
|
LEVEL: "stairs2" "none" @ (12, 0)
|
|
LEVEL: "stairs1" "none" @ (13, 0)
|
|
LEVEL: "stairs2" "none" @ (14, 0)
|
|
LEVEL: "stairs3" "none" @ (15, 0)
|
|
|
|
|
|
#
|
|
# Vlad's Tower
|
|
#
|
|
# It has been removed from Gehennom, and it is surrounded by stone.
|
|
# Must not allow bones files for its top level.
|
|
#
|
|
# It has been moved to the top of the dungeon, branching off the Gnomish mines
|
|
# It is suposed to be on the surface (in a ravine created by the mines),
|
|
# but is still surrounded by stone.
|
|
|
|
DUNGEON: "Vlad's Tower" "T" (4, 0)
|
|
PROTOFILE: "tower"
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: chaotic
|
|
ENTRY: -1
|
|
LEVEL: "tower1" "none" @ (1, 0)
|
|
|
|
|
|
#
|
|
# The Endgame levels
|
|
#
|
|
# Enter on 2nd level from bottom; 1st (from bottom) is a
|
|
# placeholder for surface level, and should be unreachable.
|
|
# [Note: the name "dummy" is checked for in init_dungeons().]
|
|
#
|
|
DUNGEON: "The Elemental Planes" "E" (6, 0)
|
|
DESCRIPTION: mazelike
|
|
ALIGNMENT: unaligned
|
|
ENTRY: -2
|
|
LEVEL: "astral" "none" @ (1, 0)
|
|
LEVEL: "water" "none" @ (2, 0)
|
|
LEVEL: "fire" "none" @ (3, 0)
|
|
LEVEL: "air" "none" @ (4, 0)
|
|
LEVEL: "earth" "none" @ (5, 0)
|
|
LEVEL: "dummy" "none" @ (6, 0)
|