mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-18 22:06:04 +01:00
games/odamex: Added (Online Doom Multiplayer Experience)
Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
This commit is contained in:
parent
fa40eb3d30
commit
9daa6f9f29
7 changed files with 388 additions and 0 deletions
18
games/odamex/README
Normal file
18
games/odamex/README
Normal file
|
@ -0,0 +1,18 @@
|
|||
Odamex (Online Doom Multiplayer Experience) is a modification of DOOM
|
||||
to allow players to compete with each other over the Internet using the
|
||||
client/server architecture.
|
||||
|
||||
This requires either wxGTK or wxPython.
|
||||
To hear in-game music, install either eawpats or freepats.
|
||||
|
||||
You'll also need the game data (WAD file) from one of the following:
|
||||
|
||||
Shareware Doom v1.9 (DOOM1.WAD)
|
||||
Ultimate Doom v1.9 (DOOM.WAD)
|
||||
Doom II v1.9 (DOOM2.WAD)
|
||||
Final Doom: TNT Evilution v1.9 (TNT.WAD)
|
||||
Final Doom: The Plutonia Experiment v1.9 (PLUTONIA.WAD)
|
||||
FreeDoom v0.6.2 (FREEDOOM.WAD)
|
||||
|
||||
Place the WAD file(s) in /usr/share/games/doom. The filenames can be
|
||||
all lowercase (doom.wad) or all uppercase (DOOM.WAD).
|
10
games/odamex/doinst.sh
Normal file
10
games/odamex/doinst.sh
Normal file
|
@ -0,0 +1,10 @@
|
|||
if [ -x /usr/bin/update-desktop-database ]; then
|
||||
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
|
||||
if [ -x /usr/bin/gtk-update-icon-cache ]; then
|
||||
/usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
|
212
games/odamex/odamex.6
Normal file
212
games/odamex/odamex.6
Normal file
|
@ -0,0 +1,212 @@
|
|||
.TH ODAMEX "6" "December 2011" "SlackBuilds.org" "Games"
|
||||
.SH NAME
|
||||
odamex \- Source port of Doom engine, with client/server multiplayer.
|
||||
.SH SYNOPSIS
|
||||
.B odamex
|
||||
[\fIoptions...\fR]
|
||||
.P
|
||||
.B odasrv
|
||||
[\fIoptions...\fR]
|
||||
.P
|
||||
.B odalaunch
|
||||
.SH DESCRIPTION
|
||||
Odamex (Online Doom Multiplayer Experience) is a modification of DOOM
|
||||
to allow players to compete with each other over the Internet using the
|
||||
client/server architecture.
|
||||
.P
|
||||
\fBodamex\fR is the client, also used for single\-player games.
|
||||
.P
|
||||
\fBodasrv\fR is the dedicated server (which runs in a tty).
|
||||
.P
|
||||
\fBodalaunch\fR is the server browser, used for finding multiplayer games
|
||||
on the 'net. It launches \fBodamex\fR with appropriate arguments.
|
||||
.P
|
||||
\fBodamex\fR is a source port of the Doom engine. It requires the data (aka WAD)
|
||||
file from one or more of the supported games. See \fBWAD FILES\fR, below, for a full
|
||||
explanation.
|
||||
.SH OPTIONS
|
||||
.SS File Options
|
||||
.TP
|
||||
\fB\-iwad\fR \fI<wadfile>\fR
|
||||
The IWAD file to use (in other words, which game to play). The filename extension
|
||||
\fI.wad\fR or \fI.WAD\fR is not required, and the name is case\-insensitive. See
|
||||
\fBWAD FILES\fR, below, for more information.
|
||||
.TP
|
||||
\fB\-waddir\fR
|
||||
Colon\-separated list of directories to search for WAD files, including the IWAD. See
|
||||
\fBWAD FILES\fR, below, for more information.
|
||||
.TP
|
||||
\fB\-file\fR \fI<wadfile>\fR
|
||||
Add a PWAD (patch WAD). Used for custom levels, music, etc. Does NOT work
|
||||
if using the shareware IWAD (doom1.wad).
|
||||
.TP
|
||||
\fB\-config\fR \fI<configfile>\fR
|
||||
Use \fIconfigfile\fR instead of the default config file (which is
|
||||
\fI~/.odamex/odamex.cfg\fR).
|
||||
.TP
|
||||
\fB\-confile\fR \fI<scriptfile>\fR
|
||||
Execute the console commands in \fIscriptfile\fR at startup.
|
||||
.TP
|
||||
\fB\-deh\fR \fI<dehacked-file>\fR
|
||||
Load a .deh file. Used for game mods.
|
||||
.TP
|
||||
\fB\-bex\fR \fI<bex-file>\fR
|
||||
Load a .bex file. Used for game mods.
|
||||
.SS Game Options
|
||||
.TP
|
||||
\fB\-warp\fR \fI<level>\fR
|
||||
Skip the intro, start the game at the given level. For Doom I and its variants,
|
||||
the level is given as a 2\-digit number (episode and map, e.g. \fB21\fR for
|
||||
episode 2, map 1). For Doom II and variants,
|
||||
the level is just the level number.
|
||||
.TP
|
||||
\fB\-nomonsters\fR
|
||||
Self\-explanatory. Usually used for multiplayer deathmatch games.
|
||||
.TP
|
||||
\fB\-timer\fR \fI<minutes>\fR
|
||||
Force levels to end after specified number of minutes.
|
||||
.TP
|
||||
\fB\-avg\fR
|
||||
"Austin Virtual Gaming" mode, equivalent to \fB\-timer 20\fR.
|
||||
.TP
|
||||
\fB\-fast\fR
|
||||
Fast monster mode (similar to "Nightmare" difficulty level).
|
||||
.TP
|
||||
\fB\-respawn\fR
|
||||
Monsters respawn after being killed (similar to "Nightmare" difficulty level).
|
||||
.TP
|
||||
\fB\-skill\fR \fI<skill-level>\fR
|
||||
Set skill level (useful with \fB\-warp\fR). Level is a number from 1 to 5, where
|
||||
1 is "I'm Too Young To Die" and 5 is "Nightmare".
|
||||
.SS Video/Audio Options
|
||||
.TP
|
||||
\fB\-width\fR \fI<pixels>\fR, \fB\-height\fR \fI<pixels>\fR
|
||||
Set video mode.
|
||||
.TP
|
||||
\fB\-novideo\fR, \fB\-nosound\fR, \fB\-nomusic\fR, \fB\-nomouse\fR
|
||||
Disable various features.
|
||||
.SS Network Options
|
||||
.TP
|
||||
\fB\-port\fR \fI<port>\fR
|
||||
Set the UDP port to use for netplay. Default is 10667.
|
||||
.TP
|
||||
\fB\-connect\fR \fI<server>\fR
|
||||
Connect to netplay server \fIserver\fR on startup.
|
||||
.TP
|
||||
\fB\-maxclients\fR \fI<count>\fR
|
||||
Set maximum number of allowed clients for dedicated server.
|
||||
.SS Demo Options
|
||||
.TP
|
||||
\fB\-record \fI<demoname>\fR
|
||||
Record a single\-player demo.
|
||||
.TP
|
||||
\fB\-playdemo \fI<demoname>\fR
|
||||
Play a previously\-recorded single\-player demo.
|
||||
.TP
|
||||
\fB\-netrecord \fI<demoname>\fR
|
||||
Record a network demo.
|
||||
.TP
|
||||
\fB\-netplay \fI<demoname>\fR
|
||||
Play a previously\-recorded network demo.
|
||||
.SS Undocumented Options
|
||||
.TP
|
||||
\fB\-heapsize \fI<size>\fR
|
||||
Set the heap size. Not obvious what this is good for.
|
||||
.TP
|
||||
\fB\-devparm\fR
|
||||
???
|
||||
.TP
|
||||
\fB\-blockmap\fR
|
||||
???
|
||||
.TP
|
||||
\fB\-stepmode\fR
|
||||
???
|
||||
.TP
|
||||
\fB\-bits\fR
|
||||
???
|
||||
.TP
|
||||
\fB\-fork\fR
|
||||
???
|
||||
.SH WAD FILES
|
||||
\fBodamex\fR (and Doom\-related games in general) load all game resources
|
||||
such as graphics, sound, and levels from a file known as an IWAD file.
|
||||
.P
|
||||
\fBodamex\fR supports the following IWAD files:
|
||||
.P
|
||||
.TP
|
||||
\fBdoom2f.wad\fR, \fBdoom2.wad\fR
|
||||
Doom II v1.9
|
||||
.TP
|
||||
\fBplutonia.wad\fR
|
||||
Final Doom: The Plutonia Experiment v1.9
|
||||
.TP
|
||||
\fBtnt.wad\fR
|
||||
Final Doom: TNT Evilution Experiment v1.9
|
||||
.TP
|
||||
\fBdoomu.wad\fR, \fBdoom.wad\fR
|
||||
Ultimate Doom v1.9
|
||||
.TP
|
||||
\fBdoom1.wad\fR
|
||||
Shareware Doom v1.9
|
||||
.TP
|
||||
\fBfreedoom.wad\fR, \fBfreedm.wad\fR
|
||||
FreeDoom v0.6.2
|
||||
.TP
|
||||
\fBchex.wad\fR
|
||||
Chex Quest
|
||||
.P
|
||||
If no \-iwad argument is given, \fBodamex\fR looks for each IWAD file
|
||||
in the order listed above, and uses the first one found.
|
||||
If \-iwad is given, \fBodamex\fR looks only for the named IWAD file. In
|
||||
either case,
|
||||
the WAD filenames
|
||||
can be in all\-lowercase or all\-uppercase.
|
||||
.P
|
||||
\fBodamex\fR also requires the file \fBodamex.wad\fR, which is part of \fBodamex\fR
|
||||
and is installed with it. This file must be found at runtime, or the application
|
||||
will abort.
|
||||
.P
|
||||
When searching for WAD files (odamex.wad, the IWAD, or a PWAD for the \-file option),
|
||||
\fBodamex\fR searches the following directories, in order:
|
||||
.P
|
||||
The current directory.
|
||||
.br
|
||||
The argument of the \-waddir option, if given.
|
||||
.br
|
||||
The path(s) listed in the \fBDOOMWADDIR\fR environment variable.
|
||||
.br
|
||||
The path(s) listed in the \fBDOOMWADPATH\fR environment variable.
|
||||
.br
|
||||
The user's home directory.
|
||||
.br
|
||||
The contents of the \fBwaddirs\fR cvar.
|
||||
.br
|
||||
The hard\-coded path \fB/usr/share/games/doom\fR.
|
||||
.P
|
||||
\-waddir, the waddirs cvar, DOOMWADDIR, and DOOMWADPATH are colon\-separated
|
||||
lists of directories.
|
||||
.SH OTHER FILES
|
||||
.TP
|
||||
\fB~/.odamex/\fR
|
||||
Config file \fBodamex.cfg\fR is located here. Will be created if it
|
||||
doesn't already exist. Also, saved games and recorded demos are stored here.
|
||||
.SH ENVIRONMENT
|
||||
.TP
|
||||
\fBDOOMWADDIR\fR, \fBDOOMWADPATH\fR
|
||||
Colon\-separated lists of directories to search for WAD files.
|
||||
.TP
|
||||
\fBHOME\fR
|
||||
WAD files are also searched for here.
|
||||
\fB
|
||||
.TP
|
||||
\fBSDL_VIDEODRIVER\fR, \fBSDL_AUDIODRIVER\fR
|
||||
See the SDL documentation for use of these.
|
||||
.SH AUTHORS
|
||||
Dean "deathz0r" Joseph
|
||||
.br
|
||||
Alex "AlexMax" Mayfield
|
||||
.br
|
||||
Ralph "Ralphis" Vickers
|
||||
.P
|
||||
This man page written by B. Watson for the SlackBuilds.org project,
|
||||
but it may be freely used by anyone for any purpose.
|
97
games/odamex/odamex.SlackBuild
Normal file
97
games/odamex/odamex.SlackBuild
Normal file
|
@ -0,0 +1,97 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Slackware build script for odamex
|
||||
|
||||
# Written by B. Watson (yalhcru@gmail.com)
|
||||
|
||||
PRGNAM=odamex
|
||||
VERSION=${VERSION:-0.5.6}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
if [ -z "$ARCH" ]; then
|
||||
case "$( uname -m )" in
|
||||
i?86) ARCH=i486 ;;
|
||||
arm*) ARCH=arm ;;
|
||||
*) ARCH=$( uname -m ) ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
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"
|
||||
else
|
||||
SLKCFLAGS="-O2"
|
||||
LIBDIRSUFFIX=""
|
||||
fi
|
||||
|
||||
set -e
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM-src-$VERSION
|
||||
tar xvf $CWD/$PRGNAM-src-$VERSION.tar.bz2
|
||||
cd $PRGNAM-src-$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 {} \;
|
||||
|
||||
sed -i "s/-g -Wall -O2/$SLKCFLAGS/" Makefile
|
||||
|
||||
# N.B. we want the game to look in /usr/share/games/doom for wad files,
|
||||
# to match the already-existing zdoom and prboom slackbuilds. Makefile
|
||||
# adds the /doom part to RESDIR itself. The patch adds this dir to the
|
||||
# default wad search path (otherwise we have to always run the game with
|
||||
# the -waddir option).
|
||||
|
||||
patch -p1 < $CWD/waddir.diff
|
||||
|
||||
make INSTALLDIR=/usr/games RESDIR=/usr/share/games
|
||||
make install INSTALLDIR=$PKG/usr/games RESDIR=$PKG/usr/share/games
|
||||
strip $PKG/usr/games/*
|
||||
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/tech
|
||||
|
||||
# The distributed docs are DOS CRLF text files, and they're executable. Ugh.
|
||||
for doc in CHANGELOG LICENSE MAINTAINERS README TODO odasrv.cfg; do
|
||||
sed 's/\r//' < $doc > $PKG/usr/doc/$PRGNAM-$VERSION/$doc
|
||||
done
|
||||
mv $PKG/usr/doc/$PRGNAM-$VERSION/odasrv.cfg $PKG/usr/doc/$PRGNAM-$VERSION/odasrv.cfg.sample
|
||||
install -m0644 doc/tech/* $PKG/usr/doc/$PRGNAM-$VERSION/tech
|
||||
|
||||
# Man page created for this slackbuild
|
||||
mkdir -p $PKG/usr/man/man6
|
||||
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
|
||||
|
||||
# Desktop stuff
|
||||
mkdir -p $PKG/usr/share/{applications,pixmaps}
|
||||
for exe in $PRGNAM odasrv odalaunch; do
|
||||
sed -e '/^Encoding/d' -e 's,/usr/share/doom,/usr/share/games/doom,' \
|
||||
< installer/arch/$exe.desktop \
|
||||
> $PKG/usr/share/applications/$exe.desktop
|
||||
cat media/icon_${exe}_512.png > $PKG/usr/share/pixmaps/$exe.png
|
||||
done
|
||||
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
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}
|
10
games/odamex/odamex.info
Normal file
10
games/odamex/odamex.info
Normal file
|
@ -0,0 +1,10 @@
|
|||
PRGNAM="odamex"
|
||||
VERSION="0.5.6"
|
||||
HOMEPAGE="http://odamex.net/"
|
||||
DOWNLOAD="http://downloads.sourceforge.net/odamex/odamex-src-0.5.6.tar.bz2"
|
||||
MD5SUM="acc6aeac1ae9e4cd3504400a3a17178f"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
MAINTAINER="B. Watson"
|
||||
EMAIL="yalhcru@gmail.com"
|
||||
APPROVED="rworkman"
|
19
games/odamex/slack-desc
Normal file
19
games/odamex/slack-desc
Normal file
|
@ -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------------------------------------------------------|
|
||||
odamex: Odamex (Online Doom Multiplayer Experience)
|
||||
odamex:
|
||||
odamex: Odamex (Online Doom Multiplayer Experience) is a modification of DOOM
|
||||
odamex: to allow players to compete with each other over the Internet using
|
||||
odamex: the client/server architecture.
|
||||
odamex:
|
||||
odamex:
|
||||
odamex:
|
||||
odamex:
|
||||
odamex:
|
||||
odamex:
|
22
games/odamex/waddir.diff
Normal file
22
games/odamex/waddir.diff
Normal file
|
@ -0,0 +1,22 @@
|
|||
diff -Naur odamex-src-0.5.6/client/src/d_main.cpp odamex-src-0.5.6.patched//client/src/d_main.cpp
|
||||
--- odamex-src-0.5.6/client/src/d_main.cpp 2011-11-05 00:00:05.000000000 -0400
|
||||
+++ odamex-src-0.5.6.patched//client/src/d_main.cpp 2011-12-23 07:23:12.000000000 -0500
|
||||
@@ -845,6 +845,7 @@
|
||||
D_AddSearchDir(dirs, getenv("DOOMWADPATH"), separator);
|
||||
D_AddSearchDir(dirs, getenv("HOME"), separator);
|
||||
D_AddSearchDir(dirs, waddirs.cstring(), separator);
|
||||
+ D_AddSearchDir(dirs, "/usr/share/games/doom", separator);
|
||||
|
||||
dirs.erase(std::unique(dirs.begin(), dirs.end()), dirs.end());
|
||||
|
||||
diff -Naur odamex-src-0.5.6/server/src/d_main.cpp odamex-src-0.5.6.patched//server/src/d_main.cpp
|
||||
--- odamex-src-0.5.6/server/src/d_main.cpp 2011-11-04 23:59:48.000000000 -0400
|
||||
+++ odamex-src-0.5.6.patched//server/src/d_main.cpp 2011-12-23 07:22:56.000000000 -0500
|
||||
@@ -629,6 +629,7 @@
|
||||
D_AddSearchDir(dirs, getenv("DOOMWADPATH"), separator);
|
||||
D_AddSearchDir(dirs, getenv("HOME"), separator);
|
||||
D_AddSearchDir(dirs, waddirs.cstring(), separator);
|
||||
+ D_AddSearchDir(dirs, "/usr/share/games/doom", separator);
|
||||
|
||||
|
||||
dirs.erase(std::unique(dirs.begin(), dirs.end()), dirs.end());
|
Loading…
Reference in a new issue