Skip to content

Commit

Permalink
New branch: The Hidden Dungeon.
Browse files Browse the repository at this point in the history
Introducing a new optional side branch - The Hidden Dungeon. This single
level dungeon lies directly below the castle, and was in regular use by
the castle guard until a mysterious and powerful evil force infiltrated
it. No one had ever been brave enough to reclaim the dungeon; the
entrance to the dungeon was hidden, and over time the dungeon
was forgotten, and the story passed into legend.

The Hidden Dungeon is accessible via a sealed off portal found in the
Valley of the Dead. The castle dungeon was taken over by a type of
beholder overlord, known as Tal'Gath (also sometimes referred to as
'Tal'Gath the Undying'). Ancient lore states that all of the beholders
that exist in Yendor sprang from Tal'Gath, and the only way to be rid of
all of them (genocide) is to destroy Tal'Gath.

This branch is the remains of the castle dungeon, part of it is in
fairly good shape, and the remainder has become ruin. The entire dungeon
is flooded with waste sewage from above. Various monsters inhabit this
dungeon, notably a number of beholders that protect Tal'Gath and act as
its guard.

Tal'Gath is an extremely powerful beholder, and is a force to be
reckoned with even with its gaze attacks nullified. Tal'Gath has its own
treasure stash, with a chance for a magic marker to appear in it, but
the main draw of this branch is being able to genocide beholders once
Tal'Gath has been destroyed.

This is the initial commit, some more tweaks may follow.
  • Loading branch information
k21971 committed Sep 1, 2023
1 parent 93c4be4 commit 1c704a9
Show file tree
Hide file tree
Showing 40 changed files with 1,231 additions and 895 deletions.
96 changes: 48 additions & 48 deletions Files
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ Infidel.des Knight.des Monk.des Priest.des Ranger.des
Rogue.des Samurai.des Tourist.des Valkyrie.des Wizard.des
bigroom.des bogusmon.txt castle.des cmdhelp data.base
dungeon.def endgame.des engrave.txt epitaph.txt gehennom.des
goblintown.des help hh history icequeen.des
keyhelp knox.des license medusa.des mines.des
nymph.des opthelp oracle.des oracles.txt purgatory.des
quest.txt rumors.fal rumors.tru sokoban.des symbols
tower.des tribute vaults.des vecna.des wizhelp
yendor.des
goblintown.des help hh history hdgn.des
icequeen.des keyhelp knox.des license medusa.des
mines.des nymph.des opthelp oracle.des oracles.txt
purgatory.des quest.txt rumors.fal rumors.tru sokoban.des
symbols tower.des tribute vaults.des vecna.des
wizhelp yendor.des

doc:
(files for all versions)
Expand Down Expand Up @@ -471,48 +471,48 @@ dat:
dungeon

(files generated by lev_comp at playground creation time)
Arc-fila.lev Arc-filb.lev Arc-goal.lev Arc-loca.lev Arc-strt.lev
Bar-fila.lev Bar-filb.lev Bar-goal.lev Bar-loca.lev Bar-strt.lev
Cav-fila.lev Cav-filb.lev Cav-goal.lev Cav-loca.lev Cav-strt.lev
Con-fila.lev Con-filb.lev Con-goal.lev Con-loca.lev Con-strt.lev
Hea-fila.lev Hea-filb.lev Hea-goal.lev Hea-loca.lev Hea-strt.lev
Inf-fila.lev Inf-filb.lev Inf-goal.lev Inf-loca.lev Inf-strt.lev
Kni-fila.lev Kni-filb.lev Kni-goal.lev Kni-loca.lev Kni-strt.lev
Mon-fila.lev Mon-filb.lev Mon-goal.lev Mon-loca.lev Mon-strt.lev
Pri-fila.lev Pri-filb.lev Pri-goal.lev Pri-loca.lev Pri-strt.lev
Ran-fila.lev Ran-filb.lev Ran-goal.lev Ran-loca.lev Ran-strt.lev
Rog-fila.lev Rog-filb.lev Rog-goal.lev Rog-loca.lev Rog-strt.lev
Sam-fila.lev Sam-filb.lev Sam-goal.lev Sam-loca.lev Sam-strt.lev
Tou-fila.lev Tou-filb.lev Tou-goal.lev Tou-loca.lev Tou-strt.lev
Val-fila.lev Val-filb.lev Val-goal.lev Val-loca.lev Val-strt.lev
Wiz-fila.lev Wiz-filb.lev Wiz-goal.lev Wiz-loca.lev Wiz-strt.lev
air.lev astral.lev bigrm-1.lev bigrm-2.lev bigrm-3.lev
bigrm-4.lev bigrm-5.lev bigrm-6.lev bigrm-7.lev bigrm-8.lev
bigrm-9.lev bigrm-10.lev castle-1.lev caste-2.lev castle-3.lev
earth.lev fire.lev goblintown-1.lev goblintown-2.lev hella-1.lev
hella-2.lev hella-3.lev hella-4.lev hellb-1.lev hellb-2.lev
hellb-3.lev hellc-1.lev hellc-2.lev hellc-3.lev hellfill.lev
icequeen-1.lev icequeen-2.lev icequeen-3.lev knox-1.lev knox-2.lev
knox-3.lev medusa-1.lev medusa-2.lev medusa-3.lev medusa-4.lev
minefill.lev minend-1.lev minend-2.lev minend-3.lev minend-4.lev
minend-5.lev minetn-1.lev minetn-2.lev minetn-3.lev minetn-4.lev
minetn-5.lev minetn-6.lev minetn-7.lev minetn-8.lev nymph.lev
oracle-1.lev oracle-2.lev oracle-3.lev orcus.lev purgatory-1.lev
purgatory-2.lev sanctum.lev soko1-1.lev soko1-2.lev soko1-3.lev
soko1-4.lev soko1-5.lev soko1-6.lev soko2-1.lev soko2-2.lev
soko2-3.lev soko2-4.lev soko2-5.lev soko2-6.lev soko3-1.lev
soko3-2.lev soko3-3.lev soko3-4.lev soko3-5.lev soko3-6.lev
soko4-1.lev soko4-2.lev soko4-3.lev soko4-4.lev soko4-5.lev
soko4-6.lev tower1.lev tower2.lev tower3.lev tower4.lev
valley.lev vecna-1.lev vecna-2.lev vecna-3.lev vlt-0000.lev
vlt-0001.lev vlt-0002.lev vlt-0003.lev vlt-0004.lev vlt-0005.lev
vlt-0006.lev vlt-0007.lev vlt-0008.lev vlt-0009.lev vlt-0010.lev
vlt-0011.lev vlt-0012.lev vlt-0013.lev vlt-0014.lev vlt-0015.lev
vlt-0016.lev vlt-0017.lev vlt-0018.lev vlt-0019.lev vlt-0020.lev
vlt-0021.lev vlt-0022.lev vlt-0023.lev vlt-0024.lev vlt-0025.lev
vlt-0026.lev vlt-0027.lev vlt-0028.lev vlt-0029.lev vlt-0030.lev
vlt-0031.lev vlt-0032.lev vlt-0033.lev water.lev wizard1.lev
wizard2.lev wizard3.lev wizportal.lev
Arc-fila.lev Arc-filb.lev Arc-goal.lev Arc-loca.lev Arc-strt.lev
Bar-fila.lev Bar-filb.lev Bar-goal.lev Bar-loca.lev Bar-strt.lev
Cav-fila.lev Cav-filb.lev Cav-goal.lev Cav-loca.lev Cav-strt.lev
Con-fila.lev Con-filb.lev Con-goal.lev Con-loca.lev Con-strt.lev
Hea-fila.lev Hea-filb.lev Hea-goal.lev Hea-loca.lev Hea-strt.lev
Inf-fila.lev Inf-filb.lev Inf-goal.lev Inf-loca.lev Inf-strt.lev
Kni-fila.lev Kni-filb.lev Kni-goal.lev Kni-loca.lev Kni-strt.lev
Mon-fila.lev Mon-filb.lev Mon-goal.lev Mon-loca.lev Mon-strt.lev
Pri-fila.lev Pri-filb.lev Pri-goal.lev Pri-loca.lev Pri-strt.lev
Ran-fila.lev Ran-filb.lev Ran-goal.lev Ran-loca.lev Ran-strt.lev
Rog-fila.lev Rog-filb.lev Rog-goal.lev Rog-loca.lev Rog-strt.lev
Sam-fila.lev Sam-filb.lev Sam-goal.lev Sam-loca.lev Sam-strt.lev
Tou-fila.lev Tou-filb.lev Tou-goal.lev Tou-loca.lev Tou-strt.lev
Val-fila.lev Val-filb.lev Val-goal.lev Val-loca.lev Val-strt.lev
Wiz-fila.lev Wiz-filb.lev Wiz-goal.lev Wiz-loca.lev Wiz-strt.lev
air.lev astral.lev bigrm-1.lev bigrm-2.lev bigrm-3.lev
bigrm-4.lev bigrm-5.lev bigrm-6.lev bigrm-7.lev bigrm-8.lev
bigrm-9.lev bigrm-10.lev castle-1.lev caste-2.lev castle-3.lev
earth.lev fire.lev goblintown-1.lev goblintown-2.lev hella-1.lev
hella-2.lev hella-3.lev hella-4.lev hellb-1.lev hellb-2.lev
hellb-3.lev hellc-1.lev hellc-2.lev hellc-3.lev hellfill.lev
hdgn.lev icequeen-1.lev icequeen-2.lev icequeen-3.lev knox-1.lev
knox-2.lev knox-3.lev medusa-1.lev medusa-2.lev medusa-3.lev
medusa-4.lev minefill.lev minend-1.lev minend-2.lev minend-3.lev
minend-4.lev minend-5.lev minetn-1.lev minetn-2.lev minetn-3.lev
minetn-4.lev minetn-5.lev minetn-6.lev minetn-7.lev minetn-8.lev
nymph.lev oracle-1.lev oracle-2.lev oracle-3.lev orcus.lev
purgatory-1.lev purgatory-2.lev sanctum.lev soko1-1.lev soko1-2.lev
soko1-3.lev soko1-4.lev soko1-5.lev soko1-6.lev soko2-1.lev
soko2-2.lev soko2-3.lev soko2-4.lev soko2-5.lev soko2-6.lev
soko3-1.lev soko3-2.lev soko3-3.lev soko3-4.lev soko3-5.lev
soko3-6.lev soko4-1.lev soko4-2.lev soko4-3.lev soko4-4.lev
soko4-5.lev soko4-6.lev tower1.lev tower2.lev tower3.lev
tower4.lev valley.lev vecna-1.lev vecna-2.lev vecna-3.lev
vlt-0000.lev vlt-0001.lev vlt-0002.lev vlt-0003.lev vlt-0004.lev
vlt-0005.lev vlt-0006.lev vlt-0007.lev vlt-0008.lev vlt-0009.lev
vlt-0010.lev vlt-0011.lev vlt-0012.lev vlt-0013.lev vlt-0014.lev
vlt-0015.lev vlt-0016.lev vlt-0017.lev vlt-0018.lev vlt-0019.lev
vlt-0020.lev vlt-0021.lev vlt-0022.lev vlt-0023.lev vlt-0024.lev
vlt-0025.lev vlt-0026.lev vlt-0027.lev vlt-0028.lev vlt-0029.lev
vlt-0030.lev vlt-0031.lev vlt-0032.lev vlt-0033.lev water.lev
wizard1.lev wizard2.lev wizard3.lev wizportal.lev

(files generated by makedefs at playground creation time)
data dungeon.pdf options oracles quest.dat vaults.dat
Expand Down
33 changes: 16 additions & 17 deletions dat/castle.des
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@
MAZE:"castle-1",random
FLAGS: noteleport
GEOMETRY:center,center
# 1 2 3 4 5 6 7
#123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
}}}}}}}}}.............................................}}}}}}}}}
}-------}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}-------}
Expand Down Expand Up @@ -49,11 +51,10 @@ SHUFFLE: $place
$monster = monster: { 'L','N','E','H','M','O','R','T','X','Z' }
SHUFFLE: $monster


TELEPORT_REGION:levregion(01,00,10,20),(1,1,61,15),down
TELEPORT_REGION:levregion(69,00,77,20),(1,1,61,15),up
STAIR:levregion(01,00,10,20),(0,0,62,16),up
BRANCH:levregion(69,00,77,20),(1,1,61,15)

FOUNTAIN:(10,08)
# Doors
DOOR:locked,(07,03)
Expand Down Expand Up @@ -291,29 +292,29 @@ REGION:(47,10,47,11),unlit,"ordinary"
MAZE:"castle-2",' '
FLAGS: noteleport
GEOMETRY: center, center
#000000000111111111122222222223333333333444444444455555555556666666666777777
# 1 2 3 4 5 6 7
#123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
T...}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}..}}...}}}}}}}}}}}}}....T.....}}}}...T..
..}}}}}}}}}}}}}}}}}}}..}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}.......}}}}}}}.....
T...}}}}}}}}}..}}}}}}}}}}}}}}}}}}}}}..}}...}}}}}}}}}}}}}....T.....}}}}...T..
...}}}}}}}}}}}}}}}}}}..}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}.......}}}}}}}.....
.}}..}}}----------------------------------------------}}}}}}}..---------S---
}}}}}}}}|...-|.........|........|......S......+......|}}}}}}}}}| - - - - - -
}}}}}}}}|....|.........+........|......--------......|}.}}}}}}}|------------
}}}}.}}}|....+.........|........+......|......|-.....|}..}}}}}.S - - - - - -
}}}}....F...-|.........|........|......S......+......|}}}}}}}}}| - - - - - -
}}}}.}}}|....|.........+........|......--------......|}.}}}}}}}|------------
}}}..}}}|....+.........|........+......|......|-.....|}..}}}}}.S - - - - - -
}}}.T.}}|....|----------........|......|......--FFFF--}}}}}}}}.|------------
}}}}..}}|----|.......|..........|......|......|}}}}}}}}}}}.....| - - - - - -
}}}...}}|----|.......|..........|......|......|}}}}}}}}}}}.....| - - - - - -
}}}}}}}}|....|.LLLLL.|..........--FFFF-|......|}.....}}}....T..|------------
.}}}}}..|....S.LLLLL.S.\........S......+..{...|}...............| - - - - - -
T.}}}.}.|....|.LLLLL.|..........--FFFF-|......|}....}}}...}....|------------
}.}}}}}}|----|.......|..........|......|......|}}}}}}}}}.}}}...| - - - - - -
}}}}}}}}|....|----------........|......|......--FFFF--}}}}}....|------------
T...}.}.|....|.LLLLL.|..........--FFFF-|......|}....}}}...}....|------------
..}}.}}}|----|.......|..........|......|......|}}}}}}}}}.}}}...| - - - - - -
}}}}}.}}|....|----------........|......|......--FFFF--}}}}}....|------------
}}}}}.}}|....+.........|........+......|......|-.....|}}}}}}}..| - - - - - -
}}}}....|....|.........+........|......--------......|}}}}}}}}.|------------
}}}.....|...-|.........|........|......S......+......|}}....}}}| - - - - - -
}}}.....F...-|.........|........|......S......+......|}}....}}}| - - - - - -
}}..}...----------------------------------------------}..}...}}|------------
}}}}}......}}}}...}}}}}}}..}}......}}}}}}}}}}}}}}}}}}}}.....}}}S - - - - - -
}}}}}}...}}}}}}}}...}}.}..}}}}.T.}}}}}}}}}...}}}}}.}}}}}}}...}}|------------
}}}}}}}}}}}}}.}}}}}}}}}}.}}}}}}}..}}.}}}.......}}.}}...}}}}}}}.| - - - - - -
}}}}}}}}}}}}..}}}}}}}}}}.}}}}}}}..}}.}}........}}.}}...}}}}}}}.| - - - - - -
}}}}}}}}}.....}}}}}}}}}}}}}}}}}}}}}}}}.....T..}}}}}}}}.}}}}}}..-------------
ENDMAP

Expand All @@ -329,7 +330,6 @@ $monster = monster: { 'L','N','E','V','M','O','R','T','X','Z' }
TELEPORT_REGION:(64,03,75,20),(07,01,54,17),down
TELEPORT_REGION:(01,01,07,18),(07,01,75,20),up
STAIR:(66,05,75,20),(07,01,66,20),up
BRANCH:(01,01,07,18),(07,01,75,20)

# the inner courtyard
FOUNTAIN:(42,09)
Expand Down Expand Up @@ -533,7 +533,7 @@ MONSTER:'C',(37,13)
MAZE:"castle-3",' '
FLAGS: noteleport
GEOMETRY: center, center
#000000000111111111122222222223333333333444444444455555555556666666666777777
# 1 2 3 4 5 6 7
#123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
---------------------------------------------.LLLLLLL.......................
Expand Down Expand Up @@ -578,7 +578,6 @@ NON_DIGGABLE:(69,00,75,20)
TELEPORT_REGION:(33,15,68,20),(10,00,18,14),down
TELEPORT_REGION:(47,01,75,09),(17,00,44,09),up
STAIR:(33,15,68,20),(00,00,00,00),up
BRANCH:(47,01,75,09),(17,00,44,09)

REGION:(00,00,75,20),lit,"ordinary"

Expand Down
36 changes: 23 additions & 13 deletions dat/dungeon.def
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ RNDLEVEL: "medusa" "none" @ (-5, 4) 4
LEVALIGN: chaotic
CHAINBRANCH: "The Ice Queen's Realm" "medusa" + (-1, 0) portal
RNDLEVEL: "castle" "none" @ (-1, 0) 3
CHAINBRANCH: "Gehennom" "castle" + (0, 0) down
CHAINBRANCH: "Gehennom" "castle" + (0, 0) no_down
BRANCH: "The Elemental Planes" @ (1, 0) no_down up

#
Expand Down Expand Up @@ -63,6 +63,7 @@ RNDLEVEL: "hellc" "C" @ (12, 2) 3
LEVEL: "orcus" "O" @ (9, 2)
LEVEL: "sanctum" "none" @ (-1, 0)
LEVEL: "wizportal" "F" @ (-3, 0)
CHAINBRANCH: "The Hidden Dungeon" "valley" + (0, 0) portal
CHAINBRANCH: "Vecna's Domain" "valley" + (1, 0) portal
CHAINBRANCH: "The Wizard's Tower" "wizportal" + (0, 0) portal up
CHAINBRANCH: "Purgatory" "sanctum" + (0, 0) portal up
Expand Down Expand Up @@ -101,7 +102,7 @@ LEVEL: "x-loca" "L" @ (3, 1)
LEVEL: "x-goal" "none" @ (-1, 0)

#
# Sokoban
# Sokoban
#
DUNGEON: "Sokoban" "none" (4, 0)
DESCRIPTION: mazelike
Expand All @@ -123,13 +124,22 @@ RNDLEVEL: "knox" "K" @ (-1, 0) 3
#
# The Ice Queen's Realm
#
DUNGEON: "The Ice Queen's Realm" "none" (3, 0)
DESCRIPTION: mazelike
DESCRIPTION: iceq
ALIGNMENT: unaligned
LEVEL: "icequeen-1" "none" @ (1, 0)
LEVEL: "icequeen-2" "none" @ (2, 0)
LEVEL: "icequeen-3" "none" @ (3, 0)
DUNGEON: "The Ice Queen's Realm" "none" (3, 0)
DESCRIPTION: mazelike
DESCRIPTION: iceq
ALIGNMENT: unaligned
LEVEL: "icequeen-1" "none" @ (1, 0)
LEVEL: "icequeen-2" "none" @ (2, 0)
LEVEL: "icequeen-3" "none" @ (3, 0)

#
# The Hidden Dungeon
#
DUNGEON: "The Hidden Dungeon" "none" (1, 0)
DESCRIPTION: mazelike
DESCRIPTION: hdgn
ALIGNMENT: chaotic
LEVEL: "hdgn" "none" @ (1, 0)

#
# Vecna's Domain
Expand Down Expand Up @@ -158,7 +168,7 @@ LEVEL: "tower1" "none" @ (1, 0)
# show up in ^O output and in the level teleport menu
LEVEL: "tower2" "none" @ (2, 0)
LEVEL: "tower3" "none" @ (3, 0)
LEVEL: "tower4" "none" @ (4, 0)
LEVEL: "tower4" "none" @ (4, 0)

#
# Purgatory
Expand All @@ -174,10 +184,10 @@ LEVEL: "purgatory-1" "none" @ (1, 0)
LEVEL: "purgatory-2" "none" @ (2, 0)

#
# The Wizards Tower
# The Wizards 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 removed from Gehennom, and it is surrounded by stone.
# Must not allow bones files for its top level.
#
DUNGEON: "The Wizard's Tower" "W" (3, 0)
DESCRIPTION: mazelike
Expand Down
17 changes: 12 additions & 5 deletions dat/gehennom.des
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,17 @@
MAZE:"valley", ' '
FLAGS:noteleport,hardfloor,nommap
GEOMETRY:center,center
# 1 2 3 4 5 6 7 7
#123456789012345678901234567890123456789012345678901234567890123456789012345
MAP
----------------------------------------------------------------------------
|..........|}}}| |.....-| |................| |...............| |...|
|..........|}..| |......--- ----..........-----.-----....---........---.-.|
|.........|-}}.| --........| |.............| |.......---| |-...........--|
|........--}}..| |.......-----.......------| |--------..--|......--...-- |
|--------|}}...| |-......| |....|...-- |...-----................----|...| |
}}}}}}}}}}}....| |.......| |....|...| |..............----------- |...| |
}}}}}}.........| |.....--- |......--- |....---.......| -|...| |
|--------|}}...| |-......| |....|...-- |...-----................----|...|--|
}}}}}}}}}}}....| |.......| |....|...| |..............----------- |...F..|
}}}}}}.........| |.....--- |......--- |....---.......| -|...|--|
|..............| |....-- --....-- |-------- ----BBBB--------------...-- |
|--S--------------BBB-| |...-- |.......| |...............B.....| |
|.....|....||........-| --...| |.......| |...||..........B..---- |
Expand Down Expand Up @@ -68,6 +70,8 @@ STAIR:(01,01),down
# Branch location
BRANCH:(66,17,66,17),(0,0,0,0)
TELEPORT_REGION:(58,09,72,18),(0,0,0,0),down
# Portal location
PORTAL:(74,06,74,06),(00,00,00,00),"hdgn"

# Secret Doors
DOOR:locked,(03,09)
Expand All @@ -76,8 +80,11 @@ DOOR:locked,(08,16)
# The altar of Moloch.
ALTAR:(03,12),noalign,shrine

# Non diggable walls - everywhere!
NON_DIGGABLE:(00,00,75,19)
# Non diggable walls
NON_DIGGABLE:(00,00,71,19)
NON_DIGGABLE:(72,00,75,05)
NON_DIGGABLE:(72,07,75,19)
NON_DIGGABLE:(75,06,75,06)
# Non passable walls
NON_PASSWALL:(00,00,15,09)

Expand Down
Loading

0 comments on commit 1c704a9

Please sign in to comment.