]> granicus.if.org Git - nethack/commitdiff
tweak the Astral Plane level
authorPatR <rankin@nethack.org>
Tue, 1 Jan 2019 00:48:14 +0000 (16:48 -0800)
committerPatR <rankin@nethack.org>
Tue, 1 Jan 2019 00:48:14 +0000 (16:48 -0800)
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.

dat/endgame.des

index b41db352f6a86c8771147fc74bd9173654666118..ebd9049bd1e7edc9aded42a234cf4bbf414671b7 100644 (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
+    }
   }
 }