Steam start.sh

Downloads
1.2.1
2012 to 2016
Stable
See also...

Other start.sh's:

Minecraft

start.sh for Minecraft game servers

TeamSpeak

start.sh for TeamSpeak

This is a start script for Steam servers. With it, you can administrate multiple Steam game servers with just one start.sh with each game server having its own configuration script (serverscript), usually located in a sub directory like "_serverscripts".

start.sh

  1. Place start.sh where you installed the Steam server user, like /home/steam
  2. Configure start.conf accordingly
    • DIRECTORY: Root directory and location of start.sh
    • SERVERSCRIPTS: Directory for server scripts
    • SERVERIP: The static IP of your server
  3. Apply execute permissions to start.sh

Serverscripts

For each game server, place a serverscript with the extension .conf in $SERVERSCRIPTS, for example /home/steam/_serverscripts/css.conf. When calling start.sh, your start command will be "./start.sh start css".

GAMEDIR="/home/steam/27015_css"
GAME="css"
SESSIONNAME="cssserver"
PORT=27015
MAP="de_dust2"
MAXPLAYERS=16
COMMANDLINE="-tickrate 100"

The configuration variables are as follows:

  • GAMEDIR: Absolute path to the game directory
  • GAME: Can be "cs", "hl", "css", "hl2" or "csgo" - additional games can be added by adjusting the script
  • SESSIONNAME: Unique name of the screen
  • PORT: Game server port (leave 10 ports space between each game server)
  • MAP: Starting map
  • MAXPLAYERS: Maximum players
  • COMMANDLINE: Any additional parameters

CS:GO needs 3 additional config values:

GAMETYPE="0"
GAMEMODE="0"
MAPGROUP="mg_active"

CS:GO game types and game modes are explained here.

Usage

Command Function
./start.sh Summary of command line options
./start.sh start <GAMESERVER> Starts the server with the name <GAMESERVER>
A second instance is not started as long as the server is running.
This command is ignored when the server is disabled.
./start.sh stop <GAMESERVER> Stops the server with the name <GAMESERVER>
Rules from start apply here as well.
./start.sh restart <GAMESERVER> Restarts the server with the name <GAMESERVER>
Internally executes stop, then start. Rules from start apply here as well.
./start.sh update <GAMESERVER> Updates an existing game server or initially installs it.
./start.sh reinstall <GAMESERVER> Deletes and re-installs a game server.
WARNING: There will no confirmation! Also remember to specify what server to re-install, otherwise all servers will be re-installed.
./start.sh enable Enables all servers for starting
As long as disabled, the command start will not start any server.
./start.sh disable Disables all servers for starting
As long as disabled, the command start will not start any server.

Note: The <GAMESERVER> parameter is optional. When omitted, all servers are affected.