Auto Tournament

Install

Requirements, the install command and the first setup.

What you need

  • Linux on x86_64 or arm64. Debian and Ubuntu are the tested systems.
  • sudo access.
  • At least 8 GB RAM. Add more for many servers.
  • About 71 GB of disk for the first install, plus about 2 GB for each server.
  • Docker, if you use the shared MySQL database for the plugin (the default). See the Docker install guide. csm does not install Docker for you.
  • A Game Server Login Token (GSLT) per server, if players join over the internet. Create one at steamcommunity.com/dev/managegameservers with app ID 730. For a LAN event you do not need one.

csm installs the other packages it needs (SteamCMD, tmux, rsync, the 32-bit libraries and more) with apt. See Server requirements for the network ports.

Install

Download csm and start it

Run this on the Linux machine. It downloads the latest csm for your CPU to /usr/local/bin/csm and opens the menu:

arch=$(uname -m); \
case "$arch" in \
  x86_64)  asset="csm-linux-amd64" ;; \
  aarch64|arm64) asset="csm-linux-arm64" ;; \
  *) echo "Unsupported architecture: $arch" && exit 1 ;; \
esac; \
tmp=$(mktemp); \
curl -L "https://github.com/Auto-Tournament/cs2-server-manager/releases/latest/download/$asset" -o "$tmp" && \
sudo install -m 0755 "$tmp" /usr/local/bin/csm && \
rm "$tmp" && \
sudo csm

Run the same command again later to update csm itself. The menu also has Tools > Force update CSM now.

Open the installer

In the menu, choose Install > Install or redeploy servers.

Answer the questions

The installer asks:

  • MatchZy storage: shared MySQL (the default) or one SQLite file per server. Shared MySQL keeps all match stats in one place and runs in a Docker container. You can also point it at your own MySQL server.
  • Number of servers. The default is 3.
  • Game port and GOTV port of server 1. The defaults are 27015 and 27020.
  • CS2 user. The default is cs2servermanager.
  • Hostname prefix, RCON password and max players. Change the default RCON password. You enter this password in Auto Tournament.
  • GSLT.
  • Update options: validate the game files with SteamCMD, update the plugins, and install the update monitor.

Wait for the download

The first install downloads CS2, about 70 GB. This can take a long time.

Open the ports

Open the game ports and GOTV ports in your firewall. See Ports for the numbers. Players need UDP. Auto Tournament needs TCP on the game port for RCON.

Add the servers to Auto Tournament

Get the public IP of the machine:

csm public-ip

In Auto Tournament, add each server with this IP, its game port and the RCON password. See Connect a CS2 server.

Ports

Server 1 uses game port 27015 and GOTV port 27020. Each next server adds 10:

ServerGame port (UDP and TCP)GOTV port
12701527020
22702527030
32703527040

Install without the menu

csm bootstrap installs or redeploys the servers with no questions. Set the options as environment variables:

sudo NUM_SERVERS=5 RCON_PASSWORD='a-long-random-password' csm bootstrap
VariableDefaultWhat it sets
NUM_SERVERS3Number of servers.
BASE_GAME_PORT, BASE_TV_PORT27015, 27020Ports of server 1.
CS2_USERcs2servermanagerLinux user for the servers.
HOSTNAME_PREFIXCS2 ServerStart of each server name.
RCON_PASSWORDa fixed defaultRCON password. Always set it.
MATCHZY_DB_ENGINEmysqlsqlite for one SQLite file per server.
MATCHZY_SKIP_DOCKER01 to skip the MySQL container.
ENABLE_METAMOD10 to install without Metamod.
UPDATE_MASTER10 to skip the game update.
FRESH_INSTALL01 to start over from a clean install.

If steamcmd cannot be installed

E: Unable to locate package steamcmd means your apt sources do not include the part that has SteamCMD. sudo csm install-deps tries to fix this: it turns on the missing part in /etc/apt/sources.list, saves a backup next to it, and tries again.

To do it by hand on Ubuntu:

sudo add-apt-repository multiverse
sudo apt-get update
sudo apt-get install steamcmd

On Debian, add contrib and non-free to your apt sources, then run sudo apt-get update and sudo apt-get install steamcmd.

Remove everything

This deletes all servers, the CS2 user and the MySQL container:

sudo csm cleanup-all

On this page