Server - Musta1337/TeknoMW3 GitHub Wiki
-
TeknoMW3 does not support piracy, this means:
- We do not provide any game files.
- We only support original game files from Steam. We will not help you, if you downloaded the game from any other sources than Steam.
- Call of Duty: Modern Warfare 3 - Dedicated Server is free on Steam.
- An installation of Call of Duty: Modern Warfare 3 - Dedicated Server.
- If you already have a working, up to date TeknoMW3 installation and it includes the file
iw5mp_server.exe
, then you can simply make a copy of your TeknoMW3 game folder and use it for your TeknoMW3 server. In this case, you can skip the installation and start from step 7. However, if errors occur when running the server, start with step 1. - Optional: DLC maps.
- If you already have a working, up to date TeknoMW3 installation and it includes the file
- If you want to host a public server, it's recommended to host your server(s) on a VPS or Dedicated Server, however, it also works on a PC. For a LAN server, a PC is absolutely sufficient.
- Open the server ports.
- Download and install Call of Duty: Modern Warfare 3 - Dedicated Server from Steam (download the files in English to avoid any issues).
- Go to your Steam games installation directory (
\steamapps\common\Call of Duty Modern Warfare 3
). - Copy the entire game folder to a different location (for example:
C:\Games\TeknoMW3-Server
). - Download the TeknoMW3 Client Launcher and put it into your newly created game server folder (for example:
C:\Games\TeknoMW3-Server
). - Run
TeknoMW3_Client_Launcher.exe
and wait until it finishes downloading necessary TeknoMW3 files. - Go to the
patches
folder and runpatch.exe
. - Download and extract TeknoMW3-Dedicated-Server-CFG.zip into your game server directory.
- Run
Start-Dedicated-Server.bat
to start your server.
-
Open the file
Start-Dedicated-Server.bat
with a text editor to change the server ports, launch parameters or other options. -
The server configuration files are inside the
admin
folder. Open these files in a text editor to change any settings. -
There are 3 types of configuration files:
-
CFG
(.cfg): "Config", basic server settings -
DSPL
(.dspl): "Dedicated Server Playlist", the map rotation -
DSR
(.dsr): "Dedicated Server Recipe", match related settings
-
-
Inside the
CFG
(e.g. Server.cfg), the variablesv_maprotation
specifies whichDSPL
will be loaded by the server. For example,seta sv_maprotation "Default"
will load the map rotation specified in theDefault.dspl
file. -
The
DSPL
(e.g. Default.dspl) specifies which map andDSR
will be loaded. For example,"mp_dome, TDM-Core, 1"
will load the map "Dome" with match settings specified in theTDM-Core.dsr
file. -
You can edit the .cfg, .dspl and .dsr files with a text editor to change server and match related settings. The Comments in these files will help you to better understand the options.
-
You can also create your own
DSR
inside the game and save it to disk: Create a DSR in the game -
If you need help with your server configuration, feel free to join the TeknoMW3 Discord and ask for support.
- You must forward the server's ports so that it is accessible to players outside your network.
- For LAN servers, port forwarding is not required. However, you must still allow 'iw5mp_server.exe' through the Firewall.
- On a VPS, it's usually not necessary to forward ports, but you must still allow 'iw5mp_server.exe' through the Firewall or open the ports through the Firewall. Note, some VPS hosting providers have a user interface where you have to open the ports.
- If you are hosting the server on your PC, use Google or another search engine to find out how to forward ports on your router.
- Forward the port
net_masterServerPort
(default: 27017) for UDP & TCP to make your server appear in the Internet server list (not required for LAN servers). - Forward the port
net_port
(default: 27016) for UDP & TCP to allow players to connect to your server from the Internet (not required for LAN servers). - You must allow
iw5mp_server.exe
through the Windows Firewall (and any other Firewall you have installed). - If you have problems making your server accessible to other players, feel free to join the TeknoMW3 Discord and ask for support.
There are several command line parameters that you can use with the Server:
Parameter | Description | Default |
---|---|---|
-enable_rcon | Enables Rcon (required for B3 & IW4MAdmin, or Rcon access via in-game console) | Disabled |
-enable_b3 | Enables support for B3 & IW4MAdmin | Disabled |
-secure_b3 | Adds security for B3 & IW4MAdmin | Disabled |
-no_integrity | Skips SHA-256 map checks | Disabled |
-enable_slow_motion | Slow Motion Killcam | Disabled |
+set dedicated | Server Visibility (1 = LAN, 2 = Internet) | 2 |
+set net_ip | Internal IPv4 that the server will use | "localhost" |
+set net_port | Game Port | 27016 |
+set net_masterServerPort | Master Server (Server Browser) Port | 27017 |
+set net_queryPort | Query Port | 27015 |
+set net_authPort | Authentication Port (used for B3 & IW4MAdmin) | 8766 |
+set sv_config | Specifies the Server Configuration file | "server.cfg" |
+start_map_rotate | Starts the map rotation and, therefore, the server | Disabled |
Here are some basic commands which can be used via the Server Console:
// Start the map rotation and, therefore, the server.
start_map_rotate
// Load the next map of the rotation (the map rotation is specified by 'sv_maprotation' in the server.cfg).
map_rotate
// Switch to a specific map
// Example to Dome: map mp_dome
map
// Restart the current map
map_restart
// Restart the current map, but without reloading it
fast_restart
// Shows the list of players and other server data
status
// Kick a player by their Client Number
// Example without reason: dropclient 1
// Example with reason: dropclient 1 "Reason"
dropclient
kickclient
// Kick a player by their Name
// Example without reason: drop "Name"
// Example with reason: drop "Name" "Reason"
drop
kick
// Temporarily ban a player by their Client Number
// Example without reason: tempBanClient 1
// Example with reason: tempBanClient 1 "Reason"
tempBanClient
// Temporarily ban a player by their Name
// Example without reason: tempBan "Name"
// Example with reason: tempBan "Name" "Reason"
tempBan
// Permanently ban a player by their Client Number
// Example without reason: banclient 1
// Example with reason: banclient 1 "Reason"
banclient
// Permanently ban a player by their Name
// Example without reason: ban "Name"
// Example with reason: ban "Name" "Reason"
ban
// Remove a player's temporary/permanent ban
// Tip: type unban in the server console to find out how to use this command
unban
// Set variables (DVAR's)
// set <variable> <value>
set
// Loads an InfinityScript found in the "scripts" folder. It will take effect when you change the map!
// Example: loadScript "MyPlugin.dll"
loadScript
// Unload an InfinityScript that has been previously loaded. It will take effect when you change the map!
// Example: unloadScript "MyPlugin.dll"
unloadScript
// Shuts down the server
killserver
// Closes the server
quit
The following commands can also be used via the In-Game Console to manage your server while you are playing on it. The use of commands via In-Game Console requires Rcon to be enabled on your server ('-enable_rcon' parameter) and an Rcon password to be set ('rcon_password' in the server.cfg).
The In-Game Console can be opened using the tilde key (~) or grave key (`) on your keyboard.
// Login to Rcon
// You must first login with your Rcon password to be able to use other server commands via In-Game Console
// Usage: login "YourRconPassword"
login
// Logout of Rcon
logout
// Load the next map of the rotation (the map rotation is specified by 'sv_maprotation' in the server.cfg).
map_rotate
// Switch to a specific map
// Example to Dome: map mp_dome
map
// Restart the current map
map_restart
// Restart the current map, but without reloading it
fast_restart
// Shows the list of players and other server data
status
// Kick a player by their Client Number
// Example without reason: dropclient 1
// Example with reason: dropclient 1 "Reason"
dropClient
kickClient
// Kick a player by their Name
// Example without reason: drop "Name"
// Example with reason: drop "Name" "Reason"
drop
kick
// Temporarily ban a player by their Client Number
// Example without reason: tempBanClient 1
// Example with reason: tempBanClient 1 "Reason"
tempBanClient
// Temporarily ban a player by their Name
// Example without reason: tempBan "Name"
// Example with reason: tempBan "Name" "Reason"
tempBan
// Permanently ban a player by their Client Number
// Example without reason: banclient 1
// Example with reason: banclient 1 "Reason"
banClient
// Permanently ban a player by their Name
// Example without reason: ban "Name"
// Example with reason: ban "Name" "Reason"
ban
// Remove a player's temporary/permanent ban
// Tip: type unban in the server console to find out how to use this command
unban
// Set variables (DVAR's)
// set <variable> <value>
set
// Shut down the server
killserver
You can enter your server name in one of the 12 possible colors.
-
^1
- Red -
^2
- Green -
^3
- Yellow -
^4
- Blue -
^5
- Sky Blue -
^6
- Pink -
^7
- White (default) -
^8
- Default Map Color -
^9
- Map Dependent Color -
^0
- Black -
^;
- Yale Blue -
^:
- Orange