diff options
Diffstat (limited to 'games/odamex')
-rw-r--r-- | games/odamex/README | 8 | ||||
-rw-r--r-- | games/odamex/odamex.6 | 565 | ||||
-rw-r--r-- | games/odamex/odamex.SlackBuild | 25 | ||||
-rw-r--r-- | games/odamex/odamex.info | 8 | ||||
-rw-r--r-- | games/odamex/odamex.pod | 368 | ||||
-rw-r--r-- | games/odamex/odasrv.cfg | 314 | ||||
-rw-r--r-- | games/odamex/slack-desc | 4 |
7 files changed, 1081 insertions, 211 deletions
diff --git a/games/odamex/README b/games/odamex/README index e93a1299bf..b031563f0c 100644 --- a/games/odamex/README +++ b/games/odamex/README @@ -2,7 +2,13 @@ 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. -To hear in-game music, install either eawpats or freepats. +To hear in-game music, install either eawpats or freepats, and make sure +the Options -> Sound Options -> MIDI System Backend option is set to +"SDL Mixer". + +Optional dependency: If portmidi is installed, odamex will be built with +it. This allows odamex's in-game music to be directed to a separate MIDI +synthesizer application, or a hardware MIDI synth. You'll also need the game data (WAD file) from one of the following: diff --git a/games/odamex/odamex.6 b/games/odamex/odamex.6 index fb01805d3f..f752cdbec7 100644 --- a/games/odamex/odamex.6 +++ b/games/odamex/odamex.6 @@ -1,212 +1,395 @@ -.TH ODAMEX "6" "December 2011" "SlackBuilds.org" "Games" -.SH NAME +.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +. ds C` +. ds C' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.\" +.\" Avoid warning from groff about undefined register 'F'. +.de IX +.. +.nr rF 0 +.if \n(.g .if rF .nr rF 1 +.if (\n(rF:(\n(.g==0)) \{ +. if \nF \{ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. if !\nF==2 \{ +. nr % 0 +. nr F 2 +. \} +. \} +.\} +.rr rF +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "ODAMEX 6" +.TH ODAMEX 6 "2014-08-28" "0.7.0" "SlackBuilds.org" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.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 +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +\&\fBodamex\fR [\fIoptions...\fR] +.PP +\&\fBodasrv\fR [\fIoptions...\fR] +.PP +\&\fBodalaunch\fR +.SH "DESCRIPTION" +.IX Header "DESCRIPTION" +Odamex (Online Doom Multiplayer Experience) is a modification of \s-1DOOM\s0 +to allow players to compete with each other over the Internet using +a client/server architecture. +.PP +\&\fBodamex\fR is the client, also used for single-player games. +.PP +\&\fBodasrv\fR is the dedicated server (which runs in a tty). +.PP +\&\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 +.PP +\&\fBodamex\fR is a source port of the Doom engine. It requires the data (aka +\&\s-1WAD\s0) file from one or more of the supported games. See \fB\s-1WAD FILES\s0\fR, +below, for a full explanation. +.SH "OPTIONS" +.IX Header "OPTIONS" +Most of these options apply to both \fBodamex\fR and \fBodasrv\fR, the +exceptions being that \fBodasrv\fR doesn't accept options related to graphics +or sound, since it's just a console application. +.PP +\&\fBodalaunch\fR takes no command-line options. +.SS "File Options" +.IX Subsection "File Options" +.IP "\fB\-iwad\fR \fI<wadfile\fR>" 4 +.IX Item "-iwad <wadfile>" +The \s-1IWAD\s0 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 \fB\s-1WAD FILES\s0\fR, below, for more information. +.IP "\fB\-waddir\fR \fI<dir[:dir]...\fR>" 4 +.IX Item "-waddir <dir[:dir]...>" +Colon-separated list of directories to search for \s-1WAD\s0 files, including +the \s-1IWAD.\s0 See \fB\s-1WAD FILES\s0\fR, below, for more information. +.IP "\fB\-file\fR \fI<wadfile\fR>" 4 +.IX Item "-file <wadfile>" +Add a \s-1PWAD \s0(patch \s-1WAD\s0). Used for custom levels, music, etc. Does \s-1NOT\s0 +work if using the shareware \s-1IWAD \s0(doom1.wad). +.IP "\fB\-config\fR \fI<configfile\fR>" 4 +.IX Item "-config <configfile>" +Use \fIconfigfile\fR instead of the default config file (which is \fI~/.odamex/odamex.cfg\fR). +.IP "\fB\-confile\fR \fI<scriptfile\fR>" 4 +.IX Item "-confile <scriptfile>" Execute the console commands in \fIscriptfile\fR at startup. -.TP -\fB\-deh\fR \fI<dehacked-file>\fR +.IP "\fB\-deh\fR \fI<dehacked\-file\fR>" 4 +.IX Item "-deh <dehacked-file>" Load a .deh file. Used for game mods. -.TP -\fB\-bex\fR \fI<bex-file>\fR +.IP "\fB\-bex\fR \fI<bex\-file\fR>" 4 +.IX Item "-bex <bex-file>" 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 +.SS "Game Options" +.IX Subsection "Game Options" +.IP "\fB\-warp\fR \fI<level\fR>" 4 +.IX Item "-warp <level>" +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 \s-1II\s0 and variants, the level +is just the level number. +.IP "\fB\-nomonsters\fR" 4 +.IX Item "-nomonsters" +Self-explanatory. Usually used for multiplayer deathmatch games. +.IP "\fB\-timer\fR \fI<minutes\fR>" 4 +.IX Item "-timer <minutes>" 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 +.IP "\fB\-avg\fR" 4 +.IX Item "-avg" +\&\*(L"Austin Virtual Gaming\*(R" mode, equivalent to \fB\-timer 20\fR. +.IP "\fB\-fast\fR" 4 +.IX Item "-fast" +Fast monster mode (similar to \*(L"Nightmare\*(R" difficulty level). +.IP "\fB\-respawn\fR" 4 +.IX Item "-respawn" +Monsters respawn after being killed (similar to \*(L"Nightmare\*(R" difficulty level). +.IP "\fB\-skill\fR \fI<skill\-level\fR>" 4 +.IX Item "-skill <skill-level>" +Set skill level (useful with \fB\-warp\fR). Level is a number from 1 to 5, +where 1 is \*(L"I'm Too Young To Die\*(R" and 5 is \*(L"Nightmare\*(R". +.SS "Video/Audio Options" +.IX Subsection "Video/Audio Options" +.IP "\fB\-width\fR \fI<pixels\fR>, \fB\-height\fR \fI<pixels\fR>" 4 +.IX Item "-width <pixels>, -height <pixels>" Set video mode. -.TP -\fB\-novideo\fR, \fB\-nosound\fR, \fB\-nomusic\fR, \fB\-nomouse\fR +.IP "\fB\-novideo\fR, \fB\-nosound\fR, \fB\-nomusic\fR, \fB\-nomouse\fR" 4 +.IX Item "-novideo, -nosound, -nomusic, -nomouse" 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 +.SS "Network Options" +.IX Subsection "Network Options" +.IP "\fB\-port\fR \fI<port\fR>" 4 +.IX Item "-port <port>" +Set the \s-1UDP\s0 port to use for netplay. Default is 10667. +.IP "\fB\-connect\fR \fI<server\fR>" 4 +.IX Item "-connect <server>" Connect to netplay server \fIserver\fR on startup. -.TP -\fB\-maxclients\fR \fI<count>\fR +.IP "\fB\-maxclients\fR \fI<count\fR>" 4 +.IX Item "-maxclients <count>" 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 +.SS "Demo Options" +.IX Subsection "Demo Options" +.IP "\fB\-record\fR \fI<demoname\fR>" 4 +.IX Item "-record <demoname>" +Record a single-player demo. +.IP "\fB\-playdemo\fR \fI<demoname\fR>" 4 +.IX Item "-playdemo <demoname>" +Play a previously-recorded single-player demo. +.IP "\fB\-netrecord\fR \fI<demoname\fR>" 4 +.IX Item "-netrecord <demoname>" 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 +.IP "\fB\-netplay\fR \fI<demoname\fR>" 4 +.IX Item "-netplay <demoname>" +Play a previously-recorded network demo. +.SS "Undocumented Options" +.IX Subsection "Undocumented Options" +These options were found by grepping the source code, and may change or +disappear in future releases. +.IP "\fB\-heapsize\fR \fI<size\fR>" 4 +.IX Item "-heapsize <size>" +Set the heap size. Vestigial option left over from \s-1DOS\s0 Doom, probably +not very useful on modern systems. +.IP "\fB\-devparm\fR" 4 +.IX Item "-devparm" +Run game in \*(L"developer\*(R" mode: Saves screenshots instead of showing the +help menu when F1 is pressed, shows \*(L"tics-per-frame\*(R" meter during play. +.IP "\fB\-blockmap\fR" 4 +.IX Item "-blockmap" +Generate new blockmaps from level data, instead of using the blockmaps +loaded from .wad files. Allows playing levels with missing or bogus +blockmaps. There's no way to save the generated blockmaps. +.IP "\fB\-stepmode\fR" 4 +.IX Item "-stepmode" +Used by the self-test scripts shipped with the odamex source, allows +a shell script to run multiple instances of odamex/odasrv one \*(L"step\*(R" +at a time. +.IP "\fB\-bits\fR \fI<depth\fR>" 4 +.IX Item "-bits <depth>" +Set the bit depth. Actually the only supported value is 32, which has +the same effect as setting the vid_32pp cvar to 1. Any other value sets +vid_32pp to 0. +.IP "\fB\-fork\fR [\fI<pidfile\fR>]" 4 +.IX Item "-fork [<pidfile>]" +\&\fBodasrv\fR only: fork and become a daemon, writing the server's \s-1PID\s0 to +\&\fI<pidfile\fR> (or ./doomsv.pid if not given). +.SH "WAD FILES" +.IX Header "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 \s-1IWAD\s0 +file. \fBodamex\fR supports the following \s-1IWAD\s0 files: +.IP "\fBdoom2f.wad\fR, \fBdoom2.wad\fR" 4 +.IX Item "doom2f.wad, doom2.wad" +Doom \s-1II\s0 v1.9 +.IP "\fBdoom2bfg.wad\fR" 4 +.IX Item "doom2bfg.wad" +Doom \s-1II BFG\s0 Edition (Steam) +.IP "\fBplutonia.wad\fR" 4 +.IX Item "plutonia.wad" 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 +.IP "\fBtnt.wad\fR" 4 +.IX Item "tnt.wad" +Final Doom: \s-1TNT\s0 Evilution v1.9 +.IP "\fBdoomu.wad\fR, \fBdoom.wad\fR" 4 +.IX Item "doomu.wad, doom.wad" Ultimate Doom v1.9 -.TP -\fBdoom1.wad\fR +.IP "\fBdoombfg.wad\fR" 4 +.IX Item "doombfg.wad" +Doom \s-1BFG\s0 Edition (Steam) +.IP "\fBdoom1.wad\fR" 4 +.IX Item "doom1.wad" Shareware Doom v1.9 -.TP -\fBfreedoom.wad\fR, \fBfreedm.wad\fR -FreeDoom v0.6.2 -.TP -\fBchex.wad\fR +.IP "\fBfreedoom1.wad\fR, \fBfreedoomu.wad\fR, \fBfreedoom2.wad\fR, \fBfreedoom.wad\fR, \fBfreedm.wad\fR" 4 +.IX Item "freedoom1.wad, freedoomu.wad, freedoom2.wad, freedoom.wad, freedm.wad" +FreeDoom v0.6.4 or newer +.IP "\fBchex.wad\fR" 4 +.IX Item "chex.wad" 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 +.PP +There is no support for games based on modified Doom engines, such as +Heretic, Hexen, or Strife. \s-1IWAD\s0 files not in the above list, such as +older versions of Doom, Doom \s-1II,\s0 or FreeDoom, may or may not work. \*(L"Total +Conversions\*(R" such as HackX and Harmony are less likely to work. Chex +Quest 3 is known not to work. +.PP +If no \-iwad argument is given, \fBodamex\fR looks for each \s-1IWAD\s0 file +in the order listed above, and uses the first one found. If \-iwad is +given, \fBodamex\fR looks only for the named \s-1IWAD\s0 file. In either case, +the \s-1WAD\s0 filenames can be in all-lowercase or all-uppercase. +.PP +If \fBdoom2bfg.wad\fR is loaded, \fBodamex\fR also attempts to load +\&\fBnerve.wad\fR, which contains the \*(L"No Rest For The Living\*(R" expansion +episode. +.PP +\&\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. +.PP +When searching for \s-1WAD\s0 files (odamex.wad, the \s-1IWAD,\s0 or a +\&\s-1PWAD\s0 for the \-file option), \fBodamex\fR searches the following directories, +in order: +.IP "\-" 4 The current directory. -.br +.IP "\-" 4 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 +.IP "\-" 4 +The path(s) listed in the \fB\s-1DOOMWADDIR\s0\fR environment variable. +.IP "\-" 4 +The path(s) listed in the \fB\s-1DOOMWADPATH\s0\fR environment variable. +.IP "\-" 4 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 +.IP "\-" 4 +The hard-coded path \fB/usr/share/games/doom\fR. +.IP "\-" 4 +The hard-coded path \fB/usr/local/share/games/doom\fR. +.IP "\-" 4 +The hard-coded path \fB/usr/local/share/doom\fR. +.IP "\-" 4 +The contents of the \fBwaddirs\fR cvar (console variable). +.PP +The \-waddir option, the waddirs cvar, \s-1DOOMWADDIR,\s0 and \s-1DOOMWADPATH\s0 are +colon-separated lists of directories. +.SH "OTHER FILES" +.IX Header "OTHER FILES" +.IP "\fB~/.odamex/\fR" 4 +.IX Item "~/.odamex/" 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 +doesn't already exist. Also, saved games and recorded demos are stored +here. Screenshots are created in the current directory from which +\&\fBodamex\fR was run. +.SH "ENVIRONMENT" +.IX Header "ENVIRONMENT" +.IP "\fB\s-1DOOMWADDIR\s0\fR, \fB\s-1DOOMWADPATH\s0\fR" 4 +.IX Item "DOOMWADDIR, DOOMWADPATH" +Colon-separated lists of directories to search for \s-1WAD\s0 files. +.IP "\fB\s-1HOME\s0\fR" 4 +.IX Item "HOME" +\&\s-1WAD\s0 files are also searched for here. +.IP "\fB\s-1SDL_VIDEODRIVER\s0\fR, \fB\s-1SDL_AUDIODRIVER\s0\fR" 4 +.IX Item "SDL_VIDEODRIVER, SDL_AUDIODRIVER" +See the \s-1SDL\s0 documentation for use of these. +.SH "AUTHORS" +.IX Header "AUTHORS" +Dean \*(L"deathz0r\*(R" Joseph +.PP +Alex \*(L"AlexMax\*(R" Mayfield +.PP +Ralph \*(L"Ralphis\*(R" Vickers +.PP This man page written by B. Watson for the SlackBuilds.org project, but it may be freely used by anyone for any purpose. diff --git a/games/odamex/odamex.SlackBuild b/games/odamex/odamex.SlackBuild index 731873b046..0b92db5f84 100644 --- a/games/odamex/odamex.SlackBuild +++ b/games/odamex/odamex.SlackBuild @@ -6,8 +6,16 @@ # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. +# 20140827 bkw: +# - update for 0.7.0 +# - require wxGTK3 (which is wx 3.x) instead of wxPython (wx 2.x) +# - pod-ify man page for easier editing +# - edit man page a bit +# - get rid of hard-coded /usr/share/games/doom, no longer needed +# - include sample orasrv.cfg from 0.6.4 source (it's gone from 0.7.0) + PRGNAM=odamex -VERSION=${VERSION:-0.6.4} +VERSION=${VERSION:-0.7.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -38,11 +46,6 @@ else LIBDIRSUFFIX="" fi -# This is a dirty hack that should let odalaunch compile with versions of -# wx(GTK|Python) 2.8.x where x < 12. Uncomment the following line and -# cross your fingers: -#SLKCFLAGS="$SLKCFLAGS -DwxIntPtr=long" - set -e rm -rf $PKG @@ -58,10 +61,6 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ -exec chmod 644 {} \; -# Make the game look in /usr/share/games/doom for wad files, -# like the already-existing zdoom, prboom, gzdoom builds. -sed -i 's,getenv("HOME"),"/usr/share/games/doom",' common/d_main.cpp - # Make the launcher look in /usr/games for the odamex binary rather # than the current directory. User can override with the settings # dialog, this just sets the default. @@ -89,9 +88,9 @@ mkdir -p $PKG/usr/share/games/doom install -m0644 $PRGNAM.wad $PKG/usr/share/games/doom mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/tech -cp -a CHANGELOG LICENSE MAINTAINERS README TODO $PKG/usr/doc/$PRGNAM-$VERSION -cat odasrv.cfg > $PKG/usr/doc/$PRGNAM-$VERSION/odasrv.cfg.sample -install -m0644 doc/tech/* $PKG/usr/doc/$PRGNAM-$VERSION/tech +cp -a CHANGELOG LICENSE MAINTAINERS README $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/odasrv.cfg > $PKG/usr/doc/$PRGNAM-$VERSION/odasrv.cfg.sample +install -m0644 documentation/tech/* $PKG/usr/doc/$PRGNAM-$VERSION/tech # Man page created for this slackbuild mkdir -p $PKG/usr/man/man6 diff --git a/games/odamex/odamex.info b/games/odamex/odamex.info index 99fb031057..d700a33d8e 100644 --- a/games/odamex/odamex.info +++ b/games/odamex/odamex.info @@ -1,10 +1,10 @@ PRGNAM="odamex" -VERSION="0.6.4" +VERSION="0.7.0" HOMEPAGE="http://odamex.net/" -DOWNLOAD="http://downloads.sourceforge.net/odamex/odamex-src-0.6.4.tar.bz2" -MD5SUM="06519491d920ef73773035cbb0781f1f" +DOWNLOAD="http://downloads.sourceforge.net/odamex/odamex-src-0.7.0.tar.bz2" +MD5SUM="312769b98bbdb450454e4676b2c55986" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="wxPython" +REQUIRES="wxGTK3" MAINTAINER="B. Watson" EMAIL="yalhcru@gmail.com" diff --git a/games/odamex/odamex.pod b/games/odamex/odamex.pod new file mode 100644 index 0000000000..827df45932 --- /dev/null +++ b/games/odamex/odamex.pod @@ -0,0 +1,368 @@ +# pod source for odamex man page. convert with: +# pod2man --stderr -s6 -r0.7.0 -cSlackBuilds.org odamex.pod > odamex.6 + +=pod + +=head1 NAME + +odamex - Source port of Doom engine, with client/server multiplayer. + +=head1 SYNOPSIS + +B<odamex> [I<options...>] + +B<odasrv> [I<options...>] + +B<odalaunch> + +=head1 DESCRIPTION + +Odamex (Online Doom Multiplayer Experience) is a modification of DOOM +to allow players to compete with each other over the Internet using +a client/server architecture. + +B<odamex> is the client, also used for single-player games. + +B<odasrv> is the dedicated server (which runs in a tty). + +B<odalaunch> is the server browser, used for finding multiplayer games +on the 'net. It launches B<odamex> with appropriate arguments. + +B<odamex> is a source port of the Doom engine. It requires the data (aka +WAD) file from one or more of the supported games. See B<WAD FILES>, +below, for a full explanation. + +=head1 OPTIONS + +Most of these options apply to both B<odamex> and B<odasrv>, the +exceptions being that B<odasrv> doesn't accept options related to graphics +or sound, since it's just a console application. + +B<odalaunch> takes no command-line options. + +=head2 File Options + +=over 4 + +=item B<-iwad> I<<wadfile>> + +The IWAD file to use (in other words, which game to play). The +filename extension I<.wad> or I<.WAD> is not required, and the name is +case-insensitive. See B<WAD FILES>, below, for more information. + +=item B<-waddir> I<<dir[:dir]...>> + +Colon-separated list of directories to search for WAD files, including +the IWAD. See B<WAD FILES>, below, for more information. + +=item B<-file> I<<wadfile>> + +Add a PWAD (patch WAD). Used for custom levels, music, etc. Does NOT +work if using the shareware IWAD (doom1.wad). + +=item B<-config> I<<configfile>> + +Use I<configfile> instead of the default config file (which is I<~/.odamex/odamex.cfg>). + +=item B<-confile> I<<scriptfile>> + +Execute the console commands in I<scriptfile> at startup. + +=item B<-deh> I<<dehacked-file>> + +Load a .deh file. Used for game mods. + +=item B<-bex> I<<bex-file>> + +Load a .bex file. Used for game mods. + +=back + +=head2 Game Options + +=over 4 + +=item B<-warp> I<<level>> + +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. B<21> for episode 2, map 1). For Doom II and variants, the level +is just the level number. + +=item B<-nomonsters> + +Self-explanatory. Usually used for multiplayer deathmatch games. + +=item B<-timer> I<<minutes>> + +Force levels to end after specified number of minutes. + +=item B<-avg> + +"Austin Virtual Gaming" mode, equivalent to B<-timer 20>. + +=item B<-fast> + +Fast monster mode (similar to "Nightmare" difficulty level). + +=item B<-respawn> + +Monsters respawn after being killed (similar to "Nightmare" difficulty level). + +=item B<-skill> I<<skill-level>> + +Set skill level (useful with B<-warp>). Level is a number from 1 to 5, +where 1 is "I'm Too Young To Die" and 5 is "Nightmare". + +=back + +=head2 Video/Audio Options + +=over 4 + +=item B<-width> I<<pixels>>, B<-height> I<<pixels>> + +Set video mode. + +=item B<-novideo>, B<-nosound>, B<-nomusic>, B<-nomouse> + +Disable various features. + +=back + +=head2 Network Options + +=over 4 + +=item B<-port> I<<port>> + +Set the UDP port to use for netplay. Default is 10667. + +=item B<-connect> I<<server>> + +Connect to netplay server I<server> on startup. + +=item B<-maxclients> I<<count>> + +Set maximum number of allowed clients for dedicated server. + +=back + +=head2 Demo Options + +=over 4 + +=item B<-record> I<<demoname>> + +Record a single-player demo. + +=item B<-playdemo> I<<demoname>> + +Play a previously-recorded single-player demo. + +=item B<-netrecord> I<<demoname>> + +Record a network demo. + +=item B<-netplay> I<<demoname>> + +Play a previously-recorded network demo. + +=back + +=head2 Undocumented Options + +These options were found by grepping the source code, and may change or +disappear in future releases. + +=over 4 + +=item B<-heapsize> I<<size>> + +Set the heap size. Vestigial option left over from DOS Doom, probably +not very useful on modern systems. + +=item B<-devparm> + +Run game in "developer" mode: Saves screenshots instead of showing the +help menu when F1 is pressed, shows "tics-per-frame" meter during play. + +=item B<-blockmap> + +Generate new blockmaps from level data, instead of using the blockmaps +loaded from .wad files. Allows playing levels with missing or bogus +blockmaps. There's no way to save the generated blockmaps. + +=item B<-stepmode> + +Used by the self-test scripts shipped with the odamex source, allows +a shell script to run multiple instances of odamex/odasrv one "step" +at a time. + +=item B<-bits> I<<depth>> + +Set the bit depth. Actually the only supported value is 32, which has +the same effect as setting the vid_32pp cvar to 1. Any other value sets +vid_32pp to 0. + +=item B<-fork> [I<<pidfile>>] + +B<odasrv> only: fork and become a daemon, writing the server's PID to +I<<pidfile>> (or ./doomsv.pid if not given). + +=back + +=head1 WAD FILES + +B<odamex> (and Doom-related games in general) load all game resources +such as graphics, sound, and levels from a file known as an IWAD +file. B<odamex> supports the following IWAD files: + +=over 4 + +=item B<doom2f.wad>, B<doom2.wad> + +Doom II v1.9 + +=item B<doom2bfg.wad> + +Doom II BFG Edition (Steam) + +=item B<plutonia.wad> + +Final Doom: The Plutonia Experiment v1.9 + +=item B<tnt.wad> + +Final Doom: TNT Evilution v1.9 + +=item B<doomu.wad>, B<doom.wad> + +Ultimate Doom v1.9 + +=item B<doombfg.wad> + +Doom BFG Edition (Steam) + +=item B<doom1.wad> + +Shareware Doom v1.9 + +=item B<freedoom1.wad>, B<freedoomu.wad>, B<freedoom2.wad>, B<freedoom.wad>, B<freedm.wad> + +FreeDoom v0.6.4 or newer + +=item B<chex.wad> + +Chex Quest + +=back + +There is no support for games based on modified Doom engines, such as +Heretic, Hexen, or Strife. IWAD files not in the above list, such as +older versions of Doom, Doom II, or FreeDoom, may or may not work. "Total +Conversions" such as HackX and Harmony are less likely to work. Chex +Quest 3 is known not to work. + +If no -iwad argument is given, B<odamex> looks for each IWAD file +in the order listed above, and uses the first one found. If -iwad is +given, B<odamex> looks only for the named IWAD file. In either case, +the WAD filenames can be in all-lowercase or all-uppercase. + +If B<doom2bfg.wad> is loaded, B<odamex> also attempts to load +B<nerve.wad>, which contains the "No Rest For The Living" expansion +episode. + +B<odamex> also requires the file B<odamex.wad>, which is part of B<odamex> +and is installed with it. This file must be found at runtime, or the +application will abort. + +When searching for WAD files (odamex.wad, the IWAD, or a +PWAD for the -file option), B<odamex> searches the following directories, +in order: + +=over 4 + +=item - + +The current directory. + +=item - + +The argument of the -waddir option, if given. + +=item - + +The path(s) listed in the B<DOOMWADDIR> environment variable. + +=item - + +The path(s) listed in the B<DOOMWADPATH> environment variable. + +=item - + +The user's home directory. + +=item - + +The hard-coded path B</usr/share/games/doom>. + +=item - + +The hard-coded path B</usr/local/share/games/doom>. + +=item - + +The hard-coded path B</usr/local/share/doom>. + +=item - + +The contents of the B<waddirs> cvar (console variable). + +=back + +The -waddir option, the waddirs cvar, DOOMWADDIR, and DOOMWADPATH are +colon-separated lists of directories. + +=head1 OTHER FILES + +=over 4 + +=item B<~/.odamex/> + +Config file B<odamex.cfg> is located here. Will be created if it +doesn't already exist. Also, saved games and recorded demos are stored +here. Screenshots are created in the current directory from which +B<odamex> was run. + +=back + +=head1 ENVIRONMENT + +=over 4 + +=item B<DOOMWADDIR>, B<DOOMWADPATH> + +Colon-separated lists of directories to search for WAD files. + +=item B<HOME> + +WAD files are also searched for here. + +=item B<SDL_VIDEODRIVER>, B<SDL_AUDIODRIVER> + +See the SDL documentation for use of these. + +=back + +=head1 AUTHORS + +Dean "deathz0r" Joseph + +Alex "AlexMax" Mayfield + +Ralph "Ralphis" Vickers + +This man page written by B. Watson for the SlackBuilds.org project, +but it may be freely used by anyone for any purpose. + diff --git a/games/odamex/odasrv.cfg b/games/odamex/odasrv.cfg new file mode 100644 index 0000000000..f04fb22612 --- /dev/null +++ b/games/odamex/odasrv.cfg @@ -0,0 +1,314 @@ +// Generated by Odasrv 0.6.0 + +// --- Console variables --- + +// +set configver "60" + +// Experimental: Does not progress the game when there are no players +set sv_emptyfreeze "0" + +// Clients can vote a new timelimit. +set sv_callvote_timelimit "0" + +// Clients can vote a new scorelimit. +set sv_callvote_scorelimit "0" + +// Clients can vote a new fraglimit. +set sv_callvote_fraglimit "0" + +// Clients can vote to reload the current map. +set sv_callvote_restart "0" + +// Clients can vote to force the server to pick a certian number of players from the pool of ingame players and force-spectate everyone else. +set sv_callvote_randpickup "0" + +// Clients can vote to force the server to pick two players from the pool of ingame players and force-spectate everyone else. +set sv_callvote_randcaps "0" + +// Clients can vote to switch to a random map from the server's maplist. +set sv_callvote_randmap "0" + +// Clients can vote on progressing to the next map. +set sv_callvote_nextmap "0" + +// Clients can vote to switch to a specific map from the server's maplist. +set sv_callvote_map "0" + +// Clients can vote to force a player to spectate. +set sv_callvote_forcespec "0" + +// Clients can votekick other players. +set sv_callvote_kick "0" + +// Clients can flip a coin. +set sv_callvote_coinflip "0" + +// Timeout between votes in seconds. +set sv_vote_timeout "60" + +// Amount of time a vote takes in seconds. +set sv_vote_timelimit "30" + +// Ratio of yes votes needed for vote to pass. +set sv_vote_majority "0.5" + +// Buffer controller input from players experiencing sudden latency spikes for smoother movement +set sv_ticbuffer "1" + +// Time for a dropped flag to be returned automatically to its home base +set ctf_flagtimeout "10" + +// Team flag must be at home pedestal for any captures of an enemy flag returned to said pedestal to count as a point +set ctf_flagathometoscore "1" + +// Flags dropped must be returned manually +set ctf_manualreturn "0" + +// Teams that are enabled +set sv_teamsinplay "2" + +// Router-side description of port mapping +set sv_upnp_description "Odasrv (192.168.1.100:10666)" + +// UPnP Router discovery timeout +set sv_upnp_discovertimeout "2000" + +// UPnP support +set sv_upnp "1" + +// Forces clients to be on or below this rate +set sv_maxrate "200" + +// Flood protection time +set sv_flooddelay "1.5" + +// NAT firewall workaround, this is a port number +set sv_natport "0" + +// Network compression +set sv_networkcompression "1" + +// Randomly shuffle the maplist +set sv_shufflemaplist "0" + +// Determines whether Doom 1 episodes carry over +set sv_loopepisode "0" + +// Script to run at start of each map (e.g. to override cvars) +set sv_startmapscript "" + +// Script to run at end of each map (e.g. to choose next map) +set sv_endmapscript "" + +// Advertise on master servers +set sv_usemasters "1" + +// Remote console password +set rcon_password "" + +// +set spectate_password "" + +// Clients can connect if they have this password +set join_password "" + +// Maximum players that can join the game, the rest are spectators +set sv_maxplayers "4" + +// Maximum clients that can connect to a server +set sv_maxclients "4" + +// Experimental anti-wallkhack code +set sv_antiwallhack "0" + +// Maximum corpses to appear on map +set sv_maxcorpses "200" + +// Players can see spectator chat +set sv_globalspectatorchat "1" + +// Reloads the current map when all players leave +set sv_emptyreset "0" + +// Cap wad file downloading to a specific rate +set sv_waddownloadcap "200" + +// Allow downloading of WAD files from this server +set sv_waddownload "0" + +// Server or Admin website +set sv_website "http://odamex.net/" + +// Administrator email address +set sv_email "email@domain.com" + +// Message Of The Day +set sv_motd "Welcome to Odamex" + +// Extended timestamp info (dd/mm/yyyy hh:mm:ss) +set log_fulltimestamps "0" + +// Experimental anti-speedhack code +set sv_speedhackfix "0" + +// Server name to appear on masters, clients and launchers +set sv_hostname "Untitled Odamex Server" + +// Allow custom WAD directories to be specified +set waddirs "" + +// Allows players to walk through other players +set sv_unblockplayers "0" + +// Rocket explosion thrust effect? +set sv_splashfactor "1.0" + +// How much control the player has in the air +set sv_aircontrol "0.00390625" + +// Gravity of the environment +set sv_gravity "800" + +// Force a player to respawn after a set amount of time +set sv_forcerespawntime "30" + +// Force a player to respawn. +set sv_forcerespawn "0" + +// Rocket trails on/off (currently unused) +set cl_rockettrails "0" + +// Predict weapon pickups +set cl_predictpickup "1" + +// Dead player's view follows the actor who killed them +set cl_deathcam "1" + +// Turns off the west-facing silent spawns vanilla bug +set co_nosilentspawns "0" + +// Use ZDoom's sound curve instead of vanilla Doom's +set co_zdoomsoundcurve "0" + +// Play the switch resetting sound at map location (0,0) like the vanilla bug +set co_zdoomswitches "0" + +// Enable/disable zdoom-based gravity and physics interactions +set co_zdoomphys "0" + +// Enable/disable the "level 8 full sound at far distances" feature +set co_level8soundfeature "0" + +// additional checks are made on two-sided lines, allows additional silent bfg tricks, and the player will "oof" on two-sided lines +set co_boomlinecheck "0" + +// When enabled, activate correct impact of projectiles and bullets on surfaces (spawning puffs,explosions) +set co_fixweaponimpacts "0" + +// When enabled, monsters can get pushed or thrusted off of ledges, like in boom +set co_allowdropoff "0" + +// Enable/Disable infinitely tall actors +set co_realactorheight "0" + +// Allow clients to set their preferences for automatic weapon swithching +set sv_allowpwo "0" + +// Allow clients to adjust amount of red pain screen intensity +set sv_allowredscreen "0" + +// Allow weapon & view bob changing +set sv_allowmovebob "0" + +// Allow reconciliation for players on lagged connections +set sv_unlag "1" + +// Weapons stay after pickup +set sv_weaponstay "1" + +// Sets the time limit for the intermission to end, 0 disables (defaults to 10 seconds) +set sv_intermissionlimit "10" + +// Sets the time limit for the game to end, must be greater than 1 +set sv_timelimit "0" + +// Sets the skill level, values are: +// 0 - No things mode +// 1 - I'm Too Young To Die +// 2 - Hey, Not Too Rough +// 3 - Hurt Me Plenty +// 4 - Ultra-Violence +// 5 - Nightmare +set sv_skill "3" + +// No monsters will be present +set sv_nomonsters "0" + +// Monsters will respawn after a period of time +set sv_monstersrespawn "0" + +// If sv_itemsrespawn is set, items will respawn after this time (in seconds) +set sv_itemrespawntime "30" + +// Items will respawn after a fixed period, see sv_itemrespawntime +set sv_itemsrespawn "0" + +// Infinite ammo for all players +set sv_infiniteammo "0" + +// Allow exit switches to become usable on fraglimit hit +set sv_fragexitswitch "0" + +// Monsters are at nightmare speed +set sv_fastmonsters "0" + +// Sets the amount of frags a player can accumulate before the game ends +set sv_fraglimit "0" + +// When set, names of players appear in the FOV +set sv_allowtargetnames "0" + +// Allow Looking up and down +set sv_freelook "0" + +// Makes water more realistic (boom maps at the moment) +set sv_forcewater "0" + +// Give double ammo regardless of difficulty +set sv_doubleammo "0" + +// Allows players to jump when set in all game modes +set sv_allowjump "0" + +// Allow use of Exit switch/teleports in all game modes +set sv_allowexit "1" + +// Allow usage of cheats in all game modes +set sv_allowcheats "0" + +// When disabled, treat team spawns like normal deathmatch spawns in Teamplay/CTF +set sv_teamspawns "1" + +// Game ends when team score is reached in Teamplay/CTF +set sv_scorelimit "5" + +// When set, players can injure others on the same team, it is ignored in deathmatch +set sv_friendlyfire "1" + +// Sets the game mode, values are: +// 0 = Cooperative +// 1 = Deathmatch +// 2 = Team Deathmatch +// 3 = Capture The Flag +set sv_gametype "0" + +// +set language "0" + + +// --- Aliases --- + +alias "?" "help" +alias "changemap" "map" +alias "idclev" "map" diff --git a/games/odamex/slack-desc b/games/odamex/slack-desc index f1bcf0f830..f7f20176b2 100644 --- a/games/odamex/slack-desc +++ b/games/odamex/slack-desc @@ -6,11 +6,11 @@ # customary to leave one space after the ':' except on otherwise blank lines. |-----handy-ruler------------------------------------------------------| -odamex: Odamex (Online Doom Multiplayer Experience) +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: a client/server architecture. odamex: odamex: odamex: |