4Gamez.de

Nachdem man einen CounterStrike: GO – Server erstellt hat, wird man schnell feststellen, dass die einzelnen Befehle zum Starten und vor allem zum Updaten eines Servers recht lang sind. Zudem wird durch die häufigen Updates in CS: GO das manuelle Aktualisieren des Servers mit der Zeit sehr anstrengend werden. Daher gibt es für diesen Fall ein geniales Script, welches recht einfach einzurichten ist und euch so gut wie alle Serververwaltungsaufgaben abnimmt. Wie die Installation und Nutzung funktioniert, wollen wir euch nachfolgend aufzeigen:

Installation

Meldet euch als Root per SSH auf eurem Server an und führt die nachfolgenden Befehle über die Shell aus, um das Script herunterzuladen und ausführbar zu machen:

wget https://raw.githubusercontent.com/crazy-max/csgo-server-launcher/master/csgo-server-launcher.sh -O /etc/init.d/csgo-server-launcher --no-check-certificate

chmod +x csgo-server-launcher

update-rc.d csgo-server-launcher defaults

mkdir -p /etc/csgo-server-launcher/

wget https://raw.githubusercontent.com/crazy-max/csgo-server-launcher/master/csgo-server-launcher.conf -O /etc/csgo-server-launcher/csgo-server-launcher.conf --no-check-certificate

Wurden alle Befehle eingegeben, sollte die Installation auch schon abgeschlossen sein!

Konfiguration

Bevor das Script in Betrieb genommen werden kann, sollte es zunächst einmal konfiguriert werden. Die Konfigurationsdatei ist standardmäßig unter /etc/csgo-server-launcher/csgo-server-launcher.conf zu finden. Öffnet die Datei mit einem Texteditor, um die nachfolgenden Werte anpassen zu können:

  • SCREEN_NAME:
    Der Fenstername von Screen, um den Prozess nachträglich anzeigen zu können. Der Name ist beliebig wählbar.
  • USER:
    Der Linux-User, welcher den CS: GO Server starten soll.
  • IP:
    Die IP des Servers.
  • PORT:
    Der Port, über den der Server erreichbar sein soll.
  • GSLT:
    Der Steam-Account, mit welchem der Server verknüpft ist (Token). Weitere Informationen unter http://steamcommunity.com/dev/managegameservers.
  • DIR_STEAMCMD:
    Der Pfad, um auf die SteamCMD zugreifen zu können. Die Datei wird für die CS: GO Server-Installation und für die -Updates benötigt.
  • STEAM_LOGIN:
    Der genutzte Steam-Account. Empfehlung: Unbedingt anonymous verwenden, da so eure Accountdaten nicht hinterlegt werden müssen.
  • STEAM_PASSWORD:
    Das Passwort für den Steam-Account. Kann in Kombination mit dem anonymen Login leer gelassen werden.
  • STEAM_RUNSCRIPT:
    Script, welches das Autoupdate in SteamCMD ausführt. Normalerweise ist keine Anpassung nötig.
  • DIR_ROOT:
    Das Root-Verzeichnis des Game-Servers. Normalerweise ist keine Anpassung nötig.
  • DIR_GAME:
    Der Pfad zum Spiel. Normalerweise ist keine Anpassung nötig.
  • DIR_LOGS:
    Das Verzeichnis der Log-Dateien. Normalerweise ist keine Anpassung nötig.
  • DAEMON_GAME:
    Die Datei, die zum Starten des Game-Servers ausgeführt wird. Normalerweise ist keine Anpassung nötig.
  • UPDATE_LOG:
    Die Log-Datei für Updates.
  • UPDATE_EMAIL:
    Die E-Mail-Adresse, an welcher die Update-Logs gesendet werden sollen. Leer lassen, um die E-Mail-Funktion zu deaktivieren.
  • UPDATE_RETRY:
    Die Update-Versuche, falls beim Update-Prozess etwas fehlschlagen sollte.
  • API_AUTHORIZATION_KEY:
    Der Schlüssel, damit das Downloaden von Workshop-Maps für den Server möglich ist. Kann leer gelassen werden, wenn die Datei „webapi_authkey.txt“ bereits existiert. Weitere Informationen unter http://steamcommunity.com/dev/apikey.
  • WORKSHOP_COLLECTION_ID:
    Die ID einer Workshop-Collection, welche CS: GO – Maps enthält. Weitere Informationen unter https://developer.valvesoftware.com/wiki/CSGO_Workshop_For_Server_Operators.
  • WORKSHOP_START_MAP:
    Die ID einer Map in der Collection, welche beim Start des Servers geladen werden soll.
  • MAXPLAYERS:
    Die erlaubte Spieleranzahl auf dem Server.
  • TICKRATE:
    Die Tickrate mit dieser der Server laufen soll.
  • EXTRAPARAMS:
    Weitere Parameter für den Server. Beispielsweise +sv_pure 1 +game_type 0 +game_mode 1.
  • PARAM_START:
    Die Parameter für den Server-Start. Normalerweise ist keine Anpassung nötig.
  • PARAM_UPDATE:
    Die Parameter für den Update-Prozess. Normalerweise ist keine Anpassung nötig.

Wie die Config aussehen könnte, demonstriert der nachfolgende Screenshot:

CounterStrike: GO – Server Launcher Script

Benutzung

Damit ist die Einrichtung abgeschlossen und das Script kann aktiv genutzt werden! Dazu stehen euch die folgenden Kommandos zur Verfügung:

  • start
    Startet den Server mit den unter PARAM_START festgelegten Parametern in Screen.
  • stop
    Stoppt den Server und schließt das Fenster in Screen.
  • status
    Zeigt den Status des Game-Servers an.
  • restart
    Stoppt und startet anschließend den Server erneut.
  • console
    Öffnet die Konsole, um Befehle eingeben oder innerhalb des Spiels kommunizieren zu können.
  • update
    Benutzt die unter PARAM_UPDATE festgelegten Parameter, um den Server zu aktualisieren.
  • create
    Erstellt einen Game-Server. Es muss zuvor die Konfiguration durchgeführt worden sein.

Voll ausgeschrieben könnte dann beispielsweise ein Befehl zum Starten des Game-Servers folgendermaßen aussehen:

/etc/init.d/csgo-server-launcher start

oder

service csgo-server-launcher start

Automatische Updates durchführen

Wir können unseren CS: GO – Server dank dem Script jetzt bereits relativ schnell verwalten. Allerdings möchten wir auch nicht mehr nach jedem neuen Update für CounterStrike: GO den Updatevorgang manuell anstoßen. Daher sollte das Script nun noch in eine Cronjob geschrieben werden, um so ein automatisches Update zu einer bestimmten Zeit durchführen zu können. Das komplette Kommando für die Cronjob lautet:

0 6 * * * cd /etc/init.d/ && ./csgo-server-launcher update >/dev/null 2>&1

Der Game-Server wird nun jeden Tag um 06:00 Uhr aktualisiert.

Soll der Dienst beim Systemstart automatisch gestartet werden, kann der Startbefehl service csgo-server-launcher start beispielsweise bei Ubuntu-Betriebssystemen in die rc.local geschrieben werden.

Wenn nichts mehr geht, mach dir nen Steak!

Next Post