Hank Leukart's DooM FAQ 6.666
----------------------------------------------------
CHAPTER [8]: How can I use multiple players in DOOM?
----------------------------------------------------
DOOM supports 2-4 players in a multi-player mode. DOOM is
playable over networks, modems and by serial link.
Note: For playing the registered DOOM over networks or by modem, EACH user
MUST BUY his/her own individual copy of the game.
[8-1]: How does the multi-player gameplay work?
===============================================
In DOOM, players are able to see each other, and watch each other
jerk in pain as they are hit during the game. Players are able to watch
others get hurt, die, and move throughout the labyrinth. DOOM allows
players to play together, working as a team. In this cooperative mode,
players can see each other on an "automap" and switch to each other's view.
DOOM also allows players to play against each other, in DeathMatch mode.
[8-1-1]: How does pausing, saving, and loading work?
====================================================
In DOOM, some things change when playing with more than one player.
When you activate the Options menu or submenus, the game KEEPS
RUNNING so that other players can continue with the action. So, it is best
to find a safe place before adjusting screen size, sound, etc.
A player may pause the game by pressing the PAUSE key, but any other
player can unpause the game by pressing the PAUSE key again. Make sure it is
okay with your buddies before taking a breather.
When you do a save game during network/modem play, it saves on every
player's system in the save game slot you select, writing over whatever was
there. Before saving the game, players should agree on a safe slot to save
it in.
You cannot load a saved game while playing a multi-player game. To
load a game, everyone must quit from the current game and restart the game
from a saved game. To start a game from a saved game, you can either
select it from the SETUP program or identify it as a command line parameter.
[8-1-2]: What are the different uniform colors for?
---------------------------------------------------
In network/modem games, each player's uniform is a different color.
The color of your character is the color behind your face on the status bar.
The colors are BROWN, INDIGO (black), GREEN, and RED.
These are used to identify between players during game play, and
to chat with others using Chat Mode.
[8-1-3]: How does a player see what others are doing?
-----------------------------------------------------
If you're playing in cooperative mode, press F12 to toggle through
the other players' viewpoint(s). You still retain your own status bar at
the bottom, and if your view reddens from pain it is YOU, not your partner,
who has been hit.
[8-1-4]: How do players communicate using Chat Mode?
----------------------------------------------------
In a multi-player game you can communicate with other players in the
Chat Mode. To enter into Chat Mode and broadcast a message to all the other
players, press the letter "T". A cursor will appear where your messaging is
normally placed. To broadcast to a specific player, instead of pressing
"T", you'll need to press the first letter of the player's color: (B)rown,
(I)ndigo, (G)reen, and (R)ed. For example, to send a message to the brown
character, you would press the letter "B".
In DOOM v1.2, a macro capability was added. After defining
ten macros in SETUP.EXE, pressing the player color, and then
"ALT-" will send a macro.
[8-1-5]: How do the weapons work?
---------------------------------
When a player runs over a weapon, he picks it up, but the weapon
remains in the game for other players to take. Shotguns dropped by former
human sergeants are removed from the game after being picked up or smashed.
In DeathMatch v2.0 (use the ALTDEATH parameter), weapons are
removed from the playing field from thirty seconds and then reappear when
playing DeathMatch mode.
[8-1-6]: What happens when a player dies?
-----------------------------------------
If you die and restart in the level, previously taken items and
destroyed monsters don't reappear unless you are playing in DeathMatch
v2.0. Even though you've died, other players have survived.
[8-1-7]: Can players exchange supplies?
---------------------------------------
Players cannot exchange supplies.
[8-1-8]: Miscellaneous
----------------------
In Cooperative mode, each player begins in the same area. In
DeathMatch mode the players begin in completely different areas--if you want
to see your buddy you'll need to hunt him down. Plus, each time you die,
you'll start in one of several random locations.
Unlike in single-player or Cooperative mode gameplay, in DeathMatch
mode the players start at each location with the keys necessary for opening
any locked door in that area.
In DeathMatch mode the ARMS section on the status bar is replaced
with "FRAG." The FRAG section displays the number of times you've killed
your opponents.
In Cooperative mode the Automap works the same way it does in
single-player mode. Each player is represented by a different color arrow.
In DeathMatch mode you won't receive the pleasure of seeing your opponents on
the map. Just like the monsters, your friends could be just around the
corner, and you won't know it until you face them.
[8-2]: What exactly is "DeathMatch" mode?
=========================================
DOOM has a "DeathMatch" mode where every player is out for
himself. At the beginning, the level is infested with enemies and power-ups.
In this mode, players can't see the other players in the Automap, nor switch
to their view. Players are not able to view other's health in the mode,
because of the disadvantage this can cause.
[8-3]: How does DOOM work with networks?
========================================
DOOM supports the IPX (Novell Netware) protocol in the initial
shareware version. Using this network support, DOOM can be played in a
workplace type environment.
To start network mode:
(1) Launch DOOM from the SETUP program, by going to the directory in
which you installed DOOM, typing SETUP, and pressing the ENTER key. Unlike
playing DOOM in single player mode, DOOM in multi-player mode must be run
either from the SETUP program or by using the command line parameters.
(2) The SETUP program allows you to configure the information that
is necessary for the multi-player game. The SETUP is simple to use.
(3) Start the game!
(8-3-1): What are the network command line parameters for DOOM?
---------------------------------------------------------------
-LOADGAME allows you to start DOOM from a specified save game. Instead of
using the saved game name, simply enter the number (0-5) that corresponds to
the slot you saved the game to on the SAVE GAME screen.
-loadgame <# of the game>
-DEATHMATCH starts DOOM as a DeathMatch game. If you don't enter DEATHMATCH
as a command line parameter, DOOM will default to Cooperative mode.
-deathmatch
-SKILL sets the skill level (1-5) you wish to play.
-skill <# of skill level>
-EPISODE sets the episode (1-3) you wish to play. The default episode is
Episode One, Knee-Deep in the Dead.
-episode <# of the episode>
-CONFIG allows you to use your configuration file from any directory you
choose.
-config ex. -config f:\doom\data\myconfig.cfg
-NOMONSTERS allows you to start playing with NO MONSTERS running around!
This is great for DeathMatch where, really, the monsters just get in the
way.
-nomonsters
-RESPAWN tells DOOM that, yes, you are a badass, and yes, you want all the
monsters to respawn 8 seconds after you kill them. The NIGHTMARE skill
level already does this. Note that using -respawn and -nomonsters at the
same time is a dumb thing to do.
-respawn
-ALTDEATH uses DeathMatch v2.0 mode.
-altdeath
-FAST uses fast monsters, as in Nightmare mode
-fast
-MAXDEMO determines the maximum size of a recorded demo
-maxdemo
-TURBO increases the speed of the marine (this is considered cheating in
single player mode and is meant for DeathMatch only)
-turbo
[8-3-2]: How does DOOM determine player colors?
-----------------------------------------------
The player numbers and colors are determined by the ethernet node
address. The lower the number, the lower number you will be assigned in a
multi-player game. The lowest number gets green, and the highest number
(with four players) gets red. To change the player numbers in a net game,
insert the line :"NODE ADDRESS xxxxxxxxxxxx" under the Link Driver section of
your net.cfg before you load LSL.
[8-3-3]: How can I use DOOM on Novell Netware Lite?
---------------------------------------------------
Hwere is information on how to play DOOM on a Novell Netware Lite
network. Novell does not approve of or recommend the following drivers.
HOST/CLIENT (1) Load the LSL. (LSL.COM)
HOST/CLIENT (2) Load your card driver. (example: 3C5X9.COM)
HOST/CLIENT (3) Load your server. (SERVER.COM)
HOST/CLIENT (4) Load your client. (CLIENT.COM)
CLIENT (5) Log into the network.
CLIENT (6) Map the hosts to the hard drive. (refer to NWL Manual)
HOST (7) Run DOOM's SETUP.EXE, configure, and press F10.
CLIENT (8) Change to mapped DOOM directory, and run SETUP.EXE,
using the same options as used on the host.
(9) PLAY DOOM!
Note: It is illegal to use the Registered DOOM on only one server. You
must buy a seperate copy of the game for each player.
[8-3-4]: How can I use DOOM on other types of networks?
-------------------------------------------------------
It does not matter what type of network you use for DOOM, whether it
is Lantastic, Windows for Workgroups or other networks. netDOOM uses the
cards at such a low level that it does not need the network services. It
only needs the ODI/IPX drivers.
This being the case, netDOOM works fine with any Ethernet or any
other cabling system. Naturally, you can not use any normal network services
at the same time.
There are a number of ways of getting IPX working with a given
ethernet card. One is to use a dedicated IPX driver for the card,
another is to run an IPX converter over some other standard such as
NDIS, ODI, or the packet driver standard. If one method fails to
work, try another one! I have had good reliability with the IPX
over Packet driver method, though it can sometimes be a challenge
to get it running... If you are already using Novell, then the IPX
over ODI might be simpler to set up, though I have found it less
reliable.
Before I get going, let me plead with everyone NOT TO USE DOOM 1.1
OR 1.0 ON ANY NETWORK OTHERS ARE TRYING TO USE!! Doom 1.666 is now
available, so please use it rather than 1.1 or 1.0. DOOM 1.0 and
1.1 really screw up networks.
Now that I have all my disclaimers out of the way... :)
To use this method of installing IPX you need two files, both of
which are in the file PKTD11.ZIP, which can be had from
oak.oakland.edu as/pub/msdos/pktdrvr/pktd11.zip. I have seen some
problems with this version (11) of the drivers, however, so it
would be wise to test out the packet driver after it is loaded, or
perhaps to try one which comes direct from the ethernet card
manufacturer. (i.e. 3c5x9pd.com from ftp.3com.com)
If you have problems with these drivers, I have put together a
collection of older versions of IPX and packet drivers which seem
to work better with DOOM. This package will be uploaded to
ftp.uwp.edu as OLDIPX.ZIP. (see Chapter [14-6])
The first file is specific to your ethernet hardware. It is the
packet driver software that converts packet-driver calls to
commands your ethernet card can understand. The INSTALL.DOC file
included with the packet driver collection has details about which
cards are supported and what sort of command-line parameters are
needed for each packet driver. I always load the packet driver
using interrupt 0x60, a popular convention. These drivers will not
work well under Windows without tweaking, so read the INSTALL.DOC
file for details. There are also some useful packet utilities
included. Again details are in INSTALL.DOC. (Got the hint yet? :)
EXAMPLES:
3Com 503 card on interrupt 5, I/O port 0x300, and the
internal transceiver. (twisted pair RJ-45 connector ON
THE CARD or coaxial BNC connector-- NOT the 15-pin AUI
connector) The shared memory area is automatically
determined-- but be sure to exclude the region from your
expanded memory manager, if used!
3C503.COM 0x60 0x5 0x300 1
3Com 509 card: These cards are entirely
software-configurable through the config/diagnostics on
your EtherDisk that came with the card. If you have lost
the disk, all the needed files are available from
ftp.3com.com.
3C509.COM 0x60
AT&T StarLan cards: Almost like the 503 except the memory
location must be specified.
AT&T.COM 0x60 0x2 0x360 0xD000
Once the packet driver is loaded and reports things correctly
(i.e. it does not give your ethernet address as
FF:FF:FF:FF:FF:FF...) then just run PDIPX.COM to load IPX support.
The PDIPX.COM program is included with PKTD11.ZIP, but it is
contained in a .ZIP file INSIDE of PKTD11.ZIP called PDIPX103.ZIP.
Run the .COM file with no parameters.
If you have problems with an "invalid mode" when loading PDIPX, you
probably are trying to run other network software at the same time
as the Packet Driver/IPX combination. Strip down your CONFIG.SYS
and your AUTOEXEC.BAT files to those shown below. Do not load any
additional TSR's! Once this bare-bones configuration works, you
can begin adding TSR's. if your problems persist, try using the
older versions of the packet driver and IPX-to-PD converter. (They
should be on ftp.uwp.edu.)
If nothing seems to work, try running the diagnostic program
PKTWATCH.COM after getting everything set up. If your screen fills
with scrolling multicolor hexadecimal numbers then the packet
driver is working OK. If it just flashes a cursor at you, then you
have problems UNLESS you are wired directly to another computer.
Hook your computer back up to an active network and see if you can
receive anything then. If you do not have an active network
available, start DOOM on the OTHER computer while running PKTWATCH
on the original computer. Of course, the other (sending) computer
needs to have IPX set up as well.
The simplest way to get all the drivers you need loaded and to
exclude other drivers which may interfere is to create a boot disk
with the correct startup files. For example:
CONFIG.SYS
device=a:\himem.sys
dos=high,noumb
files=30
buffers=30
AUTOEXEC.BAT
prompt [DOOM Setup] $p$g
a:\3c503.com 0x60 0x5 0x300 1
rem change the above according to your card.
a:\pdipx.com
The ONLY line that will vary with what card you have is the
"3c503.com" line. I encourage you NOT to load an EMS driver since
so many cards use shared memory and it is sometimes difficult to
ensure that the proper area, and only the proper area, is excluded.
DOOM runs just fine with XMS, and you have the added benefit of
loading DOS high to make room for things like mouse drivers. DOOM
does not NEED XMS to run, though. Also, I like to change the DOS
prompt to reflect my configuration whenever I am using a bizarre
setup.
It might be a good idea to also scan your bootable floppy for
viruses BEFORE booting the networked computer with it. (Scan it on
the NETWORKED computer, not your own...) There are a number of
common viruses spread by booting computers from infected disks.
(Stoned, Form, and Michelangelo to name a few.) Let's not give
DOOM a bad name by booting network computers from infected disks!
(btw, F-prot from oak.oakland.edu as /pub/msdos/virus/fp-211.zip is
an EXCELLENT antivirus program. )
You must make sure that all of the networked computers using DOOM are
using the same frame type.
[8-3-5]: How can I set up a small inexpensive DOOM network?
-----------------------------------------------------------
All that is required for network play is a network card for each
computer, a T-plug for each computer (usually supplied with your network
card), and some cable. A server is not necessary. Here is a good supply of
inexpensive eight bit network cards for DOOM play.
Corporate Systems Center PHONE: (408)-734-DISK
1294 Hammerwood Avenue FAX: (408)-745-1816
Sunnyvale, CA 94089
Brand new 16-bit cards priced at only US$49.00 each. When calling,
tell your service person that you would like to run DOOM. Corporate Systems
will send you the cards mentioned here.
[8-4]: How can I play DOOM by serial link?
==========================================
DOOM works in two player mode by modem or null modem. The
minimum baud rate to play DOOM is 9600 bps.
Shareware versions 1.0 and 1.1 do NOT support play by modem or
serial link. It is recommended that you upgrade to v1.666 of DOOM.
Using this mode is similar to network mode.
To use a serial link connection, run the DOOM setup and choose "Run
Network/Modem/Serial Game." Then, choose the type of connection you plan
to make. Then, configure the game to your liking, and choose the connect
method.
Note that to run null-modem game, you must have a null-modem cable
plugged into a serial port on both computers and each computer runs
SETUP.EXE with identical parameters.
If you are using a modem, you will most likely need to edit the
MODEM.CFG file in the DOOM directory. The first line of the file is an
initialization string. Pull out your modem manual, and do the following.
(1) Find the code that turns off error correction.
(2) Find the code that turns off data compression.
(3) Find the code that locks your modem at 9600 baud.
(4) Find the code that turns off all hardware and software flow
control.
(5) Create an "AT" initialization string with all these codes and
put it into the MODEM.CFG.
To find an already created initialization string for your modem, look
in Chapter [18-3] of this FAQ. If one is not listed for your modem, you will
have to dig up your modem manual for the correct settings.
The second line is a hangup string used when you quit DOOM.
If you STILL cannot get the modems to connect, both of you should
run your favorite terminal programs, and connect with 9600, no error
correction, no data compression, and NO HARDWARE FLOW CONTROL. Then just run
SETUP.EXE with the "Already Connected" option in the configuration box.
[8-5]: How can I play DOOM over the Internet?
=============================================
(8-5-1): How can I play DOOM using IHHD?
----------------------------------------
Enter IHHD -- the Internet Head to Head Daemon designed by Jim
Knutson. With this brilliant little piece of code, multiplayer gaming has
soared to new heights. With IHHD, you'll be able to play Head to Head
against other human opponents all over the world, with the only cost to you
being the regular prices you pay to connect to or use your Internet host.
Best of all, it's free.
First of all, your host needs to be running UNIX as its operating
system. If you aren't sure what your host is running for its operating
system, check the information given at the login prompt or send mail to
your administrator.
Other than that, you should be able to run IHHD with ease. Your
first order of business is to get the IHHD software. It is available via
anonymous FTP at "rex.pfc.mit.edu" in the "pub/IHHD/src" directory.
To get it:
(1) FTP to rex.pfc.mit.edu ("ftp rex.pfc.mit.edu" at UNIX prompt)
(2) At the login prompt, enter "anonymous"
(3) At the password prompt, enter your E-mail address
(4) At the command prompt, type "cd pub/IHHD/src"
(5) Type "binary"
(6) Type "get dialer1.6.4.shar"
(7) Type "bye"
If you followed the above steps, you should now have the
"dialer1.6.4.shar" file in your home directory. Type "ls" at your host's
command prompt to verify its existence. If you don't see it, try the
above steps again or call for help.
Next, if you've successfully retrieved the "dialer1.6.4.shar" file
from the FTP site, you need to prepare the IHHD to run on your UNIX system.
For UNIX veterans, the "dialer1.6.4.shar" file is in fact a shar file, and
contains a makefile for easy compiling on your system. For the rest of
us, follow these steps to get the IHHD up and running:
(1) Create a directory to put the IHHD software in.
Type "mkdir IHHD" at the command prompt.
(2) Move the IHHD file to the new directory.
Type "mv dialer1.6.4.shar IHHD"
(3) Go to the IHHD directory.
Type "cd IHHD"
(4) Unpack the IHHD files.
Type "sh dialer1.6.4.shar"
(5) Compile the IHHD software to run on your system.
Type "make"
(6) You should now see a whole mess of files in the IHHD directory.
The important filenames you're looking for should be:
"dialer"
"tcpdialer"
"tcpanswer"
"call"
"showlog"
(7) If you've got these, you're cool. Otherwise, try the above
steps again, re-retrieve the "dialer1.6.4.shar" file from
"rex.fpc.mit.edu" using the instructions above, or call for help.
If everything checks out, you're ready to rumble!
Here's how you get connected using IHHD:
(1) Set up a time to play with another Internet DOOM player.
Ideally, you should use E-mail to make the prior arrangements.
Make sure you and your opponent use the same baud rate and line
settings for your modems.
Make sure data compression, error correction, and hardware
flow control on your modem are off. Look at the modem
initialization strings section in this FAQ for more help.
(2) When it's time to play, start your favorite terminal program
and call up your Internet host using your modem. Make sure that
your baud rate and line settings correspond to your opponent's.
(3) Login to your Internet host normally.
(4) Contact the other player by sending a short E-mail message
indicating that you are on the net and ready to play.
(5) Once you both establish that you're there and ready to go,
return to your UNIX prompt.
(6) Type "cd IHHD" to enter your IHHD directory.
(7) You may have to type "terminal download," if you do not have it
activated already.
(8) Type "dialer opponent's.host" to start the IHHD connection.
For example, if you were playing against knuston@cactus.org,
you would type "dialer cactus.org" to initiate the connection.
Another way is to type "tcpdialer opponent's.host" while your
opponent types "tcpdialer -answer". Or reverse roles, where
you type "tcpdialer -answer" while your opponent types "tcpdialer
your.host". Don't ask me what the difference is; I don't know.
So, to recap, there are two methods of IHHD connection.
Method 1: dialer. You each type "dialer other.guy's.host"
Method 2: tcpdialer. One of you types "tcpdialer other.guy's.host"
while the other types "tcpdialer -answer".
(9) Regardless of which method you use to connect, type short text
messages followed by a carriage return until you see your opponent
acknowledge you. Unless you have "local echo" set to ON in your
serial settings, you will not see the text you type.
(10) If you don't see your opponent after a reasonable amount of time,
exit dialer or tcpdialer by pressing "CTRL-C" (i.e. hitting
the "CTRL" and "C" key simultaneously.) Contact your opponent
again by E-mail and agree to try the other method of
connecting.
(11) If you're connection looks fine and your opponent has acknowledged
you and you have acknowledged him, exit your terminal program
and change to your DOOM directory. Run SETUP.EXE, and select
"Run Network/Modem/Serial Game." On the next menu, choose
"Modem." Finally, configure all of the options to your liking,
select "Already Connected," and press F10.
(12) If everything goes well, DOOM will start up and bring you to
your first game over the Internet! Congratulations, you are
now connected by IHHD. You can now proceed to play DOOM as if
you were connected via a regular phone line.
If you are having trouble getting DOOM to work with your modem, you
may want to download one of the many third-party serial drivers for DOOM.
(see Chapter [15])
Unfortunately, because of the nature of the Internet, delays and
warping may occur with your IHHD connection, depending on the quality of the
connection between your and your opponent's host machines. These delays
are often sporadic, and depend largely on what's going on on the Internet
at that particular times. Then again, you might just be extremely unlucky
and have a cruddy Internet connection.
To gauge the quality of the connection, try to "ping" your opponent's
computer from your host. At the UNIX prompt, type "ping -s opponent's.host".
You should get a listing of "ping times", which you may stop at any time by
pressing "CTRL-C". Try pinging some other hosts you know to get an idea of
how much ping times vary, and use this data to guesstimate the quality of the
connection between your host and your opponent's.
Another way to judge the quality of your connection is to simply look
at the other player. If he's jumping all over the place, you've got a
cruddy connection. If he's relatively smooth and steady, you've got a good
connection.
If all else fails, burn incense and sacrifice a beautiful young virgin
princess to the net.gods. No, wait. Better yet, send me a virgin. E-mail
me for an address.
*8-5-2*: How can I play DOOM using iDOOM?
-----------------------------------------
The TCP/IP Internet DOOMer's FAQ
by Scott Coleman (asre@uiuc.edu)
and Jay Cotton (jay@calc.vet.uga.edu)
updated 10/16/94
Introduction
id Software's DOOM is truly the Killer App of the MS-DOS world.
DOOM's popularity is so immense, it has been estimated that DOOM
is installed on more PCs than OS/2 and Windows NT combined, and
DOOM's creators commute to work in Ferarris. Interest in the game
has been so great that it has been hacked, reverse-engineered,
dissected, and enhanced more than any other game in PC history.
And now, as more and more people become hooked into the Internet,
DOOM is rapidly becoming the Killer App of the Internet, as well.
Internet DOOM play is currently at the "clever hack" stage.
DOOM, as released by iD, supports only IPX network play and
serial play between two machines. As a result, the DOOM
documentation doesn't include any information about DOOMing
across the Internet. Of course, this also means that DOOMers
can't call id for help. The result of all this is many curious
people asking the same question: How do I play DOOM over the
Internet? Enter this document. In the pages that follow, we will
attempt to answer the most frequently asked questions about
Internet DOOM, including what you need, how to set it up, and how
to find new fragbait - er, I mean, opponents.
DOOM across the Internet is made possible by a neat little
freeware program called iDOOM. iDOOM uses the UDP protocol (part
of the TCP/IP protocol suite) to send DOOM game information
between multiple machines on the Internet. It is based on the
WATTCP TCP/IP kernel written by Eric Engelke of the University of
Waterloo. By some strange coincidence, the authors of this
document are also the creators of iDOOM, and we have used the
program to play Internet DOOM sessions with opponents from as far
away as Estonia. In writing this FAQ, we hope that sharing some
of our experience will make it easier for you to get connected in
your own Internet DOOM sessions. NOTE: Throughout this document,
we will refer specifically to games of DOOM played over the
Internet via a DIRECT CONNECTION, i.e. no modems are involved
anywhere in the link. Note that IHHD, SLIP and PPP connections
all involve modems at some point. Although other methods of
connecting two DOOM machines together across the Internet exist,
this document will focus on direct net connections using the
iDOOM network driver program.
Getting Prepared
Q1: I want to play DOOM over the Internet using iDOOM. What
hardware do I need?
To successfully play DOOM across the Internet, you will need
the following hardware:
* A machine capable of playing DOOM (D'OHH!)
* A network interface card (NIC). And not just any old NIC,
mind you - your NIC must be supported by a packet driver if
you wish to use it to play Internet DOOM. Usually this means
that your NIC must be an ethernet card, although iDOOM has
been successfully played over token ring. This document
assumes that your PC is already equipped with a suitable
NIC, although it may currently be in use for some other
non-TCP/IP function (such as a node on a Novell network).
* A direct connection to the Internet. If there is a modem
somewhere in the link between your PC and your opponent's
PC, this FAQ is not for you. Although it is possible to play
Internet DOOM over a modem link (either by dialing up to a
UNIX machine and using IHHD or via SLIP/PPP), such
connection methods are beyond the scope of this document.
Q2: OK, I've got all the hardware. What software do I need?
In addition to the hardware requirements, some software is
also required to round out your the package. Before you can play,
you'll need to pick up the following:
* DOOM 1.2 or higher (1.7 is STRONGLY recommended, since
this version seems to have solved some problems related to
network games). DOOM versions 1.1 and below are incapable of
using iDOOM.
* A packet driver written specifically for your ethernet
card. The Packet Driver is what lets iDOOM (and therefore
DOOM) "talk" to your NIC.
* iDOOM.EXE, the Internet driver for DOOM.
* The WATTCP Applications. These are not absolutely
necessary, but can definitely be useful for debugging and
testing your setup.
Q3: Hold on - I don't have some of this software! Where can
I get it?
* To obtain iDOOM: Log on to ftp.vet.uga.edu via anonymous
ftp. Change to directory /pub/doom. Download the file
IDOOM11.ZIP. Version 1.1 is the latest version of iDOOM as
of this writing.
* Many ethernet cards come with the appropriate packet
drivers on a utilities diskette packaged with the card. If
your card does not come with a packet driver, there is an
excellent collection of freely available packet drivers
called the Crynwr (nee Clarkson) Packet Driver collection.
You can obtain it via anonymous ftp from oak.oakland.edu.
Change to the /pub/msdos/pktdrvr subdirectory and download
PKTD11.ZIP and PKTD11C.ZIP. The files PKTD11A.ZIP and
PKTD11B.ZIP contain source code and example programs for the
packet drivers - you won't need these in order to play
iDOOM.
* To obtain the WATTCP applications, ftp to
dorm.rutgers.edu, change to the /pub/msdos/wattcp/
subdirectory, and download file APPS.ZIP.
Q4: OK, I've got everything, now what do I do to set it up?
Setting your computer up for TCP/IP access is very
straightforward. As an illustration, I'll be taking you through
the steps necessary to set up a PC with an SMC ethernet card and
the IP address 128.192.23.5. You'll of course need to substitute
your own specific information in place of the examples given
here. All set? OK, let's get started.
Step 0: START WITH A CLEAN BOOT!!!!! Set up your CONFIG.SYS
and AUTOEXEC.BAT files to load as few drivers as possible. This
includes such things as memory managers (HIMEM, EMM386, QEMM,
etc.) and network drivers (e.g. LSL, IPXODI). DOOM doesn't need
the former, and the latter will probably conflict with the packet
driver. We recommend that you prepare a boot floppy with a
CONFIG.SYS containing only a FILES=20 line, and an AUTOEXEC.BAT
containing only the line "prompt=$p$g".
Step 1: Set up the packet driver. Determine your ethernet
card's IRQ setting, it's base I/O port setting, and it's memory
address setting (if any). You should be able to determine this by
looking at the card itself and consulting the user manual. You'll
need some if not all of this information, depending upon which
packet driver you use and/or type of hardware you have (for
example, some IBM computers with the MicroChannel bus can
determine the settings on the card automatically without you
having to supply them on the packet driver command line). Unzip
the appropriate driver from Crynwr Packet Driver collection
archive. In our example case, the packet driver is called
SMC_WD.COM. By looking at the jumpers on the card and consulting
the manual, I determined that the card has been set to IRQ 7,
Base I/O port address 300h, and the base memory address is at
segment d800h. For this example, I have chosen to use interrupt
60h for the packet driver. Packet drivers typically operate on an
interrupt in the range of 60h to 80h inclusive; since nothing
else in my sample system happens to be using the first available
interrupt (INT 60h), I chose that. Thus, to load my packet
driver, I use the command line
SMC_WD 0x60 0x7 0x300 0xd800
where 0x60 is the packet driver interrupt, 0x7 is the IRQ setting
on the card, 0x300 is the I/O port base address, and 0xd800 is
the memory base address (NOTE: all numbers are in C-style HEX
notation). Don't worry if you don't understand what all this
stuff means - as long as you use the correct numbers, your packet
driver should work. NOTE: If your PC is currently part of a
Novell network (e.g. Netware, Netware Lite, Personal Netware) the
parameters you need can be found in a file called NET.CFG,
usually located in your \NOVELL, \NWLITE or \NWCLIENT
subdirectories (along with all the other drivers needed by
Novell).
At the very minimum, the packet driver should give a sign on
message and report the ethernet address of your NIC when you load
it. Chances are that if your NIC has been functioning properly
for other tasks (e.g. as a node on a Novell network) then you'll
have no problems here. If not, or if there are any error or
warning messages, something is wrong. One possibility is that one
of the settings on your NIC is in conflict with those of another
expansion card in your system. No two cards can have the same
IRQ, I/O port, or memory address settings, nor can the memory
areas of two cards overlap. Whatever the cause, you'll need to
find and correct the problem before continuing.
Step 2: Set up your WATTCP.CFG file. Your WATTCP.CFG file
contains important parameters used by the WATTCP TCP/IP kernel.
These values MUST be entered correctly if you wish to make a
connection with another DOOM PC. In preparation for this, you'll
need several bits of information. Contact the network
administrator for your site and find out the IP address for your
machine, the IP address for your gateway or router, the IP
address of at least one Domain Name Server local to your site,
and your netmask value. The three IP addresses will each consist
of four groups of digits separated by periods. In our example,
the machine's IP address is 128.192.23.5, the gateway is
128.192.23.1, the netmask is 255.255.255.0, and the nameserver
address is 128.192.44.67. NOTE: it is important to use the
numeric IP addresses, not the actual host names. NOTE: If you
have other Internet programs currently installed on your machine,
such as a Gopher client or the Trumpet newsreader, you can
probably find the information you need in the configuration files
used for those programs. If the application is based on the
Waterloo TCP package, it will have it's own WATTCP.CFG, in which
case you can simply copy it over to your DOOM directory. When you
have collected all this information, unzip the iDOOM distribution
archive (e.g. IDOOM11.ZIP) into your DOOM (or DOOM2) directory.
Use your favorite ASCII text editor to edit the file called
WATTCP.CFG. Edit or add the following lines in WATTCP.CFG:
my_ip=
gateway=
nameserver=
netmask=
On our example machine, the WATTCP.CFG file looks like this:
my_ip=128.192.23.5
gateway=128.192.23.1
netmask=255.255.255.0
nameserver=128.192.44.67
Save the changed file and exit back to DOS.
If you know your machine's IP address, but you can't
determine the other values, you can often get away with some
educated guesswork. For instance, the gateway for a subnet
usually has an IP address ending in .1, as is the case with our
example. Thus, if your IP address is xxx.yyy.zzz.www, try setting
your gateway's IP address to xxx.yyy.zzz.1. As for the subnet
mask, a common value for this parameter is 255.255.255.0. In some
cases, the gateway value can be something like xxx.yyy.1.1 with a
corresponding netmask value of 255.255.0.0 - if one doesn't work,
it can't hurt to try the other. Finally, if you don't know your
nameserver's IP address, you can probably get by without it for
the purposes of DOOM playing. Since you'll be specifying IP
addresses for all of your opponents' machines, a nameserver
lookup won't be necessary to resolve their addresses.
Step 3: Test your TCP/IP setup. Load your packet driver with
the appropriate interrupt, IRQ, I/O and memory addresses. Next,
unzip the TCPINFO and PING programs from the WATTCP apps archive
into your DOOM directory. At the DOS prompt, type:
TCPINFO
and press the key. If your WATTCP.CFG values are set up
correctly, and if your packet driver and net connection are
functional, you'll see a couple of screens of information about
your system, including your ethernet address and the parameters
you specified in the WATTCP.CFG file.
If everything looks OK, the next step is to use the PING
program to attempt to establish contact with your subnet gateway.
At the DOS prompt, type
PING
and press the key. After a brief delay, you should see a
message telling you that the host is responding, as well as the
round trip time for PING's test packets. If you see the "Timeout"
error message, then something is wrong with your setup; if your
PC is unable to reach your gateway, it will be unable to reach
the rest of the Internet as well, since all network packets which
are sent to nodes outside of your local area network must pass
through your gateway. For our sample system, we would type:
ping 128.192.23.1
If your gateway PING was successful, try PINGing your Domain Name
Server (at the IP address you specified in WATTCP.CFG) as well as
some well-known site on the internet (e.g. infant2, which is at
IP address 129.79.234.115). These will test your machine's
ability to connect with other machines outside of your subnet as
well as those outside of your site. All of these PINGs should
result in a "host responding" message with a response time. If
any of these attempts fails, recheck your entries in WATTCP.CFG
and/or get some help from your network administrator. Examples
for our test system:
ping 128.192.44.67
and
ping 129.79.234.115
Put Me in, Coach - I'm Ready to Play!
First, go find up to three of your most patient frag
buddies. Since this is your first attempt at Internet DOOM, it's
best to try and find someone on your local network who's willing
to put in a little frag time with you. Connections on your local
net will be faster and less problematic, whereas if you attempt a
long distance connection your first time out, you'll have a hard
time discerning problems caused by distance from problems caused
by an incorrect configuration.
Decide amongst yourselves which machine will be the "server"
(the remaining machines in the game will all be "clients"). The
server machine (and there can only be ONE server per game) acts
as the coordinator for that session. The player operating the
server is in some sense "the boss" - she can decide when to start
the game, which parameters (e.g. -altdeath, -nomonsters, -warp, -
skill, etc.) will be used, whether to kick a player out, and so
on.
The server starts iDOOM as follows:
iDOOM -server [other game parameters]
Once the server has started iDOOM running, the clients (all
remaining players) can then connect to the server. Each client
invokes iDOOM using the command line:
iDOOM -client
As an example, consider several computers which are part of
a local area network in a computer lab. In this lab there are
identical machines sitting side by side, with sequential IP
addresses, i.e. 128.192.23.4, 128.192.23.5, and 128.192.23.6.
After stepping through the basic configuration process outlined
above on all test machines, my frag buddies and I are ready to
begin. First, we all agree to play our favorite DEATHMATCH level,
DOOM I episode 1 map 5. We also agree to play in -altdeath mode,
with -skill 5 and -nomonsters. On my machine, which we decided
will be the server, I type:
iDOOM -server -warp 1 5 -altdeath -skill 5 -nomonsters
The iDOOM screen comes up, and a message is displayed
informing me that iDOOM is entering server mode. 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 and
continuing to the 22nd screen line is the output window. Here is
where iDOOM 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 I type on my
keyboard will appear. Finally, the bottom line of the screen
lists significant contributors to iDOOM.
Once my iDOOM server is up and running, all the other
players can connect to it. The other guys type:
iDOOM -client 128.192.23.5
Each client's screen layout is identical to that of my
server. iDOOM displays a message confirming that it is entering
client mode and connecting to the server. As each client's
connection is established, the arrival of each player is
announced by the server.
During this phase of the game setup, all players who have
connected thus far can type messages to each other using iDOOM's
built-in chat facility. To send a message to the other players in
the game, I simply type my message on the keyboard. My keystrokes
appear in the input line at the bottom of the screen, and when I
press , the text will be echoed to the screens of all
players (along with an indication of who sent the message). The
identical procedure can be used to send messages from each of the
client machines. The server itself will also send messages.
Messages from the server will begin with three asterisks ("***").
When a client connects to the iDOOM server, the client
receives a message containing the game parameters which will be
used during that session. These game settings will be displayed
on the status bar. The settings are abbreviated to ensure that
they will all fit within the available space. These game settings
may be changed interactively at the server console.
My friend sees that I have selected E1M5 as the default
episode and map for our game. He reminds me that we've been
playing that one a lot lately, and suggests we change to E2M2
since we haven't played that one in a while. I agree, and issue
the commands /episode 2 and /map 2 to change the level. Our
status lines are immediately updated to reflect these changes.
Once I have determined (via the chat facility) that everyone
is ready to begin the game, I press the F10 key. The iDOOM server
signals the clients that the game is beginning, the chat facility
is shut down, and iDOOM sets up the connections which will be
used for the actual game. Once these network links are
established between all the machines, the message "Prepare to
meet your DOOM!" is displayed, followed by the usual DOOM startup
information. Shortly thereafter, the screen melts away and there
we are, in E1M5, pistols at the ready!
Give your buddies a good thrashing - you've earned it! Now,
after you've gotten DOOM working on your own subnet, you're ready
for the final step. Find a partner who is also capable of playing
Internet DOOM. Watch the posts in alt.games.doom, or tune into
the #doom, #tcpdoom or #iDOOM channels on irc. You and he will
negotiate game parameters, such as which map to play, which skill
level, and so on. You'll also decide on who will be the server
and who will be the clients (experienced DEATHMATCHers will often
try very hard to avoid being the server, since that player's
uniform is colored day-glo green and is easier to spot in a
DEATHMATCH). Now simply add the parameters you've agreed on to
the iDOOM server command line you used before. A typical
command line will look something like
iDOOM -server -skill 5 -nomonsters -deathmatch
Oh Oh - It's Not Working!
OK, so you've done everything, just like I've shown
you, but you're still having problems. The following are some
suggestions to try in case of trouble.
Q: When I try to connect to the iDOOM server it returns to
DOS saying "Server is not responding" or "Remote reset
connection."
A: This means that the player on the server machine hasn't
yet started the iDOOM server. The server must be started before
the clients try to connect to it. Try again in a few seconds.
Q: I keep seeing an "ICMP: port unreachable" message on my
screen.
A: This message is generated by the other machine when the
port being requested by the sender is unavailable on the
destination machine. I've seen this happen in some cases when I
started iDOOM before the other player did. Once the other iDOOM
was running, the ICMP: messages went away, and the game linked up
normally. If you see this message, you might also want to try
using a different port (see the iDOOM documentation on the -port
command line parameter).
Q: The music starts up fine, but all I see is a BSOD (Black
Screen of Death).
Q: My machine displays "sending network start info" or
"listening for network start info" and then locks up.
A: This problem can have several causes. Perhaps the server
specified a DOOM II game, but one of the players didn't have DOOM
II. Perhaps one of the other players' machines is slower than the
others, or has a fragmented disk and takes a longer time to load
DOOM at startup. Or perhaps some packets were lost - iDOOM uses
UDP (user Datagram Protocol) packets to exchange game information
between all machines in the game. UDP packets are not guaranteed
to reach their destination, and there is no mechanism for the
sender to even be informed that what it sent never made to the
destination machine. iDOOM is designed to compensate for these
lost packets to the extent possible, and occasionally this
detection and correction takes a few extra seconds. You should
always wait for at least 30 - 45 seconds for the other DOOM
engines to sync up before you abort the setup.
Frag Servers/Frag Trackers
Frag Servers are a recent development. They facilitate iDOOM
connections between multiple players quickly and easily and with
a minimum of command line typing. Current versions of the Frag
Servers are very similar to the server built into iDOOM. NOTE: An
iDOOM client can NOT connect to a Frag Server. Frag Servers have
their own client program which then loads iDOOM as the network
driver.
As of this writing, the latest version of the frag
client/server package is TCPSRV12.ZIP, available from one of the
infant2 mirrors in the /pub/doom/multi_doom/net directory. A
couple of the more popular fragservers can be found at
ararat.cs.ucdavis.edu and patriot.et.buy.edu. Both of these
support 2, 3 and 4 player games on ports 1666, 1667, and 1668
respectively.
Future versions of the Frag Servers (which will be known as
Frag Trackers) will serve as online meeting places where DOOM
players can log on, see a list of games which are awaiting
players, and either join an existing game or register a new game.
Waiting players will be able to send chat messages to each other,
negotiate and set game parameters, check connection quality, etc.
Although this exciting capability does not exist in the current
Frag Servers, it will be available sometime in the near future,
and will revolutionize the way Internet DOOM is played.
[8-6]: How can I setup DOOM to be played on a multi-player BBS?
===============================================================
Applied Personal Computing, Inc. has recently developed a platform that
allows almost any multiline BBS to host 2-4 player network DOOM games.
The APCi MultiPlayer Game Server allows gamers to create a simulated
IPX network just by dialing the host BBS at high speed. APCi MultiPlayer
Game Client software makes use of the APCi MultiPlayer Game Server very
intuitive for even the newest user of online services. Best of all,
all APCi MultiPlayer Game Client software is FREEWARE and includes any
and all information desired about the supported game.
For more information regarding the APCi MultiPlayer Game Server, or to
witness the APCi MPGS in action, call the APCi BBS at (618) 632-7664. You
may also contact APCi at 1-800-535-APCi. More information can also be
requested from Kevin Sawyer (sawyerk@delphi.com).
(8-7): Where can I find multi-player partners?
==============================================
A good place to find people to play with is on Usenet is the
"alt.games.doom" newsgroup or on IRC on the #DOOM channel.