Text File
iFrag Version 2.2
This is the documentation for iFrag, a TCP/IP network
driver for games based upon id Software's DOOM<tm> game
engine. iFrag allows up to 4 players to play games based on
the DOOM engine (DOOM, DOOM II, Heretic, and now Hexen) over
the Internet using the TCP/IP protocol suite.
Acknowledgements
iFrag was written by Scott Coleman (asre@ni.net) and Jay
Cotton (jay@calc.vet.uga.edu). The authors wish to acknowledge
the contributions of the following people: id Software,
certainly for making DOOM but also for being totally cool and
releasing the source code to their network drivers; Jake Page,
author of TCPSETUP, for blazing the trail and setting the
example; Erick Engelke, author of the (free!) WATTCP TCP/IP
kernel upon which iFrag is based; and, of course, the many,
many beta testers (dare I refer to them as the "Legion of
DOOMers"? ;-) who put new version after new version through
the play test wringer, sent me ideas, offered encouragement,
put up with 3 new beta versions a day, and made criticisms.
Thanks to all of you for helping to make iFrag what it is
today and what it will be tomorrow.
What's New?
The primary changes for this maintenance release of iFrag
are the following:
* Support for Hexen, the forthcoming sequel to
Heretic. This support includes the -class command
line switch, and the /class command for chat mode.
* TICDUP and EXTRATICS settings specified by the
person serving the game are automatically passed
along to all other players in the game. No more
crashes because somebody forgot to set TICDUP and/or
EXTRATICS.
What the Hell is iFrag?
iFrag is a program which allows people to play DOOM, DOOM
II, and Heretic against others across the Internet. As
distributed by id, DOOM-engine games come with drivers for
serial connections (using modems and direct serial cables) as
well as networks running the IPX protocol. This is enough if
you have a fast modem (and enough money to pay the phone
and/or DWANGO bills!) or if you happen to have 4 Pentium-based
PCs in your basement rec room connected by a Novell network.
However, what do you do if you're a poor college student? What
do you do if the only PC to which you have access is sitting
in your school's computer lab and is running the TCP/IP
protocol suite? What do you do if you are the only person in
your office who likes to play DOOM? Enter iFrag, a TCP/IP
network driver for DOOM-engine games. Not only will it allow
you to play network DOOM across the Internet, but since there
are so many other players also connected to the 'net, you can
easily find opponents practically any time of the day or
night.
iFrag is based on a client/server model. One machine in
each game becomes a server for that game; up to three other
machines may connect to the server as clients. When the server
starts the game, the server machine and all client machines
connected to it are launched into whichever game is currently
selected.
Another feature of iFrag's client/server architecture is
the built-in chat facility, which allows players who are
waiting for the game to begin to converse with each other by
typing messages on their keyboards. These messages are
typically broadcast to all the other nodes in the game.
Players can use iFrag's chat facility to negotiate game
parameters, arrange partners for team play, or merely to pass
the time in idle conversation while waiting for other players
to join in.
Of course, the ability to play DOOM over the Internet
isn't particularly useful unless you are able to quickly and
easily find opponents against whom to test your mettle. The
Frag Tracker is a special program (a "daemon" which is always
running on a separate UNIX host) which helps players from all
over the net find each other. Very similar in concept to the
game tracker used by players of the Macintosh game Bolo, it
keeps a list of all the iFrag games which are currently
looking for players. When you start iFrag, it contacts the
Frag Tracker and downloads this list of active games. It then
allows you to join one of them or, if none look particularly
appealing, with a keystroke you can start up your own game
with your own set of parameters. The Frag Tracker thus acts as
a virtual meeting place for DOOM players from all over the
world.
System Requirements
To use iFrag, you must have the following:
* A machine capable of running DOOM (of course).
* A standard packet driver. Note that a packet driver is
different than the drivers commonly used for network
operating systems such as Novell.
* A connection to the Internet. Note that a DIRECT
connection is preferable to a SLIP or PPP connection.
Although it is possible to play DOOM over a SLIP or PPP
connection, due to DOOM's extreme sensitivity to network
latency the game will be slow, most probably unacceptably
slow. If your connection uses anything slower than a
28.8Kbps compressed SLIP connection, you'll be much
better off investigating another connection method.
Installation and Setup
To install iFrag 2.2 on your PC, perform the following
steps:
0) If you have not already done so, obtain and install
the appropriate packet driver for your network card. If you're
new to setting up networking applications, you will probably
want to double check to make sure that the driver program you
have really is a PACKET driver and not some other kind of
driver (such as a Novell driver). Instructions for doing this
are included with your card and/or with the packet driver. For
information on how to obtain a packet driver, as well as
additional help with troubleshooting your TCP/IP
configuration, see the Internet DOOM FAQ which should be
included with this iFrag archive.
1) Create a new subdirectory on your hard disk where
iFrag and its related files will be stored. You can name it
whatever you want, but for the remainder of this document we
will refer to this directory as "the iFrag directory." Unzip
the iFrag 2.2 distribution archive into this new subdirectory.
2) Using your preferred ASCII text editor, modify the
iFrag.CFG file in your iFrag directory so that all entries are
correct for your system. You will need to specify the paths to
your game and patch WAD directories, your chosen nickname (the
name by which other iFrag players will know you), your Real
name, email address, location, and an optional password, the
number of lines you want on your video display (25 or 50),
whether or not you want stealth (no sound) mode, etc. The
contact information (your nickname, real name, email address,
and so on) will be available to other iFrag users via iFrag's
/whois command. The password, while optional, is recommended
in order to prevent other players from using your nickname or
changing your contact information. As an example, let's
suppose Joe Ayedume has chosen the nickname FragLord, and that
he has installed DOOM, DOOM II, Heretic, and Hexen into their
standard directories on his hard disk. The iFrag.CFG file for
Joe's system will look something like this:
;
; Sample iFrag Configuration File
;
; stealth
nick=FragLord
realname=Joe Ayedume
email=joea@nowhere.net
location=St. Paul, MN, USA
password=secret
tracker=128.174.134.150,6666
doom=c:\doom
doom2=c:\doom2
heretic=c:\heretic
hexen=c:\hexen
doompwads=c:\doom\wads
doom2pwads=c:\doom2\wads
hereticpwads=c:\heretic\wads
hexenpwads=c:\hexen\wads
videolines=50
Edit your iFrag.CFG file to reflect your preferences, and
save the changed file.
NOTE: Because iFrag now reserves nicknames for each
player, players who share the same computer will need to load
separate configuration files, each with the appropriate nick
and password. For example, if Huey, Duey, and Louie all share
Duey's Pentium 90, they could each create a separate config
file and save them as huey.cfg, duey.cfg, and louie.cfg. They
can then load the appropriate config file when iFrag is
started by adding the -config switch to the command line, e.g.
iFrag -config huey.cfg. To save typing, each could also make a
short batch file (e.g. huey.bat) containing the appropriate
config file.
3) Using your preferred ASCII text editor, modify the
WATTCP.CFG file in your iFrag directory so that all entries
are correct for your system. You will need to specify your
machine's IP address, the paths to your game and patch WAD
directories, and your chosen nickname (the name by which other
iFrag players will know you). To continue with our example
system, let's suppose Joe Ayedume has an IP address of
128.192.107.212 (machine name: fraglord.hell.com), his
gateway's address is 128.192.107.1, there is a Domain Name
Server at 128.192.107.44, and his sublet mask is
255.255.255.0. The WATTCP.CFG file for Joe's system will have
the following entries:
;
; Sample WATTCP.CFG File
;
my_ip = 128.192.107.212
netmask = 255.255.255.0
nameserver = 128.192.107.44
gateway=128.192.107.1
domainslist="hell.com"
Edit your WATTCP.CFG to reflect your system and
preferences, save the changes, and then return to DOS.
4) Set up the DEFAULT.RSP file with your preferred game
settings. iFrag understands standard DOOM response files,
which are flat ASCII text files containing command line
parameters, one complete parameter per line (see the DOOM
documentation for more information on response files). At
start-up, iFrag loads a special response file called
DEFAULT.RSP, and uses it to set the default game parameters
for your session. Thus, if you play Heretic DEATHMATCH most of
the time, you can add the commands -heretic and -deathmatch to
your DEFAULT.RSP and iFrag will automatically come up with
Heretic DEATHMATCH selected. Any of iFrag's command line
switches may be specified in DEFAULT.RSP (or any response
file, for that matter). For a complete listing of iFrag's
command line switches, see Appendix B of this document. A
sample DEFAULT.RSP is included with your iFrag distribution
and looks something like this:
-hexen
-deathmatch
-skill 5
-nomonsters
-noartskip
-class 1
-describe Kid_Vid Fears Root!!!
Save your modified DEFAULT.RSP and return to DOS.
5) iFrag is now installed and ready for fragging!
Using iFrag
Using iFrag is extremely simple - just change into your
iFrag directory and type "iFrag" at the DOS prompt. The iFrag
client-mode screen comes up, and iFrag displays the "Message
of the Day." Here is where you will see any important
announcements pertaining to iFrag. Pressing the F9 causes
iFrag to contact the Internet Frag Tracker to see which games
are waiting for players at the moment. Once iFrag has
successfully contacted the Frag Tracker and downloaded the
list of available games, a pop-up dialog box appears on the
screen. Using the PgUp and PgDn keys, you can view a summary
of each available game. This game summary includes the type of
game (DOOM, DOOM II, or Heretic), the address of the "server"
machine which is hosting this particular game, the
geographical location of the server's machine, the nicknames
of all the players currently in the game, a brief
description/comment, as well as the current game settings
(skill, episode, map, etc.). Once a game which looks
interesting to you is displayed on the screen, press the
<ENTER> key to select it. iFrag will immediately contact the
server machine which is hosting that particular game and
attempt to join it. NOTE: If there are no games currently
looking for players, iFrag will inform you that there are no
games waiting. In that case, you may choose to host your own
game. Press the F5 function key to enter server mode.
An iFrag server is the coordinator for a particular game.
The player running the server machine is the "boss" - he gets
to decide (via various commands he issues from his console)
which game will be played (DOOM, DOOM II, or Heretic) as well
as which parameters to set (such as episode, map, skill level,
which PWADs to use, and so forth). The server also decides who
may be allowed to join the game and when the game will begin.
Although the other players in the game may voice their
opinions, only the server has the ability to actually make
changes to the game settings. In a sense it's just like
watching TV - although there may be four people watching, only
one person can have physical possession of the remote control.
When you have successfully joined a game, or have begun a
new game of your own, the iFrag chat mode screen appears. This
screen is divided into several sections: the credits, the
output window, the status bar, and the input line. At the top
of the screen is the name of the program, its version number,
and the copyright notice. The large area beginning with the
second screen line is the output window. Here is where iFrag
will display all status messages as well as the chat text
entered by the other players. Below the output window is the
status bar, where the current game settings are displayed.
Below the status bar is the input line where all the text you
type on your keyboard will appear. Finally, the bottom line of
the screen lists the names of the authors of iFrag. During
this phase of the game setup, all players who have connected
thus far can type messages to each other using iFrag's chat
facility. To send a message to the other players in the game,
simply type a message on the keyboard. Your keystrokes appear
in the input line at the bottom of the screen, and when you
press <ENTER>, the text will be echoed to the screens of all
players (along with the nickname of the player sending the
message). In addition, both the Frag Tracker and iFrag itself
will occasionally send messages. Messages from iFrag will
begin with three asterisks ("***") to distinguish them from
messages typed by other players; messages beginning with
"[*Tracker*]" are output from the Frag Tracker, usually in
response to a command you issued previously (such as /whois or
/games).
In addition to sending text messages, iFrag's chat
facility also understands several commands, each beginning
with a slash '/' character. Some examples of iFrag chat mode
commands are /who, /quit, and /help. A complete listing of
available chat mode commands is given in Appendix A at the end
of this document.
When a client connects to the iFrag server, the client
automatically receives the game parameters which will be used
during that session. These game settings are displayed on the
status bar in an abbreviated form to ensure that they will all
fit within the available space.
Once all players have joined the game and all parameters
have been set, the server player presses the F10 key. The
iFrag server signals the clients that the game is beginning,
the chat facility is shut down, and iFrag sets up the
connections which will be used for the actual game. Once these
network links are established between all the machines, iFrag
loads and executes the appropriate game.
Common Problems and Their Solutions
Problem: The game is VERY SLOW. The speed of the game is
all right most of the time, but there are periodic slowdowns
and speed-ups. The game started off slow, and got slower and
slower until finally it ground to a complete halt.
Explanation: All of the above problems are the result of
a poor quality net connection. To borrow terminology from
other Internet games, the two phenomena of interest are "lag"
and "chew". Lag is the amount of time it takes for a packet
sent my one machine to reach its destination. It's possible to
get an idea of the lag time between machines using a program
called PING, which send a packet out, waits for a reply, and
measures the total time taken. Since the rate at which DOOM
plays is dependent upon the rate at which the packets from
other machines come in, if one or more machines involved in
the game is on a slow portion of the net the game will slow
down for everybody. This is why players who are connected to
the Internet via SLIP, PPP, or 56kb connections are
frustrating to play against. Chew can be thought of as "packet
loss" - essentially the network chews up the packets and they
disappear. Since the UDP protocol has no mechanism for
ensuring that a given packet will reach its destination,
packet loss is a definite possibility on busy networks. While
DOOM can compensate for this by including "backup tics"
(information for the current time period as well as previous
time periods) in each game data packet, it takes time for the
new packets to get through, resulting in "bursty" game play.
Chew can also be estimated using the PING program, which
usually reports a "% packet loss" statistic. In general, if
PING reports that a machine has a long packet round trip time
or a high percentage of lost packets, any DOOM games involving
that machine and yours will suffer from speed problems. The
worst part is there's nothing anyone can do about it, short of
installing a direct fiber-based ATM backbone between your
machine and his. About the best you can do is try again at
another time and hope that the network between you is less
busy then.
Problem: DOOM runs for a little while, but then it
crashes to DOS with an error message saying something about
NUMTICS and BACKUPTICS.
Explanation: While common with older versions of iFrag,
this error SHOULD NEVER OCCUR with iFrag 2.2 - if you see this
error message while playing iFrag, please contact the authors
and let us know the circumstances.
Problem: iFrag returns to DOS saying "NO PACKET DRIVER
FOUND."
Solution: Make sure that you have a packet driver
installed and that it is being loaded correctly. Note that it
is easy to mistake other types of drivers, such as those used
in Novell networks, for packet drivers as they have similar or
even identical names. When in doubt, download the Crynwr
packet drivers and install the one for your card.
Problem: iFrag returns to DOS saying "Error 0xAA
accessing packet driver."
Solution: Either something has clobbered your packet
driver in memory or you are using a packet driver which does
not identify itself as "class 1" (such as SLIP and PPP
drivers). iFrag requires a class 1 packet driver in order to
function, a limitation of the WATTCP library upon which iFrag
is based. If you know that your packet driver is class 1 but
you still get this message, try re-booting your machine to
install a fresh copy of the packet driver.
Problem: The packet driver is installed and appears to
load correctly, but when iFrag is run nothing happens.
Solution: When installing the packet driver, make certain
that the correct parameters are used on its command line. On
some network interface cards, improper settings can still
cause the packet driver to APPEAR to be loading correctly,
only to have a failure occur when an actual communication
attempt is made. Also, make sure that there is no other
software loaded which is also trying to use the network card
at the same time, such as a Novell network driver. The cleaner
the boot, the better it is for DOOM. The ideal configuration
would load only the packet driver and the mouse driver - no
HIMEM, no EMM, no Novell drivers, no QEMM, no SMARTDRV, etc.
DOOM doesn't need them, and they may cause conflicts. The
author's system uses MS-DOS 6's built-in multiple
configuration facility. This allows easy selection of either a
normal configuration or a DOOM configuration at boot time.
Appendix A: Chat Mode Command Reference
The following commands are recognized by iFrag in chat mode.
NOTE: Some commands may be abbreviated; abbreviations appear
next to the command in parentheses.
/help displays a brief summary of the available commands.
/me prints a message in which you can refer to yourself in the
third person (usually used to describe an action). Example: If
your nickname is Jim and you type "/me yawns" everyone will
see the text "* Jim yawns" on their screen.
/msg sends a message directly to an individual user. Unlike
standard messages, which are broadcast to all players in the
game, text sent with /msg is not echoed to the screens of
other players. This is the chat mode equivalent of whispering
into someone's ear.
/who displays a list of players currently connected to the
server as well as their (tentative) uniform color assignments
and the Internet addresses of their computers. Note that these
colors may change if players disconnect from the server prior
to the start of the game.
/ping displays the Estimated Connection Quality (ECQ) for each
player in the current game. The ECQ is measured by sending a
short packet of information (called a PING) from the server to
each client and measuring the amount of time it takes for each
client to reply to the PING. A new PING is sent approximately
once per second to each client, and the resulting round trip
times are averaged to form the ECQ numbers, measured in
milliseconds (ms). As a rough rule of thumb, games where the
ECQ for each node is < 50ms are usually quite playable,
assuming that the amount of "chew" (packet loss, which the ECQ
does not measure) is low. The ECQ can be used to decide
whether or not to play a particular game, or whether to reduce
the number of players (e.g. it is usually best to split a 4-
player game where the ECQ's are high into two separate (and
more playable) 2-player games.
/quit removes you from the game.
The following chat mode commands may only be issued from the
server console:
/doom, /doom2 (/d2), /heretic (/htic), and /hexen are used to
select a game to play. Of course, all players in the game must
have a copy of whichever game you select installed on their
machine in order for it to be played. If any player does not
have a copy installed, or the installed copy of the game is a
different version, iFrag will warn the server operator of this
situation. Example: /heretic.
/episode <n> (/ep), and /map <n> are used to select the
initial level to be played. Each is followed by an integer
specifying the episode or map number to select. The episode
and map chosen must make sense within the context of the
currently selected game, e.g. iFrag will not allow you to
select /episode 2 in a game of DOOM II, since DOOM II does not
have episodes, nor will it allow you to select an episode or
map number which is out of range lime /map 77. Examples: /map
7; /episode 3.
/class <n> (Hexen only) allow you to select a class for your
character when playing Hexen. /class 1 specifies the fighter
class and is the default. /class 2 selects the cleric, and
/class 3 selects the mage.
/deathmatch (/dm), /altdeath (/alt), and /coop control the
mode of the network game. As with the episode and map
commands, the mode of the game must make sense within the
context of the currently selected game; iFrag won't allow you
to specify /altdeath mode in Heretic, which only understands
the /deathmatch and /coop modes. Example: /altdeath.
/nomonsters (/nomon), /respawn (/resp), and /fast control the
appearance of monsters in the game. /nomonsters removes all
monsters from the game so there is nothing to distract you
from wasting your buddies. /respawn makes the monsters respawn
(as they do in DOOM's Nightmare skill level) whereas /fast
makes the monsters move more quickly.
/skill <n> (/sk) allows you to set the skill level for the
game. The parameter <n> is an integer between 1 and 5.
Example: /sk 5.
/kick (/frag) to kick a user out of the game. Example: /kick
NoOne.
/ban is similar to /kick, except it also prevents that player
from rejoining your game.
/launch (/go or the F10 key) to launch DOOM (begin the game).
/describe (/desc) adds a brief description to the game's Frag
Tracker listing. This may be useful in helping others decide
whether or not to join your game. The length limit of this
description string is 40 characters. Example: /desc No Wussies
Allowed!
/notrack, similar to the -notrack command line switch,
prevents iFrag from reporting your game to the Frag Tracker.
If your game is currently listed on the Frag Tracker, your
entry is removed and no further reports are made. Example:
/notrack.
/record <filename> configures DOOM to record a multiplayer
demo .LMP file of your game. Specify only the root filename of
the file where you wish your demo to be saved (i.e. leave off
the .LMP extension). To cancel recording, type /record by
itself with no filename. Example: /record tourney.
/timer <n> and /avg specify a time limit for each level in the
game.
/update causes iFrag to send an immediate game status update
to the Frag Tracker. Normally iFrag will send a Frag Tracker
update whenever a game parameter is changed, a player joins or
leaves the game, or once every few minutes if there is no
other activity (since the Frag Tracker will expire games which
have not send a recent update, this behavior keeps the game
"alive" on the Tracker). Normally you won't need to use this
command. Example: /update.
/pwads <string> tells iFrag which PWADs, if any, you wish to
load when the game is launched. There is no limit on the
number of PWADs you can specify, but there is a 40-character
length limit on the entire string. Be certain you enter the
filenames WITHOUT any path specification but WITH the .WAD
file extension. iFrag checks to make sure that all players
have the PWADs you specify here installed in the PWAD
directory for the currently selected game (as specified in
iFrag.CFG). Example: /pwads LEDGES.WAD FRAGASM7.WAD
OCTAFRAG.WAD. To see which PWADs you currently have available,
use the /wadls command.
/wadget is a command which clients can use to download any of
the currently selected PWADs from the server's machine. If Joe
Ayedume joins a game which is using coolness.wad but Joe
doesn't have it, Joe can simply type /wadget coolness.wad and
transfer the PWAD directly to his machine. For security
reasons, only those files whose names are currently displayed
on the status bar (i.e. only those selected for play in the
session) can be downloaded. Also, /wadget only works from
server to client; servers cannot /wadget files from clients.
The server can receive a report on the progress of all
outstanding PWAD transfers with the /progress command.
Finally, if for any reason a transfer goes awry, the server
can cancel the download to any user by issuing the /cancel
<nick> command, which will reset the download status for that
user. Examples: /wadget coolness.wad; /progress; /cancel Fred.
/load <filename> and /save <filename> let you load and save
response files. You can use response files to store various
"theme" parameter combinations for rapid retrieval at a later
time. For example, a LEDGES.RSP might set up DOOM with
/altdeath, /nomonsters, /skill 5 and /pwads LEDGES.WAD.
Incidentally, iFrag loads the response file DEFAULT.RSP
automatically at start-up, and creates the file iFrag.RSP when
DOOM is launched. Thus, /load iFrag.RSP can be used to reload
the parameters used for the last game and /load DEFAULT.RSP
will restore your default settings. Example: /load
CARNAGE.RSP.
/games queries the Frag Tracker displays a listing of waiting
games (including your own). Use /games to check your own game
entry or to see who else is playing.
/away and /back are used when you have set up a server and are
waiting for players to join your game but you must step away
from your console momentarily (to answer the phone, for
example). By issuing the /away command, players are notified
that you have stepped away but that you will return shortly.
Use the /back command to notify the others of your return.
/ticdup <n> and /extratics <n> allow you to specify that extra
game information be included in each packet sent between
machines. This extra information can sometimes make games over
slow connections a little more playable. Examples: /ticdup 2;
/extratics 1
/whois <nick> displays any contact information that user has
entered in his or her iFrag.cfg file. That's right, you no
longer need to ask every user who joins your game the burning
question "Where ya from?" - you can just issue a /whois and
get the full scoop.
/passwd <newpassword> is used to change your password in the
Frag Tracker's user list. To change your password to "secret",
start iFrag (with your old password still in iFrag.cfg) and
type /password secret. Your new password will take effect
immediately, so exit iFrag, edit your password= line in
iFrag.cfg to reflect the new password, and then restart iFrag.
/freeze will "freeze" your game, closing it to additional
players. This is useful if you are serving a game and desire
to play with fewer than the full four combatants; simply type
/freeze at any point. To reopen your game to additional
players, simple issue the /freeze command again. NOTE: players
already in your game are free to leave, but will be unable to
rejoin your game unless you issue the /freeze command again to
toggle the freeze mode off.
Appendix B: Command Line Switch Reference
-doom2 selects DOOM II (the default is DOOM classic).
Similarly, -heretic selects Heretic.
-ticdup <n> and -extratics <n> are used to add extra
(redundant) information to the network packets sent between
machines. This redundant information can sometimes make
marginal (slow) connections a bit more playable. The parameter
<n> is an unsigned integer specifying the number of extra or
duplicate TICs to be sent within each packet.
-server invokes iFrag in SERVER mode. There can only be
ONE server in any game, and all desired game settings must
also be specified on the server's command line.
-client [<server_address>] invokes iFrag in CLIENT mode,
and (optionally) attempts to connect to an iFrag server
running on the machine at <server_address>. Example: -client
128.192.23.5 A copy of iFrag invoked in server mode (with the
-server switch as described in the preceding section) must be
running on the machine whose IP address is specified after -
client. If no server address is specified, iFrag will connect
to the Frag Tracker and download the list of available games.
-notrack is used when you wish to bypass the Frag Tracker
and set up a game among "known" machines or if the Frag
Tracker is otherwise unreachable (e.g. you are playing DOOM on
an isolated sublet). This is especially useful for "private"
games, i.e. games which you want only your friends to join. By
advertising a game on the Frag Tracker, you are implicitly
inviting anyone to join your game; to avoid this, use -notrack
on your server machine and specify the server's IP address
after the -client switch on each client machine.
-describe <string> adds a game description string from
the command line or from within a response file.
-port <n> specifies the port number to be used for the
game. The default setting is 5029, which is the same as the
NeXT version of DOOM. NOTE: All players involved in the game
must use the same port number. In most cases the default port
will work fine; this switch allows you to change it if
necessary to avoid conflicts with other network software.
-vector <n> specifies the interrupt vector which DOOM should
use to communicate with iFrag. NOTE: This is NOT the same as
the vector used by your packet driver! Specifying the same
vector number for iFrag and your packet driver will have
unpredictable results. Normally, iFrag will select an
appropriate vector number automatically; you can use this
option to override iFrag's automatic choice if necessary.
Specify the vector number in C-style HEX notation. Example: -
vector 0x61.
@<filename> loads and processes a standard DOOM response
file. A response file is a flat ASCII text file containing
iFrag command-line switches, one complete parameter per line.
Each line must be terminated by a CR-LF pair. By convention,
response files end in the .RSP extension (e.g. DEFAULT.RSP,
iFrag.RSP). Example: @HERETIC.RSP
Appendix C: iDRV Command Switch Reference
In normal operation, the user will never invoke iDRV
directly. iFrag will prepare a response file containing all
the parameters for both DOOM and iDRV, and then invoke iDRV
with the name of the response file on its command line. iDRV
then sets up the connections for play and launches DOOM. The
following command switches (located in the response file) are
specific to iDRV:
-netaddr <n> <host1> [<host2> [<host3> [<host4>]]], where
1 <= n <= 4 and host1 - host4 are the names or IP addresses of
the other machines in the game. This specifies which node your
machine will be in the game, and must be unique (e.g. two
machines in the same game cannot both specify net 2). In
addition, the order of the host addresses must be consistent
across all machines in the game. This number determines the
color of your player's uniform, where netaddr 1 is Green,
netaddr 2 is Indigo, netaddr 3 is Brown, and netaddr 4 is Red.
Example: -netaddr 3 129.202.14.71 128.177.2.66.
-vector <n> specifies the interrupt vector iDRV should
use in order to communicate with DOOM. In normal operation,
this parameter is selected automatically by iFrag and passed
along in the response file. If it becomes necessary to
override iFrag's automatic choice, add the -vector switch to
iFrag's command line or response file and it will be passed
along to iDRV. See the discussion of the -vector switch in
Appendix B.