summaryrefslogtreecommitdiff
path: root/games
diff options
context:
space:
mode:
authorYing-Chieh Liao <ijliao@FreeBSD.org>2001-05-19 18:34:37 +0000
committerYing-Chieh Liao <ijliao@FreeBSD.org>2001-05-19 18:34:37 +0000
commit3dc4cfe73b9a79bdc89dcecce3413d29937c8e34 (patch)
treecd07d1ac74b3e30498a8fddde2c7252bfc042574 /games
parentadd imapd.conf to pkg-plist (diff)
add slashem-tty
A dungeon explorin', slashin', hackin' game PR: 26754 Submitted by: Adam Kranzel <adam@alameda.edu>
Notes
Notes: svn path=/head/; revision=42745
Diffstat (limited to 'games')
-rw-r--r--games/Makefile1
-rw-r--r--games/slashem-tty/Makefile41
-rw-r--r--games/slashem-tty/distinfo1
-rw-r--r--games/slashem-tty/files/patch-config.h37
-rw-r--r--games/slashem-tty/files/patch-makefile.doc33
-rw-r--r--games/slashem-tty/files/patch-makefile.src22
-rw-r--r--games/slashem-tty/files/patch-makefile.top53
-rw-r--r--games/slashem-tty/files/patch-makefile.utl13
-rw-r--r--games/slashem-tty/files/patch-system.h11
-rw-r--r--games/slashem-tty/files/patch-tshirt42
-rw-r--r--games/slashem-tty/files/patch-unixconf.h11
-rw-r--r--games/slashem-tty/files/sample.slashemrc47
-rw-r--r--games/slashem-tty/pkg-comment1
-rw-r--r--games/slashem-tty/pkg-descr9
-rw-r--r--games/slashem-tty/pkg-message8
-rw-r--r--games/slashem-tty/pkg-plist20
-rw-r--r--games/unnethack/Makefile41
-rw-r--r--games/unnethack/distinfo1
-rw-r--r--games/unnethack/files/patch-config.h37
-rw-r--r--games/unnethack/files/patch-makefile.doc33
-rw-r--r--games/unnethack/files/patch-makefile.src22
-rw-r--r--games/unnethack/files/patch-makefile.top53
-rw-r--r--games/unnethack/files/patch-makefile.utl13
-rw-r--r--games/unnethack/files/patch-system.h11
-rw-r--r--games/unnethack/files/patch-tshirt42
-rw-r--r--games/unnethack/files/patch-unixconf.h11
-rw-r--r--games/unnethack/files/sample.slashemrc47
-rw-r--r--games/unnethack/pkg-comment1
-rw-r--r--games/unnethack/pkg-descr9
-rw-r--r--games/unnethack/pkg-message8
-rw-r--r--games/unnethack/pkg-plist20
31 files changed, 699 insertions, 0 deletions
diff --git a/games/Makefile b/games/Makefile
index c3ddf22c3554..be2eba8cf097 100644
--- a/games/Makefile
+++ b/games/Makefile
@@ -192,6 +192,7 @@
SUBDIR += seabattle
SUBDIR += seahaven
SUBDIR += sl
+ SUBDIR += slashem-tty
SUBDIR += smacx
SUBDIR += sokoban
SUBDIR += sol
diff --git a/games/slashem-tty/Makefile b/games/slashem-tty/Makefile
new file mode 100644
index 000000000000..45e41122e07c
--- /dev/null
+++ b/games/slashem-tty/Makefile
@@ -0,0 +1,41 @@
+# New ports collection makefile for: Slash'Em (tty interface)
+# Date created: 15th April 2001
+# Whom: Adam Kranzel (adam@alameda.edu)
+#
+# $FreeBSD$
+#
+
+PORTNAME= slashem
+PORTVERSION= 0.0.6E.4F.3
+CATEGORIES= games
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+PKGNAMESUFFIX= -tty
+DISTNAME= se006e4f3
+
+MAINTAINER= adam@alameda.edu
+
+USE_GMAKE= yes
+MAN6= dgn_comp.6 dlb.6 lev_comp.6 slashem-tty.6 recover.6
+
+WRKSRC= ${WRKDIR}/slashem-0.0.6E4F3
+
+post-patch:
+ ${PERL} -pi -e "s@/usr/local@${PREFIX}@g" ${WRKSRC}/include/config.h
+
+pre-configure:
+ @cd ${WRKSRC}/sys/unix; ${SH} setup.sh
+
+post-install:
+ @cd ${WRKSRC}/doc; ${CHMOD} 644 *.6
+ @cp ${WRKSRC}/doc/slashem.6 ${WRKSRC}/doc/slashem${PKGNAMESUFFIX}.6
+ @cd ${WRKSRC}/doc; PREFIX=${PREFIX} ${MAKE} manpages
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX}
+ ${CP} ${WRKSRC}/doc/Guidebook.txt ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX}
+ ${CP} ${WRKSRC}/slamfaq.txt ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX}
+ ${CP} ${FILESDIR}/sample.slashemrc ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX}
+.endif
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/games/slashem-tty/distinfo b/games/slashem-tty/distinfo
new file mode 100644
index 000000000000..ba7e1fd7327b
--- /dev/null
+++ b/games/slashem-tty/distinfo
@@ -0,0 +1 @@
+MD5 (se006e4f3.tar.gz) = bd1e73ba9db3fc4cbb84fa193cb8c3e7
diff --git a/games/slashem-tty/files/patch-config.h b/games/slashem-tty/files/patch-config.h
new file mode 100644
index 000000000000..a14697939199
--- /dev/null
+++ b/games/slashem-tty/files/patch-config.h
@@ -0,0 +1,37 @@
+--- include/config.h.good Wed Nov 22 23:18:52 2000
++++ include/config.h Wed Nov 22 23:29:22 2000
+@@ -176,12 +176,12 @@
+
+ #ifdef UNIX
+ /* path and file name extension for compression program */
+-# define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */
+-# define COMPRESS_EXTENSION ".Z" /* compress's extension */
++/* # define COMPRESS "/usr/bin/compress" */ /* Lempel-Ziv compression */
++/* # define COMPRESS_EXTENSION ".Z" */ /* compress's extension */
+
+ /* An example of one alternative you might want to use: */
+-/* # define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */
+-/* # define COMPRESS_EXTENSION ".gz" */ /* normal gzip extension */
++# define COMPRESS "/usr/bin/gzip" /* FSF gzip compression */
++# define COMPRESS_EXTENSION ".gz" /* normal gzip extension */
+
+ /* # define COMPRESS "/usr/bin/bzip2" *//* bzip2 compression */
+ /* # define COMPRESS_EXTENSION ".bz2" *//* bzip2 extension */
+@@ -195,7 +195,7 @@
+ * a tar-like file, thus making a neater installation. See *conf.h
+ * for detailed configuration.
+ */
+-/* #define DLB */ /* not supported on all platforms */
++#define DLB /* not supported on all platforms */
+
+ /*
+ * Defining INSURANCE slows down level changes, but allows games that
+@@ -214,7 +214,7 @@
+ * otherwise it will be the current directory.
+ */
+ # ifndef HACKDIR
+-# define HACKDIR "." /* nethack directory */
++# define HACKDIR "/usr/local/share/slashem-tty" /* nethack directory */
+ # endif
+
+ /*
diff --git a/games/slashem-tty/files/patch-makefile.doc b/games/slashem-tty/files/patch-makefile.doc
new file mode 100644
index 000000000000..654b31c284b8
--- /dev/null
+++ b/games/slashem-tty/files/patch-makefile.doc
@@ -0,0 +1,33 @@
+--- sys/unix/Makefile.doc.good Thu Nov 23 01:01:16 2000
++++ sys/unix/Makefile.doc Thu Nov 23 01:04:09 2000
+@@ -52,10 +52,10 @@
+ # Guidebook.dvi: Guidebook.mn
+ # tbl tmac.n Guidebook.mn | groff -Wall -Tdvi > Guidebook.dvi
+
+-GAME = slashem
++GAME = slashem-tty
+ #GAME = nethack
+-MANDIR = /games/slash/doc
+-MANEXT = 1n
++MANDIR = ${PREFIX}/man/man
++MANEXT = 6
+
+ # manual installation for most BSD-style systems
+ GAMEMANCREATE = cp $(GAME).6
+@@ -72,11 +72,11 @@
+ # DLBMANCREATE = groff -Wall -mtty-char -Tascii -man dlb.6 >
+
+ manpages:
+- -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT)
+- -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT)
+- -$(DGNMANCREATE) $(MANDIR)/dgn_comp.$(MANEXT)
+- -$(RCVRMANCREATE) $(MANDIR)/recover.$(MANEXT)
+- -$(DLBMANCREATE) $(MANDIR)/dlb.$(MANEXT)
++ -$(GAMEMANCREATE) $(MANDIR)${MANEXT}/$(GAME).$(MANEXT)
++ -$(LEVMANCREATE) $(MANDIR)${MANEXT}/lev_comp.$(MANEXT)
++ -$(DGNMANCREATE) $(MANDIR)${MANEXT}/dgn_comp.$(MANEXT)
++ -$(RCVRMANCREATE) $(MANDIR)${MANEXT}/recover.$(MANEXT)
++ -$(DLBMANCREATE) $(MANDIR)${MANEXT}/dlb.$(MANEXT)
+
+ # manual creation for distribution
+ DISTRIB = Guidebook.txt $(GAME).txt lev_comp.txt dgn_comp.txt recover.txt dlb.txt
diff --git a/games/slashem-tty/files/patch-makefile.src b/games/slashem-tty/files/patch-makefile.src
new file mode 100644
index 000000000000..b9045b58a06f
--- /dev/null
+++ b/games/slashem-tty/files/patch-makefile.src
@@ -0,0 +1,22 @@
+--- sys/unix/Makefile.src.good Thu Nov 23 00:24:58 2000
++++ sys/unix/Makefile.src Thu Nov 23 00:26:13 2000
+@@ -144,8 +144,8 @@
+ # flags for debugging:
+ # CFLAGS = -g -I../include
+
+-CFLAGS = -O -I../include
+-LFLAGS =
++CFLAGS += -O -I../include -I${PREFIX}/include
++LFLAGS = -L${PREFIX}/lib
+
+ # QT windowing system
+ # SuSE 6.1
+@@ -322,7 +322,7 @@
+ LIBS =
+
+ # make NetHack
+-GAME = slashem
++GAME = slashem-tty
+ # GAME = slashem.prg
+
+ # if you defined RANDOM in unixconf.h/tosconf.h since your system did not come
diff --git a/games/slashem-tty/files/patch-makefile.top b/games/slashem-tty/files/patch-makefile.top
new file mode 100644
index 000000000000..cc166876940f
--- /dev/null
+++ b/games/slashem-tty/files/patch-makefile.top
@@ -0,0 +1,53 @@
+--- sys/unix/Makefile.top.good Wed Nov 22 23:48:33 2000
++++ sys/unix/Makefile.top Wed Nov 22 23:54:33 2000
+@@ -14,18 +14,17 @@
+ # MAKE = make
+
+ # make NetHack
+-PREFIX = /usr
+-GAME = slashem
++GAME = slashem-tty
+ # GAME = slashem.prg
+ GAMEUID = games
+-GAMEGRP = bin
++GAMEGRP = games
+
+ # Permissions - some places use setgid instead of setuid, for instance
+ # See also the option "SECURE" in include/config.h
+-GAMEPERM = 04755
+-FILEPERM = 0644
++GAMEPERM = 02755
++FILEPERM = 0664
+ EXEPERM = 0755
+-DIRPERM = 0755
++DIRPERM = 0775
+
+ # GAMEDIR also appears in config.h as "HACKDIR".
+ # VARDIR may also appear in unixconf.h as "VAR_PLAYGROUND" else GAMEDIR
+@@ -38,7 +37,7 @@
+ # These must agree with the definitions in unixconf.h
+
+ # Defs. for non file areas support.
+-GAMEDIR = $(PREFIX)/local/slashemdir
++GAMEDIR = $(PREFIX)/share/${GAME}
+ VARDIR = $(GAMEDIR)
+ FILE_AREA_VAR = $(VARDIR)
+ FILE_AREA_SAVE = $(VARDIR)/save
+@@ -47,7 +46,7 @@
+ FILE_AREA_DOC = $(GAMEDIR)
+ FILE_AREA_BONES = $(FILE_AREA_VAR)
+ FILE_AREA_LEVL = $(FILE_AREA_VAR)
+-SHELLDIR = $(PREFIX)/local/bin
++SHELLDIR = $(PREFIX)/bin
+
+ # Defs. compatible with Linux's FSSTND 1.2
+ # FILE_AREA_VAR = /var/lib/games/slashem
+@@ -239,7 +238,7 @@
+ -e '$$s/.*/nodlb/p' < dat/options` ; \
+ $(MAKE) dofiles-$${target-nodlb}
+ cp src/$(GAME) $(FILE_AREA_UNSHARE)
+- cp license doc/Guidebook.txt $(FILE_AREA_DOC)
++ cp license $(FILE_AREA_DOC)
+ # cp win/Qt/KDE/kslashem.kdelnk $(KDEDIR)/share/applnk/Games
+ -rm -f $(SHELLDIR)/$(GAME)
+ sed -e 's;/usr/games/lib/nethackdir;$(FILE_AREA_UNSHARE);' \
diff --git a/games/slashem-tty/files/patch-makefile.utl b/games/slashem-tty/files/patch-makefile.utl
new file mode 100644
index 000000000000..70a7cb39f66f
--- /dev/null
+++ b/games/slashem-tty/files/patch-makefile.utl
@@ -0,0 +1,13 @@
+--- sys/unix/Makefile.utl.good Thu Nov 23 13:55:38 2000
++++ sys/unix/Makefile.utl Thu Nov 23 13:56:54 2000
+@@ -89,8 +89,8 @@
+ # flags for debugging:
+ # CFLAGS = -g -I../include
+
+-CFLAGS = -O -I../include
+-LFLAGS =
++CFLAGS += -O -I../include -I${PREFIX}/include
++LFLAGS = -L${PREFIX}/lib
+
+ LIBS =
+
diff --git a/games/slashem-tty/files/patch-system.h b/games/slashem-tty/files/patch-system.h
new file mode 100644
index 000000000000..d68b538e8c2d
--- /dev/null
+++ b/games/slashem-tty/files/patch-system.h
@@ -0,0 +1,11 @@
+--- include/system.h.good Wed Nov 22 23:38:44 2000
++++ include/system.h Wed Nov 22 23:41:03 2000
+@@ -522,7 +522,7 @@
+ E time_t FDECL(time, (time_t *));
+ # endif
+ # else
+-E long FDECL(time, (time_t *));
++E time_t FDECL(time, (time_t *));
+ # endif /* ULTRIX */
+
+ #ifdef VMS
diff --git a/games/slashem-tty/files/patch-tshirt b/games/slashem-tty/files/patch-tshirt
new file mode 100644
index 000000000000..b90d1c550016
--- /dev/null
+++ b/games/slashem-tty/files/patch-tshirt
@@ -0,0 +1,42 @@
+--- src/read.c.orig Sat Jul 22 18:04:06 2000
++++ src/read.c Thu Jan 25 18:46:03 2001
+@@ -62,6 +62,24 @@
+ return(1);
+ #ifdef TOURIST
+ } else if (scroll->otyp == T_SHIRT) {
++ static const char *shirt_msgs[] = {
++ "I explored the Dungeons of Doom and all I got was this lousy T-shirt!",
++ "Is that Mjollnir in your pocket or are you just happy to see me?",
++ "It's not the size of your sword, it's how #enhance'd you are with it.",
++ "Madame Elvira's House O' Succubi Lifetime Customer",
++ "Madame Elvira's House O' Succubi Employee of the Month",
++ "Ludios Vault Guards Do It In Small, Dark Rooms",
++ "Yendor Military Soldiers Do It In Large Groups",
++ "I survived Yendor Military Boot Camp",
++ "Ludios Accounting School Intra-Mural Lacrosse Team",
++ "Oracle(TM) Fountains 10th Annual Wet T-Shirt Contest",
++ "Hey, black dragon! Disintegrate THIS!",
++ "I'm With Stupid -->",
++ "Don't blame me, I voted for Izchak!",
++ "Don't Panic", // HHGTTG
++ "Furinkan High School Athletic Dept.", // Ranma 1/2
++ "Hel-LOOO, Nurse!", // Animaniacs"
++ };
+ char buf[BUFSZ];
+ int erosion;
+
+@@ -72,13 +90,7 @@
+ u.uconduct.literate++;
+ if(flags.verbose)
+ pline("It reads:");
+- Sprintf(buf, "I explored the Dungeons of Doom, %s.",
+- Hallucination ?
+- (scroll == uarmu ?
+- /* (force these two to have identical length) */
+- "and never did any laundry..." :
+- "and couldn't find my way out") :
+- "but all I got was this lousy T-shirt");
++ strcpy(buf, shirt_msgs[scroll->o_id % SIZE(shirt_msgs)]);
+ erosion = greatest_erosion(scroll);
+ if (erosion)
+ wipeout_text(buf,
diff --git a/games/slashem-tty/files/patch-unixconf.h b/games/slashem-tty/files/patch-unixconf.h
new file mode 100644
index 000000000000..9a2902055729
--- /dev/null
+++ b/games/slashem-tty/files/patch-unixconf.h
@@ -0,0 +1,11 @@
+--- include/unixconf.h.good Wed Nov 22 23:42:39 2000
++++ include/unixconf.h Wed Nov 22 23:43:42 2000
+@@ -206,7 +206,7 @@
+ * A stat system call is done on the mailbox every MAILCKFREQ moves.
+ */
+
+-#define MAIL /* Deliver mail during the game */
++/* #define MAIL */ /* Deliver mail during the game */
+
+ /* The Andrew Message System does mail a little differently from normal
+ * UNIX. Mail is deposited in the user's own directory in ~/Mailbox
diff --git a/games/slashem-tty/files/sample.slashemrc b/games/slashem-tty/files/sample.slashemrc
new file mode 100644
index 000000000000..7bad046d0e30
--- /dev/null
+++ b/games/slashem-tty/files/sample.slashemrc
@@ -0,0 +1,47 @@
+# Sample .slashemrc file
+#
+
+# Window systems
+# Options are tty, x11. qt, gtk
+# but not all of these are necessarily compiled in
+OPTIONS=windowtype:tty
+
+# names for pets
+OPTIONS=catname:Fuzzy
+OPTIONS=dogname:Rover
+OPTIONS=horsename:Trigger
+
+# Autopickup options
+# Autopickup all the things you would pick up anyway
+# In order: money, potions, spellbooks, rings, amulets,
+# scrolls, and wands
+OPTIONS=autopickup
+OPTIONS=pickup_types:$!+="?/
+
+# Favorite fruit
+OPTIONS=fruit:Strawberry
+
+# Turn on numberpad movement
+# Be sure to turn on numlock or this won't work
+OPTIONS=number_pad
+
+# Show experience on the status line
+OPTIONS=showexp
+
+# Fix inventory letters
+# If you aquire an item, drop it, then pick it up again
+# it will retain the same inventory letter
+# Sort your pack contents by type when viewing your inventory
+OPTIONS=fixinv
+OPTIONS=sortpack
+
+# Makes pets more visible
+# Don't allow attacking your pet
+OPTIONS=hilite_pet
+OPTIONS=safe_pet
+
+# verbose messages in the game
+OPTIONS=verbose
+
+# Ask for confirmation before attacking peaceful creatures
+OPTIONS=confirm
diff --git a/games/slashem-tty/pkg-comment b/games/slashem-tty/pkg-comment
new file mode 100644
index 000000000000..70ca7a893988
--- /dev/null
+++ b/games/slashem-tty/pkg-comment
@@ -0,0 +1 @@
+A dungeon explorin', slashin', hackin' game
diff --git a/games/slashem-tty/pkg-descr b/games/slashem-tty/pkg-descr
new file mode 100644
index 000000000000..736071a199f3
--- /dev/null
+++ b/games/slashem-tty/pkg-descr
@@ -0,0 +1,9 @@
+This is Slash'Em (super lotsa added stuff hack - extended magic),
+the only actively maintained variant of NetHack (based on NetHack v 3.3.1).
+A good old-fashioned dungeon-crawl with big nasties in the way, treasure
+galore, and immortality if you succeed.
+
+WWW: http://slashem.sourceforge.net/
+
+- Adam
+ adam@alameda.edu
diff --git a/games/slashem-tty/pkg-message b/games/slashem-tty/pkg-message
new file mode 100644
index 000000000000..853c1924ed92
--- /dev/null
+++ b/games/slashem-tty/pkg-message
@@ -0,0 +1,8 @@
+====================================================
+A sample .slashemrc file has been copied to
+${PREFIX}/share/doc/slashem-tty as sample.slashemrc.
+Copy it to your home directory as .slashemrc and
+edit it to taste.
+The options for it are described in
+${PREFIX}/share/doc/slashem-tty/Guidebook.txt.
+====================================================
diff --git a/games/slashem-tty/pkg-plist b/games/slashem-tty/pkg-plist
new file mode 100644
index 000000000000..0f9c0425512a
--- /dev/null
+++ b/games/slashem-tty/pkg-plist
@@ -0,0 +1,20 @@
+bin/slashem-tty
+share/slashem-tty/slashem-tty
+@exec mkdir %D/share/slashem-tty/save
+@exec chmod -R 775 %D/share/slashem-tty
+@exec chmod 2755 %D/share/slashem-tty/save
+@exec chown games.games %D/share/slashem-tty/save
+@unexec rm -rf %D/share/slashem-tty/save
+@exec chmod -R 775 %D/share/doc/slashem-tty
+share/doc/slashem-tty/Guidebook.txt
+share/doc/slashem-tty/slamfaq.txt
+share/doc/slashem-tty/sample.slashemrc
+share/slashem-tty/license
+share/slashem-tty/nhshare
+share/slashem-tty/nhushare
+@mode 664
+share/slashem-tty/logfile
+share/slashem-tty/record
+share/slashem-tty/perm
+@dirrm share/slashem-tty
+@dirrm share/doc/slashem-tty
diff --git a/games/unnethack/Makefile b/games/unnethack/Makefile
new file mode 100644
index 000000000000..45e41122e07c
--- /dev/null
+++ b/games/unnethack/Makefile
@@ -0,0 +1,41 @@
+# New ports collection makefile for: Slash'Em (tty interface)
+# Date created: 15th April 2001
+# Whom: Adam Kranzel (adam@alameda.edu)
+#
+# $FreeBSD$
+#
+
+PORTNAME= slashem
+PORTVERSION= 0.0.6E.4F.3
+CATEGORIES= games
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+PKGNAMESUFFIX= -tty
+DISTNAME= se006e4f3
+
+MAINTAINER= adam@alameda.edu
+
+USE_GMAKE= yes
+MAN6= dgn_comp.6 dlb.6 lev_comp.6 slashem-tty.6 recover.6
+
+WRKSRC= ${WRKDIR}/slashem-0.0.6E4F3
+
+post-patch:
+ ${PERL} -pi -e "s@/usr/local@${PREFIX}@g" ${WRKSRC}/include/config.h
+
+pre-configure:
+ @cd ${WRKSRC}/sys/unix; ${SH} setup.sh
+
+post-install:
+ @cd ${WRKSRC}/doc; ${CHMOD} 644 *.6
+ @cp ${WRKSRC}/doc/slashem.6 ${WRKSRC}/doc/slashem${PKGNAMESUFFIX}.6
+ @cd ${WRKSRC}/doc; PREFIX=${PREFIX} ${MAKE} manpages
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX}
+ ${CP} ${WRKSRC}/doc/Guidebook.txt ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX}
+ ${CP} ${WRKSRC}/slamfaq.txt ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX}
+ ${CP} ${FILESDIR}/sample.slashemrc ${PREFIX}/share/doc/slashem${PKGNAMESUFFIX}
+.endif
+ @${CAT} ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/games/unnethack/distinfo b/games/unnethack/distinfo
new file mode 100644
index 000000000000..ba7e1fd7327b
--- /dev/null
+++ b/games/unnethack/distinfo
@@ -0,0 +1 @@
+MD5 (se006e4f3.tar.gz) = bd1e73ba9db3fc4cbb84fa193cb8c3e7
diff --git a/games/unnethack/files/patch-config.h b/games/unnethack/files/patch-config.h
new file mode 100644
index 000000000000..a14697939199
--- /dev/null
+++ b/games/unnethack/files/patch-config.h
@@ -0,0 +1,37 @@
+--- include/config.h.good Wed Nov 22 23:18:52 2000
++++ include/config.h Wed Nov 22 23:29:22 2000
+@@ -176,12 +176,12 @@
+
+ #ifdef UNIX
+ /* path and file name extension for compression program */
+-# define COMPRESS "/usr/bin/compress" /* Lempel-Ziv compression */
+-# define COMPRESS_EXTENSION ".Z" /* compress's extension */
++/* # define COMPRESS "/usr/bin/compress" */ /* Lempel-Ziv compression */
++/* # define COMPRESS_EXTENSION ".Z" */ /* compress's extension */
+
+ /* An example of one alternative you might want to use: */
+-/* # define COMPRESS "/usr/local/bin/gzip" */ /* FSF gzip compression */
+-/* # define COMPRESS_EXTENSION ".gz" */ /* normal gzip extension */
++# define COMPRESS "/usr/bin/gzip" /* FSF gzip compression */
++# define COMPRESS_EXTENSION ".gz" /* normal gzip extension */
+
+ /* # define COMPRESS "/usr/bin/bzip2" *//* bzip2 compression */
+ /* # define COMPRESS_EXTENSION ".bz2" *//* bzip2 extension */
+@@ -195,7 +195,7 @@
+ * a tar-like file, thus making a neater installation. See *conf.h
+ * for detailed configuration.
+ */
+-/* #define DLB */ /* not supported on all platforms */
++#define DLB /* not supported on all platforms */
+
+ /*
+ * Defining INSURANCE slows down level changes, but allows games that
+@@ -214,7 +214,7 @@
+ * otherwise it will be the current directory.
+ */
+ # ifndef HACKDIR
+-# define HACKDIR "." /* nethack directory */
++# define HACKDIR "/usr/local/share/slashem-tty" /* nethack directory */
+ # endif
+
+ /*
diff --git a/games/unnethack/files/patch-makefile.doc b/games/unnethack/files/patch-makefile.doc
new file mode 100644
index 000000000000..654b31c284b8
--- /dev/null
+++ b/games/unnethack/files/patch-makefile.doc
@@ -0,0 +1,33 @@
+--- sys/unix/Makefile.doc.good Thu Nov 23 01:01:16 2000
++++ sys/unix/Makefile.doc Thu Nov 23 01:04:09 2000
+@@ -52,10 +52,10 @@
+ # Guidebook.dvi: Guidebook.mn
+ # tbl tmac.n Guidebook.mn | groff -Wall -Tdvi > Guidebook.dvi
+
+-GAME = slashem
++GAME = slashem-tty
+ #GAME = nethack
+-MANDIR = /games/slash/doc
+-MANEXT = 1n
++MANDIR = ${PREFIX}/man/man
++MANEXT = 6
+
+ # manual installation for most BSD-style systems
+ GAMEMANCREATE = cp $(GAME).6
+@@ -72,11 +72,11 @@
+ # DLBMANCREATE = groff -Wall -mtty-char -Tascii -man dlb.6 >
+
+ manpages:
+- -$(GAMEMANCREATE) $(MANDIR)/$(GAME).$(MANEXT)
+- -$(LEVMANCREATE) $(MANDIR)/lev_comp.$(MANEXT)
+- -$(DGNMANCREATE) $(MANDIR)/dgn_comp.$(MANEXT)
+- -$(RCVRMANCREATE) $(MANDIR)/recover.$(MANEXT)
+- -$(DLBMANCREATE) $(MANDIR)/dlb.$(MANEXT)
++ -$(GAMEMANCREATE) $(MANDIR)${MANEXT}/$(GAME).$(MANEXT)
++ -$(LEVMANCREATE) $(MANDIR)${MANEXT}/lev_comp.$(MANEXT)
++ -$(DGNMANCREATE) $(MANDIR)${MANEXT}/dgn_comp.$(MANEXT)
++ -$(RCVRMANCREATE) $(MANDIR)${MANEXT}/recover.$(MANEXT)
++ -$(DLBMANCREATE) $(MANDIR)${MANEXT}/dlb.$(MANEXT)
+
+ # manual creation for distribution
+ DISTRIB = Guidebook.txt $(GAME).txt lev_comp.txt dgn_comp.txt recover.txt dlb.txt
diff --git a/games/unnethack/files/patch-makefile.src b/games/unnethack/files/patch-makefile.src
new file mode 100644
index 000000000000..b9045b58a06f
--- /dev/null
+++ b/games/unnethack/files/patch-makefile.src
@@ -0,0 +1,22 @@
+--- sys/unix/Makefile.src.good Thu Nov 23 00:24:58 2000
++++ sys/unix/Makefile.src Thu Nov 23 00:26:13 2000
+@@ -144,8 +144,8 @@
+ # flags for debugging:
+ # CFLAGS = -g -I../include
+
+-CFLAGS = -O -I../include
+-LFLAGS =
++CFLAGS += -O -I../include -I${PREFIX}/include
++LFLAGS = -L${PREFIX}/lib
+
+ # QT windowing system
+ # SuSE 6.1
+@@ -322,7 +322,7 @@
+ LIBS =
+
+ # make NetHack
+-GAME = slashem
++GAME = slashem-tty
+ # GAME = slashem.prg
+
+ # if you defined RANDOM in unixconf.h/tosconf.h since your system did not come
diff --git a/games/unnethack/files/patch-makefile.top b/games/unnethack/files/patch-makefile.top
new file mode 100644
index 000000000000..cc166876940f
--- /dev/null
+++ b/games/unnethack/files/patch-makefile.top
@@ -0,0 +1,53 @@
+--- sys/unix/Makefile.top.good Wed Nov 22 23:48:33 2000
++++ sys/unix/Makefile.top Wed Nov 22 23:54:33 2000
+@@ -14,18 +14,17 @@
+ # MAKE = make
+
+ # make NetHack
+-PREFIX = /usr
+-GAME = slashem
++GAME = slashem-tty
+ # GAME = slashem.prg
+ GAMEUID = games
+-GAMEGRP = bin
++GAMEGRP = games
+
+ # Permissions - some places use setgid instead of setuid, for instance
+ # See also the option "SECURE" in include/config.h
+-GAMEPERM = 04755
+-FILEPERM = 0644
++GAMEPERM = 02755
++FILEPERM = 0664
+ EXEPERM = 0755
+-DIRPERM = 0755
++DIRPERM = 0775
+
+ # GAMEDIR also appears in config.h as "HACKDIR".
+ # VARDIR may also appear in unixconf.h as "VAR_PLAYGROUND" else GAMEDIR
+@@ -38,7 +37,7 @@
+ # These must agree with the definitions in unixconf.h
+
+ # Defs. for non file areas support.
+-GAMEDIR = $(PREFIX)/local/slashemdir
++GAMEDIR = $(PREFIX)/share/${GAME}
+ VARDIR = $(GAMEDIR)
+ FILE_AREA_VAR = $(VARDIR)
+ FILE_AREA_SAVE = $(VARDIR)/save
+@@ -47,7 +46,7 @@
+ FILE_AREA_DOC = $(GAMEDIR)
+ FILE_AREA_BONES = $(FILE_AREA_VAR)
+ FILE_AREA_LEVL = $(FILE_AREA_VAR)
+-SHELLDIR = $(PREFIX)/local/bin
++SHELLDIR = $(PREFIX)/bin
+
+ # Defs. compatible with Linux's FSSTND 1.2
+ # FILE_AREA_VAR = /var/lib/games/slashem
+@@ -239,7 +238,7 @@
+ -e '$$s/.*/nodlb/p' < dat/options` ; \
+ $(MAKE) dofiles-$${target-nodlb}
+ cp src/$(GAME) $(FILE_AREA_UNSHARE)
+- cp license doc/Guidebook.txt $(FILE_AREA_DOC)
++ cp license $(FILE_AREA_DOC)
+ # cp win/Qt/KDE/kslashem.kdelnk $(KDEDIR)/share/applnk/Games
+ -rm -f $(SHELLDIR)/$(GAME)
+ sed -e 's;/usr/games/lib/nethackdir;$(FILE_AREA_UNSHARE);' \
diff --git a/games/unnethack/files/patch-makefile.utl b/games/unnethack/files/patch-makefile.utl
new file mode 100644
index 000000000000..70a7cb39f66f
--- /dev/null
+++ b/games/unnethack/files/patch-makefile.utl
@@ -0,0 +1,13 @@
+--- sys/unix/Makefile.utl.good Thu Nov 23 13:55:38 2000
++++ sys/unix/Makefile.utl Thu Nov 23 13:56:54 2000
+@@ -89,8 +89,8 @@
+ # flags for debugging:
+ # CFLAGS = -g -I../include
+
+-CFLAGS = -O -I../include
+-LFLAGS =
++CFLAGS += -O -I../include -I${PREFIX}/include
++LFLAGS = -L${PREFIX}/lib
+
+ LIBS =
+
diff --git a/games/unnethack/files/patch-system.h b/games/unnethack/files/patch-system.h
new file mode 100644
index 000000000000..d68b538e8c2d
--- /dev/null
+++ b/games/unnethack/files/patch-system.h
@@ -0,0 +1,11 @@
+--- include/system.h.good Wed Nov 22 23:38:44 2000
++++ include/system.h Wed Nov 22 23:41:03 2000
+@@ -522,7 +522,7 @@
+ E time_t FDECL(time, (time_t *));
+ # endif
+ # else
+-E long FDECL(time, (time_t *));
++E time_t FDECL(time, (time_t *));
+ # endif /* ULTRIX */
+
+ #ifdef VMS
diff --git a/games/unnethack/files/patch-tshirt b/games/unnethack/files/patch-tshirt
new file mode 100644
index 000000000000..b90d1c550016
--- /dev/null
+++ b/games/unnethack/files/patch-tshirt
@@ -0,0 +1,42 @@
+--- src/read.c.orig Sat Jul 22 18:04:06 2000
++++ src/read.c Thu Jan 25 18:46:03 2001
+@@ -62,6 +62,24 @@
+ return(1);
+ #ifdef TOURIST
+ } else if (scroll->otyp == T_SHIRT) {
++ static const char *shirt_msgs[] = {
++ "I explored the Dungeons of Doom and all I got was this lousy T-shirt!",
++ "Is that Mjollnir in your pocket or are you just happy to see me?",
++ "It's not the size of your sword, it's how #enhance'd you are with it.",
++ "Madame Elvira's House O' Succubi Lifetime Customer",
++ "Madame Elvira's House O' Succubi Employee of the Month",
++ "Ludios Vault Guards Do It In Small, Dark Rooms",
++ "Yendor Military Soldiers Do It In Large Groups",
++ "I survived Yendor Military Boot Camp",
++ "Ludios Accounting School Intra-Mural Lacrosse Team",
++ "Oracle(TM) Fountains 10th Annual Wet T-Shirt Contest",
++ "Hey, black dragon! Disintegrate THIS!",
++ "I'm With Stupid -->",
++ "Don't blame me, I voted for Izchak!",
++ "Don't Panic", // HHGTTG
++ "Furinkan High School Athletic Dept.", // Ranma 1/2
++ "Hel-LOOO, Nurse!", // Animaniacs"
++ };
+ char buf[BUFSZ];
+ int erosion;
+
+@@ -72,13 +90,7 @@
+ u.uconduct.literate++;
+ if(flags.verbose)
+ pline("It reads:");
+- Sprintf(buf, "I explored the Dungeons of Doom, %s.",
+- Hallucination ?
+- (scroll == uarmu ?
+- /* (force these two to have identical length) */
+- "and never did any laundry..." :
+- "and couldn't find my way out") :
+- "but all I got was this lousy T-shirt");
++ strcpy(buf, shirt_msgs[scroll->o_id % SIZE(shirt_msgs)]);
+ erosion = greatest_erosion(scroll);
+ if (erosion)
+ wipeout_text(buf,
diff --git a/games/unnethack/files/patch-unixconf.h b/games/unnethack/files/patch-unixconf.h
new file mode 100644
index 000000000000..9a2902055729
--- /dev/null
+++ b/games/unnethack/files/patch-unixconf.h
@@ -0,0 +1,11 @@
+--- include/unixconf.h.good Wed Nov 22 23:42:39 2000
++++ include/unixconf.h Wed Nov 22 23:43:42 2000
+@@ -206,7 +206,7 @@
+ * A stat system call is done on the mailbox every MAILCKFREQ moves.
+ */
+
+-#define MAIL /* Deliver mail during the game */
++/* #define MAIL */ /* Deliver mail during the game */
+
+ /* The Andrew Message System does mail a little differently from normal
+ * UNIX. Mail is deposited in the user's own directory in ~/Mailbox
diff --git a/games/unnethack/files/sample.slashemrc b/games/unnethack/files/sample.slashemrc
new file mode 100644
index 000000000000..7bad046d0e30
--- /dev/null
+++ b/games/unnethack/files/sample.slashemrc
@@ -0,0 +1,47 @@
+# Sample .slashemrc file
+#
+
+# Window systems
+# Options are tty, x11. qt, gtk
+# but not all of these are necessarily compiled in
+OPTIONS=windowtype:tty
+
+# names for pets
+OPTIONS=catname:Fuzzy
+OPTIONS=dogname:Rover
+OPTIONS=horsename:Trigger
+
+# Autopickup options
+# Autopickup all the things you would pick up anyway
+# In order: money, potions, spellbooks, rings, amulets,
+# scrolls, and wands
+OPTIONS=autopickup
+OPTIONS=pickup_types:$!+="?/
+
+# Favorite fruit
+OPTIONS=fruit:Strawberry
+
+# Turn on numberpad movement
+# Be sure to turn on numlock or this won't work
+OPTIONS=number_pad
+
+# Show experience on the status line
+OPTIONS=showexp
+
+# Fix inventory letters
+# If you aquire an item, drop it, then pick it up again
+# it will retain the same inventory letter
+# Sort your pack contents by type when viewing your inventory
+OPTIONS=fixinv
+OPTIONS=sortpack
+
+# Makes pets more visible
+# Don't allow attacking your pet
+OPTIONS=hilite_pet
+OPTIONS=safe_pet
+
+# verbose messages in the game
+OPTIONS=verbose
+
+# Ask for confirmation before attacking peaceful creatures
+OPTIONS=confirm
diff --git a/games/unnethack/pkg-comment b/games/unnethack/pkg-comment
new file mode 100644
index 000000000000..70ca7a893988
--- /dev/null
+++ b/games/unnethack/pkg-comment
@@ -0,0 +1 @@
+A dungeon explorin', slashin', hackin' game
diff --git a/games/unnethack/pkg-descr b/games/unnethack/pkg-descr
new file mode 100644
index 000000000000..736071a199f3
--- /dev/null
+++ b/games/unnethack/pkg-descr
@@ -0,0 +1,9 @@
+This is Slash'Em (super lotsa added stuff hack - extended magic),
+the only actively maintained variant of NetHack (based on NetHack v 3.3.1).
+A good old-fashioned dungeon-crawl with big nasties in the way, treasure
+galore, and immortality if you succeed.
+
+WWW: http://slashem.sourceforge.net/
+
+- Adam
+ adam@alameda.edu
diff --git a/games/unnethack/pkg-message b/games/unnethack/pkg-message
new file mode 100644
index 000000000000..853c1924ed92
--- /dev/null
+++ b/games/unnethack/pkg-message
@@ -0,0 +1,8 @@
+====================================================
+A sample .slashemrc file has been copied to
+${PREFIX}/share/doc/slashem-tty as sample.slashemrc.
+Copy it to your home directory as .slashemrc and
+edit it to taste.
+The options for it are described in
+${PREFIX}/share/doc/slashem-tty/Guidebook.txt.
+====================================================
diff --git a/games/unnethack/pkg-plist b/games/unnethack/pkg-plist
new file mode 100644
index 000000000000..0f9c0425512a
--- /dev/null
+++ b/games/unnethack/pkg-plist
@@ -0,0 +1,20 @@
+bin/slashem-tty
+share/slashem-tty/slashem-tty
+@exec mkdir %D/share/slashem-tty/save
+@exec chmod -R 775 %D/share/slashem-tty
+@exec chmod 2755 %D/share/slashem-tty/save
+@exec chown games.games %D/share/slashem-tty/save
+@unexec rm -rf %D/share/slashem-tty/save
+@exec chmod -R 775 %D/share/doc/slashem-tty
+share/doc/slashem-tty/Guidebook.txt
+share/doc/slashem-tty/slamfaq.txt
+share/doc/slashem-tty/sample.slashemrc
+share/slashem-tty/license
+share/slashem-tty/nhshare
+share/slashem-tty/nhushare
+@mode 664
+share/slashem-tty/logfile
+share/slashem-tty/record
+share/slashem-tty/perm
+@dirrm share/slashem-tty
+@dirrm share/doc/slashem-tty