Dedicated Server Setup
|~Fixme: This page needs updating with instructions for setting up a server on the source 2013 based version of empires as the below information is incorrect.|
Home > Dedicated Server Setup
Dedicated Server (Windows)
|Warning: The information on this page applied to the older source 2007 based version of empires and is no longer correct.|
There are two ways of installing an Empires dedicated server:
- Using SteamCMD.
- Using Didrol's update tool. For the rest of this setup tutorial, we will assume we use this tool.
You can download the tool here.
- After downloading, extract the RAR.
- Open a command line window with elevated / local administrator privileges and browse to the location of the update tool.
- Update syntax example:
updatetool.exe -command update / install -game 17740 -dir "C:\Folder Path to Empires\" -username SteamUsername -password SteamPassword -verify_all
- -command update - Tells the tool you are updating an existing server.
- -command install - Tells the server you are installing a new server.
- -game 17740 - Tells the server the Steam AppID. In the case of Empires you need to use "17740".
- -dir - This is the installation path to the Empires Server files. It is probably worth noting that for the author of this tutorial, it was "C:\*****\Empires\orangebox" .
|Warning: It is very important that you use a full local file path & wrap it with quotation marks to help it parse any spaces. Use an existing path in conjuction with "-command update" or a new path in conjunction with "-command install".|
- -username SteamUsername - Where Username is the Steam account you will use to connect to Steam and download the files. It is a good idea to have a separate account set up for this.
- -password SteamPassword - Self explanatory.
- -verify_all - This will verify all the files once they have been installed. Highly recommended.
Where "5char" is replaced by the verification code Steam will e-mail.
Original author: A-z-K
Dedicated Server (Linux)
Installing a dedicated server is supported on Debian 8. Execute the following in a root shell:
apt-get install curl ca-certificates lib32gcc1 adduser --system --group --home /var/lib/empires empires --shell /bin/bash su - empires mkdir Steam cd Steam wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz tar -xzf steamcmd_linux.tar.gz cat > ../update <<UPDATE login anonymous force_install_dir steamapps/common/empires_dedicated/ app_update 460040 validate quit UPDATE ./steamcmd.sh +runscript ../update cd steamapps/common/empires_dedicated cat > run <<RUN #!/bin/sh ~/Steam/steamapps/common/empires_dedicated/srcds_run -game empires -secure -steam -dev -steam_dir ~/Steam/ -steamcmd_script ../update -autoupdate -maxplayers 62 +map emp_district RUN chmod +x run ./run
There are several plugins available for use in Empires. Two extension systems are available (and can run in parallel):
- SourceMod is the most common system, and is used for the majority of plugins. Handy SourceMod plugins that have been confirmed to work on Empires servers are:
- Ungrief Command Vehicle - Teleports the specified command vehicle to where you are looking. Usage: !ungrief <nf | be | imp>
- SourceBans - A free global administration and banning system for Source engine based servers.
- Kigen's Anti-Cheat (Requires Sockets 3.0.1 plugin) - An extensive anti-cheating plugin.
- For more plugins, look at the Sourcemod Plugins page.
- SourceOp is less popular, but is required to run an anti-DoS plugin:
- DoS Attack Fixer - Protects against A2C_PRINT and other spam.
Both systems themselves run on MetaMod, allowing them to run in parallel.
Tips and Tricks
Customize server.cfg settings
As the server.cfg (amongst others) can be overwritten during upgrade and you may wish to have your server run in different "modes" such as password protected clan match/practice, increased resource rates for "tank wars", etc, it is best to treat your server.cfg as "read-only".
Any default settings you wish to use can be placed in a separate file such as "myserver.cfg". At the end of server.cfg, you can then add the line "exec myserver.cfg".
This way, server.cfg will then run myserver.cfg and override any server.cfg settings.
Loading various server "modes" can then be done by calling them in the server console:
rcon exec tankwars.cfg
If you want a mode to be automatically loaded after map change / server restart, you can add another line to server.cfg below the "exec myserver.cfg" entry.
As an example of custom configuration you might want to use, the following line will disable the ability to join spectators at the start of the round:
emp_allowspectators 0; wait 30000; emp_allowspectators 1
It should be put at the end of the .cfg file so as to not delay any subsequent commands. The wait command delays all further commands by the amount specified in 1/100ths of a second.