This guide will show you how to setup a Modular Combat server. In order to make this HOWTO understandable for all users, I noobified it.
Note: At this time there is no Linux server version of Modular Combat, so you will need to host the server in Windows or use Wine/Mono in Linux.
If your server is located at a datacenter then initial setup will only work if you do them on your local computer and then upload the files to your server. If your serer is located at a datacenter that supports Modular Combat, then you will be able to use their installer (and you can skip this guide).
Currently to install the mod on your server you will need to use a steam account that has the game installed (went to Modular Combat store page and clicked "Install Game"). You can either do this with your steam account or make a new one for the server. I suggest you make a new one for increased security (so your steam account isn't stolen if the server is hacked).
- Download SteamCMD from valve’s servers here.
- Extract the contents of the zip someplace on your harddrive. For the sake of simplicity, this guide will be using "C:\SteamCMD".
- Navigate to your SteamCMD directory and run steamcmd.exe once for it to initialize itself (a bunch of files will download and it will close itself).
- Right click "steamcmd.exe" and select "Copy" near the middle of the context menu. Then right click any white area in the folder window and select "Paste" (also near middle) to create a shortcut to steamcmd. Right click the profile, select "Rename" from the context menu, type "Update Modular Combat" and click enter key on keyboard.
- Right click this new shortcut and select "Properties" at the very bottom of the context menu. In the "Target" box copy and paste the following to the end of the line (including a space between the last double quote and the hyphen):
+login USERNAME PASSWORD +force_install_dir "C:\Modular Combat Server" +app_update 349480 validate +quit
NOTE: Replace USERNAME with your Steam username and PASSWORD with your Steam password.
- If you get any messages about Steam Guard asking for an authorization code, check the email address associated with the Steam account, in the steam email get the code and copy/paste it into the steamcmd update window.
- Now double click this edited shortcut to start the Modular Combat installation process. Depending on your internet speed and how busy Valve's content servers are, this can take anywhere from a few minutes to a few hours so go take a break from the computer or play a single player game as downloading other things while the update is running will just slow it down.
- Download this file and extract its contents to your "C:\Modular Combat Server\2007\modularcombat\cfg" directory. It contains the text files: autoexec.cfg, banned.cfg, banned_ip.cfg, banned_user.cfg, server.cfg and valve.rc If you want to change more Modular Combat settings, see here for other CVARs.
- Open up server.cfg and edit the file to your liking.
- Navigate to "C:\Modular Combat Server\2007" and create a shortcut to srcds.exe in the same folder (newbies see step 4 on how to create shortcuts).
- Go into the properties of this shortcut (newbies see step 5 on how to go to properties) and enter the following to the end of the "Target" box:
-console -game "modularcombat" -secure +ip 188.8.131.52 +port 27015 +maxplayers 16 +exec server.cfg +rcon_password "ch@ng3me"
-console - This is required for the server to run. Never remove it.
-game "modularcombat" - This tells SRCDS to load Modular Combat.
+map dm_datacore - This tells SRCDS to load the specified map. If you do not choose a map, then your Modular Combat server will not start up properly.
-secure - This tells SRCDS to enable VAC (Valve Anti Cheat). Change it to -insecure if you dont want VAC to run.
-ip 184.108.40.206 - This tells the server to listen on a specific IP (change 220.127.116.11 to any IP). It's mainly useful if you have access to multiple IPs (not router IPs) from your ISP or server host. If you're running this server from home, then remove this parameter completely as the server will not start (see Addedum at bottom for more info).
+port 27015 - This tells SRCDS to listen on port 27015. Generally most servers run on ports 27015 to 27019. Don't change it to anything outside of this range or else some players may not be able to connect to your server.
-maxplayers 16 - This tells SRCDS to run with 16 slots. Modular Combat is limited to 16 slots (engine limitations) so even if you put more than 16 slots, the mod will never allow more than 16 players.
+exec server.cfg - This tells SRCDS to execute server.cfg upon server startup.
+rcon_password "ch@ng3me" - This sets your RCON password to "ch@ng3me". You should never ever set the rcon password in server.cfg because if the server is hacked, the hackers will get the password and wreak mega havok.
- Now you can start the server! Just go back to "C:\Modular Combat Server\2007" and double click your SRCDS shortcut.
This part is for problems you may encounter while trying to host a Modular Combat server.
If you're able to connect to your server but no one else (on the internet) can, then its a ports issue. Ignore what other sites say about what ports you need to open. Through a long process of trial and error i found the following list to be the absolute bare minimum for your server to work without compromising security.
UDP: 26901, 27014 to 27017, 27030 to 27039
I did not include TCP 27015 (or whatever your server port is set to) because this port allows remote RCON connections and just allows your server to be hacked easier.
How you open ports entirely depends on what Firewall and/or Router you have. You can find out how to open ports by reading the manual that came with your Firewall/Router or by going to Portforward.com Again ignore what this site says about what ports you should open for SRCDS. Use the list above instead.
Opening ports can also be dangerous. Someone i know learned this the hard way in when a server he was hosting from home got hacked. The previous day he banned a cheater and the next day was attacked. The attacker corrupted the bios of his router, and then proceeded to format the server box and gaming computer while he was at it trying to scan for viruses.
If you get the error message "Server uses different class tables" when trying to connect to your server. Then either the Modular Combat files on the server are out of date or an Source 2007 update came out and you need to run the SteamCMD again. Always stop your server before installing Modular Combat updates or running the SteamCMD (use the shortcut you created in step 5).
If you plan on hosting the server on the same computer you use to play other games, then you're in for some bad news. When you do anything on the server computer that uses lots of CPU, your Modular Combat server will lag heavily. So either put the Modular Combat server on an extra computer or turn off the server when you plan on playing games (players will simply avoid your server if its too laggy).
Servers tend to eat bandwidth like its candy and most ISPs won't allow you to host a server from home. So either don't tell them and hope you dont get caught (they can cancel your internet) or rent a server at a hosting company, the latter costs more (around $16 per month) but saves you headaches as you dont have to open ports, worry about going over your monthly bandwidth limits and they automatically restart a crashed server (and you get a web cp to start/stop/restart). If you do plan on hosting from home, make sure you have at least 50KBs of upload bandwidth. With some tweaking to the rates on your server, you can comfortably host a server even with 50KBs of upload. See this site for a calculator that will help you to set your rates.
Crashes are the single most annoying thing that will happen. When they do, they typically take down your server and if you arent around, it will stay down until you restart it. There are products online that can automatically restart your server if/when it crashes but these cost around $30 (FireDaemon Pro is once such example).
These are just the basic tips to help you on your way, there's a lot more out there so look around on a site such as Forums.srcds.com.
ADDENDUM 2 (Evil Police)
It is possible to have your server automatically restart in the event of a soft crash via a batch script.
Create a new .bat file in the same folder as srcds.exe, and paste the following code in it.
code: @echo off
echo Protecting srcds from crashes...
echo If you want to close srcds and this script, close the srcds window and type Y depending on your language followed by Enter.
title srcds.com Watchdog
echo (&#xti;me%) srcds started.
start /wait srcds.exe -console -game "modularcombat" -secure -ip 18.104.22.168 +port 27015 +maxplayers 16 +exec server.cfg +maxplayers 16 +rcon_password "ch@ng3me"
echo (&#xti;me%) WARNING: srcds closed or crashed, restarting.
Save it, and run your server by opening this script. Credits to srcds.com authors for this script.
The above script will only work if srcds completely closes, if the process is still active (server is frozen) then it will not restart the server.