API für Rocket League-Statistiken

In diesem Dokument werden die Funktionen der API für Rocket League-Spieldaten beschrieben. Zunächst müssen die Spieler das Spiel auffordern, diese Funktion zu aktivieren, indem sie ihre TAStatsAPI.ini (oder DefaultStatsAPI.ini, falls diese nicht existiert) bearbeiten, wie unten erklärt. Sobald diese Funktion aktiviert ist, öffnet sie auf dem Rechner des Spielers einen TCP und/oder WebSocket, über den Spieldaten und Ereignisse gesendet sowie bestimmte Befehle empfangen werden. Programme von Drittanbietern können diese Daten für eine Vielzahl von Anwendungen nutzen, beispielsweise für benutzerdefinierte HUDs von Sendern.

Übersicht

Die API für Statistiken sendet während eines laufenden Spiels JSON-Nachrichten über ein lokales Socket. Nachrichten werden sowohl in einem konfigurierbaren Zeitabstand als auch bei bestimmten Match-Ereignissen gesendet. Ereignisdaten werden immer im selben Tick gesendet, in dem das Ereignis eintritt, unabhängig von der PacketSendRate des Benutzers.
Hinweis: Alle Konfigurationen müssen vor dem Start des Clients vorgenommen werden – Änderungen an der ini-Datei während des Betriebs erfordern einen Neustart.
Sichtbarkeit des Feldes:
  • Markierte Felder BEDINGUNGSABHÄNGIG nur angezeigt, wenn relevant.
  • Markierte Felder ZUSCHAUER werden nur gesendet, während man zuschaut.
  • Markierte Felder TEAM werden nur gesendet, wenn man im selben Team ist wie der Spieler, den sie beschreiben.
  • Markierte Felder REPLAY sind nur während Replays relevant.

Konfigurierung

Bearbeite <Install Dir>\TAGame\Config\TAStatsAPI.ini (oder DefaultStatsAPI.ini, falls <Install Dir>\TAGame\Config\TAStatsAPI.ini nicht vorhanden ist) im Abschnitt [TAGame.MatchStatsExporter_TA], bevor du den Client startest.
EinstellungTypStandardBeschreibung
PacketSendRatefloat0 (deaktiviert)Anzahl der UpdateState-Pakete, die pro Sekunde gesendet werden. Auf 120 begrenzt; 0 deaktiviert die Funktion.
Portint49123Lokaler Port, auf dem der Client auf TCP-Verbindungen wartet. Zum Deaktivieren auf „0“ setzen. Muss sich von WebPort unterscheiden.
WebPortint49124Der lokale Port, den der Client überwacht, um einen WebSocket zu öffnen. Zum Deaktivieren auf „0“ setzen. Muss sich von Port unterscheiden.

Nachrichtenformat

Jede Nachricht ist wie folgt aufgebaut:
{
  "Event": "EventName",
  "Data":  { /* event-specific payload */ }
}

Tick

Sendung X-mal pro Sekunde, basierend auf der Einstellung „PacketSendRate“ des Spielers.

Beispiel

{
  "Event": "UpdateState",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "Players": [
      {
        "Name": "PlayerA",
        "PrimaryId": "Steam|123|0",
        "Shortcut": 1,
        "TeamNum": 0,
        "Score": 125,
        "Goals": 1,
        "Shots": 2,
        "Assists": 0,
        "Saves": 1,
        "Touches": 14,
        "CarTouches": 3,
        "Demos": 0,
        "Loadout": [
          "body_grain",
          "Skin_bartees",
          "Wheel_SoccerBall",
          "Boost_AlphaReward",
          "None",
          "None"
        ],
        "bHasCar": true,
        "Speed": 1200,
        "Boost": 45,
        "bBoosting": true,
        "bOnGround": true,
        "bOnWall": false,
        "bPowersliding": false,
        "bDemolished": true,
        "Attacker": {
          "Name": "PlayerB",
          "Shortcut": 2,
          "TeamNum": 1
        },
        "bSupersonic": true,
        "PickupClass": "SpecialPickup_GrapplingHook_TA"
      }
    ],
    "Game": {
      "Teams": [
        {
          "Name": "Blue",
          "TeamNum": 0,
          "Score": 1,
          "ColorPrimary": "0000FF",
          "ColorSecondary": "0000AA"
        }
      ],
      "PlaylistId": 11,
      "TimeSeconds": 180,
      "bOvertime": false,
      "Frame": 120,
      "Elapsed": 50.2,
      "Ball": {
        "Speed": 850.5,
        "TeamNum": 0
      },
      "bReplay": false,
      "bHasWinner": true,
      "Winner": "Blue",
      "Arena": "Stadium_P",
      "bHasTarget": true,
      "Target": {
        "Name": "PlayerA",
        "Shortcut": 1,
        "TeamNum": 0
      }
    }
  }
}
SpielfeldTypBeschreibung
PlayersarrayEin Eintrag pro Spieler im Match.
NamestringAnzeigename.
PrimaryIdstringPlattform-ID im Format „Plattform|Uid|Splitscreen“ (z. B. „Steam|123|0“, „Epic|456|0“).
ShortcutintSchnellzugriffsnummer für Zuschauer.
TeamNumintTeam-Index (0 = Blau, 1 = Orange).
ScoreintGesamtergebnis des Matches.
GoalsintIn diesem Match erzielte Tore.
ShotsintIn diesem Match erfolgte Torschüsse.
AssistsintIn diesem Match verdiente Vorlagen.
SavesintIn diesem Match erzielte Paraden.
TouchesintBallberührungen insgesamt:
CarTouchesintBerührungen durch die Karosserie (nicht durch den Ball).
DemosintZerstörungen verursacht.
Loadoutarray<string>Asset-Namen der ausgerüsteten Ausrüstung für das aktuelle Team des Spielers, sortiert nach Produkt-Slot.
bHasCarboolZUSCHAUERGilt, wenn der Spieler gerade ein Fahrzeug hat.
SpeedfloatZUSCHAUERFahrzeuggeschwindigkeit in Unreal Units pro Sekunde.
BoostintZUSCHAUERRaketenspur-Menge 0–100.
bBoostingboolZUSCHAUERGilt, wenn der Spieler gerade eine Raketenspur nutzt.
bOnGroundboolZUSCHAUERGilt, wenn mindestens drei Räder den Spielbereich berühren.
bOnWallboolZUSCHAUERGilt, wenn das Fahrzeug gerade an einer Wand fährt.
bPowerslidingboolZUSCHAUERGilt, wenn der Spieler gerade die Handbremse zieht.
bDemolishedboolZUSCHAUERWahr, wenn das Fahrzeug derzeit zerstört ist.
bSupersonicboolZUSCHAUERWahr, wenn das Fahrzeug mit Überschallgeschwindigkeit fährt.
PickupClassstringZUSCHAUERKlassenname des Spielers aktuell verfügbarer Rumble-Aufheber. Wird weggelassen, wenn nicht mit Rumble-Power-Ups gespielt wird.
AttackerobjectBEDINGUNGSABHÄNGIGDer Spieler, der diesen Spieler zerstört hat. Nur bei Zerstörung vorhanden.
NamestringName des Spielers, der diesen Spieler zerstört hat.
ShortcutintZuschauer-Tastenkürzel für den Angreifer.
TeamNumintTeam-Index des Angreifers.
GameobjectMatch-Metadaten.
TeamsarrayEin Eintrag pro Team, sortiert nach TeamNum.
NamestringTeamname.
TeamNumintTeam-Index.
ScoreintTeam-Tore.
ColorPrimarystringHex-Farbcode (ohne #) für die Hauptfarbe des Teams.
ColorSecondarystringHex-Farbcode für die Zweitfarbe des Teams.
PlaylistIdintPlaylist-ID des aktuellen Spiels.
TimeSecondsintVerbleibende Sekunden im Match.
bOvertimeboolWahr, wenn das Match in die Verlängerung geht.
BallobjectAktueller Status des Balls.
SpeedfloatAktuelle Ballgeschwindigkeit in Unreal Units pro Sekunde.
TeamNumintIndex des letzten Teams, das den Ball berührt hat. 255, wenn der Ball nicht berührt wurde.
bReplayboolWahr, wenn eine Torwiederholung oder eine Spielverlaufswiederholung aktiv ist.
bHasWinnerboolWahr, wenn ein Team gewonnen hat.
WinnerstringName des Gewinnerteams. Leere Zeile, wenn es noch keinen Gewinner gibt.
ArenastringAsset-Name der aktuellen Karte (z. B. „Stadium_P“).
bHasTargetboolWahr, wenn der Kunde gerade ein bestimmtes Fahrzeug ansieht.
TargetobjectBEDINGUNGSABHÄNGIGPlayer currently being viewed. Members are an empty string or 0 if the player does not have a spectator target.
NamestringName des Spielers, der gerade angezeigt wird.
ShortcutintZuschauer-Tastenkürzel für den angezeigten Spieler.
TeamNumintTeamindex des angezeigten Spielers.
FrameintBEDINGUNGSABHÄNGIGAktuelle Frame-Nummer, wenn eine Wiederholung aktiv ist.
ElapsedfloatBEDINGUNGSABHÄNGIGSekunden, die seit Spielbeginn vergangen sind, wenn eine Wiederholung aktiv ist.

Events

Sendung eines Frames nachdem der Ball getroffen wurde.

Beispiel

{
  "Event": "BallHit",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "Players": [
      {
        "Name": "PlayerA",
        "Shortcut": 1,
        "TeamNum": 0
      }
    ],
    "Ball": {
      "PreHitSpeed": 0,
      "PostHitSpeed": 1450.2,
      "Location": {
        "X": -512,
        "Y": 100,
        "Z": 200
      }
    }
  }
}
SpielfeldTypBeschreibung
PlayersarraySpieler, die den Ball in diesem Frame treffen.
NamestringAnzeigename.
ShortcutintSchnellzugriff für Zuschauer.
TeamNumintTeam-Index (0 = Blau, 1 = Orange).
BallobjectStatus des Balls im Moment des Treffers.
PreHitSpeedfloatBallgeschwindigkeit vor dem Treffer (Unreal Units/Sekunde).
PostHitSpeedfloatBallgeschwindigkeit nach dem Treffer (Unreal Units/Sekunde).
LocationvectorWeltkoordinaten (X, Y, Z) des Balls beim Aufprall.
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

ZUSCHAUER
Wird gesendet, wenn ein Fahrzeug ein Boost-Feld oder eine Boost-Pille einsammelt.

Beispiel

{
  "Event": "BoostPickup",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "Player": {
      "Name": "PlayerA",
      "Shortcut": 1,
      "TeamNum": 0
    },
    "Location": {
      "X": -3072,
      "Y": 0,
      "Z": 73
    },
    "BoostAmount": 100,
    "BoostType": "BoostType_Pill",
    "bReplay": false
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.
PlayerobjectDer Spieler, der die Raketenspur gesammelt hat.
NamestringAnzeigename.
ShortcutintSchnellzugriffsnummer für Zuschauer.
TeamNumintTeam-Index (0 = Blau, 1 = Orange).
LocationvectorWeltposition (Aufheben) als { X, Y, Z }.
BoostAmountfloatHöhe des durch den Pickup gewährten Boosts.
BoostTypestringAufhebe-Klasse: BoostType_Pad (kleines Feld), BoostType_Pill (volle/starke Raketenspur).
bReplayboolTrue, wenn das Aufheben während der Replay-Wiedergabe stattgefunden hat.

Sendung nach Änderung der Spielzeit.

Beispiel

{
  "Event": "ClockUpdatedSeconds",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "TimeSeconds": 180,
    "bOvertime": false
  }
}
SpielfeldTypBeschreibung
TimeSecondsintVerbleibende Sekunden im Match.
bOvertimeboolWahr, wenn das Spiel in der Verlängerung ist.
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung zu Beginn jeder Runde, sobald der Countdown startet.

Beispiel

{
  "Event": "CountdownBegin",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung nach einem Lattentreffer.

Beispiel

{
  "Event": "CrossbarHit",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "BallLocation": {
      "X": 120,
      "Y": -2944,
      "Z": 320
    },
    "BallSpeed": 870.3,
    "ImpactForce": 127.5,
    "BallLastTouch": {
      "Player": {
        "Name": "PlayerA",
        "Shortcut": 1,
        "TeamNum": 0
      },
      "Speed": 120
    }
  }
}
SpielfeldTypBeschreibung
BallSpeedfloatBallgeschwindigkeit beim Aufprall.
ImpactForcefloatAufprallkraft des Balls relativ zur Normalen der Latte.
BallLastTouchobjectDie letzte Berührung des Balls, bevor er an die Latte prallte.
PlayerobjectDer Spieler, der den Ball zuletzt berührt hat.
NamestringAnzeigename.
ShortcutintSchnellzugriff für Zuschauer.
TeamNumintTeam-Index (0 = Blau, 1 = Orange).
SpeedfloatDie Ballgeschwindigkeit, die sich aus diesem Treffer ergibt.
BallLocationvectorDie Weltkoordinaten (X, Y, Z) des Balls zum Zeitpunkt des Aufpralls.
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung nach Ende der Torwiederholung.

Beispiel

{
  "Event": "GoalReplayEnd",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung zu Beginn einer Torwiederholung.

Beispiel

{
  "Event": "GoalReplayStart",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung beim Explodieren des Balls während einer Torwiederholung. Bei Überspringen der Wiederholung wird dieses Ereignis nicht ausgelöst.

Beispiel

{
  "Event": "GoalReplayWillEnd",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung bei Torerfolg.

Beispiel

{
  "Event": "GoalScored",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "GoalSpeed": 87.3,
    "GoalTime": 127.5,
    "ImpactLocation": {
      "X": 0,
      "Y": -2944,
      "Z": 320
    },
    "Scorer": {
      "Name": "PlayerA",
      "Shortcut": 1,
      "TeamNum": 0
    },
    "Assister": {
      "Name": "PlayerC",
      "Shortcut": 3,
      "TeamNum": 0
    },
    "BallLastTouch": {
      "Player": {
        "Name": "PlayerA",
        "Shortcut": 1,
        "TeamNum": 0
      },
      "Speed": 125
    }
  }
}
SpielfeldTypBeschreibung
GoalSpeedfloatBallgeschwindigkeit (Unreal Units/Sekunde) beim Überqueren der Torlinie.
GoalTimefloatDauer der vorherigen Runde in Sekunden.
ImpactLocationvectorDie Weltkoordinaten (X, Y, Z) des Balls zum Zeitpunkt des Tores.
ScorerobjectDer Spieler, der das Tor geschossen hat.
NamestringAnzeigenamen des Torjägers.
ShortcutintSchnellzugriff für Zuschauer.
TeamNumintTeamindex des Torjägers.
BallLastTouchobjectDie letzte Ballberührung vor dem Tor.
PlayerobjectDer Spieler, der den Ball zuletzt berührt hat.
NamestringName des Spielers, der den Ball zuletzt berührt hat.
ShortcutintSchnellzugriff für Zuschauer.
TeamNumintTeam-Index.
SpeedfloatDie Ballgeschwindigkeit, die sich aus dieser Berührung ergibt.
AssisterobjectBEDINGUNGSABHÄNGIGGleiche Form wie Scorer. Nur dann aufgeführt, wenn eine Vorlage verzeichnet wurde.
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung, sobald alle Teams erstellt und übernommen wurden.

Beispiel

{
  "Event": "MatchCreated",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung beim Verlassen des Spiels.

Beispiel

{
  "Event": "MatchDestroyed",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung nach Spielende und Feststellung des Siegers.

Beispiel

{
  "Event": "MatchEnded",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "WinnerTeamNum": 0
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.
WinnerTeamNumintTeamindex des Gewinnerteams.

Sendung bei Beginn des ersten Countdowns.

Beispiel

{
  "Event": "MatchInitialized",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung bei Spielunterbrechung durch einen Match-Administrator.

Beispiel

{
  "Event": "MatchPaused",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung beim Fortsetzen des Spiels durch einen Match-Administrator.

Beispiel

{
  "Event": "MatchUnpaused",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Wird gesendet, wenn ein Spieler zum aktuellen Spiel hinzugefügt wird.

Beispiel

{
  "Event": "PlayerJoined",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "PlayerName": "PlayerA",
    "PrimaryId": "Steam|123|0"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.
PlayerNamestringAnzeigename des Spielers, der beigetreten ist.
PrimaryIdstringPlattform-ID im Format „Plattform|Uid|Splitscreen“ (z. B. „Steam|123|0“, „Epic|456|0“).

Wird gesendet, wenn ein Spieler aus dem aktuellen Spiel entfernt wird.

Beispiel

{
  "Event": "PlayerLeft",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "PlayerName": "PlayerA",
    "PrimaryId": "Steam|123|0"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.
PlayerNamestringAnzeigename des Spielers, der gegangen ist.
PrimaryIdstringPlattform-ID im Format „Plattform|Uid|Splitscreen“ (z. B. „Steam|123|0“, „Epic|456|0“).

Sendung beim Erreichen des Podiums nach Spielende.

Beispiel

{
  "Event": "PodiumStart",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung nach Initialisierung einer Wiederholung. Dies gilt nicht für Torwiederholungen, sondern nur für Wiederholungen über das Menü „Matchverlauf“.

Beispiel

{
  "Event": "ReplayCreated",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "FileName": "Stadium_P_2026-06-05_18-42",
    "Date": "2026-06-05 18:42:13"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.
FileNamestringDateiname des Replays.
DatestringZeitstempel, wann das Replay erstellt wurde.

Sendung beim Eintritt des Spiels in den aktiven Zustand (nach Ablauf des Countdowns).

Beispiel

{
  "Event": "RoundStarted",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6"
  }
}
SpielfeldTypBeschreibung
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.

Sendung bei Erhalt einer Statistik.

Beispiel

{
  "Event": "StatfeedEvent",
  "Data": {
    "MatchGuid": "A1B2C3D4E5F6G7H8I9J0K1L2M3N4O5P6",
    "EventName": "Demolish",
    "Type": "Demolition",
    "MainTarget": {
      "Name": "PlayerA",
      "Shortcut": 1,
      "TeamNum": 0
    },
    "SecondaryTarget": {
      "Name": "PlayerB",
      "Shortcut": 2,
      "TeamNum": 1
    }
  }
}
SpielfeldTypBeschreibung
EventNamestringAsset-Name des StatEvent (z. B. „Demolish“, „Save“).
TypestringLokalisiertes Display-Label für die Statistik (z. B. „Demolition“).
MainTargetobjectSpieler, der diese Statistik erzielt hat.
NamestringAnzeigename.
ShortcutintSchnellzugriff für Zuschauer.
TeamNumintTeam-Index (0 = Blau, 1 = Orange).
MatchGuidstringNur für Online- oder LAN-Matches festgelegt.
SecondaryTargetobjectBEDINGUNGSABHÄNGIGSpieler, der an der Statistik beteiligt ist (z. B. der zerstörte Spieler). Gleiche Form wie MainTarget.

Befehle

Befehle, die über den Socket gesendet werden und vom Client verarbeitet werden sollen. Jedes davon ist ein JSON-Objekt mit einem Befehlsfeld, das den Befehl benennt, und einem „Data“-Objekt, das die unten aufgeführten Variablen enthält.

Befehlsformat

Jeder Befehl ist wie folgt aufgebaut:
{
  "Command": "CommandName",
  "Data":    { /* command-specific variables */ }
}

ChangePOV

ZUSCHAUERREPLAY
Ändert die Zuschauer-/Replay-Ansicht. Mindestens eines von Fokus oder Perspektive muss angegeben werden; beide können kombiniert werden.
VariableTypErfordertBeschreibung
FocusstringEiner vonWorauf der Blick gerichtet sein soll – auf den Ball oder auf einen bestimmten Spieler. Begrenzte Werte (siehe unten).
PerspectivestringEiner vonKameramodus zum Umschalten. Begrenzte Werte (siehe unten).
Fokus – akzeptierte Werte
WertBedeutung
"Ball"Fokus auf Ball.
"<shortcut>"Die Schnellzugriffsnummer für Zuschauer eines Spielers als Zeichenfolge (z. B. "1", "2"). Muss aus Ziffern bestehen; jeder andere Wert wird zurückgewiesen.
Perspektive – akzeptierte Werte
WertModusBeschreibung
"Fly"FlyFreie Bewegung auf der Karte.
"SoftAttach"Soft AttachFolge der Position eines Spielers oder des Balls.
"HardAttach"Hard AttachFolge der Position und der Drehung eines Spielers.
"PlayerView"Player ViewSicht aus der Perspektive eines Spielers. Automatisch angewendet, wenn der Fokus auf einen Spieler gerichtet ist und keine Perspektive angegeben ist.
"AutoCam"Auto CamSchaut automatisch zu.
"Camera_Director"DirectorWechselt automatisch zwischen Spieleransichten.

Beispiel

{
  "Command": "ChangePOV",
  "Data": {
    "Focus": "1",
    "Perspective": "PlayerView"
  }
}

LoadReplay

Lädt und startet die Wiedergabe eines Replays anhand des Dateinamens oder des Dateipfads.
VariableTypErfordertBeschreibung
FileNamestringEiner vonName der Replay-Datei, die wiedergegeben werden soll. Hat Vorrang vor dem Pfad, wenn beide festgelegt sind.
PathstringEiner vonDateipfad eines Replays, das abgespielt werden soll. Wird verwendet, wenn der Dateiname leer ist.

Beispiel

{
  "Command": "LoadReplay",
  "Data": {
    "FileName": "Stadium_P_2026-06-05_18-42"
  }
}

SeekReplay

REPLAY
Springt die Replay-Wiedergabe auf ein Zielbild oder eine Zielzeit.
VariableTypErfordertBeschreibung
FrameintEiner vonZielbildnummer. Hat Vorrang vor TimeSeconds, wenn festgelegt.
TimeSecondsfloatEiner vonZielzeit in Sekunden.

Beispiel

{
  "Command": "SeekReplay",
  "Data": {
    "TimeSeconds": 120.5
  }
}

SetGameSpeed

REPLAY
Legt die Replay-Wiedergabegeschwindigkeit fest.
VariableTypErfordertBeschreibung
SpeedfloatJaWiedergabemultiplikator. 1,0 = normal, 0,5 = halbe Geschwindigkeit, 2,0 = doppelte Geschwindigkeit. Muss ≥ 0 sein.

Beispiel

{
  "Command": "SetGameSpeed",
  "Data": {
    "Speed": 0.5
  }
}

SetHUDVisibility

Zeigt oder verbirgt das HUD im Spiel.
VariableTypErfordertBeschreibung
bVisibleboolJaBei „true“ wird das HUD angezeigt, bei „false“ wird es ausgeblendet.

Beispiel

{
  "Command": "SetHUDVisibility",
  "Data": {
    "bVisible": false
  }
}

SetMatchPaused

Hält das aktuelle Spiel oder das aktuelle Replay an oder setzt es fort.
VariableTypErfordertBeschreibung
bPausedboolJatrue pausiert; false setzt fort.

Beispiel

{
  "Command": "SetMatchPaused",
  "Data": {
    "bPaused": true
  }
}