Counter-Strike 2 - Dedicated Servers
Remember to check for any notes left by the tagger at this article's talk page.
Warning: Display title "Counter-Strike 2 - Dedicated Servers" overrides earlier display title "Dedicated Servers".
This page outlines how to setup and run an Counter-Strike 2 Dedicated Server.
Recommended system requirements
Linux:
- Minimum RAM: 2GB
- Storage: 33GB
- Requires Glibc 2.31
- CPU: minim x86-64-v2 (with popcnt)
Download the CS2 Dedicated server
This describes the process of installing/updating the CS2 dedicated server. These steps are required every time the game is updated. To automate this process for future updates, see SteamCMD#Automating SteamCMD.
1. Download and install SteamCMD.
2. Start SteamCMD. At the Steam>
prompt, set your CS2 Dedicated Server install directory.
Examples:
- Windows:
force_install_dir c:\cs2-ds\ force_install_dir .\cs2-ds\
- Linux:
force_install_dir /full/path/to/cs2-ds/
3. Login into Steam You need to login into Steam anonymously, or using your account.
Examples:
login anonymous
4. Install or Update CS2. If this is your first time installing or if you are trying to verify the integrity of the server files:
app_update 730 validate
If this is simply an update to an existing CS2 dedicated server:
app_update 730
4. Once finished, type quit
at the Steam>
prompt to properly log off of the Steam servers.
Registering Game Server Login Token
No. GSLT must be created just like with CSGO. Seem to be able to use the same one from CSGO. I was unsure how to add/use it properly. Using +sv_setsteamaccount <TOKEN> on command line. With CSGO you set this in autoexec.cfg
No Steam account token was specified. Logging into anonymous game server account. Connections will be restricted to LAN only. To create a game server account go to http://steamcommunity.com/dev/managegameservers
[Todo]
Starting the Server
Windows
Head to the folder where you downloaded the application and open a terminal there.
Head to the executable for the server that is stored in game/bin/win64/cs2.exe
- But don't click on it as it will just launch the game.
In the terminal run the following command to start the server:
.\cs2.exe -dedicated +map de_dust2
Linux
Head to the folder where you downloaded the application.
Head to the executeable that is stored in game/bin/linuxsteamrt64/cs2
Run the following command to start the server:
./cs2 -dedicated +map de_dust2
Command-Line Parameters
A list of useful command-line parameters related to Counter-Strike 2 dedicated servers.
Command-line parameters are additional arguments specified before the program starts and can be set by appending them after the ./cs2
/.\cs2.exe
executable file.
Parameter | Example | Description |
---|---|---|
-dedicated |
n/a | Allows Counter-Strike 2 to launch as a dedicated server. |
-ip |
-ip 1.2.3.4 |
Allows the server IP to be set. Useful if a CS2 server needs to be bound to a specific IP address. |
-insecure |
n/a | Allows VAC to be disabled. |
-maxplayers |
-maxplayers 64 |
Set the number of slots for the game server. |
-port |
-port 27015 |
Set the game server game/query port. |
Console Variables (cvars)
A list of useful cvars related to Counter-Strike 2 dedicated servers.
cvars
can be loaded from a config file, by including them with command-line parameters using +
e.g +map de_dust2
or from the console.
Console Variable (cvar) | Example | Description |
---|---|---|
hostname |
hostname "My CS2 Server" |
Hostname for server. |
map |
map de_dust2 |
map <mapname> :Load a new map. |
game_alias |
game_alias deathmatch |
Set the configuration of game type and mode based on game alias like 'deathmatch'. |
sv_lan |
sv_lan 0 |
Server is a lan server ( no heartbeat, no authentication, no non-class C addresses ). |
sv_logfile |
sv_logfile 1 |
Log server information in the log file. |
Game Modes & Types
Remember to check for any notes left by the tagger at this article's talk page.
Competitive: game_alias competitive <- sets both game mode and game type commands game_mode 1 game_type 0 Wingman game_alias wingman <- sets both game mode and game type commands game_mode 2 game_type 0 Casual game_alias casual <- sets both game mode and game type commands game_mode 0 game_type 0 Deathmatch game_alias deathmatch <- sets both game mode and game type commands game_mode 2 game_type 1 Custom game_alias custom <- sets both game mode and game type commands game_mode 0 game_type 3
Tools and Helpers
Docker
If your server is running Docker, you can simply use:
docker run -d --name=cs2 -p 27015:27015 -p 27020:27020 joedwards32/cs2
The container will automatically update the game on startup, so if there is a game update just restart the container.
The config is located within the container here: /home/steam/cs2-dedicated/cs2/cfg
You can find the associated Docker Hub page
CS2 Multiserver
A launch and update script for Linux and WSL to run multiple game servers on one machine. It was originally made to run CS:GO LAN tournaments as painlessly and efficiently as possible.
It includes:
- Guided setup and game update (cs2-server setup, cs2-server update)
- Game files are shared between instances, saving disk space and bandwidth
- Additional control upon launch via environment variables (MAP="de_inferno" cs2-server @lan01 start)
- Console access and support for logfiles
More Info and Download: CS2 Multiserver on GitHub. Testing, feedback and contributions are welcome!
Advanced Configuration
[Todo]
Troubleshooting
Linux
Failed to load module '/home/your_user/.steam/sdk64/steamclient.so'
This is a common issue with a fairly easy fix.
The reason for this error is that SteamCMD doesnt place the file in the folder it should, as the games typically look for it there. So what you need to do is the following. And you might even have to create the ~/.steam/sdk64 directories.
Create a symlink (shortcut) to the file like this:
ln -s /home/your_user/PATHTOYOUR/steamcmd/linux64/steamclient.so /home/your_user/.steam/sdk64/
Replace your_user
with the username you are using.
Windows
Failed to initialize Steamworks SDK for gameserver. Failed to load module 'C:\Program Files (x86)\Steam\steamclient64.dll'
In order to lauch the current version steam has to be installed.
|