tweak the Astral Plane level

Even out the difficulty (from one game to another) somewhat.  Instead
of a 75% chance that two large areas will be opened up on the left
and right sides of the arrival area plus 13.5 (avg) * 1.5 (avg) extra
monsters in that region, change to 60% chance that the left side will
be opened up with 7 (avg) * 1.5 (avg) extra monsters and a separate
60% chance that the right side will be opened up with 7 * 1.5 (avg)
extra monsters.  The chance that both sides get opened up drops to
36% but the chance that neither side gets opened drops to 16%, with
difference made up by 24% chance each for just one side or the other.

I was a little surprised that this actually worked.  I hope there's
a less clumsy way to have a loop index.
This commit is contained in:
PatR
2018-12-31 16:48:14 -08:00
parent c2777860e9
commit 4fc49a22de

View File

@@ -1,4 +1,4 @@
# NetHack 3.6 endgame.des $NHDT-Date: 1432512783 2015/05/25 00:13:03 $ $NHDT-Branch: master $:$NHDT-Revision: 1.13 $
# NetHack 3.6 endgame.des $NHDT-Date: 1546303680 2019/01/01 00:48:00 $ $NHDT-Branch: NetHack-3.6.2-beta01 $:$NHDT-Revision: 1.14 $
# Copyright (c) 1989 by Jean-Christophe Collet
# Copyright (c) 1992,1993 by Izchak Miller, David Cohrs,
# and Timo Hakulinen
@@ -505,15 +505,36 @@ MAP
-----------------
ENDMAP
IF [75%] {
TERRAIN:fillrect (17,14, 30,18),'.'
TERRAIN:fillrect (44,14, 57,18),'.'
WALLIFY
$hall = selection:floodfill(37,18)
LOOP [6 + 3d4] {
MONSTER:('A',"Angel"),rndcoord($hall),noalign,hostile
[50%]: MONSTER:random,rndcoord($hall),hostile
# chance to alter above map and turn the wings of the bottom-center into
# a pair of big (5x15) rooms
$loopindx = 0
LOOP [2] {
$loopindx = $loopindx + 1
# 3.6.[01]: 75% chance that both sides opened up, 25% that neither did;
# 3.6.2: 60% twice == 36% chance that both sides open up, 24% left side
# only, 24% right side only, 16% that neither side opens up
IF [60%] {
IF [$loopindx == 1] {
TERRAIN:fillrect (17,14, 30,18),'.'
WALLIFY
# temporarily close off the area to be filled so that it doesn't cover
# the entire entry area
TERRAIN:(33,18), '|'
$hall = selection:floodfill(30,16)
# re-connect the opened wing with the rest of the map
TERRAIN:(33,18), '.'
} ELSE {
TERRAIN:fillrect (44,14, 57,18),'.'
WALLIFY
TERRAIN:(41,18), '|'
$hall = selection:floodfill(44,16)
TERRAIN:(41,18), '.'
}
# extra monsters; was [6 + 3d4] when both wings were opened up at once
LOOP [3 + 2d3] {
MONSTER:('A',"Angel"),rndcoord($hall),noalign,hostile
[50%]: MONSTER:random,rndcoord($hall),hostile
}
}
}