World at War runs on the same IW3 engine generation as Call of Duty 4, so if you have set up a CoD4 server most of this will look familiar. The differences are the binary name, a larger map set thanks to three free map packs, and a much smaller surviving player base.
What you need
| Item | Notes |
|---|---|
| Game paks | iw_00.iwd … plus localized_* from a legitimate install |
| Dedicated binary | codwaw_lnxded (Linux) or CoDWaWmp.exe +set dedicated 2 |
| Patch | 1.7 |
| Ports | UDP 28960 inbound |
| RAM | ~250 MB per instance |
32-bit libraries
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y libc6:i386 libgcc-s1:i386 lib32stdc++6 zlib1g:i386
server.cfg
seta sv_hostname "^1My ^7WaW Server"
set rcon_password "change-me"
set g_gametype "war"
set sv_maxclients 24
set sv_pure 1
set sv_allowDownload 1
set sv_maxRate 25000
set sv_fps 20
set sv_timeout 60
set sv_floodProtect 1
set sv_punkbuster 0
set g_allowVote 1
set g_antilag 1
set scr_teambalance 1
set scr_friendlyfire 0
set scr_killcam 1
set logfile 1
set g_log "games_mp.log"
set g_logsync 0
set scr_war_timelimit 15
set scr_war_scorelimit 750
set scr_sd_timelimit 2
set scr_sd_roundlimit 0
set sv_mapRotation "gametype war map mp_castle map mp_airfield map mp_roundhouse map mp_dome"
map_rotate
Gametype codes follow CoD4, not CoD2: war is Team Deathmatch, dm is Free-for-All,
koth is Headquarters, sab is Sabotage, dom is Domination, and WaW adds twar for
War. Full list on the cvar reference.
Starting the server
cd /opt/waw
./codwaw_lnxded \
+set fs_basepath /opt/waw \
+set fs_homepath /opt/waw \
+set dedicated 2 \
+set net_port 28960 \
+set sv_maxclients 24 \
+set rcon_password "change-me" \
+exec server.cfg \
+map mp_castle
systemd unit
[Unit]
Description=Call of Duty World at War dedicated server
After=network-online.target
[Service]
Type=simple
User=waw
WorkingDirectory=/opt/waw
ExecStart=/opt/waw/codwaw_lnxded \
+set fs_basepath /opt/waw +set fs_homepath /opt/waw \
+set dedicated 2 +set net_port 28960 \
+exec server.cfg +map mp_castle
Restart=always
RestartSec=5
[Install]
WantedBy=multi-user.target
Map packs
WaW got three free map packs, so a stock 1.7 install has 13 base maps plus 10 DLC maps.
Because the DLC maps are free, it is safe to put them in rotation: any patched client has
them. Codes to display names is not obvious here either, for example Cliffside is
mp_shrine, Upheaval is mp_suburban, Corrosion is mp_stalingrad and Station is
mp_subway. Full mapping on the World at War map list.
Fast download
set sv_allowDownload 1
set sv_wwwDownload 1
set sv_wwwBaseURL "http://files.example.com/waw"
set sv_wwwDlDisconnected 0
See the fast download guide for the nginx configuration.
