diff options
-rw-r--r-- | games/rott/README | 21 | ||||
-rw-r--r-- | games/rott/README_gamedata.txt | 135 | ||||
-rw-r--r-- | games/rott/doinst.sh | 4 | ||||
-rw-r--r-- | games/rott/patches/cdrom_version.diff | 14 | ||||
-rw-r--r-- | games/rott/patches/manpage.diff | 83 | ||||
-rw-r--r-- | games/rott/patches/registered_version.diff | 12 | ||||
-rw-r--r-- | games/rott/rott.SlackBuild | 105 | ||||
-rw-r--r-- | games/rott/rott.info | 12 | ||||
-rw-r--r-- | games/rott/rott.sh | 26 | ||||
-rw-r--r-- | games/rott/slack-desc | 19 |
10 files changed, 431 insertions, 0 deletions
diff --git a/games/rott/README b/games/rott/README new file mode 100644 index 0000000000..c47d15054d --- /dev/null +++ b/games/rott/README @@ -0,0 +1,21 @@ +rott (Rise of the Triad, first person shooter game) + +Rise of the Triad is a high quality, fast scrolling first-person +perspective 3D action game. It includes a lot of destructive enemies, +an arsenal of weapons from simple pistols to missile launchers, +life-preserving armor, traps and ambushes galore. + +WARNING: Rise of the Triad features wanton and gratuitous violence. + +In order to play the game, you need the data files from either the retail +or shareware (demo) version of the game. See README_gamedata.txt for +details. If you want to include the shareware game data in your Slackware +package, download the file http://icculus.org/rott/share/1rott13.zip +and place it in the directory with the SlackBuild script, before running +the script. + +Multiplayer games (aka comm-bat) are NOT truly supported: you can start up +a comm-bat game, but you can only play by yourself (no actual networking +code exists in this version of the game). + +For more information, see http://www.3drealms.com/rott/ diff --git a/games/rott/README_gamedata.txt b/games/rott/README_gamedata.txt new file mode 100644 index 0000000000..5994214260 --- /dev/null +++ b/games/rott/README_gamedata.txt @@ -0,0 +1,135 @@ +There are at least 3 versions of Rise of the Triad that are supported +by rott. Each game version uses a different game binary, but there's a +wrapper script that looks at the available game data files and runs the +"best" version of the game (this is what happens if you just run "rott", +or run Rise of the Triad from the KDE/XFCE application menu). The game +looks for the data files in /usr/share/games/rott, and the different +versions can coexist. All filenames must be UPPERCASE. + +Which version do I have? +------------------------ +If you've got an installed copy of the game, maybe on a DOS/Windows partition, +here's how to identify it: + +- If you have no files named DARKWAR.*, you have the shareware/demo +version. + +- If you have DARKWAR.(WAD|RTL|RTC), but no ROTTCD.RTC, you have the +registered floppy/download version. + +- If you have ROTTCD.RTC (and DARKWAR.*), you have the CD-ROM version. +--- + +Shareware/Demo version 1.3 +-------------------------- +Data files: HUNTBGIN.WAD HUNTBGIN.RTC HUNTBGIN.RTL REMOTE1.RTS + +If you want to include the shareware game data files in your package, +download the shareware version of the game and place it in the SlackBuild +directory before building: + +# wget http://icculus.org/rott/share/1rott13.zip +# ./rott.SlackBuild +# installpkg /tmp/rott-$VERSION-$ARCH-$BUILD.tgz + +If the icculus.org link doesn't work, the same file can be downloaded +from http://www.3drealms.com/rott/ (look for "v1.3 Shareware +Episode" on the page). Either way, the md5sum for rott13.zip is +0fafd6b629eab80278fc726e31f9cf41. + +If you built the package without the shareware data files, you can just +extract the zip file and copy the data files to /usr/share/games/rott +manually. + +The binary for the shareware version is called "rott-demo". +--- + +Registered (Floppy Disk, Registered Download) version 1.3 +--------------------------------------------------------- +Data files: DARKWAR.WAD DARKWAR.RTC DARKWAR.RTL REMOTE1.RTS + +Copy these files from your DOS/Windows ROTT game directory to +/usr/share/games/rott/, making sure to give them all-uppercase names. +If the shareware REMOTE1.RTS is already there, it doesn't matter whether +you overwrite it or not (this file is identical in the demo and registered +versions). + +If you have an older version than 1.3, see http://www.3drealms.com/rott/ +for a patch. + +The binary for the registered version is called "rott-reg". +--- + +CD-ROM version 1.3 +------------------ +Data files: DARKWAR.WAD ROTTCD.RTC DARKWAR.RTL REMOTE1.RTS + +Copy these files from your Rise of the Triad CD-ROM to +/usr/share/games/rott/, making sure to give them all-uppercase names. +On my CD, there are two copies of the files (in the rottplay/ and +rottinst/ subdirectories). The REMOTE1.RTS is identical to the +one from the shareware and registered versions. + +The binary for the CD-ROM version is called "rott-cdrom". (The CD doesn't +have to be in the drive to play the game, though) + +This version of the game is identical to the registered version except +that it uses a different set of levels for multiplayer games. + +If you have an older version than 1.3, see http://www.3drealms.com/rott/ +for a patch. +--- + +Data File MD5 sums +------------------ +2823fe5baa07fa2a5a05df3af0cf8265 DARKWAR.RTC +d1f44aa4d1cb230ba6c3694acc09b6b7 DARKWAR.RTL +2ec4b19372d1ae55d01058f772f6214f DARKWAR.WAD +4d90dec2da07a8eee1162efd3e23d98d HUNTBGIN.RTC +b9b0a3be46a4f7fccabb1c1e8cf5455f HUNTBGIN.RTL +37793500e3b1de2125a98604b69838e3 HUNTBGIN.WAD +190c69835af502e4d8f08ee733c3fcc5 REMOTE1.RTS +64c8e7123a7edcb7b8739b42cdae0120 ROTTCD.RTC + +These md5sums are for the 1.3 shareware and CD-ROM versions of the game +(the files the SlackBuild author used for testing). If yours don't match, +they might be for an older version of the game, or they might be corrupt +(try them and see). +--- + +Wrapper Script (/usr/games/rott) +-------------------------------- +If you run "rott" from the command line, or launch it from the KDE/XFCE +application menu, this script looks in /usr/share/games/rott to see which +set of data files you have, and runs the correct game binary for you. + +If the script finds ROTTCD.RTC, it runs rott-cdrom +Otherwise, if it finds DARKWAR.WAD, it runs rott-reg +Otherwise, if it finds HUNTBGIN.WAD, it runs rott-demo +If none of the above exist, it exits with an error. + +If you have the correct data files, you can always run rott-demo, +rott-reg, or rott-cdrom directly, to choose which version of the game +to play. You probably should always do this for multiplayer games, +since all players need to be running the same version of the game. +--- + +Add-on Levels +------------- +Add-on level packs require the registered or CD-ROM version of the game. +To load them, use the "file", "filertl", and/or "filertc" options. Unlike +the main game data files, add-on files are searched for in the current +directory (or you can give the full path). + +Example: to play the ROTT Reject Level Pack, download and unzip it, then +run: + +$ rott filertc REJECTS.RTC + +...and then start up comm-bat mode. + +RTL files are single-player levels and RTC files are for comm-bat +(multiplayer). Remember that comm-bat mode doesn't really work in this +port of ROTT (no networking code, so all you can do is run around by +yourself). +--- diff --git a/games/rott/doinst.sh b/games/rott/doinst.sh new file mode 100644 index 0000000000..392c12adb9 --- /dev/null +++ b/games/rott/doinst.sh @@ -0,0 +1,4 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications +fi + diff --git a/games/rott/patches/cdrom_version.diff b/games/rott/patches/cdrom_version.diff new file mode 100644 index 0000000000..e4adf80dd3 --- /dev/null +++ b/games/rott/patches/cdrom_version.diff @@ -0,0 +1,14 @@ +diff -Naur rott-1.1.1.orig/rott/develop.h rott-1.1.1/rott/develop.h +--- rott-1.1.1.orig/rott/develop.h 2008-05-24 02:29:04.000000000 -0400 ++++ rott-1.1.1/rott/develop.h 2010-03-16 23:52:12.000000000 -0400 +@@ -41,8 +41,8 @@ + + #define BNACRASHPREVENT 1 //bna added + // Make sure only one of the following are on at one time +-#define SHAREWARE 1 +-#define SUPERROTT 0 ++#define SHAREWARE 0 ++#define SUPERROTT 1 + #define SITELICENSE 0 + + // cute little dopefish thing, only works with special patch? diff --git a/games/rott/patches/manpage.diff b/games/rott/patches/manpage.diff new file mode 100644 index 0000000000..70864338ec --- /dev/null +++ b/games/rott/patches/manpage.diff @@ -0,0 +1,83 @@ +diff -Naur rott-1.1.1.orig/doc/rott.6 rott-1.1.1/doc/rott.6 +--- rott-1.1.1.orig/doc/rott.6 2009-06-08 07:04:26.000000000 -0400 ++++ rott-1.1.1/doc/rott.6 2010-03-17 16:26:41.000000000 -0400 +@@ -6,6 +6,15 @@ + .SH SYNOPSIS + .B rott + .RI [ options ] ++.br ++.B rott\-demo ++.RI [ options ] ++.br ++.B rott\-reg ++.RI [ options ] ++.br ++.B rott\-cdrom ++.RI [ options ] + + .SH DESCRIPTION + .B ROTT +@@ -27,6 +36,18 @@ + Specify the screen resolution to use (next parameter is widthxheight). + Valid resolutions are 320x200, 640x480 and 800x600. + .TP ++.BR filertl\ \fIfile.rtl\fP ++Load external Userlevels (RTL files) (next parameter is RTL filename). ++Not available in shareware/demo version. ++.TP ++.BR filertc\ \fIfile.rtc\fP ++Load external Battlelevels (RTC files) (next parameter is RTC filename). ++Not available in shareware/demo version. ++.TP ++.BR file\ \fIfile.wad\fP ++Load external WAD file (next parameter is WAD filename). ++Not available in shareware/demo version. ++.TP + .BR spaceball + Enable check for Spaceball. + .TP +@@ -73,21 +94,40 @@ + Exit program when demo is terminated. + .TP + .BR warp\ \fIlevel\fP +-Warp to specific ROTT level (next paramater is level to start on). ++Warp to specific ROTT level (next parameter is level to start on). + .TP + .BR timelimit\ \fItime\fP +-Play ROTT in time limit mode (next paramater is time in seconds). ++Play ROTT in time limit mode (next parameter is time in seconds). + .TP + .BR maxtimelimit\ \fItime\fP +-Maximimum time to count down from (next paramater is time in seconds). ++Maximimum time to count down from (next parameter is time in seconds). + .TP + .BR dopefish + ? + ++.SH FILES ++Game data files are searched for in \fB/usr/share/games/rott\fR. Each ++game binary requires its own particular data files: ++.PP ++\fBrott\-demo\fR \- HUNTBGIN.WAD HUNTBGIN.RTC HUNTBGIN.RTL REMOTE1.RTS ++.PP ++\fBrott\-reg\fR \- DARKWAR.WAD DARKWAR.RTC DARKWAR.RTL REMOTE1.RTS ++.PP ++\fBrott\-cdrom\fR \- DARKWAR.WAD ROTTCD.RTC DARKWAR.RTL REMOTE1.RTS ++.PP ++All filenames must be UPPERCASE. ++.PP ++Simply run \fBrott\fR to play the "best" version of the game that you ++have the data files for (CD\-ROM, Registered, or Demo, in that order). ++.PP ++User config data is stored in \fB~/.rott\fR for the shareware/demo version ++and \fB~/.rott/darkwar\fR for the registered and CD\-ROM versions. ++ + .SH AUTHORS + ROTT was created and published as shareware by Apogee Software, Ltd. and was published commercially by FormGen, Inc. + .PP + The primary contributors to the icculus.org port are: Steven Fuller, Ryan C. Gordon, John Hall and Dan Olson. + .PP + This manual page was written by Fabian Greffrath <fabian@debian-unofficial.org> +-for the Debian project (but may be used by others). ++for the Debian project (but may be used by others), and was modified for ++the SlackBuilds.org project by B. Watson. diff --git a/games/rott/patches/registered_version.diff b/games/rott/patches/registered_version.diff new file mode 100644 index 0000000000..6fe8aaf49c --- /dev/null +++ b/games/rott/patches/registered_version.diff @@ -0,0 +1,12 @@ +diff -Naur rott-1.1.1.orig/rott/develop.h rott-1.1.1/rott/develop.h +--- rott-1.1.1.orig/rott/develop.h 2008-05-24 02:29:04.000000000 -0400 ++++ rott-1.1.1/rott/develop.h 2010-03-17 14:31:22.000000000 -0400 +@@ -41,7 +41,7 @@ + + #define BNACRASHPREVENT 1 //bna added + // Make sure only one of the following are on at one time +-#define SHAREWARE 1 ++#define SHAREWARE 0 + #define SUPERROTT 0 + #define SITELICENSE 0 + diff --git a/games/rott/rott.SlackBuild b/games/rott/rott.SlackBuild new file mode 100644 index 0000000000..49d62e71bb --- /dev/null +++ b/games/rott/rott.SlackBuild @@ -0,0 +1,105 @@ +#!/bin/sh + +# Slackware build script for rott + +# Written by B. Watson (yalhcru@gmail.com) + +PRGNAM=rott +VERSION=${VERSION:-1.1.1} +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +patch -p1 < $CWD/patches/manpage.diff + +# The shareware/demo binary +make -C $PRGNAM \ + EXTRACFLAGS="$SLKCFLAGS -DDATADIR=\\\"/usr/share/games/$PRGNAM/\\\"" +mkdir -p $PKG/usr/games +install -s -m0755 $PRGNAM/$PRGNAM $PKG/usr/games/$PRGNAM-demo + +# The registered binary +make -C $PRGNAM clean +patch -p1 < $CWD/patches/registered_version.diff +make -C $PRGNAM \ + EXTRACFLAGS="$SLKCFLAGS -DDATADIR=\\\"/usr/share/games/$PRGNAM/\\\"" +install -s -m0755 $PRGNAM/$PRGNAM $PKG/usr/games/$PRGNAM-reg + +# The retail/cdrom binary +make -C $PRGNAM clean +patch -p1 -R < $CWD/patches/registered_version.diff +patch -p1 < $CWD/patches/cdrom_version.diff +make -C $PRGNAM \ + EXTRACFLAGS="$SLKCFLAGS -DDATADIR=\\\"/usr/share/games/$PRGNAM/\\\"" +install -s -m0755 $PRGNAM/$PRGNAM $PKG/usr/games/$PRGNAM-cdrom + +# Not going to bother with the "Site License" binary: doubt anyone +# will have any use for it, since multiplayer isn't supported. If you need +# it, see rott/develop.h + +# Man page is modified from the original version. +MANDIR=$PKG/usr/man/man6 +mkdir -p $MANDIR +gzip -9c doc/$PRGNAM.6 > $MANDIR/$PRGNAM.6.gz +ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-demo.6.gz +ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-reg.6.gz +ln -s $PRGNAM.6.gz $MANDIR/$PRGNAM-cdrom.6.gz + +# Optional shareware game data +mkdir -p $PKG/usr/share/games/$PRGNAM +if [ -e $CWD/1rott13.zip ]; then + unzip $CWD/1rott13.zip ROTTSW13.SHR + unzip ROTTSW13.SHR '*.WAD' '*.RTS' '*.RTL' '*.RTC' + cp *.WAD *.RTS *.RTL *.RTC $PKG/usr/share/games/$PRGNAM + chmod 644 $PKG/usr/share/games/$PRGNAM/* +fi + +# Wrapper script +install -m0755 -oroot -groot $CWD/$PRGNAM.sh $PKG/usr/games/$PRGNAM + +mkdir -p $PKG/usr/share/applications $PKG/usr/share/pixmaps +cp misc/$PRGNAM.desktop $PKG/usr/share/applications +cp misc/$PRGNAM.xpm $PKG/usr/share/pixmaps + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp COPYING README doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild +cat $CWD/README_gamedata.txt > $PKG/usr/doc/$PRGNAM-$VERSION/README_gamedata.txt + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/games/rott/rott.info b/games/rott/rott.info new file mode 100644 index 0000000000..6e462457ca --- /dev/null +++ b/games/rott/rott.info @@ -0,0 +1,12 @@ +PRGNAM="rott" +VERSION="1.1.1" +HOMEPAGE="http://icculus.org/rott/" +DOWNLOAD="http://icculus.org/rott/share/1rott13.zip + http://icculus.org/rott/releases/rott-1.1.1.tar.gz" +DOWNLOAD_x86_64="" +MD5SUM="0fafd6b629eab80278fc726e31f9cf41 + c0c0e1719375f58428627af9f8dbc7c3" +MD5SUM_x86_64="" +MAINTAINER="B. Watson" +EMAIL="yalhcru@gmail.com" +APPROVED="dsomero" diff --git a/games/rott/rott.sh b/games/rott/rott.sh new file mode 100644 index 0000000000..2248dfd758 --- /dev/null +++ b/games/rott/rott.sh @@ -0,0 +1,26 @@ +#!/bin/sh + +# Wrapper script for Rise of the Triad, by B. Watson + +DATADIR=/usr/share/games/rott +CDROMFILE=$DATADIR/ROTTCD.RTC +REGFILE=$DATADIR/DARKWAR.WAD +DEMOFILE=$DATADIR/HUNTBGIN.WAD +BINDIR=/usr/games + +if [ -r $CDROMFILE ]; then + exec $BINDIR/rott-cdrom "$@" +elif [ -r $REGFILE ]; then + exec $BINDIR/rott-reg "$@" +elif [ -r $DEMOFILE ]; then + exec $BINDIR/rott-demo "$@" +else + cat 1>&2 <<EOF +$0: Can't find any usable game data files. + +Copy the game data files from either the shareware or full version +of ROTT to /usr/share/games/rott, and if necessary, rename the files +to ALL UPPERCASE names (e.g. DARKWAR.WAD). +EOF + exit 1 +fi diff --git a/games/rott/slack-desc b/games/rott/slack-desc new file mode 100644 index 0000000000..d407e8a551 --- /dev/null +++ b/games/rott/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' +# on the right side marks the last column you can put a character in. You must +# make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +rott: rott (Rise of the Triad, first person shooter game) +rott: +rott: Rise of the Triad is a high quality, fast scrolling first-person +rott: perspective 3D action game. It includes a lot of destructive enemies, +rott: an arsenal of weapons from simple pistols to missile launchers, +rott: life-preserving armor, traps and ambushes galore. +rott: +rott: WARNING: Rise of the Triad features wanton and gratuitous violence. +rott: +rott: +rott: |