# 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" (15, 3) ALIGNMENT: unaligned BRANCH: "The Gnomish Mines" @ (2, 2) %REINCARNATION LEVEL: "rogue" "R" @ (11, 0) LEVEL: "oracle" "O" @ (4, 2) LEVALIGN: neutral CHAINBRANCH: "Sokoban" "oracle" + (1, 0) up RNDLEVEL: "bigrm" "B" @ (7, 2) 40 5 CHAINBRANCH: "The Quest" "oracle" + (5, 0) portal BRANCH: "Fort Ludios" @ (11, 2) portal RNDLEVEL: "medusa" "none" @ (-3, 2) 2 LEVALIGN: chaotic LEVEL: "castle" "none" @ (-1, 0) CHAINBRANCH: "Gehennom" "castle" + (0, 0) no_down 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. # DUNGEON: "Gehennom" "G" (10, 2) DESCRIPTION: mazelike DESCRIPTION: hellish ALIGNMENT: noalign BRANCH: "Vlad's Tower" @ (4, 1) up LEVEL: "valley" "V" @ (1, 0) LEVEL: "sanctum" "none" @ (-1, 0) LEVEL: "juiblex" "J" @ (2, 1) LEVEL: "baalz" "B" @ (4, 1) LEVEL: "asmodeus" "A" @ (2, 4) LEVEL: "wizard1" "none" @ (6, 1) CHAINLEVEL: "wizard2" "X" "wizard1" + (1, 0) CHAINLEVEL: "wizard3" "Y" "wizard1" + (2, 0) #LEVEL: "orcus" "O" @ (4, 4) #LEVEL: "fakewiz1" "F" @ (6,4) #LEVEL: "fakewiz2" "G" @ (6,4) # # The Mines of the Gnomes of Zurich. # DUNGEON: "The Gnomish Mines" "M" (3, 0) ALIGNMENT: lawful DESCRIPTION: mazelike RNDLEVEL: "minetn" "T" @ (2, 0) 7 LEVELDESC: town RNDLEVEL: "minend" "E" @ (-1, 0) 3 # # 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, 2) LEVEL: "x-strt" "none" @ (1, 1) LEVEL: "x-loca" "L" @ (3, 1) LEVEL: "x-goal" "none" @ (-1, 0) # # Sokoban # DUNGEON: "Sokoban" "none" (4, 0) DESCRIPTION: mazelike ALIGNMENT: neutral ENTRY: -1 RNDLEVEL: "soko1" "none" @ (1, 0) 2 RNDLEVEL: "soko2" "none" @ (2, 0) 2 RNDLEVEL: "soko3" "none" @ (3, 0) 2 RNDLEVEL: "soko4" "none" @ (4, 0) 2 # # The Central Vault of Croesus. # DUNGEON: "Fort Ludios" "K" (1, 0) DESCRIPTION: mazelike ALIGNMENT: unaligned LEVEL: "knox" "K" @ (-1, 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. # DUNGEON: "Vlad's Tower" "T" (3, 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)