« Return to Thread: Biodiversity patch

Re: Biodiversity patch

by xkernigh :: Rate this Message:

Reply to Author | View in Thread

On Saturday 13 October 2007 03:02:14 am J. Ali Harlow wrote:
> I don't know if the patch adds any new levels but if so I would check
> the there is room for them in dungeon.def (the main dungeon is _very_
> full).

The biodiversity patch includes the Heck² patch.
 * http://www.multifoliate.com/nh/
 * http://nethack.wikia.com/wiki/Heck²_patch

The Heck² patch tries to improve vanilla's Genehennom by replacing five
to eight of the default maze levels with custom levels. SLASH'EM
Gehennom has only 17 levels, and most of those are unique demon lairs
or wizard tower levels; that caused the panic.

The following change enlengthens Gehennom from 17 to 20 levels and mixes
four heck levels with the four demon lairs above the wizard's tower.


diff -apruN slashem-bio/dat/dungeon.def slashem-k1/dat/dungeon.def
--- slashem-bio/dat/dungeon.def Fri Oct 12 20:56:14 2007
+++ slashem-k1/dat/dungeon.def  Sat Oct 13 15:18:54 2007
@@ -123,7 +123,7 @@ BRANCH:         "The Elemental Planes" @ (1, 0
 # also tried to organize it a little -- demons before the wizard,
devils
 # after.
 
-DUNGEON:        "Gehennom" "G" (17, 0)
+DUNGEON:        "Gehennom" "G" (20, 0)
 DESCRIPTION:    mazelike
 DESCRIPTION:    hellish
 ALIGNMENT:      noalign
@@ -133,32 +133,27 @@ LEVEL:          "sanctum" "none" @ (-1,
 BRANCH:         "Vlad's Tower" @ (3, 10) up -1
 # Dr. Frankenstein's Lab
 BRANCH:         "Frankenstein's Lab" @ (3, 10) up
+# Heck extra levels
+RNDLEVEL:  "heck-b" "I" @ (2, 8) 8
+RNDLEVEL:  "heck-c" "K" @ (2, 8) 9
+RNDLEVEL:  "heck-d" "L" @ (2, 8) 9
+RNDLEVEL:  "heck-e" "M" @ (2, 8) 9
 # The demon levels
-LEVEL:          "juiblex" "J" @ (2, 5)
-LEVEL:          "yeenoghu" "E" @ (2, 5)
-LEVEL:          "orcus" "O" @ (2, 5)
-LEVEL:          "demogorg" "D" @ (2, 5)
+LEVEL:          "juiblex" "J" @ (2, 8)
+LEVEL:          "yeenoghu" "E" @ (2, 8)
+LEVEL:          "orcus" "O" @ (2, 8)
+LEVEL:          "demogorg" "D" @ (2, 8)
 # Half-way down
-LEVEL:          "wizard1" "none" @ (7, 0)
+LEVEL:          "wizard1" "none" @ (10, 0)
 CHAINLEVEL:     "wizard2" "X" "wizard1" + (1, 0)
 CHAINLEVEL:     "wizard3" "Y" "wizard1" + (2, 0)
 # The devil levels
-LEVEL:          "baalz" "B" @ (10, 6)
-LEVEL:          "geryon" "R" @ (10, 6)
-LEVEL:          "dispater" "S" @ (10, 6)
-LEVEL:          "asmodeus" "A" @ (10, 6)
-LEVEL:          "fakewiz1" "F" @ (10, 6)
-LEVEL:          "fakewiz2" "G" @ (10, 6)
-
-# Heck extra levels
-RNDLEVEL:  "heck-a" "H" @ (-19,17) 25 7
-RNDLEVEL:  "heck-b" "I" @ (2,17) 50 8
-RNDLEVEL:  "heck-c" "K" @ (-19,17) 75 9
-RNDLEVEL:  "heck-d" "L" @ (2,17) 9
-RNDLEVEL:  "heck-e" "M" @ (2,17) 9
-RNDLEVEL:  "heck-e" "N" @ (-19,17) 9
-RNDLEVEL:  "heck-e" "P" @ (2,17) 9
-RNDLEVEL:  "heck-e" "Q" @ (-19,17) 9
+LEVEL:          "baalz" "B" @ (13, 6)
+LEVEL:          "geryon" "R" @ (13, 6)
+LEVEL:          "dispater" "S" @ (13, 6)
+LEVEL:          "asmodeus" "A" @ (13, 6)
+LEVEL:          "fakewiz1" "F" @ (13, 6)
+LEVEL:          "fakewiz2" "G" @ (13, 6)
 
 ### Gnomish Mines ###
 # (The Mines of the Gnomes of Zurich.)


The above change finally lets me reach dungeon level 1. Amusingly, I
tested the change in wizard mode and it generated Gehennom from levels
47 to 66; it put the four demon lairs above the four heck levels, and
Demogorgon on top!

The attached slashem-k1.patch supersedes the one in my previous email,
and includes both the above dungeon.def change and my earlier makefile
changes.

First checkout slashem from cvs and apply T. J. Brumfield's patch
http://enderandrew.com/pub/slashem-biodiversity.patch.bz2

Then apply the attached slashem-k1.patch
$ patch -p1 < ../slashem-k1.patch

--Kernigh http://nethack.wikia.com/wiki/User:Kernigh

[slashem-k1.patch]

diff -apruN slashem-bio/dat/dungeon.def slashem-k1/dat/dungeon.def
--- slashem-bio/dat/dungeon.def Fri Oct 12 20:56:14 2007
+++ slashem-k1/dat/dungeon.def Sat Oct 13 15:18:54 2007
@@ -123,7 +123,7 @@ BRANCH: "The Elemental Planes" @ (1, 0
 # also tried to organize it a little -- demons before the wizard, devils
 # after.
 
-DUNGEON:        "Gehennom" "G" (17, 0)
+DUNGEON:        "Gehennom" "G" (20, 0)
 DESCRIPTION:    mazelike
 DESCRIPTION:    hellish
 ALIGNMENT:      noalign
@@ -133,32 +133,27 @@ LEVEL:          "sanctum" "none" @ (-1,
 BRANCH:         "Vlad's Tower" @ (3, 10) up -1
 # Dr. Frankenstein's Lab
 BRANCH:         "Frankenstein's Lab" @ (3, 10) up
+# Heck extra levels
+RNDLEVEL: "heck-b" "I" @ (2, 8) 8
+RNDLEVEL: "heck-c" "K" @ (2, 8) 9
+RNDLEVEL: "heck-d" "L" @ (2, 8) 9
+RNDLEVEL: "heck-e" "M" @ (2, 8) 9
 # The demon levels
-LEVEL:          "juiblex" "J" @ (2, 5)
-LEVEL:          "yeenoghu" "E" @ (2, 5)
-LEVEL:          "orcus" "O" @ (2, 5)
-LEVEL:          "demogorg" "D" @ (2, 5)
+LEVEL:          "juiblex" "J" @ (2, 8)
+LEVEL:          "yeenoghu" "E" @ (2, 8)
+LEVEL:          "orcus" "O" @ (2, 8)
+LEVEL:          "demogorg" "D" @ (2, 8)
 # Half-way down
-LEVEL:          "wizard1" "none" @ (7, 0)
+LEVEL:          "wizard1" "none" @ (10, 0)
 CHAINLEVEL:     "wizard2" "X" "wizard1" + (1, 0)
 CHAINLEVEL:     "wizard3" "Y" "wizard1" + (2, 0)
 # The devil levels
-LEVEL:          "baalz" "B" @ (10, 6)
-LEVEL:          "geryon" "R" @ (10, 6)
-LEVEL:          "dispater" "S" @ (10, 6)
-LEVEL:          "asmodeus" "A" @ (10, 6)
-LEVEL:          "fakewiz1" "F" @ (10, 6)
-LEVEL:          "fakewiz2" "G" @ (10, 6)
-
-# Heck extra levels
-RNDLEVEL: "heck-a" "H" @ (-19,17) 25 7
-RNDLEVEL: "heck-b" "I" @ (2,17) 50 8
-RNDLEVEL: "heck-c" "K" @ (-19,17) 75 9
-RNDLEVEL: "heck-d" "L" @ (2,17) 9
-RNDLEVEL: "heck-e" "M" @ (2,17) 9
-RNDLEVEL: "heck-e" "N" @ (-19,17) 9
-RNDLEVEL: "heck-e" "P" @ (2,17) 9
-RNDLEVEL: "heck-e" "Q" @ (-19,17) 9
+LEVEL:          "baalz" "B" @ (13, 6)
+LEVEL:          "geryon" "R" @ (13, 6)
+LEVEL:          "dispater" "S" @ (13, 6)
+LEVEL:          "asmodeus" "A" @ (13, 6)
+LEVEL:          "fakewiz1" "F" @ (13, 6)
+LEVEL:          "fakewiz2" "G" @ (13, 6)
 
 ### Gnomish Mines ###
 # (The Mines of the Gnomes of Zurich.)
diff -apruN slashem-bio/src/photo.c slashem-k1/src/photo.c
--- slashem-bio/src/photo.c Fri Oct 12 20:56:16 2007
+++ slashem-k1/src/photo.c Fri Oct 12 21:56:24 2007
@@ -5,7 +5,7 @@
 #include "hack.h"
 #ifdef NEPHI_PHOTOGRAPHY
 
-STATIC_DCL char *FDECL(short_desc,(struct photograph*,char,char* (*)(const char*)));
+STATIC_DCL char *FDECL(short_desc,(struct photograph*,schar,char* (*)(const char*)));
 STATIC_DCL boolean FDECL(photographable, (struct permonst*));
 STATIC_DCL void FDECL(film_mon, (struct mon_photo *,struct monst *,char*));
 STATIC_DCL void FDECL(film_obj, (struct obj_photo *,struct obj *,char*));
@@ -108,7 +108,7 @@ scc fly_the_bird[] = "%s seems to be mak
 STATIC_OVL char*
 short_desc(photo,override,article_func)
 struct photograph* photo;
-char override;
+schar override;
 char* FDECL((*article_func), (const char*));
 {
 #ifdef LINT /* static char buf[BUFSZ]; */
diff -apruN slashem-bio/sys/autoconf/Makefile.dat slashem-k1/sys/autoconf/Makefile.dat
--- slashem-bio/sys/autoconf/Makefile.dat Sat Sep 17 10:58:33 2005
+++ slashem-k1/sys/autoconf/Makefile.dat Fri Oct 12 21:17:12 2007
@@ -11,7 +11,7 @@ EXEEXT = @EXEEXT@
 # SHELL=E:/GEMINI2/MUPFEL.TTP
 # UUDECODE=uudecode
 
-VARDAT = data rumors quest.dat oracles options
+VARDAT = data rumors quest.dat oracles riddles options
 
 all: $(VARDAT) spec_levs quest_levs dungeon
 
@@ -279,6 +279,9 @@ quest.dat: quest.txt ../util/makedefs
 
 oracles: oracles.txt ../util/makedefs
  ../util/makedefs -h
+
+riddles: riddles.txt ../util/makedefs
+ ../util/makedefs -b
 
 # note: 'options' should have already been made when include/date.h was created
 options: ../util/makedefs
diff -apruN slashem-bio/sys/autoconf/Makefile.src slashem-k1/sys/autoconf/Makefile.src
--- slashem-bio/sys/autoconf/Makefile.src Sat Sep 17 10:58:33 2005
+++ slashem-k1/sys/autoconf/Makefile.src Fri Oct 12 20:58:34 2007
@@ -206,7 +206,7 @@ HACKCSRC = $(srcdir)/allmain.c $(srcdir)
  $(srcdir)/version.c $(srcdir)/vision.c $(srcdir)/weapon.c \
  $(srcdir)/were.c $(srcdir)/wield.c $(srcdir)/windows.c \
  $(srcdir)/wizard.c $(srcdir)/worm.c $(srcdir)/worn.c $(srcdir)/write.c \
- $(srcdir)/zap.c $(srcdir)/gypsy.c $(srcdir)/tech.c
+ $(srcdir)/zap.c $(srcdir)/gypsy.c $(srcdir)/tech.c $(srcdir)/photo.c
 
 # all operating-system-dependent .c (for dependencies and such)
 SYSCSRC = $(srcdir)/../sys/share/nhlan.c $(srcdir)/../sys/share/ioctl.c \
@@ -269,7 +269,7 @@ HOBJ = $(FIRSTOBJ) allmain.o apply.o art
  steal.o steed.o teleport.o timeout.o topten.o track.o trap.o u_init.o \
  uhitm.o vault.o vision.o vis_tab.o weapon.o were.o wield.o windows.o \
  wizard.o worm.o worn.o write.o zap.o \
- gypsy.o tech.o \
+ gypsy.o tech.o photo.o \
  $(RANDOBJ) $(SYSOBJ) $(WINOBJ) version.o
 # the .o files from the HACKCSRC, SYSSRC, and WINSRC lists
 
diff -apruN slashem-bio/sys/autoconf/Makefile.top slashem-k1/sys/autoconf/Makefile.top
--- slashem-bio/sys/autoconf/Makefile.top Sat Dec 30 07:48:19 2006
+++ slashem-k1/sys/autoconf/Makefile.top Fri Oct 12 21:15:38 2007
@@ -104,7 +104,7 @@ CNF_SHARE_PROXYND = gltile64.png gltile3
 # CNF_SHARE_DATND = $(CNF_SHARE_PROXYND)
 CNF_SHARE_DATND = @CNF_SHARE_DATND@
 
-CNF_SHARE_DATD = data oracles options quest.dat rumors
+CNF_SHARE_DATD = data oracles options quest.dat riddles rumors
 CNF_SHARE_DAT = $(CNF_SHARE_DATD) $(CNF_SHARE_DATND)
 
 # Some versions of make use the SHELL environment variable as the shell
@@ -131,7 +131,7 @@ DATHELP = help hh cmdhelp history opthel
 SPEC_LEVS = asmodeus.lev baalz.lev bigrm-?.lev castle.lev fakewiz?.lev \
  juiblex.lev knox.lev medusa-?.lev minend-?.lev minefill.lev \
  minetn-?.lev oracle.lev orcus.lev sanctum.lev soko?-?.lev \
- tower?.lev valley.lev wizard?.lev \
+ tower?.lev valley.lev wizard?.lev heck-?-?.lev \
  astral.lev air.lev earth.lev fire.lev water.lev \
  beholder.lev blkmar.lev cav2fill.lev \
  grund-?.lev demogorg.lev dispater.lev dragons.lev geryon.lev \
@@ -170,6 +170,9 @@ rumors: $(GAME)
 
 oracles: $(GAME)
  ( cd dat ; $(MAKE) oracles )
+
+riddles: $(GAME)
+ ( cd dat ; $(MAKE) riddles )
 
 # Note: options should have already been made with make, but...
 options: $(GAME)
diff -apruN slashem-bio/sys/autoconf/configure.ac slashem-k1/sys/autoconf/configure.ac
--- slashem-bio/sys/autoconf/configure.ac Mon Jan 29 01:42:23 2007
+++ slashem-k1/sys/autoconf/configure.ac Fri Oct 12 22:08:07 2007
@@ -402,6 +402,7 @@ NETHACK_LINKS_ADD([include/file.h])
 NETHACK_LINKS_ADD([dat/data.base])
 NETHACK_LINKS_ADD([dat/rumors.tru])
 NETHACK_LINKS_ADD([dat/rumors.fal])
+NETHACK_LINKS_ADD([dat/riddles.txt])
 NETHACK_LINKS_ADD([dat/quest.txt])
 NETHACK_LINKS_ADD([dat/oracles.txt])
 NETHACK_LINKS_ADD([dat/dungeon.def])


-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >> http://get.splunk.com/
_______________________________________________
Slashem-devel mailing list
Slashem-devel@...
https://lists.sourceforge.net/lists/listinfo/slashem-devel

 « Return to Thread: Biodiversity patch