Left4Dead
Hier findet du die wichtigsten Befehle und Hilfe für deinen Gameserver mit dem Spiel CounterStrike Global Offensive: RCON-Befehle, ESL Plugin, zBlock , SSH-Protect
Spiel Informationen
Editor: Valve Software
Erscheinungstermin: 18. November 2008
Beschreibung: From Valve (the creators of Counter-Strike, Half-Life and more) comes Left 4 Dead, a co-op action horror game for the PC and Xbox 360 that casts up to four players in an epic struggle for survival against swarming zombie hordes and terrifying mutant monsters.
RCON Befehle
tba
Plugins
tba
Spiel
coop Der Server wird für Kampagnen vom Matchmaking-System genutzt. versus Der Server wird für Versus vom Matchmaking-System genutzt. survival Der Server wird für den Survival-Mods vom Matchmaking-System genutzt. teamversus Der Server wird für Team-Versus vom Matchmaking-System genutzt.
Webinterface
Gameserver
- EPS Server - EPS_PLUS_Server - Smartline_-_Entry_Server - Testserver
→ Hauptartikel: Gameserver
CKRAS FAQ Left4Dead
server.cfg
Bei Left 4 Dead sind nur sehr wenige Einstellungen nötig. Die server.cfg sollte möglichst klein gehalten werden. Es sind sehr viele Beispiele im Netz zu finden, die schlichtweg falsch sind. Es wurden seit der Demo Befehle und Konsolen-Variablen geändert, hinzugefügt oder entfernt. Die Konsolen-Variablen sv_cheats muss komplett aus der server.cfg entfernt werden, da ansonsten Probleme im Spiel auftreten können. Bestimmte Einstellungen können durch das Matchmaking-System anscheinend nicht mehr richtig gesetzt werden. Hier ist ein Beispiel für eine komplette server.cfg:
Befehle / Variablen
hostname "L4D Server by www.ckras.com" // Servernamen festlegen rcon_password "xxxxxxxx" // Rcon-Passwort setzen sv_gametypes "coop,versus,survival" // Mit der cvar sv_gametypes wird festgelegt welche Spiel-Typen zulaessig sind. // // coop = Kampagne mit 4 Spielern // versus = Versus-Modus mit 8 Spielern // survival = Survival-Mods mit 4 Spielern sv_search_key ""// Setzt einen Schluesselwort, mit dem der Spieler als Lobbyanfuehrer // automatisch mit den anderen Spielern aus der Lobby auf den Server mit diesem Schluessel joint. // Der Server muss zum Zeitpunkt der Suche leer sein und beim Master-Server eingetragen sein.
sv_steamgroup "" // Der Server wird mit dieser Cvar einer Steam-Gruppe zugeordnet. Die ID, bestehend aus Zahlen, // kann im Administrationspannel der Steam-Gruppe eingesehen werden. // Spieler, die sich in der gleichen Steam-Gruppe befinden, bekommen den Server // im Spiel automatisch angezeigt. Mehrere Steam-Gruppen können auch genutzt werden. // Die Steam-Gruppen werden dann mit einem Komma getrennt. // Es koennen auch mehrere Server in der gleichen Steam-Gruppe sein.
sv_steamgroup_exclusive 0 // Wenn der Server einer Steam-Gruppe zugewiesen ist, kann mit dieser Cvar festgelegt werden, // ob auch Spieler die sich nicht in der Steam-Gruppe des Server befinden, auf den Server joinen koennen. // Befinden sich Spieler auf dem Server, können auch Spieler, // die sich nicht in der Steam-Gruppe befinden, auf den Server nachjoinen. // // 0 = Es duerfen alle Spieler auf den Server joinen. (Standard) // 1 = Es duerfen nur Spieler auf den leeren Server joinen, die sich nicht in der Steam-Gruppe befinden.
sv_password "deinpassword" // Setzt ein Passwort. Es muss dafuer das direkte Verbinden mit dem Server erlaubt sein. // Damit das Setzen des Passworts funktioniert, muss die cvar sv_allow_lobby_connect_only auf 0 stehen.
sv_allow_lobby_connect_only 1 // Erlaubt das direkte Verbinden mittels connect auf den Server. // 0 = Die direkte Verbindung durch den Befehl connect wird zugelassen. Dies betrifft auch HLSW. // 1 = Verbindung nur durch die Lobby.
map mapname [coop|versus|survival]
Beispiel:
map l4d_vs_smalltown01_caves versus
Der Befehl kickt wie bei allen anderen SourceGames die Spieler vom Server. Der Befehl changelevel kann leider nicht verwendet werden, um den Modus zu ändern. Maps sortiert nach Spieltypen Coop
l4d_hospital01_apartment l4d_farm01_hilltop l4d_airport01_greenhouse l4d_smalltown01_caves
Versus
l4d_vs_hospital01_apartment l4d_vs_farm01_hilltop l4d_vs_airport01_greenhouse l4d_vs_smalltown01_caves
Survival
Es sind noch nicht alle Maps eingetragen.
l4d_hospital02_subway l4d_vs_hospital05_rooftop l4d_farm02_traintunnel l4d_airport02_offices l4d_smalltown04_mainstreet l4d_vs_smalltown05_houseboat l4d_sv_lighthouse
Banner
Es wird im Spiel ein Server-Banner von „Left 4 Dead“ angezeigt. Dieser kann geändert werden. Zu bearbeitende Datei: ./left4dead/host.txt Größe des Banners: 500 x 100 bis 673 x 135 (bei verschiedenen Größen wird der Banner unterschiedlich groß angezeigt) Für die Anzeige eines eigenen Banners, muss Webspace vorhanden sein. Man kann direkt eine URL zum Banner angeben oder eine html-Datei mit dem Bild erstellen. Der Weg mit der html-Datei ist der elegantere Weg. Beispiel einer host.txt:
http://sourceserver.info/l4d-serverbanner.htm
Mit einem Trick kann man die Größe automatisch an die Auflösung anpassen. Das Bild wird, wenn es zu groß ist, sogar verkleinert. Beispiel von l4d-serverbanner.htm auf dem Webspace:
<html> <head> <style type="text/css"> html, body { background: black; margin:0px; padding:0px; border-style:none} .img { width: 100%; height: 100%;} </style> </head> <body scroll=no> <img src="http://sourceserver.info/l4d.jpg" class="img" border="0" /> </body> </html>
Message of the Day
Das Format der Datei modt.txt hat sich geändert. Zu bearbeitende Datei: ./left4dead/motd.txt Die Datei kann wie bei den anderen Modifikationen direkt als HTML-Code abgespeichert werden. Es ist aber auch möglich wie beim Banner einen Link zu einer Seite anzugeben. Start-Befehl
Unter Linux:
./srcds_run -game left4dead -port 27015 -fork 1 +map l4d_hospital01_apartment +mp_gamemode coop
Unter Windows:
srcds.exe -console -game left4dead -port 27015 +map l4d_hospital01_apartment +mp_gamemode coop
Durch das Matchmaking-System werden die Server automatisch für „coop“, „versus“ oder „survival“ eingerichtet. Es kann über die Konsolen-Variable mp_gamemode bestimmt werden, welcher Spielmodus läuft. Als Startparameter für die erste Map, kann +mp_gamemode wie im Beispiel hinzugefügt werden. Netconsole (Telnet)
Mit dieser neuen Funktion hat man über Telnet direkten Zugriff auf die Konsole. Die Funktion kann mit -netconport 9000 aktiviert werden. Die Zahl gibt den Port an. Da so jeder Fremde mit Kenntnis des Ports Zugriff auf den Server hat, kann man die Konsole auch mit einem Passwort schützen. Mit dem Parameter -netconpassword xxx lässt sich die Konsole mit einem Passwort schützen. Die Konsole führt solange keine Befehle aus, bis der Befehl PASS xxx eingegeben wird. Aufbau einer Verbindung
Die Verbindung kann mit einem Telnet-Client aufgebaut werden. Unter Windows ist ein Telnet-Client Implementiert. Über Start > Ausführen > cmd > ok > telnet ServerIP Port kann eine Verbindung zum Server aufgebaut werden. Falls man die Verbindung über Putty aufbauen will, muss die Übertragungsart auf RAW gestellt werden. Passwort
Falls ein Passwort vom Serveradmin definiert wurde, muss als erstes PASS dasPasswort eingegeben werden. Danach steht die Konsole zur Verfügung. forking
Unter Linux kann der Server mehrere Instanzen starten, die dann auf gleiche nur lesbare Speicherbereiche zugreifen. Durch diese Technik wird der Speicherbedarf gesenkt. Die Instanzen des Servers starten nach Abstürzen automatisch neu. Im Startparameter kann die Raute verwendet werden, um an dieser Stelle für die einzelnen Instanzen Zahlen einzusetzen. Für jede Instanz wird der Zahl um eins inkrementiert.
Zum besseren Verständnis sollten folgende Begriffe bekannt sein: Parent: Ein Prozess, der gestartet wird und weitere Childprozesse startet. In diesem Fall ist der Parent der Prozess, der die Instanzen der Server startet. Der Parent selber ist kein Server. Es lässt sich aber dennoch eine Verbindung zum Parent aufbauen, um die Childs zu verwalten. Child: Ein Childprozess, welcher durch den Parent gestartet wird. Beim Forking sind dies die Instanzen der Server auf denen gespielt werden kann. Start-Befehl
./srcds_run -console -fork 4 -game left4dead -port 27015 -maxplayers 4 +map l4d_dem_hospital01_apartment +exec fork_cfg##.cfg +motdfile fork_motd##.txt +hostfile fork_host##.txt
In diesem Fall wird der Server mit 4 Instanzen gestartet. Der Port wird für die erste Instanz verwendet. Die anderen Instanzen bekommen den Port 27015+n zugewiesen. Die 3. Instanz würde dann den Port 27017 belegen. Für jede Instanz wird die fork_cfg##.cfg ausgeführt. Für die Raute wird automatisch die Nummer der Instanz eingesetzt. Sie beginnt bei eins. Es darf aber nie mit Raute angefangen werden. Der Befehl +exec ##.cfg würde nicht funktionieren. Für die erste Instanz wird dann z.B. ./left4dead/cfg/fork_cfg1.cfg ausgeführt. Es wird bei diesem Beispiel dennoch die server.cfg ausgeführt. Deswegen ist es ratsam dort nur Einstellungen festzulegen, die jeden Server betreffen sollen. Den Befehl servercfgfile gibt es leider nicht mehr. Zusätzlich wird die motd.txt und host.txt für jede Instanz gesetzt. Es können so für die Instanzen unterschiedliche Message of the day und Serverbanner angezeigt werden. Befehle zu Steuerung
Die Befehle müssen an den Parent 4) per Telnet gesendet werden. Der Parent belegt in diesem Beispiel den Port 9000. Befehl Bedeutung status Status aller Instanzen wird angezeigt. shutdown Server werden beendet wenn alle Spiele fertig sind. broadcast <Befehl> Führt einen Befehl bei allen Instanzen des Servers aus. Netconsole
Werden mehrere Instanzen eines Servers durch das neue forking gestartet, hat man die Wahl nur für den Parent 5) eine Netconsole zu starten oder für den Parent und all seine Childs. Netconsole für alle Server
Hier wird auf dem Parent die Netconsole auf dem Port 9000 gestartet. Alle weiteren Instanzen werden mit 9001, 9002, 9003, usw. gestartet. Auf dem Parent sind nur die 3 Befehle verfügbar.
-netconsole 90##
Netconsole für den Parent
Hier wird auf dem Parent die Netconsole auf dem Port 9000 gestartet. Es sind nur die 3 Befehle verfügbar.
-netconsole 9000
Watchdog (Wachhund)
Der Watchdog überwacht den Server und startet ihn neu, wenn nach 5 Sekunden keine Reaktion vom Server ausgeht. Bei non-forked Server 6) wird der Server neugestartet. In Verbindung mit einem Restart-Script oder der Funktion autoupdate kann das ganz nützlich sein. Bei forked Server 7) wird die Instanz beendet und eine neue Instanz gestartet. Diese Überwachungsfunktion kann aber auch z.B. bei langen Ladezeiten bei Maps ggf. zu Problemen führen. Deaktivieren lässt sich die Überwachungsfunktion mittels -nowatchdog im Startparameter. Verschiedene Typen des Servers
Das sich durch das Matchmaking-System vieles geändert hat, kann man sich nur über Umwege direkt mit dem Server verbinden. Es gibt 3 verschiedene Arten des Servers. Bei unseren Beispielen verwenden wir die Datei server.cfg für die Einstellungen, da diese nach jedem Mapchange geladen wird. Nach einer frischen Installation befindet sich keine server.cfg im Verzeichnis ./left4dead/cfg/. Diese kann mit einem gewöhnlichem Texteditor erstellt werden. Öffentlicher Server
Dieser Server ist über das Matchmaking-System erreichbar server.cfg
// Servername hostname "Sourceserver.info"
// Passwort für rcon rcon_password "xxx"
Öffentlicher Server mit Steam-Gruppen
Dieser Server ist über das Matchmaking-System erreichbar. Zusätzlich ist er in einer vom Server-Admin definierten Steam-Gruppe/n direkt sichtbar. Spieler, die in der gleichen Steam-Gruppe befinden, können den Server direkt auswählen. server.cfg
// Servername hostname "Sourceserver.info"
// Passwort für rcon rcon_password "xxx"
// Steam-Gruppe sv_steamgroup "xxxx"
Die ID der Steamgruppe ist im Admin-Panel der jeweiligen Gruppe einsehbar. Sie steht oben an erster Stelle (ID: 12345) Privater Server mit Steam-Gruppen
Dieser Server ist nur über eine vom Server-Admin definierte Steam-Gruppe/n sichtbar. Spieler, die sich in der gleichen Steam-Gruppe befinden, können den Server sehen und direkt auswählen. Erst nachdem der Server einen Spieler aus der Steam-Gruppe auf den Server gekommen ist, wird der Server für das Matchmaking-System freigegeben und andere Spieler können auf den Server kommen. server.cfg
// Servername hostname "Sourceserver.info"
// Passwort für rcon rcon_password "xxx"
// Steam-Gruppe sv_steamgroup "xxxx"
// Exklusiv nur für die Steamgruppe sv_steamgroup_exclusive 1
Die ID der Steamgruppe ist im Admin-Panel der jeweiligen Gruppe einsehbar. Sie steht oben an erster Stelle (ID: 12345).
Erklärung zu sv_steamgroup_exclusive: Wert Erklärung 0 Funktion ist abgeschaltet. Der Server ist ggf. für die Steam-Gruppe sichtbar und für das Matchmaking-System verfügbar. 1 Auf dem Server können nur Spieler joinen, die sich in der Steam-Gruppe des Servers befinden. Halb privater Server
Möchte man als Spieler sich nur mit eigenen Server verbinden, kann die Funktion sv_search_key genutzt werden. Der Serveradmin kann mit der Konsolen-Variable sv_search_key einen Schlüssel setzen, den ein Lobby-Anführer oder Spieler in der Konsole gesetzt haben muss. Spieler, die den Schlüssel Clientseitig mit der gleichen Konsolen-Variable setzen, finden über das Matchmaking-System nur noch Server mit diesem Schlüssel. Spieler ohne diesen Schlüssel können nur direkt auf den Server joinen oder einem bereits laufenden Spiel nachjoinen. Wenn das Spiel aus einer Lobby heraus gestartet wird, muss nur der Lobby-Anführer den sv_search_key setzen. Der Spieler oder Lobby-Anführer muss vorher die Konsole aktivieren, da diese Funktion nicht in die GUI eingebaut ist. Ist Serverseitig sv_search_key gesetzt, sind die Funktionalitäten der Steam-Gruppen deaktiviert. Voraussetzungen
Es müssen bestimmte Bedingungen erfüllt sein, damit die Suche mittels sv_search_key funktioniert.
sv_search_key funktioniert nur, wenn die Konsolen-Variablen sv_steamgroup nicht gesetzt ist. Der Server darf nicht mit einem Passwort gesichert sein.
server.cfg
// Servername hostname "Sourceserver.info"
// Passwort für rcon rcon_password "xxx"
// Schlüssel sv_search_key "xxxx"
Tipps für die Spieler
Um es sich als Clan oder Gruppe mit seinem L4D-Server so einfach wie möglich zu machen, kann eine autoexec.cfg im Verzeichnis steamapps\common\left 4 dead\left4dead\cfg bei allen Mitgliedern mit folgendem Inhalt erstellt werden:
sv_search_key "key_vom_eigenen_server"
Ein Spieler des Clans bzw. der Gruppe kann so problemlos eine Lobby eröffnen ohne vorher manuell den sv_search_key eintragen zu müssen. Es joinen alle aus der Lobby auf den Server, vorausgesetzt er ist nicht belegt. Es können auch mehrere Server den gleichen. Bei mehreren Servern mit dem gleichen Schlüssel wird automatisch der nächst freie Server gewählt. Passwortgeschützter Server
Der Server lässt sich mit der Konsolen-Variablen sv_password „xxx“ schützen. Dies kann mit den 3 anderen Serverarten kombiniert werden. Die Konsolen-Variablen kann über den Startparameter mit +sv_password „xxx“ übergeben werden. Ein Eintrag in der server.cfg oder autoexec.cfg ist aber der bessere Weg. Das Setzen des Passworts funktioniert aber nur, wenn zuvor sv_allow_lobby_connect_only auf „0“ gesetzt wurde. Server zur Serverliste hinzufügen
Es wird im Steampowered-Forum beschrieben, dass man den Server mit setmaster add zur Serverliste hinzufügen kann. Der Server wird im Normalfall ohne die zwei Einträge automatisch zur Serverliste hinzugefügt. Wer dennoch den Server zur Serverliste manuell hinzufügen möchte, kann die beiden Einträge zur server.cfg hinzufügen:
setmaster add 68.142.72.250:27011 setmaster add 72.165.61.189:27011
Custommaps
Seit dem Update vom 25.06.2009 wurde ein neues System eingeführt, mit dem es möglich ist die Custommaps mit allen anderen benötigten Dateien in eine .vpk-Datei zu packen. Die .vpk-Dateien können auch mehrere Maps enthalten. Die Mapautoren können auch eine Beschreibung hinzufügen. Bei dieser Methode wird kein Fastdownload benötigt, da in der .vpk-Datei eine URL für den direkten Download der Map enthalten ist. Will ein Spieler einem Freund nachjoinen und dieser die Map nicht besitzt, wird ein Dialog geöffnet, mit dem man den Download der Datei über den Webbrowser starten kann. Diese muss nach dem Download nur einmal angeklickt werden, damit diese Lokal beim Spieler installiert wird.
Damit auf einem Server die Kampagnen gespielt werden können, muss die .vpk-Datei nach l4d/left4dead/addons kopiert werden. Nach einem Neustart sind die neuen Kampagnen verfügbar. Mit dem Befehl update_addon_paths;mission_reload sind die neu hinzugefügten Kampagnen auch sofort ohne Neustart verfügbar.
Hier eine Liste an Quellen, über die Maps bzw. Kampagnen bezogen werden können:
http://l4dmapdb.wikidot.com/ http://www.fpsbanana.com/maps/games/222 http://www.l4dmaps.com/
Administration
Es gibt drei Wege den Server zu administrieren:
Ohne Plugins kann wie bei allen bekannten SourceMods der Server über das RCON-Protokoll gesteuert werden. Es kann mit telnet eine Verbindung zu Netconsole aufgebaut werden. Mithilfe von Plugins lässt sich der Server im Spiel auch bequem über Menüs steuern.
Plugins Plugin Version Funktioniert Bemerkung Metamod: Source 1.7.1 ja Unterstützt jetzt alle Versionen bis auf L4D2 der SourceEngine SourceMod 1.2.4 ja Mani-Admin-Plugin 1.2T nein BeetlesMod L4D_1A ja Kommentar vom Entwickler: Heres a mini Left4Dead admin plugin. just has kick, ban, permanantban EventScripts 2.x ja Rcon
Der größte Teil der Befehle und Konsolen-Variablen, die bei der OrangeBox-Engine bekannt sind, funktionieren auch bei dem L4D-Server. Handelt es sich um einen gefokten Server und dieser soll neugestartet werden kann man das mittels sv_cheats 1; sv_crash erreichen. Netconsole
Mit der Außnahme des Parents8) ist die Administration über die Netconsole ist identisch mit der Administration über die Remote-Console.