Source RCON Protocol

Sende authentifizierte Remote-Console-Befehle über das binäre RCON-Protokoll an Game-Server auf Source-Engine-Basis (Counter-Strike, Garry's Mod, ARK, Rust, Minecraft, ...).

TsgcLib_RCON

TCP-Client für das binäre Source-RCON-Protokoll — mit Server-Passwort authentifizieren, Exec-Befehle senden, Antwort parsen.

Komponenten-Klasse

TsgcLib_RCON

Plattformen

Windows, macOS, Linux, iOS, Android

Edition

Standard / Professional / Enterprise

Host und Passwort setzen, Befehle senden

Setze Host, Port und Passwort an TsgcLib_RCON, verbinde dich, authentifiziere und rufe dann für jeden Console-Befehl ExecCommand auf.

uses
  sgcLibs;

var
  RCON: TsgcLib_RCON;
begin
  RCON := TsgcLib_RCON.Create(nil);
  RCON.Host     := 'gameserver.example.com';
  RCON.Port     := 27015;
  RCON.Password := 'rcon-password';

  RCON.OnResponse := procedure(Sender: TObject;
    const aResponse: string; const aPacket: TsgcRCON_Packet)
  begin
    Memo1.Lines.Add(aResponse);
  end;

  RCON.Connect;
  RCON.ExecCommand('status');
  RCON.ExecCommand('sv_gravity 800');
end;
// uses: sgcLibs
TsgcLib_RCON *RCON = new TsgcLib_RCON(this);
RCON->Host     = "gameserver.example.com";
RCON->Port     = 27015;
RCON->Password = "rcon-password";

RCON->Connect();
RCON->ExecCommand("status");

Was drinsteckt

Implementiert das binäre Valve-Source-RCON-Protokoll (SERVERDATA_AUTH / SERVERDATA_EXECCOMMAND) über reines TCP.

Authentifizierung

Bei Connect sendet die Komponente ein SERVERDATA_AUTH-Paket mit dem konfigurierten Passwort und wartet auf SERVERDATA_AUTH_RESPONSE. OnAuthenticate meldet Erfolg oder Fehlschlag.

Befehlsausführung

ExecCommand sendet SERVERDATA_EXECCOMMAND mit dem gewünschten Console-Befehl. Die Server-Antwort kommt als OnResponse mit dem geparsten Paket-Body.

Mehrteilige Antworten

Source RCON verteilt große Antworten auf mehrere Pakete — die Komponente setzt sie über den Empty-Response-Sentinel-Trick wieder zusammen und liefert einen einzigen verketteten String aus.

Breite Spiele-Unterstützung

Funktioniert mit jedem Server, der das Source-RCON-Protokoll implementiert: Counter-Strike, Garry's Mod, ARK: Survival Evolved, Rust, Squad, Project Zomboid, Minecraft (über Plugins) und viele mehr.

Reines TCP, Klartext

Anders als die WebSocket-Komponenten auf dieser Seite ist RCON eine reine TCP-Komponente (binäres Little-Endian-Framing). Ein WebSocket-Transport ist nicht erforderlich.

Resilienz

Hänge dich an OnDisconnect und OnError, um Remote-Abbrüche oder abgelehnte Passwörter zu behandeln. Rufe Connect erneut auf, um dich erneut zu authentifizieren.

Spezifikationen & Referenzen

Maßgebliche Quellen für das Protokoll, das diese Komponente implementiert.

Dokumentation & Demos

Direkter Link zur Komponenten-Referenz, hol dir das sofort lauffähige Demoprojekt und lade die Testversion herunter.

Online-Hilfe — RCON Vollständige Referenz für Eigenschaften, Methoden und Ereignisse dieser Komponente.
Demo-Projekt — Demos\50.Other\02.RCON Sofort lauffähiges Beispielprojekt. Ist im sgcWebSockets-Paket enthalten — lade unten die Testversion herunter.
Technisches Dokument (PDF) Funktionen, Schnellstart, Code-Beispiele für Delphi & C++ Builder und Primärquellen — nur für diese Komponente.
Benutzerhandbuch (PDF) Umfassendes Handbuch zu allen Komponenten der Bibliothek.

Bereit, Game-Server fernzusteuern?

Lade die kostenlose Testversion herunter und führe RCON-Befehle aus deinen Delphi-Anwendungen aus.