wgs./w@Lly
Punkbuster How To: Grundsätzliches
Als erstes schauen wir uns den Punkbuster-Ordner, der sich beim patchen "mitinstalliert", näher an.
Punkbuster – Ordnerstruktur
Der Punkbusterordner "pb" findet sich unter dem Pfad C:\Programme\Activision\Call of Duty 2\ (C: sei hier nur als Beispiel genannt).
Bei einer ordnungsgemäßen, frischen Installation von Punkbuster findet man i.d.R. folgende Struktur vor:
Der Ordner "pb" besteht aus Dateien und Unterodnern mit weiteren Dateien. Während der Laufzeit des Servers bzw. von Punkbuster ist es völlig normal, dass sich Dateien verändern und Neue hinzukommen.
Aber was sind nun diese Dateien?
Die zwei wichtigsten *.cfg Dateien für den Admin sind die „pbsv.cfg“ und die „pbsvuser.cfg“. Diese beiden Dateien werden, ähnlich der autoexec_mp.cfg bei CoD, automatisch beim Start des Servers geladen und ausgeführt. In der „pbsv.cfg“ werden sämtliche Einstellungen vorgenommen, in der „pbsvuser.cfg“ sind MD5Tool Einstellungen enthalten auf die später noch eingegangen wird.
********
Neben diesen Dateien gibt es auch noch Unterorder um die Übersichtlichkeit zu gewährleisten.
Grundlegendes über Punkbuster
Um Punkbuster zu aktivieren, muss dies direkt beim Starten des Servers geschehen. Hierfür dient der Befehl "+set sv_punkbuster 1", welcher beim Starten an die Verknüpfung bzw. an den Startbefehl gehängt werden muss. Alternativ kann man diesen Befehl auch in der Start-*.cfg des Servers integrieren.
Einmal aktiviert, lässt sich Punkbuster nicht wieder deaktivieren ohne den Server auszuschalten. Dies ist wohl eine Sicherheitsmaßnahme, damit Cheater gar nicht erst die Chance haben den Server zu hacken.
Die serverseitige Steuerung
Grundsätzlich gibt es verschiedene Möglichkeiten um den Serverteil des Punkbusters zu steuern. Die benötigten Befehle und Einstellungen können entweder in die *.cfg Dateien (s.o.) geschrieben oder für kurzfristige Änderungen und Überprüfungen ingame direkt in die Konsole eingegeben werden. Auch Tools wie z.B. HLSW oder der MiniAdmin können für solch kurzfristige Abfragen genutzt werden.
Ingame muss man darauf achten, sich vorher mit "/rcon login <password>" einzuloggen (anstatt <password> das entsprechende eigene RCon Passwort eingeben) und vor jeden nachfolgenden Befehl "/rcon" zu setzen. Dies dient der "Fernsteuerung" des Servers.
Damit man die angezeigten Meldungen sehen kann, sollte man für jegliche Aktionen immer die große Konsole öffnen mit [SHIFT]+[^]
Punkbuster-Befehle (für Server) erkennt man daran, dass sie immer mit "pb_sv_" anfangen und die Rückmeldung unter Normaleinstellungen gelb ist.
Als Beispiel der Befehl: "pb_sv_ver": Hiermit wird angefragt, welche Version von Punkbuster auf dem Server läuft; der Server meldet dann in gelb zurück, welche Version gerade in Betrieb ist.
Ingame muss man dazu die Befehlszeile "/rcon pb_sv_ver" in die Konsole eingeben. Dann kommt folgende Meldung:
(Bitte zum Screenshot beachten: in der Zeile "/rcon login" muss noch das entsprechende Passwort geschrieben werden; wurde aus Sicherheitsgründen hier entfernt).
Die Zahlen in den Klammern der gelben Zeile zeigen die gerade laufende Punkbuster-Version an. Die erste Zahl bezieht sich auf die Server-Version, die letzte auf die Clienten-Version, die aktuell auf dem Server gültig sind.
Jeder Punkbuster-Befehl (sowohl Server- als auch Clientseitig) erzeugt fast immer eine Rückgabe, auch wenn der Befehl ungültig ist, wie z.B. hier:
Zum Screenshot: Punkbuster konnte den Befehl nicht ausführen, da er die config test.cfg nicht gefunden hat.
Gibt man einen falsch geschriebenen Befehl ein (z.B. durch einen Tippfehler) oder wenn man nicht via /rcon eingeloggt ist, erfolgt gar keine Reaktion seitens des Server-Punkbuster. Erhält man keinen gelben, bestätigenden Eintrag in die Konsole, einfach den Befehl überprüfen und neu eingeben.
Hat man einige Einstellungen des Punkbusters in einer cfg verankert, kann man diese recht simpel mit einem Befehl vom Server ausführen lassen:
"pb_sv_load namederdatei.cfg".
Dieser ähnelt dem "/exec" Befehl und dient dazu, *.cfg Dateien im PB-Ordner auszuführen.
So kann man unterschiedliche cfgs erstellen, im pb-Ordner hinterlegen und je nach Bedarf ausführen.
Dies macht Sinn zB bei gleichzeitiger Nutzung des Servers als Public und War-Server, da zum einen die diversen Ligen unterschiedliche Settings des Punkbusters vorschreiben und man zum anderen diese restriktiven „schneller-höher-weiter“-Einstellungen vielleicht nicht unbedingt auch public laufen lassen möchte.
Sollte die angewählte *.cfg Datei nicht existieren, wird auch hier eine Fehlermeldung zurückgegeben:
Ist die Datei vorhanden, wird diese aufgerufen, und die einzelnen Einstellungen angezeigt.
Will man lediglich erfahren, wie der jeweilige Wert einer Punkbustervariable oder eines Punkbusterbefehls ist, gibt man einfach dessen Name ohne jegliche Parameter ein. Als Rückgabe erhält man den eingestellten Wert dieser Variable und eventuelle Hinweise:
Erklärung zum Screenshot: In diesem Beispiel wird abgefragt, ob die Funktion der Automatischen Screenshots eingeschaltet ist. Ergebnis: JA.
********
Serverabfragen für Nicht-Admins (Spieler)
Als Spieler (Client) ohne Admin-Rechte kann man jedoch ebenfalls bestimmte Einstellungen des Punkbusters abfragen, damit man sich ein Bild verschaffen kann wie der jeweilige Server eingestellt ist auf dem man sich gerade befindet.
Auch die Abfrage der (verkürzten) PB-Guids der anderen Spieler auf dem Server ist möglich und deren Dokumentation wird von Ligen sogar als Beweismittel vorgeschrieben.
Den Clientteil erkennt man daran, dass die Rückmeldung vom Punkbuster blau ist.
Einige Befehle, die den Clientteil von Punkbuster betreffen, gibt man mit "pb_" ein anstatt mit "pb_sv_" (sv steht für "server").
Als Beispiel nachfolgend die Abfrage der letzten 8 Ziffern der PB-Guids von Spielern, die sich gerade ebenfalls auf dem Server befinden:
Damit kann man auch seine eigene Guid feststellen, die man in Ligen angeben muss um mitspielen zu können. Außerdem kann man mit dieser Guid Einträge z.B. bei punksbusted.com überprüfen oder nachschauen, ob jemand mit seiner PB-Guid auf der Master Bann List von PsB steht.
Welche unterschiedlichen Befehle und Einstellungen es sowohl für den Server-Admin als auch für Spieler gibt, kann man hier nachlesen: Punkbuster – Befehlsliste (.pdf-Datei ohne Anspruch auf Vollständigkeit!!)
********
Ein sehr wichtiger Angelpunkt von Punkbuster ist die sogenannte CVAR-Liste. Diese ist entscheidend für eine korrekte Funktionsweise von Punkbuster und findet sich unter Teil 3: Die CVAR-Liste
********
(c) 2007 - w@Lly’ (http://www.opferlamm-clan.de) ,
Mit freundlicher Genehmigung von Karol Babioch ~ Achtung: kein Kopieren/Weiterverwenden ohne Rücksprache!
Email an wally[at]opferlamm-clan.de oder via xfire: scheuselchen
Als erstes schauen wir uns den Punkbuster-Ordner, der sich beim patchen "mitinstalliert", näher an.
Punkbuster – Ordnerstruktur
Der Punkbusterordner "pb" findet sich unter dem Pfad C:\Programme\Activision\Call of Duty 2\ (C: sei hier nur als Beispiel genannt).
Bei einer ordnungsgemäßen, frischen Installation von Punkbuster findet man i.d.R. folgende Struktur vor:
Der Ordner "pb" besteht aus Dateien und Unterodnern mit weiteren Dateien. Während der Laufzeit des Servers bzw. von Punkbuster ist es völlig normal, dass sich Dateien verändern und Neue hinzukommen.
Aber was sind nun diese Dateien?
- Bei Dateien mit Endungen wie *.dll oder auch *.so (für Mac bzw. Linux) handelt es sich um Systemdateien von Punkbuster. Diese können und dürfen nicht verändert oder gelöscht werden, da sich dies gegen die Endbenutzerlizenz (EULA) richten würde, in die man mit der Installation des Programms eingewilligt hat. Außerdem würde dies sowieso nur zu Fehlfunktionen von PB führen.
- Dateien mit einer *.db Endung sind Punkbuster Datenbankdateien. Diese werden von Punkbuster automatisch verwaltet, und werden im Falle der Veränderung bzw. Löschung neu erstellt. Die Inhalte dieser Dateien kommen vom Punkbuster Master-Server des betreffenden Spiels. Das Verändern dieser Dateien kann dazu dazuführen, dass PB anders reagiert als vorgesehen.
- Dateien mit der Endung *.dat sind Dateien mit Punkbuster-Daten. In solchen Dateien findet man z.B. die Punkbuster-Bannliste, oder der Name der letzen Screenshots bzw. Logfiles. Auch diese Dateien sollten nicht verändert werden.
- Bei Dateien mit der Endung *.log handelt es sich um Punkbuster Logdateien. Hier werden Informationen gesammelt, die während des Betriebs von Punkbuster entstehen. Wichtige Aktivitäten werden hier automatisch festgehalten und können hin und wieder aufgeräumt werden.
- Dateien mit *.htm Endung sind eine spezielle Form von Logdateien, die dazu konzipiert worden sind um sie in Browsern (IE, Firefox, etc) zu betrachten.
- Dateien mit der *.cfg Endung sind Punkbuster-Konfigurationdateien. Dies ist die wichtigste Eingriffsmöglichkeit für den Admin da hier alle Einstellungen vorgenommen und gespeichert werden. Sie können entweder automatisch oder manuell (z.B. über /exec) geladen werden.
Die zwei wichtigsten *.cfg Dateien für den Admin sind die „pbsv.cfg“ und die „pbsvuser.cfg“. Diese beiden Dateien werden, ähnlich der autoexec_mp.cfg bei CoD, automatisch beim Start des Servers geladen und ausgeführt. In der „pbsv.cfg“ werden sämtliche Einstellungen vorgenommen, in der „pbsvuser.cfg“ sind MD5Tool Einstellungen enthalten auf die später noch eingegangen wird.
********
Neben diesen Dateien gibt es auch noch Unterorder um die Übersichtlichkeit zu gewährleisten.
- "htm": Dieser Ordner enthält Dateien, die während des automatischen Updates von Punkbuster enstehen.
- "dll": Hier sind verschiedene Punkbustersystemdateien, die während der Laufzeit und der Updates enstehen enthalten.
- "svlogs": In diesem Ordner werden die Logfiles gespeichert, die oben angesprochen worden sind. Er wird generiert sobald Punkbuster in Betrieb ist und Log-Daten anfallen.
- "svss" Dort finden sich die Screenshots, welche PB während seiner Laufzeit von den Spielern aufnimmt. Auch dieser wird automatisch angelegt sobald die ersten Spieler auf dem Server drauf sind.
Grundlegendes über Punkbuster
Um Punkbuster zu aktivieren, muss dies direkt beim Starten des Servers geschehen. Hierfür dient der Befehl "+set sv_punkbuster 1", welcher beim Starten an die Verknüpfung bzw. an den Startbefehl gehängt werden muss. Alternativ kann man diesen Befehl auch in der Start-*.cfg des Servers integrieren.
Einmal aktiviert, lässt sich Punkbuster nicht wieder deaktivieren ohne den Server auszuschalten. Dies ist wohl eine Sicherheitsmaßnahme, damit Cheater gar nicht erst die Chance haben den Server zu hacken.
Die serverseitige Steuerung
Grundsätzlich gibt es verschiedene Möglichkeiten um den Serverteil des Punkbusters zu steuern. Die benötigten Befehle und Einstellungen können entweder in die *.cfg Dateien (s.o.) geschrieben oder für kurzfristige Änderungen und Überprüfungen ingame direkt in die Konsole eingegeben werden. Auch Tools wie z.B. HLSW oder der MiniAdmin können für solch kurzfristige Abfragen genutzt werden.
Ingame muss man darauf achten, sich vorher mit "/rcon login <password>" einzuloggen (anstatt <password> das entsprechende eigene RCon Passwort eingeben) und vor jeden nachfolgenden Befehl "/rcon" zu setzen. Dies dient der "Fernsteuerung" des Servers.
Damit man die angezeigten Meldungen sehen kann, sollte man für jegliche Aktionen immer die große Konsole öffnen mit [SHIFT]+[^]
Punkbuster-Befehle (für Server) erkennt man daran, dass sie immer mit "pb_sv_" anfangen und die Rückmeldung unter Normaleinstellungen gelb ist.
Als Beispiel der Befehl: "pb_sv_ver": Hiermit wird angefragt, welche Version von Punkbuster auf dem Server läuft; der Server meldet dann in gelb zurück, welche Version gerade in Betrieb ist.
Ingame muss man dazu die Befehlszeile "/rcon pb_sv_ver" in die Konsole eingeben. Dann kommt folgende Meldung:
(Bitte zum Screenshot beachten: in der Zeile "/rcon login" muss noch das entsprechende Passwort geschrieben werden; wurde aus Sicherheitsgründen hier entfernt).
Die Zahlen in den Klammern der gelben Zeile zeigen die gerade laufende Punkbuster-Version an. Die erste Zahl bezieht sich auf die Server-Version, die letzte auf die Clienten-Version, die aktuell auf dem Server gültig sind.
Jeder Punkbuster-Befehl (sowohl Server- als auch Clientseitig) erzeugt fast immer eine Rückgabe, auch wenn der Befehl ungültig ist, wie z.B. hier:
Zum Screenshot: Punkbuster konnte den Befehl nicht ausführen, da er die config test.cfg nicht gefunden hat.
Gibt man einen falsch geschriebenen Befehl ein (z.B. durch einen Tippfehler) oder wenn man nicht via /rcon eingeloggt ist, erfolgt gar keine Reaktion seitens des Server-Punkbuster. Erhält man keinen gelben, bestätigenden Eintrag in die Konsole, einfach den Befehl überprüfen und neu eingeben.
Hat man einige Einstellungen des Punkbusters in einer cfg verankert, kann man diese recht simpel mit einem Befehl vom Server ausführen lassen:
"pb_sv_load namederdatei.cfg".
Dieser ähnelt dem "/exec" Befehl und dient dazu, *.cfg Dateien im PB-Ordner auszuführen.
So kann man unterschiedliche cfgs erstellen, im pb-Ordner hinterlegen und je nach Bedarf ausführen.
Dies macht Sinn zB bei gleichzeitiger Nutzung des Servers als Public und War-Server, da zum einen die diversen Ligen unterschiedliche Settings des Punkbusters vorschreiben und man zum anderen diese restriktiven „schneller-höher-weiter“-Einstellungen vielleicht nicht unbedingt auch public laufen lassen möchte.
Sollte die angewählte *.cfg Datei nicht existieren, wird auch hier eine Fehlermeldung zurückgegeben:
Ist die Datei vorhanden, wird diese aufgerufen, und die einzelnen Einstellungen angezeigt.
Will man lediglich erfahren, wie der jeweilige Wert einer Punkbustervariable oder eines Punkbusterbefehls ist, gibt man einfach dessen Name ohne jegliche Parameter ein. Als Rückgabe erhält man den eingestellten Wert dieser Variable und eventuelle Hinweise:
Erklärung zum Screenshot: In diesem Beispiel wird abgefragt, ob die Funktion der Automatischen Screenshots eingeschaltet ist. Ergebnis: JA.
********
Serverabfragen für Nicht-Admins (Spieler)
Als Spieler (Client) ohne Admin-Rechte kann man jedoch ebenfalls bestimmte Einstellungen des Punkbusters abfragen, damit man sich ein Bild verschaffen kann wie der jeweilige Server eingestellt ist auf dem man sich gerade befindet.
Auch die Abfrage der (verkürzten) PB-Guids der anderen Spieler auf dem Server ist möglich und deren Dokumentation wird von Ligen sogar als Beweismittel vorgeschrieben.
Den Clientteil erkennt man daran, dass die Rückmeldung vom Punkbuster blau ist.
Einige Befehle, die den Clientteil von Punkbuster betreffen, gibt man mit "pb_" ein anstatt mit "pb_sv_" (sv steht für "server").
Als Beispiel nachfolgend die Abfrage der letzten 8 Ziffern der PB-Guids von Spielern, die sich gerade ebenfalls auf dem Server befinden:
Damit kann man auch seine eigene Guid feststellen, die man in Ligen angeben muss um mitspielen zu können. Außerdem kann man mit dieser Guid Einträge z.B. bei punksbusted.com überprüfen oder nachschauen, ob jemand mit seiner PB-Guid auf der Master Bann List von PsB steht.
Welche unterschiedlichen Befehle und Einstellungen es sowohl für den Server-Admin als auch für Spieler gibt, kann man hier nachlesen: Punkbuster – Befehlsliste (.pdf-Datei ohne Anspruch auf Vollständigkeit!!)
********
Ein sehr wichtiger Angelpunkt von Punkbuster ist die sogenannte CVAR-Liste. Diese ist entscheidend für eine korrekte Funktionsweise von Punkbuster und findet sich unter Teil 3: Die CVAR-Liste
********
(c) 2007 - w@Lly’ (http://www.opferlamm-clan.de) ,
Mit freundlicher Genehmigung von Karol Babioch ~ Achtung: kein Kopieren/Weiterverwenden ohne Rücksprache!
Email an wally[at]opferlamm-clan.de oder via xfire: scheuselchen