From 54553cabeb52d2f0bf0c4305a5913b8141d2794e Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Wed, 12 May 2010 17:39:12 +0200 Subject: games/eduke32: Updated for version 20090313 --- games/eduke32/README | 24 ++- games/eduke32/eduke32.6 | 304 +++++++++++++++++++++++++++++ games/eduke32/eduke32.SlackBuild | 115 ++++++----- games/eduke32/eduke32.desktop | 5 +- games/eduke32/eduke32.info | 8 +- games/eduke32/eduke32_src_20090313.diff.gz | Bin 0 -> 24885 bytes games/eduke32/mapster32.desktop | 5 +- games/eduke32/slack-desc | 14 +- 8 files changed, 397 insertions(+), 78 deletions(-) create mode 100644 games/eduke32/eduke32.6 create mode 100644 games/eduke32/eduke32_src_20090313.diff.gz (limited to 'games/eduke32') diff --git a/games/eduke32/README b/games/eduke32/README index 4d31c73295..f04c35e737 100644 --- a/games/eduke32/README +++ b/games/eduke32/README @@ -2,13 +2,25 @@ EDuke32 is a fork of the JFDuke3D port of Duke Nukem 3D (aka Duke3D), merging it with EDuke to provide many new features for mod authors. Also included is a map editor (mapster32). -To play the game, you will need the DUKE32.GRP file from either the -Duke Nukem 3D CD-ROM, or from the shareware version of Duke Nukem 3D. - -To play the game, you must provide the data files. -For convenience, the shareware GRP file has been packaged as -eduke32_shareware_data, also available from slackbuilds.org. +To play the game, you will need the DUKE32.GRP file from either +the Duke Nukem 3D CD-ROM, or from the shareware version of Duke +Nukem 3D. For convenience, the shareware GRP file has been packaged +as eduke32_shareware_data, also available from slackbuilds.org. See README_game_data.txt If you want to play the HRP (High Resolution Pack), get the eduke32_hires_pack package from slackbuilds.org + +To hear the in-game music, either use the Music Pack (see +eduke32_hires_pack), or else install a set of MIDI patches (either +freepats or eawpats) from slackbuilds.org. The game looks for +/etc/timidity/timidity.cfg, but timidity doesn't actually have to be +installed. + +By default, the Build utilities (kextract kgroup transpal wad2art wad2map) +are built by this script and installed in /usr/games. If you don't want +these, you can set BUILD_UTILS=no in the environment before running the +SlackBuild script. + +Note for 64-bit users: Despite the "32" in the name, this software +builds and runs just fine as 64-bit native binaries :) diff --git a/games/eduke32/eduke32.6 b/games/eduke32/eduke32.6 new file mode 100644 index 0000000000..0b2faabf63 --- /dev/null +++ b/games/eduke32/eduke32.6 @@ -0,0 +1,304 @@ +.TH EDUKE32 "6" "May 2009" "EDuke32 1.5.0devel 20090313" "User Commands" +.SH NAME +EDuke32 \- Enhanced Duke Nukem 3D Build engine +.SH SYNOPSIS +.B eduke32 +\fI[options]\fR \fI[files]\fR +.SH DESCRIPTION +EDuke32 is a fork of the JFDuke3D port of Duke Nukem 3D (aka Duke3D), +merging it with EDuke to provide many new features for mod authors. +.PP +For normal single\-player gameplay, \fBeduke32\fR will usually be run with no +command\-line options. This will display a graphical interface +allowing the user to choose the game and options. +.SH OPTIONS +\fBeduke32\fR is sensitive to spaces between command\-line options +and their arguments. Use the spacing shown here, e.g. \fI\-l2\fR, +not \fI\-l 2\fR. Generally speaking, single\-character options may +not have a space, while multiple character options (e.g. \-cfg) +require a space. +.PP +Options may not be bundled (\fI\-rc1\fR is invalid, use \fI\-r \-c1\fR). +Options are case\-insensitive (\fI\-d\fR and +\fI\-D\fR do the same thing, e.g.) +.PP +Options marked with \fI[*]\fR are disabled when playing the shareware +version of Duke Nukem 3D. +.TP +\fB\-?\fR, \fB\-help\fR +Show the list of command line options. +.TP +\fB\-cfg\fR \fI[file.cfg]\fR +Use an alternate configuration file +.TP +\fB\-c\fR\fI#\fR +Use multiplayer mode #, where 1 = Dukematch, 2 = Coop, 3 = Dukematch (no spawn) +.TP +\fB\-d\fR\fI[file.dmo]\fR +Play a demo. By default, \fBeduke32\fR looks for \fIdemo1.dmo\fR, +\fIdemo2.dmo\fR, etc. in the \fB~/.eduke32\fR directory, and plays +them in order if they're found. +.TP +\fB\-g\fR\fI[file.grp]\fR +Use an extra group file +.TP +\fB\-h\fR\fI[file.def]\fR +Use an alternate def +.TP +\fB\-j\fR\fI[dir]\fR +Adds a directory to EDuke32's search list +.TP +\fB\-l\fR\fI#\fR +Warp to level #, see \-v +.TP +\fB\-map\fR \fI[file.map]\fR +\fI[*]\fR Loads a map +.TP +\fB\-m\fR +Disable monsters +.TP +\fB\-nam\fR +Run in NAM\-compatible mode +.TP +\fB\-ww2gi\fR +Run in WW2GI\-compatible mode +.TP +\fB\-net\fR, \fB\-n\fR, \fB\-p\fR +Networked multiplayer options (see \fBNETWORK PLAY\fR, below) +.TP +\fB\-r\fR +Record demo. The output file will be \fB~/.eduke32/demo1.dmo\fR +(or demo2.dmo if demo1.dmo already exists, or demo3.dmo if 1 and +2 both exist). Unfortunately, there's no way to specify the filename +to record to, and no way to find out from eduke32's log file or +standard output/error messages. Try "ls -t ~/.eduke32/*.dmo | head -1". +.TP +\fB\-s\fR\fI#\fR +Set skill level (1\-4) +.TP +\fB\-setup\fR, \fB\-nosetup\fR +Enables/disables startup window +.TP +\fB\-t\fR\fI#\fR +Set respawn mode: 1 = Monsters, 2 = Items, 3 = Inventory, x = All +.TP +\fB\-usecwd\fR +Read game data and configuration file from working directory +.TP +\fB\-u\fR\fI#########\fR +User's favorite weapon order (default: 3425689071) +.TP +\fB\-v\fR\fI#\fR +\fI[*]\fR Warp to volume #, see \-l +.TP +\fB\-x\fR\fI[game.con]\fR +Load custom CON script +.TP +\fB\-\fR\fI#\fR +Load and run a game from slot # (0\-9) +.SS Debug Options +The following options are considered debugging options, but may be +useful for general play. +.TP +\fB\-a\fR +Use fake player AI (fake multiplayer only; \fB\-q\fR required) +[yes, this means eduke32 has bots] +.TP +\fB\-cachesize\fR \fI#\fR +Sets cache size, in Kb (default: 32768) +.TP +\fB\-f\fR\fI#\fR +Send fewer packets in multiplayer (1, 2, 4) (deprecated) +.TP +\fB\-game_dir\fR \fI[dir]\fR +Duke3d_w32 compatibility option, see -j +.TP +\fB\-gamegrp\fR +Selects which file to use as main grp +.TP +\fB\-i\fI#\fR +Use networking mode (1/0) [appears to be the same as \fB\-n\fR?] +.TP +\fB\-name\fR \fI[name]\fR +Player name in multiplay +.TP +\fB\-nD\fR +Dump default gamevars to gamevars.txt +.TP +\fB\-noautoload\fR +Disable loading content from autoload dir [e.g. to disable +the High Resolution Pack] +.TP +\fB\-nologo\fR +Skip the logo animation +.TP +\fB\-ns\fR +Disable sound +.TP +\fB\-nm\fR +Disable music +.TP +\fB\-q\fR\fI#\fR +Fake multiplayer with # (2-8) players (with \fB\-a\fR, the other +players are "bots"; without it, they stand there like punching bags). +.TP +\fB\-rmnet\fR +Use network config file (OBSOLETE, see -net) +.TP +\fB\-stun\fR +Use UDP hole punching for multiplayer connections +.TP +\fB\-unstable\fR +Force EDuke32 to execute unsafe CON commands (and crash) +.TP +\fB\-w\fR +Show coordinates +.TP +\fB\-z\fR\fI#\fR +Enable line-by-line CON compile debugging at level # +.TP +\fB\-condebug\fR \fI#\fR +Equivalent to \fB\-z1\fR +.SH NETWORK PLAY +Multiplayer games are started via command-line parameters passed to +\fBeduke32\fR This is a short guide to getting a multiplayer game running +between these three hypothetical computers: +.PP +.nf +Host name IP address +faye 192.168.1.2 +asuka 192.168.1.5 +kaoru 192.168.1.6 +.fi +.PP +Keep in mind that the networking features are still being refined and +there are certain issues and caveats to be aware of when using it. The +basic syntax of the network command line is like so: +.PP +\fBeduke32\fR \fI(normal game parameters)\fR \fB\-net\fR \fI(network parameters)\fR +.SS Network parameters +.TP +\fB\-n\fR\fIx\fR:\fIy\fR +Game comm type. x = 0 for master/slave or 1 for peer-to-peer. +If unspecified, y defaults to 2. For more than two players in a +master-slave game, you have to indicate the number on the master. eg: +\-n0 or \-n0:4 +.TP +\fB\-p\fR\fIx\fR +Overrides the default port (23513) with x being the new port value. +.TP +\fBaddress:port\fR +An address of a machine. See the items below for more information. +.SS Master/Slave mode +This mode is the easiest mode for use with Internet play since it requires +only the address of the master of the game (the person hosting the game) +be specified by each slave who joins. Here are example command lines each +machine must run to join the game hosted by the machine named 'asuka': +.PP +\fIuser@asuka$\fR eduke32 \-net \-n0:3 +.br +\fIuser@faye$\fR eduke32 \-net \-n0 192.168.1.5 +.br +\fIuser@kaoru$\fR eduke32 \-net \-n0 192.168.1.5 +.SS Peer-to-peer mode +This mode is often useful for playing on a LAN where it is easier to +coordinate and organise the order of peers in the game. This mode will +become simpler to set up in the future but for now this is how to do +it. Peer-to-peer mode requires each machine specify the addresses of +each other machine in the game in the same order, but indicating its +own position in the sequence with the \-n1 option. +.PP +\fIuser@asuka$\fR eduke32 \-net \-n1 192.168.1.2 192.168.1.6 +.br +\fIuser@faye$\fR eduke32 \-net 192.168.1.5 \-n1 192.168.1.6 +.br +\fIuser@kaoru$\fR eduke32 \-net 192.168.1.5 192.168.1.2 \-n1 +.SS Addresses and ports +The networking code is capable of resolving +DNS names to their corresponding addresses, so if your network +is configured with such services, instead of having to specify raw IP +addresses, you can give the computer's DNS host name. (Actually, +the standard system resolver is used, so things like \fB/etc/hosts\fR +or NIS should work fine, as well). +.PP +The default port the game communicates on is 23513. Some users may find it +necessary to set up a forward through their Internet firewall in order to +get games working when playing across the Internet. You can override the +default port via the \-p??? switch where ??? is the new port number. If +a master is running a game on a port other than the default, the slaves +will have to specify the alternative port with address:port notation, +eg. 192.168.1.5:20000 +.SH FILES +.TP +\fBduke3d.grp\fR +The primary game data file, containing all the game graphics, art, sound, +music, levels, etc. \fI*.grp\fR files will be searched for in both +\fB/usr/libexec/eduke32/eduke32\fR and \fB~/.eduke32\fR. The startup menu +offers the user a choice of games under the "Game" tab, if multiple .grp +files are found. .grp files are checksummed; if yours doesn't appear +in the menu, it's probably not recognized due to an invalid checksum +(either the file is damaged, or it came from a pirated/hacked/modified +copy of the game). +.TP +\fB/usr/games/eduke32\fR +Shell script wrapper, to make the eduke32 binary appear to work more +like a standard Linux program. +.TP +\fB/usr/libexec/eduke32/eduke32\fR +The actual game binary. Called by the shell script wrapper. +.TP +\fB/usr/share/games/eduke32\fR +System\-wide game data. The High Resolution Pack is normally installed +in \fB/usr/share/games/eduke32/autoload/duke3d.grp/\fR. The last +directory name must match the .grp filename. +.TP +\fB~/.eduke32\fR +Per\-user game data, config files, savegames, and logs. +.SS ~/.eduke32 Contents +.TP +\fBeduke32.cfg\fR +Main config file. Normally not edited directly; use the in\-game +menus instead. +.TP +\fBeduke32_binds.cfg\fR +Key bindings; created by the in\-game setup menu. +.TP +\fBtextures\fR, \fBtextures.cache\fR +The texture cache. +.TP +\fBegam\fR\fI#\fR\fB.sav\fR +Saved games. \fI#\fR is a number between 0 and 9. +.SH LIMITATIONS +Because of its DOS/Windows heritage, the \fBeduke32\fR binary expects to +find its config files, savegames, etc. in the current directory from +which it was run (in fact, it expects to be able to write to the +current directory). To make it behave in a more UNIX\-like way, the actual +binary is called by a wrapper script, which creates and chdirs to a \fB~/.eduke32/\fR +directory, and runs the real binary. +This means that any options that take filenames (such as \fB\-map\fR +or \fB\-cfg\fR) treat them as relative paths from the \fB~/.eduke32/\fR +directory, \fBnot\fR the directory from which the wrapper script was +called. +.PP +In addition, most of the options that take filenames don't seem to +accept anything but a simple filename with no absolute or relative path +components. This means that e.g. demo files to be played back with +the \fB\-d\fR option \fImust\fR reside in the \fB~/.eduke32/\fR +directory. +.PP +It's also worth mentioning here that the game will not abort in case of +errors in command\-line syntax (e.g. nonexistent option, or extra +space between options and argument) or semantics (e.g. trying to warp +to non\-existent level with \-l). If you're trying to use +any of the options described here and they don't seem to work, check +your typing: many typos won't even cause a warning to be printed in +the game's debugging output. +.SH AUTHORS +The Build engine was originally written by Ken Silverman +.PP +EDuke32 includes code by many authors, including Richard Gobeille +and Jonathan Fowler. +.PP +Duke Nukem 3D is copyrighted by 3DRealms, Inc. +.PP +This man page was written by B. Watson, for the SlackBuilds.org project. diff --git a/games/eduke32/eduke32.SlackBuild b/games/eduke32/eduke32.SlackBuild index 5847c766fe..e598a1539a 100644 --- a/games/eduke32/eduke32.SlackBuild +++ b/games/eduke32/eduke32.SlackBuild @@ -3,103 +3,100 @@ # Slackware build script for eduke32 # Written by B. Watson (yalhcru@gmail.com) - -# Comment next line to skip building the Build utilities: -BUILD_UTILS=${BUILD_UTILS:-"yes"} +# Modified by the SlackBuilds.org project. PRGNAM=eduke32 -VERSION=${VERSION:-20080709} -SRCDIR=${PRGNAM}_src_${VERSION} +VERSION=${VERSION:-20090313} ARCH=${ARCH:-i486} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} CWD=$(pwd) -TMP=${TMP:-/tmp/SBo} # For consistency's sake, use this +TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM -OUTPUT=${OUTPUT:-/tmp} # Drop the package in /tmp +OUTPUT=${OUTPUT:-/tmp} + +SRCVER=${SRCVER:-20090131} -# TODO: fix the Makefiles so they'll honor external CFLAGS. -# The default flags include -O2 already, which is good enough for now. if [ "$ARCH" = "i486" ]; then SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" + EXTRAMAKEFLAGS="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" -else - echo "Sorry, $PRGNAM can't be compiled on $ARCH with this script (yet)" - exit 1 + LIBDIRSUFFIX="" + EXTRAMAKEFLAGS="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" + EXTRAMAKEFLAGS="NOASM=1" fi set -e rm -rf $PKG -mkdir -p $TMP $PKG/usr/libexec/$PRGNAM $PKG/usr/bin \ - $PKG/usr/share/games/$PRGNAM $OUTPUT +mkdir -p $TMP $PKG $OUTPUT cd $TMP -rm -rf $SRCDIR -unzip $CWD/$SRCDIR.zip - -cd $SRCDIR +rm -rf ${PRGNAM}_src_${SRCVER} +unzip $CWD/${PRGNAM}_src_${SRCVER}.zip +cd ${PRGNAM}_src_${SRCVER} 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 {} \; - -cd eduke32 -make -# There is no "make install"; binary is already stripped - -for i in eduke32 mapster32; do - cat $i > $PKG/usr/libexec/$PRGNAM/$i - chown root:root $PKG/usr/libexec/$PRGNAM/$i - chmod 0755 $PKG/usr/libexec/$PRGNAM/$i -done +chmod -R a-s,u+w,go+r-w . + +# Latest src is only available as a diff against the previous +# release, it came from here: +# http://wiki.eduke32.com/stuff/source_code/eduke32_src_20090313.diff +zcat $CWD/${PRGNAM}_src_${VERSION}.diff.gz | patch -p1 + +make CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" $EXTRAMAKEFLAGS + +# Build the utilities, if requested. +if [ "${BUILD_UTILS:-yes}" = "yes" ]; then + cd build + make utils + + for i in kextract kgroup transpal wad2art wad2map; do + install -s -D -m0755 $i $PKG/usr/games/$i + done + + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION + cp doc/* $PKG/usr/doc/$PRGNAM-$VERSION + cd - +fi + +install -D -m0755 $PRGNAM $PKG/usr/libexec/$PRGNAM/$PRGNAM +install -D -m0755 mapster32 $PKG/usr/libexec/$PRGNAM/mapster32 + +mkdir -p $PKG/usr/man/man6 +gzip -9c $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz # Wrapper script to make things behave nicer -cat $CWD/eduke32.wrapper > $PKG/usr/bin/eduke32 -chown root:root $PKG/usr/bin/eduke32 -chmod 755 $PKG/usr/bin/eduke32 -( cd $PKG/usr/bin ; ln -s eduke32 mapster32 ) +install -D -m0755 $CWD/$PRGNAM.wrapper $PKG/usr/games/$PRGNAM +( cd $PKG/usr/games ; ln -s $PRGNAM mapster32 ) # Mapster help files -cp *.hlp *.HLP names.h tiles.cfg $PKG/usr/share/games/eduke32 +mkdir -p $PKG/usr/share/games/$PRGNAM +cp *.hlp *.HLP names.h tiles.cfg $PKG/usr/share/games/$PRGNAM mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION -cp -a ChangeLog* *.txt *.TXT *.sample *.cfg \ - $PKG/usr/doc/$PRGNAM-$VERSION +cp ChangeLog* *.txt *.TXT *.sample *.cfg $CWD/README_game_data.txt \ + $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild -cp $CWD/README_game_data.txt $PKG/usr/doc/$PRGNAM-$VERSION + ( cd $PKG/usr/share/games/$PRGNAM ln -s ../../../doc/$PRGNAM-$VERSION/README_game_data.txt . ) # Icon and desktop link mkdir -p $PKG/usr/share/applications -cp $CWD/mapster32.desktop $CWD/eduke32.desktop $PKG/usr/share/applications +cp $CWD/mapster32.desktop $CWD/$PRGNAM.desktop $PKG/usr/share/applications + mkdir -p $PKG/usr/share/pixmaps -cp $CWD/eduke32.png $PKG/usr/share/pixmaps +cp $CWD/$PRGNAM.png $PKG/usr/share/pixmaps # slack-desc mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc cat $CWD/doinst.sh > $PKG/install/doinst.sh -# Build the utilities, if requested. -if [ "$BUILD_UTILS" = "yes" ]; then - cd $TMP/$SRCDIR/build - make utils - - for i in kextract kgroup transpal wad2art wad2map; do - strip $i - cat $i > $PKG/usr/bin/$i - chown root:root $PKG/usr/bin/$i - chmod 0755 $PKG/usr/bin/$i - done - - cp doc/* $PKG/usr/doc/$PRGNAM-$VERSION - echo "$PRGNAM: This package includes the Build engine utiliies (kextract et al)" >> $PKG/install/slack-desc -fi - cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz diff --git a/games/eduke32/eduke32.desktop b/games/eduke32/eduke32.desktop index b50def0dfa..2190c3cc97 100644 --- a/games/eduke32/eduke32.desktop +++ b/games/eduke32/eduke32.desktop @@ -1,10 +1,9 @@ [Desktop Entry] -Encoding=UTF-8 Name=EDuke32 GenericName=Duke Nukem 3D Engine Comment=EDuke32 Duke Nukem 3D Engine -Icon=/usr/share/pixmaps/eduke32.png +Icon=eduke32 Exec=eduke32 Terminal=false Type=Application -Categories=Application;Game; +Categories=Game;ActionGame; diff --git a/games/eduke32/eduke32.info b/games/eduke32/eduke32.info index 8229e3a457..c81b9a345a 100644 --- a/games/eduke32/eduke32.info +++ b/games/eduke32/eduke32.info @@ -1,8 +1,8 @@ PRGNAM="eduke32" -VERSION="20080709" +VERSION="20090313" HOMEPAGE="http://www.eduke32.com/" -DOWNLOAD="http://wiki.eduke32.com/stuff/eduke32_src_20080709.zip" -MD5SUM="25dea16254a227b0ad3dffe01ca604bf" +DOWNLOAD="http://wiki.eduke32.com/stuff/source_code/eduke32_src_20090131.zip" +MD5SUM="cf5eb51de024f28e8b24aae2702d459e" MAINTAINER="B. Watson" EMAIL="yalhcru@gmail.com" -APPROVED="David Somero" \ No newline at end of file +APPROVED="dsomero" diff --git a/games/eduke32/eduke32_src_20090313.diff.gz b/games/eduke32/eduke32_src_20090313.diff.gz new file mode 100644 index 0000000000..bfd7c5188f Binary files /dev/null and b/games/eduke32/eduke32_src_20090313.diff.gz differ diff --git a/games/eduke32/mapster32.desktop b/games/eduke32/mapster32.desktop index 2ce830862d..66908945b3 100644 --- a/games/eduke32/mapster32.desktop +++ b/games/eduke32/mapster32.desktop @@ -1,10 +1,9 @@ [Desktop Entry] -Encoding=UTF-8 Name=Mapster32 GenericName=Duke Nukem 3D Editor Comment=Mapster32 Duke Nukem 3D Editor -Icon=/usr/share/pixmaps/eduke32.png +Icon=eduke32 Exec=mapster32 Terminal=false Type=Application -Categories=Application;Game;Editor +Categories=Game;Editor diff --git a/games/eduke32/slack-desc b/games/eduke32/slack-desc index 0ca6bbb969..e93a9f9d82 100644 --- a/games/eduke32/slack-desc +++ b/games/eduke32/slack-desc @@ -1,4 +1,12 @@ -eduke32: EDuke32 (fork of the JFDuke3D port of Duke Nukem 3D) +# 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------------------------------------------------------| +eduke32: EDuke32 (enhanced "Duke Nukem 3D" engine) eduke32: eduke32: EDuke32 is a fork of the JFDuke3D port of Duke Nukem 3D (aka Duke3D), eduke32: merging it with EDuke to provide many new features for mod authors. @@ -7,5 +15,5 @@ eduke32: eduke32: To play the game, you will need the DUKE3D.GRP file from either the eduke32: Duke Nukem 3D CD-ROM, or from the shareware version of Duke Nukem 3D. eduke32: -eduke32: For convenience, the shareware GRP file has been packaged as -eduke32: eduke32_shareware_data, also available from slackbuilds.org. \ No newline at end of file +eduke32: +eduke32: -- cgit v1.2.3-65-gdbad