Setup scripts to create and setup a Counter-Strike 1.6 dedicated server on a Digital Ocean Droplet VPS. The script automatically takes care of all of the following:
- Set up UFW Firewall rules
- Create a user account for running the steam server
- Configure software package managers for non-interactive setup and adding i386 architecture
- Install linux software updates
- Install required linux software packages and dependencies
- Uses
steamcmdto install HLDS cstrike with the beta steam_legacy settings. (Runs multiple times to work around steamcmd bugs) - Downloads and installs ReHLDS patch into the cstrike server.
- Downloads and installs Metamod-R.
- Downloads and installs AMX Mod X Base Package.
- Downloads and installs AMX Mod X Counter-Strike Package.
- Downloads and installs ReGameDLL_CS patch.
- Downloads and installs ReAPI.
- Create a convenience script
run_cstrike_server.shfor the steam user to start running the server. - Populate server.cfg settings
- Populate mapcycle.txt
- Populate motd.txt
- Create empty banlist files to silence some server error messages.
INSTRUCTIONS:
- Create a Linux DigitalOcean Droplet. (Tested with Ubuntu 24.04)
- Edit the
cstrike_server_setup.shscript for desired admin steam id, host name, port, server settings, etc. - Upload the
cstrike_server_setup.shscript to the droplet. - Set the script as executable
chmod 700 cstrike_server_setup.sh - Run the
cstrike_server_setup.shscript as root. Only run it once. - Reboot the droplet.
- Log into the droplet as the steam account.
- As the steam account, run the
run_cstrike_server.shscript. You may want to do this in a GNU screen or tmux session.
TODO:
- Update script to turn on unattended upgrades for Ubuntu.
- Create a systemd unit file for automatically running/re-starting the server as needed.
- For 3rd party packages that are downloaded separately, consider including them in this repo (if licences allow), so the script doesn't need to download them with curl/wget.
- Include and automatically install some additional map packages for commonly played maps.
CREATED BY: Ryan Antkowiak