To play classic Doom online, use the same multiplayer source port and matching game files on every player’s computer. For the easiest server-browser route, install Zandronum with Doomseeker; for gameplay closer to original Doom, use Chocolate Doom and connect directly or over a LAN. The steps differ: Chocolate Doom’s official documentation specifies UDP port 2342, while the current Zandronum guide uses UDP port 10666 for its hosting workflow. Neither port is a universal Doom setting.
What do you need to set up online Doom multiplayer?
Before joining or hosting, settle on one multiplayer ecosystem and make sure every player can supply the game data it requires. Classic Doom multiplayer is not one shared matchmaking network: different ports and releases have separate workflows, and using unlike clients or content can prevent a connection.
- The same source port: Choose Zandronum or Chocolate Doom and have everyone use that port. Odamex and ZDaemon are other multiplayer-focused alternatives, but they are distinct choices rather than drop-in clients for a Zandronum or Chocolate Doom session.
- A legal IWAD: This is the base game data file. Common examples include
doom.wadanddoom2.wad; the current Zandronum guide also identifiesfreedoom2.wadas an option where the server permits it. The required game and version depend on the server. - Matching additional files: If a server calls for custom WADs or extra parameters, every player needs the same content and settings. Chocolate Doom’s join documentation warns that differing game files can cause the connection to fail.
- A stable connection: Chocolate Doom’s official multiplayer documentation advises avoiding bandwidth-heavy file sharing or downloads during play, since smoothness depends on all players’ connections.
Place the IWAD where the chosen port can find it. For Zandronum, the current guide describes the installation folder or the application-support folder as possible locations. If the port does not recognize the file, check its setup or game-configuration options and confirm the filename and version.
Which source port should you use?
Choose Zandronum with Doomseeker if you want a server browser and a launcher-driven setup; choose Chocolate Doom if preserving vanilla-like gameplay is more important and you are comfortable connecting directly. Their networking and discovery methods are different.
| Option | Best fit | Discovery and joining | Gameplay emphasis | Hosting port documented here |
|---|---|---|---|---|
| Zandronum with Doomseeker | Public-server browsing, co-op, mods, and launcher-driven private games | Doomseeker server list and custom-server option | Multiplayer-focused source port | UDP 10666 in the current guide’s hosting workflow |
| Chocolate Doom | Vanilla-like behavior, LAN play, direct connections, or a dedicated server | Direct IP or hostname; local-network discovery and autojoin are documented | Official documentation describes gameplay as identical to Vanilla Doom, while noting networking differs | UDP 2342 in Chocolate Doom’s official multiplayer documentation |
The port figures above are source-specific: the 10666 setting comes from the current Zandronum guide, last verified August 8, 2026, and 2342 comes from Chocolate Doom’s official multiplayer documentation. Do not substitute one for the other. The guide also names Odamex and ZDaemon as alternatives with different emphases; choose one only if your group agrees to use its ecosystem.
Chocolate Doom’s vanilla-like emphasis is about gameplay behavior, not identical networking. Its documentation explains that multiplayer data is routed through a server rather than using Vanilla Doom’s peer-to-peer system. That means a setup that works for one port should not be assumed to work for another, even if both run the same Doom game.
How do you join a public co-op server with Zandronum?
Install Zandronum and Doomseeker, prepare the IWAD the server requires, then use Doomseeker to find and launch a compatible game. The following workflow is described in Skulltag’s guide, “How to Play Doom Co-op Online in 2026,” last verified August 8, 2026.
- Install both programs. The guide says Doomseeker is bundled with Zandronum on Windows and macOS. If Doomseeker cannot locate the game executable, open Options → Configure → Games and set the Zandronum executable path.
- Put the required IWAD in a recognized location. Use the base game and version that the server calls for. If you are using Freedoom, confirm that the server accepts that edition; a server may require a specific version.
- Refresh Doomseeker’s server list. Look for a server with the game mode you want. Filter for Cooperative to narrow the list to co-op sessions.
- Check the details before joining. Sort or inspect the ping and WAD requirement, then make sure you have the listed base game and any required custom content. A server can appear in the browser while still being incompatible with your files.
- Launch the server. Double-click its entry. Doomseeker launches Zandronum with the selected server’s settings.
If the browser shows a server but the launch fails, treat that as a compatibility or connection problem rather than proof the server is available to your setup. Confirm the required IWAD, its version, custom WADs, and the source-port variant; some servers use a fork such as Q-Zandronum rather than standard Zandronum.
How do you host a private Zandronum game?
Doomseeker can create a game through its interface, so you do not have to begin by typing server commands. You still need to make the host reachable to friends, either through UPnP, manual router forwarding, or an appropriate virtual-LAN workaround.
- In Doomseeker, choose File → Create game.
- Select Zandronum. If the launcher asks for the executable, configure its path.
- Enter a server name and select Cooperative or the mode your group wants.
- Leave the port at 10666 or allow the game to choose a port, following the current guide’s Zandronum hosting instructions.
- Select the base game file, such as
doom2.wador an allowed Freedoom IWAD. Add any custom content only if all players will use the same files. - Keep master-server broadcasting enabled if you want the game to appear publicly. For a private session, share the address with friends and use Doomseeker’s custom-server option if needed.
- Try UPnP first. If it does not configure the router, the guide says to forward UDP 10666 manually. A virtual-LAN tool such as ZeroTier or Hamachi is another possible workaround when direct hosting is blocked.
- Start the server and give friends the address they need to connect.
Port forwarding is configured on the router, not just inside Doomseeker. A running server may be available on the host’s own machine or LAN but inaccessible to people outside the home network if the router or firewall blocks incoming traffic. UPnP is not guaranteed to work on every router.
How do you host or join with Chocolate Doom?
Chocolate Doom uses a direct host-and-client workflow for internet play, and it also documents LAN autojoin and dedicated-server options. The official multiplayer documentation says one player must act as the server and host.
Host an internet game
- On the host computer, start a deathmatch server with:
chocolate-doom -server -deathmatch - Share the host’s public IP address with the other players. A home router may use NAT, so the address displayed inside the host’s operating system may not be the public address remote clients need.
- Each client connects with the host’s address, replacing the example address in this command:
chocolate-doom -connect 1.2.3.4 - Wait at the setup screen until the players have appeared, then start the match.
The Chocolate Doom documentation recommends a high-bandwidth connection for the host. It documents UDP 2342 as the port to forward through the router, and the host may need to allow the game through its firewall. If friends cannot reach the server, check those rules as well as the public address.
Host or join on a LAN
The host can use the same server command, chocolate-doom -server -deathmatch. Other players can use chocolate-doom -autojoin. Chocolate Doom can also search the local network from its setup interface by sending a broadcast packet that LAN servers can answer. This LAN discovery is not the same as making a server reachable from the public internet.
Run a dedicated server
Chocolate Doom documents two dedicated-server choices: run chocolate-doom -dedicated, or use the standalone chocolate-server.exe. The first player to join becomes the controller and specifies the game parameters. After everyone leaves, the server returns to a listening state.
Connect by address or discover a LAN game
Chocolate Doom’s join interface supports connecting to an internet or LAN game by entering an IP address or hostname. If you already have the host’s address, use that direct route instead of waiting for discovery. For players on the same local network, the setup interface can search for responding LAN servers; autojoin is another documented LAN option. A hostname can be useful when the host shares one, but it still needs to resolve to an address reachable from the client.
The official documentation also describes master-server registration and discovery for internet play. That is separate from LAN broadcast discovery: the master server helps players find internet servers, while a LAN broadcast searches the local network. A listed server still has to be reachable through the host’s firewall and router, and clients still need compatible game files.
What game settings should the host choose?
The host’s setup choices determine the session’s game, starting conditions, and rules. Chocolate Doom’s start-game documentation lists the game, skill level, starting level, game type, and level time limit among the settings the host can select.
Co-op settings
For a conventional cooperative run, leave monsters enabled unless the group intentionally wants a different ruleset. Chocolate Doom’s setup documentation says monster spawning is almost always desired for co-op. Fast monsters and monster respawning are optional challenge settings; enable them only if the group wants a harder session.
Deathmatch rules
Chocolate Doom distinguishes normal Deathmatch from Deathmatch 2.0. In Deathmatch 2.0, items and weapons respawn after 30 seconds; normal Deathmatch does not respawn them in the same way. Choose the mode before the match begins so everyone is playing under the same rules.
Before starting, agree on the game and starting level, skill, game type, and any level time limit the host has set. This is especially helpful when players are expecting co-op but the host starts a deathmatch server, or when a group wants a particular challenge level. The setup options are not just technical connection details; they define what the session will play like.
Why can’t your friend join your Doom game?
Check compatibility first, then the host’s firewall and network path. Those checks cover the common causes documented for these workflows without assuming that every failed connection has the same fix.
Confirm the game files and port match
- Make sure everyone is using the same source-port ecosystem. A Zandronum server is not a Chocolate Doom server, and KEX matchmaking is a separate ecosystem.
- Verify the required IWAD and version, plus any custom WADs and extra parameters. Chocolate Doom’s join documentation says the game needs to be identical between players or the connection will fail.
- For a Zandronum browser listing, check whether the server uses a fork such as Q-Zandronum and whether its required Freedoom version or other WAD matches your installation.
Check firewall and router access
- For Chocolate Doom internet hosting, check whether the host’s firewall permits the game and whether the router forwards UDP 2342.
- For the Zandronum hosting workflow in the current guide, try UPnP or forward UDP 10666 manually if UPnP fails.
- Check that remote players have the public address, not a local address used only inside the home network. NAT can make those addresses different.
If the server works on the local network but not for outside players, the issue is more likely to involve the public route—such as NAT, a firewall rule, or forwarding—than the game’s local server process. A carrier-grade NAT arrangement can also prevent ordinary inbound hosting; there is no universal fix for that case. A virtual-LAN tool may help when direct hosting or forwarding is unavailable, but it changes how players connect and must be used by the group consistently.
The server is running, but nobody can see it
First distinguish a local server from an internet-reachable one. A server can start successfully and accept connections on the host computer while remaining inaccessible outside the home network. Confirm that the server is broadcasting if you expect a public listing, and then check the router’s forwarding and the host’s firewall. Verify that friends are using the public address rather than an address that works only inside your LAN. UPnP can simplify configuration, but it is not guaranteed to work with every router.
If joining fails after a server appears in a browser, check its required IWAD, exact Freedoom version if applicable, custom WADs, and source-port variant. Availability in a listing does not mean that a client has the files or compatible port needed to enter the game.
Can KEX Doom, Steam Doom, or vanilla Doom join these servers?
Do not assume that a commercial release and a classic-Doom source-port server share matchmaking. The current guide says the KEX re-release uses its own matchmaking ecosystem and is not directly interoperable with the classic source-port community’s Zandronum workflow.
For the setup described here, every player should agree on the same port and server ecosystem before starting. Chocolate Doom aims to preserve vanilla gameplay behavior, but its official documentation says its networking differs from the peer-to-peer system used by Vanilla Doom: game data is routed through a server. That distinction is why choosing a port is part of setup, not just a graphics preference.
The current guide does not establish that a Steam or KEX client can connect to a Zandronum or Chocolate Doom session. If your group wants source-port multiplayer, install and launch the same source port on each machine rather than expecting the store release’s matchmaking to find that server.
Frequently Asked Questions
Can I use Wi-Fi for online Doom multiplayer?
The documentation cited here does not specify a required connection type or minimum bandwidth. Chocolate Doom advises that play quality depends on all players’ connections and recommends avoiding file-sharing or large downloads while playing.
Can the person hosting also play?
Chocolate Doom’s documented internet workflow has one player act as both server and host, wait for players to appear, and then start the match. Its dedicated-server mode is a separate option when you want the server process to listen independently.
Do I need a separate paid server to play with friends?
The documented workflows include hosting from a player’s own computer, so a separate paid server is not presented as a prerequisite. Whether home hosting works depends on the host’s network path, including firewall and router access.
What port does Chocolate Doom use for online multiplayer?
Chocolate Doom’s official multiplayer documentation specifies UDP port 2342 for forwarding through a router. That is Chocolate Doom’s documented port, not a universal port for every Doom source port.
How do I join a Chocolate Doom game by IP or hostname?
Use the join setup to enter the host’s IP address or hostname. For command-line internet joining, the documented form is chocolate-doom -connect 1.2.3.4, replacing the example with the host’s reachable address.
Do all players need the same WAD?
Yes. Players need the same required game files, including the IWAD and any custom WADs or extra parameters the server uses. Chocolate Doom’s join documentation says differing game setups can cause the connection to fail.
Can Steam or KEX Doom play with Zandronum?
Do not assume so. The 2026 Zandronum guide says the KEX re-release uses a separate matchmaking ecosystem and is not directly interoperable with the classic source-port Zandronum workflow. The documented setup does not establish Steam-client compatibility.
Why can I see a server but not join it?
Check the required IWAD and version, custom WADs, and source-port variant. A listing can be visible even when your client lacks the required content or uses an incompatible variant such as a different Zandronum fork.
The Bottom Line
For the simplest classic-Doom server browsing, use Zandronum with Doomseeker and match the server’s required files. For vanilla-like gameplay and direct hosting, use Chocolate Doom; its documented forwarding port is UDP 2342. Whichever route you choose, have every player use the same source-port ecosystem and content, then check firewall, NAT, and router access if connections fail.