Source RCON-protocol

Verstuur geauthenticeerde remote console-opdrachten naar Source-engine gameservers (Counter-Strike, Garry's Mod, ARK, Rust, Minecraft, ...) via het binaire RCON-protocol.

TsgcLib_RCON

TCP-client voor het Source RCON binaire protocol — authenticeer met het serverwachtwoord, verstuur exec-opdrachten, parseer het antwoord.

Componentklasse

TsgcLib_RCON

Platforms

Windows, macOS, Linux, iOS, Android

Editie

Standard / Professional / Enterprise

Stel host en wachtwoord in, verstuur opdrachten

Stel host, port en password in op TsgcLib_RCON, maak verbinding, authenticeer en roep daarna ExecCommand aan voor elke consoleopdracht.

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");

Wat zit erin

Implementeert het Valve Source RCON binaire protocol (SERVERDATA_AUTH / SERVERDATA_EXECCOMMAND) over plain TCP.

Authenticatie

Bij Connect verstuurt het component een SERVERDATA_AUTH-pakket met het geconfigureerde wachtwoord en wacht op SERVERDATA_AUTH_RESPONSE. OnAuthenticate meldt succes of mislukking.

Opdrachtuitvoering

ExecCommand verstuurt SERVERDATA_EXECCOMMAND met de gevraagde consoleopdracht. Het serverantwoord arriveert als OnResponse met de geparseerde pakketinhoud.

Multi-packet antwoorden

Source RCON splitst grote antwoorden over meerdere pakketten — het component assembleert deze met de empty-response-sentinel-truc en levert één samengevoegde string.

Brede game-ondersteuning

Werkt met elke server die het Source RCON-protocol implementeert: Counter-Strike, Garry's Mod, ARK: Survival Evolved, Rust, Squad, Project Zomboid, Minecraft (via plugins) en vele andere.

Plain TCP, plain text

Anders dan de WebSocket-componenten op deze site is RCON een raw TCP-component (binaire little-endian framing). Er is geen WebSocket-transport vereist.

Resilience

Hook OnDisconnect en OnError om remote drops of wachtwoordafwijzingen af te handelen. Roep Connect opnieuw aan om je opnieuw te authenticeren.

Specificaties & referenties

Officiële bronnen voor het protocol dat dit component implementeert.

Documentatie & demo's

Deep-link naar de componentreferentie, pak het kant-en-klare demoproject en download de proefversie.

Online help — RCON Volledige referentie van eigenschappen, methodes en events voor dit component.
Demoproject — Demos\50.Other\02.RCON Kant-en-klaar voorbeeldproject. Wordt meegeleverd in het sgcWebSockets-pakket — download hieronder de proefversie.
Technisch document (PDF) Functies, snelstart, codevoorbeelden voor Delphi & C++ Builder en primaire bronverwijzingen — alleen voor dit component.
Gebruikershandleiding (PDF) Uitgebreide handleiding die elk component in de bibliotheek behandelt.

Klaar om gameservers op afstand te beheren?

Download de gratis proefversie en voer RCON-opdrachten uit vanuit je Delphi-toepassingen.