# 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.

