How to play Doom online multiplayer


Doom is one of the first games that popularized online multiplayer. It comes with native cooperative and deathmatch support, while modern source ports add new gameplay elements and modes such as Capture the Flag and Survival. The three most commonly used multiplayer source ports are Zandronum, Odamex and ZDaemon.

A browser is required to query each port's server list. Doom Explorer is compatible with the above three ports and features an integrated IRC client with links to their channels (#zandronum, #odamex, and #zdplayers respectively). Doomseeker is an alternate multi-platform server browser with similar functionality.

As IRC has faded from relevance, most multiplayer games are organized over Discord. There are a number of Discord servers focused on multiplayer Doom which can be found at this Doomworld thread.

Note: If you intend to host a public server, you will need to forward ports. A helpful article on port forwarding can be found here. IDE and Doomseeker both allow easy configuration and launching of custom servers.

Configuring Internet Doom Explorer[edit]

Set program directories[edit]

Open IDE and click the Options tab at the top. Click Programs, under Directories in the left-hand column, and you will see:

IDE screenshot - app list.png

Click "..." to find your client and server for each source port.

Set preferences[edit]

Click the Launch Game Parameters option at the left.

IDE screenshot - preferences.png

You can enter your online username and set your player color for each port by clicking the marine icon. Zandronum allows you to use colored text for your name if you wish.

The WAD check and Zandronum autotesting options are recommended. You can also choose to record demos of your online matches.

Set WAD directories[edit]

On the left hand side, click Directories, then click Wads.

IDE screenshot - WAD folders.png

Click Add. Add each source port's directory to the path list, as well as your main PWAD folder.

Configure GetWAD[edit]

GetWAD is a utility for automatically locating and downloading any add-on content required for your online session. Most servers use custom WADs, so this is an important step.

IDE screenshot - GetWAD.png

On the left-hand column, under Optional Components, click GetWad. Here you configure where new WAD files will be saved; you must select one of the directories you chose in the previous step.

Configure server list[edit]

This will control how servers appear to you and make it easier to find the exact game you're looking for. Click Appearance & Functionality on the left.

IDE screenshot - server filtering.png

Check Additional sort by players number and Don't sort servers with only bots to move populated servers to the top of the list. Check Refresh the server before launching the game to see the current number of players when you connect.

Create a ZDaemon account[edit]

ZDaemon keeps track of experience points for many deathmatch and duel servers, as such it requires an account. Click the ZD Scoreboard tab at the top of the IDE toolbar:

IDE screenshot - scoreboard.png

Here you can enter a name, password, profile blurb and instantly create an account. You must use the same name you selected under Launch Game Parameters.

Connecting to servers[edit]

Click the Servers tab at the top, being sure to enable all three source ports. Click Players to sort by number of players, Ping to sort by connection quality, and so on.

IDE screenshot - server list.png

Simply double-clicking any server will connect you and automatically download all necessary WADs.

Server hosting[edit]

Multiplayer oriented source ports all you to start your own server with custom WADs and rules. The Sentinel's Playground allows users to start Zandronum servers for free and Citadel Servers offers Odamex game hosting rental.

Video tutorial[edit]

Video tutorial by Doomkid:

Using ZDoom[edit]

For instructions on setting up netgames, see this thread at the ZDoom forums. ZDoom players cannot join in the middle of a game, all clients must be ready at startup.

Using Chocolate Doom[edit]

Chocolate Doom preserves a faithful vanilla Doom experience easily on modern PCs, updating and automating most of the networking setup, and avoiding the CPU slowdown of full VGA emulation (see "DOSBox" below).

One player must act as the server and host the game. To run a Chocolate Doom server over the internet, you need to know your public IP address. Some broadband providers use NAT, so the IP in your OS control panel may not be what the rest of the world sees., for example, can determine your public address.

When you start a server it is automatically registered with the master server. Other players can use the setup tool to find your server, or you can check for its address on the master server's website. If the server doesn't appear on the list, it's probably because you haven't properly set up the port forward for your NAT router (see above).

Start a multiplayer server by launching Chocolate Doom with the -server command line option. For example, to start a server for a deathmatch game, type chocolate-doom -server -deathmatch.

Other players can then join your server using the -connect option. For example, if the server's public IP address is, type chocolate-doom -connect

When the server becomes active, you will see the "waiting" screen which lists all players currently connected. Once all players are present, click the start game button (or press the space bar) to start the match.

Using vanilla Doom[edit]

DOSBox is an MS-DOS emulator capable of running the original DOOM.EXE and DOOM2.EXE.

First, install DOSBox and mount the directory containing the Doom executable and IWAD(s). If your computer is behind a router, you must also have opened ports.

To allow connectivity, edit the DOSBox config file. For default Windows packages, this is within the DOSBox application folder and has a name like dosbox.conf or DOSBox 0.74 Options.bat. Open this in Notepad or another text editor. Near the bottom should be the line ipx=false; change this to ipx=true.

On the hosting PC, type ipxnet startserver <port>, where <port> is the UDP port you want to host with.

DOSBox ipx example.png

On the connecting PC, type ipxnet connect <ip> <port>, using the same port number and with the host computer's IP address as <ip>. This works over the internet as well as on a local network. If someone has set up an internet server, type the IP and port which they have specified. The IP and port must have a space between them, not a colon as in most source ports.

You can then launch a game, loading any PWADs (which must already be in the same folder as the .exe) and configuring coop or deathmatch play using Doom's standard command line parameters.

The multiplayer utility VanillaDM automates this process through the inclusion of several tightly configured programs operated through a GUI launcher.

Using Doom Legacy for splitscreen matches[edit]

Doom Legacy has a splitscreen multiplayer support. Version 1.42 of Legacy is recommended for its stability and simple launcher.

Install the package and open the launcher:

Legacy screenshot - launcher.png

Click Game Mode. Tell the launcher where your Legacy program and IWADs are. It is best to put all IWADs and PWADs in your Legacy folder.

Legacy screenshot - WAD folders.png

Now click Single Map (but not Multiplayer).

Legacy screenshot - game parameters.png

In the Additional options field, type +splitscreen 1 and, if you want to deathmatch, +deathmatch #, where # is a value between 1 and 3. Typing no commands will start a cooperative game.

In the Additional files field, select a PWAD if desired.

Set each player's controls by pressing Esc, then selecting Multiplayer to configure player 2. Now click Launch to begin play.

Four-player game using two PCs[edit]

Start Doom Legacy through the launcher as described above. When the game starts, hit Esc, select Multiplayer, and select End Game. You should now be at the title screen. Press Esc, select Multiplayer, select Start Server, and enter a server name. (On this screen you can also set additional game options, such as no monsters mode or item respawning).

On the second PC, start the game through the launcher with the same WADs as the host. On startup, press Esc and select End Game. Now press Esc, select Multiplayer, and then Connect Server. The server name should be displayed; select it and hit Enter.

Now go back into the game on each PC and open the console (tilde key, ~ ) and type splitscreen 1. Configure the second set of controls by pressing Esc, selecting Multiplayer, then Setup Player Two.

Using console controllers[edit]

Zandronum is the only multiplayer oriented source port with native controller support, however there are many keymappers available online that can be used for any port. XPadder is one such utility, with support for Xbox 360 or PS3 controllers. XPadder costs US$10, and setup instructions are posted on its forums.

See also[edit]