Guía de comandos de administrador y Web API de Motor Town

De Survival Servers
Ir a la navegación Ir a la búsqueda

El control de administrador en un servidor dedicado de Motor Town: Behind The Wheel funciona de forma distinta a la mayoría de los juegos de supervivencia: en lugar de una larga lista de comandos de chat, Motor Town ofrece a los administradores un menú de administración dentro del juego, un sistema de rol de policía y (la parte que casi nadie documenta) una HTTP Web API completa en el servidor para expulsiones, baneos, anuncios, roles y datos del servidor en tiempo real. Esta guía cubre los tres.

Convertir a un jugador en administrador

Los administradores se definen en el archivo DedicatedServerConfig.json del servidor, dentro de la lista Admins. Cada entrada empareja un UniqueNetId con un Nickname. Para los jugadores de Steam, el UniqueNetId es el SteamID64 (puedes consultar el tuyo en steamid.io). Añade al jugador, reinicia el servidor y, cuando vuelva a entrar, tendrá acceso a las herramientas de administrador del juego. El ajuste bAllowAdminToRemoveAdmin controla si los administradores pueden degradarse entre sí (desactivado por defecto).

En una instancia de Survival Servers esto es un campo del panel: introduce los SteamID64s en Admin Steam IDs en la herramienta Server Config y reinicia.

El ReadMe oficial también documenta un truco para descubrir ids que no son de Steam: abre el servidor desde tu cliente del juego, añade al administrador dentro del juego y luego lee la entrada generada en GameUserSettings.ini dentro de %LOCALAPPDATA%\MotorTown\Saved\Config\Windows.

El rol de policía

Motor Town tiene un rol de policía específico para servidores de rol. PoliceRolePlayers en la configuración enumera a los jugadores (con el mismo formato UniqueNetId + Nickname que Admins), y bAllowPoliceVehicleByPlayerRole controla si los vehículos policiales quedan restringidos a ese rol: ponlo en true y solo los agentes registrados podrán conducirlos; déjalo en false y podrá conducirlos cualquiera.

La Web API: la verdadera consola de comandos del servidor

El servidor dedicado puede exponer una API HTTP con todo lo que necesita un administrador de comunidad, sin que nadie tenga que estar dentro del juego. Actívala en DedicatedServerConfig.json:

  • bEnableHostWebAPIServer: true
  • HostWebAPIServerPassword: a strong password; it authenticates every call
  • HostWebAPIServerPort: 8080 por defecto
  • HostWebAPIDisabledCommands: lista opcional de endpoints que desactivar

Cada llamada pasa la contraseña como parámetro y devuelve un sobre JSON con los campos data, message y succeeded. Ejemplo:

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

Nota de seguridad: la contraseña viaja como un parámetro de consulta sin cifrar, así que no abras el puerto de la API a internet. Consúltala desde la propia máquina del servidor (o desde una red de confianza) y mantén el puerto protegido por el firewall.

Referencia de endpoints

Endpoint Método Qué hace
/chat POST Envía un anuncio a todo el servidor, o un mensaje de chat con type=message y un color opcional (hexadecimal, como FF00FF)
/player/count GET Número actual de jugadores
/player/list GET Todos los jugadores conectados, con nombre, unique_id, ubicación en el mundo y vehículo actual
/player/kick POST Expulsa por unique_id (de /player/list)
/player/ban POST Banea por unique_id, con hours opcional (permanente si se omite) y reason
/player/unban POST Levanta un baneo por unique_id
/player/banlist GET Lista de baneos actual
/player/role/list GET Muestra la lista de administradores o de policías (role=admin o role=police)
/player/role/add POST Concede el rol de administrador o policía a un unique_id
/player/role/remove POST Revoca el rol de administrador o policía a un unique_id
/delivery/sites GET Estado en vivo de las entregas y la carga en los puntos de trabajo de la isla
/housing/list GET Parcelas de vivienda con propietario y vencimiento del alquiler
/version GET La versión del juego del servidor, útil para comprobar que cliente y servidor coinciden

Hacer todo esto sin curl

En las instancias de Survival Servers, las herramientas de administrador del panel de control se basan en esta misma Web API: expulsar, banear y desbanear, los anuncios y las listas de administradores y policías son botones y campos del panel, con la API mantenida de forma segura en la interfaz de loopback. La guía de configuración del servidor dedicado explica cómo poner un servidor en marcha desde cero, y la guía de mods cubre la parte de los mods de vehículos en la vida de un administrador.