diff --git a/dat/dungeon.def b/dat/dungeon.def index d5d18ceaa..093dbbdae 100644 --- a/dat/dungeon.def +++ b/dat/dungeon.def @@ -27,7 +27,7 @@ CHAINBRANCH: "Sokoban" "oracle" + (1, 0) up RNDLEVEL: "bigrm" "B" @ (10, 3) 40 10 CHAINBRANCH: "The Quest" "oracle" + (6, 2) portal BRANCH: "Fort Ludios" @ (18, 4) portal -RNDLEVEL: "medusa" "none" @ (-5, 4) 2 +RNDLEVEL: "medusa" "none" @ (-5, 4) 4 LEVALIGN: chaotic LEVEL: "castle" "none" @ (-1, 0) CHAINBRANCH: "Gehennom" "castle" + (0, 0) no_down diff --git a/dat/medusa.des b/dat/medusa.des index 48720d3ba..0f8c9d26f 100644 --- a/dat/medusa.des +++ b/dat/medusa.des @@ -217,3 +217,202 @@ MONSTER:random,random MONSTER:random,random MONSTER:random,random MONSTER:random,random + + +LEVEL:"medusa-3" +FLAGS: noteleport,mazelevel +INIT_MAP:solidfill,' ' +GEOMETRY:center,center +# +# Here you disturb ravens nesting in the trees. +# +MAP +}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +}}}}}}}}}}.}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}.}}}}}}}}}}}}}}}}}}}}}}}}}}}} +}}}}}}}}T..T.}}}}}}}}}}}}}}}}}}}}..}}}}}}}}.}}}...}}}}}}}.}}}}}......}}}}}}} +}}}}}}.......T.}}}}}}}}}}}..}}}}..T.}}}}}}...T...T..}}...T..}}..-----..}}}}} +}}}...-----....}}}}}}}}}}.T..}}}}}...}}}}}.....T..}}}}}......T..|...|.T..}}} +}}}.T.|...|...T.}}}}}}}.T......}}}}..T..}}.}}}.}}...}}}}}.T.....+...|...}}}} +}}}}..|...|.}}.}}}}}.....}}}T.}}}}.....}}}}}}.T}}}}}}}}}}}}}..T.|...|.}}}}}} +}}}}}.|...|.}}}}}}..T..}}}}}}}}}}}}}T.}}}}}}}}..}}}}}}}}}}}.....-----.}}}}}} +}}}}}.--+--..}}}}}}...}}}}}}}}}}}}}}}}}}}T.}}}}}}}}}}}}}}}}.T.}........}}}}} +}}}}}.......}}}}}}..}}}}}}}}}.}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}.}}}.}}.T.}}}}}} +}}.T...T...}}}}T}}}}}}}}}}}....}}}}}}}}}}T}}}}}.T}}...}}}}}}}}}}}}}}...}}}}} +}}}...T}}}}}}}..}}}}}}}}}}}.T...}}}}}}}}.T.}.T.....T....}}}}}}}}}}}}}.}}}}}} +}}}}}}}}}}}}}}}....}}}}}}}...}}.}}}}}}}}}}............T..}}}}}.T.}}}}}}}}}}} +}}}}}}}}}}}}}}}}..T..}}}}}}}}}}}}}}..}}}}}..------+--...T.}}}....}}}}}}}}}}} +}}}}.}..}}}}}}}.T.....}}}}}}}}}}}..T.}}}}.T.|...|...|....}}}}}.}}}}}...}}}}} +}}}.T.}...}..}}}}T.T.}}}}}}.}}}}}}}....}}...|...+...|.}}}}}}}}}}}}}..T...}}} +}}}}..}}}.....}}...}}}}}}}...}}}}}}}}}}}}}T.|...|...|}}}}}}}}}}}....T..}}}}} +}}}}}..}}}.T..}}}.}}}}}}}}.T..}}}}}}}}}}}}}}---S-----}}}}}}}}}}}}}....}}}}}} +}}}}}}}}}}}..}}}}}}}}}}}}}}}.}}}}}}}}}}}}}}}}}T..T}}}}}}}}}}}}}}}}}}}}}}}}}} +}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +ENDMAP +$place = { (08,06),(66,05),(46,15) } +SHUFFLE: $place +REGION:(00,00,74,19),lit,"ordinary" +REGION:(49,14,51,16),random,"ordinary",unfilled +REGION:(07,05,09,07),unlit,"ordinary" +REGION:(65,04,67,06),unlit,"ordinary" +REGION:(45,14,47,16),unlit,"ordinary" +# Non diggable walls +# 4th room has diggable walls as Medusa is never placed there +NON_DIGGABLE:(06,04,10,08) +NON_DIGGABLE:(64,03,68,07) +NON_DIGGABLE:(44,13,48,17) +# All places are accessible also with jumping, so don't bother +# restricting the placement when teleporting from levels below this. +TELEPORT_REGION:(33,02,38,07),(0,0,0,0),down +STAIR:(32,01,39,07),(0,0,0,0),up +STAIR:$place[0],down +DOOR:locked,(08,08) +DOOR:locked,(64,05) +DOOR:random,(50,13) +DOOR:locked,(48,15) +# +FOUNTAIN:$place[1] +# +CONTAINER:('`',"statue"),$place[2],uncursed,montype:"knight",3,name:"Perseus" { + [75%]: OBJECT: ('[',"shield of reflection"),cursed,+0 + [25%]: OBJECT: ('[',"levitation boots"),+0 + [50%]: OBJECT: (')',"scimitar"),blessed,+2 + [50%]: OBJECT: ('(',"sack") +} +# +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } + +LOOP [8] { + OBJECT:random,random +} +OBJECT:('?',"blank paper"),(48,18) +OBJECT:('?',"blank paper"),(48,18) +# +TRAP:"rust",random +TRAP:"rust",random +TRAP:"board",random +TRAP:"board",random +TRAP:random,random +# +MONSTER:('@',"Medusa"),$place[0] +MONSTER:(';',"giant eel"),random +MONSTER:(';',"giant eel"),random +MONSTER:(';',"jellyfish"),random +MONSTER:(';',"jellyfish"),random +MONSTER:('n',"wood nymph"),random +MONSTER:('n',"wood nymph"),random +MONSTER:('n',"water nymph"),random +MONSTER:('n',"water nymph"),random + +LOOP [30] { + MONSTER:('B',"raven"),random,hostile +} + + +LEVEL:"medusa-4" +FLAGS: noteleport,mazelevel +INIT_MAP:solidfill,' ' +GEOMETRY:center,center +# +# Here the Medusa rules some slithery monsters from her 'palace', with +# a yellow dragon nesting in the backyard. +# +MAP +}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +}}}}}}}}}}}}}}........}}}}}}}}}}}}}}}}}}}}}}}..}}}.....}}}}}}}}}}}----|}}}}} +}}}}}}..----------F-.....}}}}}}}}}}}}}}}}..---...}}}}....T.}}}}}}}....|}}}}} +}}}.....|...F......S}}}}....}}}}}}}...}}.....|}}.}}}}}}}......}}}}|......}}} +}}}.....+...|..{...|}}}}}}}}}}}}.....}}}}|...|}}}}}}}}}}}.}}}}}}}}----.}}}}} +}}......|...|......|}}}}}}}}}......}}}}}}|.......}}}}}}}}}}}}}..}}}}}...}}}} +}}|-+--F|-+--....|F|-|}}}}}....}}}....}}}-----}}.....}}}}}}}......}}}}.}}}}} +}}|...}}|...|....|}}}|}}}}}}}..}}}}}}}}}}}}}}}}}}}}....}}}}}}}}....T.}}}}}}} +}}|...}}F...+....F}}}}}}}..}}}}}}}}}}}}}}...}}}}}}}}}}}}}}}}}}}}}}....}}..}} +}}|...}}|...|....|}}}|}....}}}}}}....}}}...}}}}}...}}}}}}}}}}}}}}}}}.....}}} +}}--+--F|-+--....-F|-|....}}}}}}}}}}.T...}}}}....---}}}}}}}}}}}}}}}}}}}}}}}} +}}......|...|......|}}}}}.}}}}}}}}}....}}}}}}}.....|}}}}}}}}}.}}}}}}}}}}}}}} +}}}}....+...|..{...|.}}}}}}}}}}}}}}}}}}}}}}}}}}.|..|}}}}}}}......}}}}...}}}} +}}}}}}..|...F......|...}}}}}}}}}}..---}}}}}}}}}}--.-}}}}}....}}}}}}....}}}}} +}}}}}}}}-----S----F|....}}}}}}}}}|...|}}}}}}}}}}}}...}}}}}}...}}}}}}..}}}}}} +}}}}}}}}}..............T...}}}}}.|.......}}}}}}}}}}}}}}..}...}.}}}}....}}}}} +}}}}}}}}}}....}}}}...}...}}}}}.......|.}}}}}}}}}}}}}}.......}}}}}}}}}...}}}} +}}}}}}}}}}..}}}}}}}}}}.}}}}}}}}}}-..--.}}}}}}}}..}}}}}}..T...}}}..}}}}}}}}}} +}}}}}}}}}...}}}}}}}}}}}}}}}}}}}}}}}...}}}}}}}....}}}}}}}.}}}..}}}...}}}}}}}} +}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}.}}}}}}....}}}}}}}}}}}}}}}}}}}...}}}}}} +}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}} +ENDMAP +# +$place = { (04,08),(10,04),(10,08),(10,12) } +SHUFFLE: $place +# +REGION:(00,00,74,19),lit,"ordinary" +REGION:(13,03,18,13),lit,"ordinary",unfilled +# +TELEPORT_REGION:(64,01,74,17),(0,0,0,0),down +TELEPORT_REGION:(02,02,18,13),(0,0,0,0),up +# +STAIR:(67,01,74,20),(0,0,0,0),up +STAIR:$place[0],down +# +DOOR:locked,(04,06) +DOOR:locked,(04,10) +DOOR:locked,(08,04) +DOOR:locked,(08,12) +DOOR:locked,(10,06) +DOOR:locked,(10,10) +DOOR:locked,(12,08) +# +BRANCH:levregion(27,00,79,20),(0,0,0,0) +# +NON_DIGGABLE:(01,01,22,14) +# +OBJECT:('(',"crystal ball"),(07,08) +# +CONTAINER:('`',"statue"),$place[1],uncursed,montype:"knight",3,name:"Perseus" { + [75%]: OBJECT: ('[',"shield of reflection"),cursed,+0 + [25%]: OBJECT: ('[',"levitation boots"),+0 + [50%]: OBJECT: (')',"scimitar"),blessed,+2 + [50%]: OBJECT: ('(',"sack") +} +# +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +CONTAINER:('`',"statue"),random { } +LOOP [8] { + OBJECT:random,random +} +# +LOOP [7] { + TRAP:random,random +} +# +MONSTER:('@',"Medusa"),$place[0] +MONSTER:(';',"kraken"),(07,07) +# +# the nesting dragon +MONSTER:('D',"yellow dragon"), (05,04), asleep +[50%]: MONSTER: ('D',"baby yellow dragon"), (04,04), asleep +[25%]: MONSTER: ('D',"baby yellow dragon"), (04,05), asleep +OBJECT:('%',"egg"), (05,04), montype:"yellow dragon" +[50%]: OBJECT: ('%',"egg"), (05,04), montype:"yellow dragon" +[25%]: OBJECT: ('%',"egg"), (05,04), montype:"yellow dragon" +# +MONSTER:(';',"giant eel"),random +MONSTER:(';',"giant eel"),random +MONSTER:(';',"jellyfish"),random +MONSTER:(';',"jellyfish"),random +LOOP [14] { + MONSTER:'S',random +} +LOOP [4] { + MONSTER:('N',"black naga hatchling"), random + MONSTER:('N',"black naga"), random +}