Motor Town Admin-Befehle und Web-API-Anleitung

Aus Survival Servers
Zur Navigation springen Zur Suche springen

Die Admin-Steuerung auf einem Motor Town: Behind The Wheel Dedicated Server funktioniert anders als bei den meisten Survival-Spielen: Statt einer langen Liste von Chat-Befehlen bietet Motor Town Admins ein Admin-Menü im Spiel, ein Polizei-Rollensystem und (der Teil, den fast niemand dokumentiert) eine vollständige HTTP-Web-API auf dem Server für Kicks, Bans, Ankündigungen, Rollen und Live-Serverdaten. Diese Anleitung behandelt alle drei.

Einen Spieler zum Admin machen

Admins werden in der Datei DedicatedServerConfig.json des Servers in der Liste Admins festgelegt. Jeder Eintrag verbindet eine UniqueNetId mit einem Nickname. Bei Steam-Spielern ist die UniqueNetId die SteamID64 (deine findest du auf steamid.io). Trage den Spieler ein, starte den Server neu, und sobald er wieder beitritt, hat er Zugriff auf die Admin-Tools im Spiel. Die Einstellung bAllowAdminToRemoveAdmin legt fest, ob Admins sich gegenseitig den Admin-Status entziehen können (standardmäßig aus).

Auf einer Instanz bei Survival Servers ist das ein Feld im Webinterface: Trage die SteamID64s unter Admin Steam IDs im Tool Server Config ein und starte den Server neu.

Die offizielle ReadMe beschreibt auch einen Trick, um Nicht-Steam-IDs herauszufinden: Öffne den Server aus deinem Spiel-Client, füge den Admin im Spiel hinzu und lies dann den erzeugten Eintrag aus der GameUserSettings.ini unter %LOCALAPPDATA%\MotorTown\Saved\Config\Windows aus.

Die Polizei-Rolle

Motor Town hat eine eigene Polizei-Rolle für RP-Server. PoliceRolePlayers in der Config listet die Spieler auf (gleiches UniqueNetId + Nickname-Format wie bei Admins), und bAllowPoliceVehicleByPlayerRole steuert, ob Polizeifahrzeuge auf diese Rolle beschränkt sind: Setze es auf true, dann dürfen nur eingetragene Beamte sie fahren. Lass es auf false, dann darf jeder.

Die Web-API: die eigentliche Befehlskonsole des Servers

Der Dedicated Server kann eine HTTP-API bereitstellen, die alles bietet, was ein Community-Admin braucht, ohne dass jemand im Spiel sein muss. Aktiviere sie in der DedicatedServerConfig.json:

  • bEnableHostWebAPIServer: true
  • HostWebAPIServerPassword: a strong password; it authenticates every call
  • HostWebAPIServerPort: Standard 8080
  • HostWebAPIDisabledCommands: optionale Liste der Endpunkte, die abgeschaltet werden sollen

Jeder Aufruf übergibt das Passwort als Parameter und liefert einen JSON-Umschlag mit den Feldern data, message und succeeded zurück. Beispiel:

curl "http://127.0.0.1:8080/player/count?password=yourpassword"

Sicherheitshinweis: Das Passwort wird als einfacher Query-Parameter übertragen, öffne den API-Port also nicht ins Internet. Frage die API vom Server-Rechner selbst (oder aus einem vertrauenswürdigen Netzwerk) ab und lass den Port per Firewall gesperrt.

Endpunkt-Referenz

Endpunkt Methode Beschreibung
/chat POST Sendet eine serverweite Ankündigung oder mit type=message eine Chat-Nachricht, optional mit color (Hex wie FF00FF)
/player/count GET Aktuelle Spielerzahl
/player/list GET Alle Online-Spieler mit Name, unique_id, Position in der Welt und aktuellem Fahrzeug
/player/kick POST Kick per unique_id (aus /player/list)
/player/ban POST Bann per unique_id, optional hours (permanent, wenn weggelassen) und reason
/player/unban POST Bann per unique_id aufheben
/player/banlist GET Aktuelle Bannliste
/player/role/list GET Admin- oder Polizei-Liste anzeigen (role=admin oder role=police)
/player/role/add POST Admin- oder Polizei-Rechte an eine unique_id vergeben
/player/role/remove POST Entzieht einer unique_id die Admin- oder Polizei-Rolle
/delivery/sites GET Live-Status von Lieferungen und Fracht an allen Jobstandorten der Insel
/housing/list GET Wohngrundstücke mit Besitzer und Ablauf der Miete
/version GET Die Spielversion des Servers, praktisch zum Prüfen, ob Client- und Serverversion übereinstimmen

Das alles ohne curl erledigen

Bei Survival Servers bauen die Admin-Tools des Webinterfaces auf genau dieser Web-API auf: Kick, Bann und Entbannen, Ankündigungen sowie die Admin- und Polizeilisten sind Buttons und Felder im Webinterface, während die API sicher auf dem Loopback-Interface bleibt. Die Anleitung zur Einrichtung eines Dedicated Servers erklärt, wie du überhaupt einen Server zum Laufen bekommst, und die Mods-Anleitung deckt die Fahrzeug-Mod-Seite des Admin-Alltags ab.