1. GSManager
    1. Funktionen
    2. Unterstützte Spiele
    3. Neuigkeiten
    4. Statistiken
    5. Serverliste
  2. Lexikon
  3. Filebase
  4. Entwicklung
  5. Forum
    1. Dashboard
    2. Unerledigte Themen
  6. Web-Interface
  7. Artikel
  8. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  • Anmelden
  • Registrieren
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Artikel
  • Seiten
  • Dateien
  • Forum
  • Lexikon
  • Erweiterte Suche
  1. GSManager
  2. Forum
  3. Unterstützung
  4. Benutzung

Kleine Frage

  • Hallo
  • 27. Mai 2010 um 15:53
Das Projekt GSManager (vormals ManuAdminMod) wurde am 01.01.2020 eingestellt - diese Internetpräsenz bleibt verfügbar, die Software wird aber nicht länger gepflegt. Vielen Dank für eure Unterstützung in den mehr als zehn vergangenen Jahren!
1. offizieller Beitrag
  • Hallo
    Anfänger
    Punkte
    50
    Beiträge
    8
    • 27. Mai 2010 um 15:53
    • #1

    Hallo Leute ;),


    ich glaube ihr hättet es nicht gedacht aber ich habe eine kleine Frage ;).


    Also auf unserem Server Läuft kein Punkbuster, sondern nur der MAM. Und zwar würde ich gerne wissen wie ich Leute Bannen kann die nicht momentan auf unserem Server Spielen so das ich Sie z.B. per ID bannen könnte, sonder das ich nur von Logs Ihre Ip und Ihren Guid habe. Sobald ich weis gibts keinen Befehl um Ips bzw. Guids ohne Punkbuster zu Bannen deshalb wollte ich Fragen ob man z.B. in der Admin.cfg eine Benutzer Gruppe "Feind" anlegen kann inder die besagten Spieler beim nächsten Connecten automatisch Gebannt bzw. Gekickt werden und wie sowas aussehen würde.


    mfg Hallo

  • Luk
    Profi
    Punkte
    7.415
    Trophäen
    3
    Beiträge
    1.448
    • 27. Mai 2010 um 16:01
    • #2

    Hallo Hallo! xD

    Falls ihr keine Mods nutzt, kannst du das einfach in der "ban.txt" machen, indem du dort die GUID des Spielers einfügst, der gebannt sein soll.

    Eine GUID pro Zeile.

    Einmal editiert, zuletzt von Luk (27. Mai 2010 um 16:01)

  • Frazze
    Anfänger
    Punkte
    870
    Trophäen
    1
    Beiträge
    162
    • 27. Mai 2010 um 16:56
    • #3

    Tjoa, so was ähnliches hatte ich auch mal gefragt, also einen !getip befehl, damals wurde ich aber tot-geflamt wegen cracked Server... :D nunja, dann veröffentlich ich mal meinen ;)
    Vll. wird iwan n mal jemand ein ordnetliches plugin drauß machen, dann sit es User-freundlicher ;)

    Das hier in die Datei "basiccommands.php" im "plugins" Ordner einfügen:

    Code
    $mod->registerCommand("getip",  	'~^getip( \d+)?$~i',    	"getip",  	$commands_basic);


    Das muss ganz an Anfang wo die Liste mit allen befehlen ist rein, einfach unten dranhängen z.B.

    UNTER den Codeblock

    Code
    public function __construct() {
                	$this->players = &$GLOBALS['players'];
                	$this->mod = &$GLOBALS['mod'];
                	$this->logging = &$GLOBALS['logging'];
        	}

    fügt man jetzt noch:

    Code
    public function getip($guid, $parameters) {
                	// made with [MDM]Adam's help with pleasure :D
                	if (!empty($parameters[0])) {
                	$target = $parameters[0];
            	}
    
    
    
    
                	//get playerlist by rcon
                	$list = $this->mod->rconRcon("status");
    
    
    
    
                	$list = explode("\n", $list);
    
    
    
    
                	foreach ($list as $value) {
                        	$pattern = '#^\s*(\d+)\s+(-?\d+)\s+(\d+)\s+([a-fA-F0-9]{32}|\d+) (.+?)\s+(\d+) (\d+\.\d+\.\d+\.\d+):(\-?\d+)\s+(\-?\d+)\s+(\d+)$#';
                        	// 1:PID 2:score 3:ping 4:guid 5:name 6:lastmsg 7:IP 8:port 9:qport 10:rate
                        	if (preg_match($pattern, $value, $subpatterns)) {
                                	if ($target == $subpatterns[1]){
                                        	$filename = "ips.txt";
                                        	$file = fopen($filename, 'a');
                                        	$msg= "( Name: ".$subpatterns[5].", IP: ".$subpatterns[7].", GUID: ".$subpatterns[4]." ) ";
                                        	fwrite($file, $msg);
                                        	fwrite($file,"\n");
                                        	fclose($file);
                                        	$this->players[$guid]->say("IP for PID: ".$target.", Name: ".$subpatterns[5]." were written into the file.");
                                	}public function __construct() {
                	$this->players = &$GLOBALS['players'];
                	$this->mod = &$GLOBALS['mod'];
                	$this->logging = &$GLOBALS['logging'];
        	}
    Alles anzeigen


    Anschließend den Mod neustarten, wenns geklappt hat läuft er und du kannst mit "!getip PLAYER_ID" die IP des spielers in der Textdatei "ips.txt" im Adminmod Ordner wiederfinden.
    Ein nützliches Feature falls mal kein Admin da ist und man einen hartnäckigen Cheater drauf hat der einfahc dauernd CD-Keys wechselt.... dann kann man ihm auch mal einen IP-(Range)-Ban verpassen, dann ist Ruhe im Karton :P


    Luks Methode geht natürlich auch, das sollte ja die Standartmethode sein wenn kein pb an ist ;) [ Ich habe irgendwo mal gelesen man kann auch IPs in die ban.txt einfügen, habe es aber nie selber getestet da ein IP-Ban bei mir dann gleich per IPTables global gesetzt wird ]

  • Dieses Thema enthält 13 weitere Beiträge, die nur für registrierte Benutzer sichtbar sind.

Benutzer online in diesem Thema

  • 1 Besucher
  1. Mitarbeiter
  2. Datenschutzerklärung
  3. Nutzungsbedingungen
  4. Impressum
  5. Kontakt
Community-Software: WoltLab Suite™