LFS-Ayats

Radar de telemetria en ASCII per a Live for Speed amb integració InSim/OutSim, pensat per oferir una visió clara, configurable i en temps real de la pista.

  • Renderitzat lleuger que funciona en qualsevol terminal.
  • Integració directa amb els protocols oficials d’InSim i OutSim.
  • Configuració senzilla amb recàrrega en calent dels paràmetres.

Resum del projecte

LFS-Ayats és un prototip que es connecta al simulador Live for Speed mitjançant InSim i OutSim per mostrar un radar ASCII en temps real. El projecte manté el comportament original del prototip, tot prioritzant la simplicitat i l’observabilitat mentre es desenvolupen noves funcionalitats.

Requisits principals

Característiques clau

Actualitzacions en temps real

Radar ASCII amb refresc configurable per mantenir la pista sempre sota control.

Multijugador intel·ligent

Mode multijugador amb detecció de proximitat i alertes acústiques opcionals.

Temes personalitzables

Personalitza perfils, HUD i temes de color sense dependre de biblioteques externes.

Estadístiques i registres

Recull events i mètriques bàsiques per analitzar sessions i detectar patrons.

Exemple simplificat de la visualització del radar en una terminal.

Integració amb Live for Speed

El radar s’integra amb Live for Speed utilitzant els protocols InSim i OutSim per obtenir informació del vehicle i dels rivals. La connexió es negocia mitjançant sockets TCP/UDP i es manté un cicle constant de peticions i actualitzacions per garantir la coherència entre la simulació i el radar.

Resum dels protocols de comunicació utilitzats pel radar
Protocol Transport Freqüència Funcions principals
InSim TCP Interval configurable Events de carrera, estat del vehicle, control remot
OutSim UDP 60 Hz Vectors de posició, orientació i velocitat
Sincronització TCP & UDP Continu Gestió de latència, reconeixement de desconnexions

Arquitectura i components

La solució es divideix en capes ben definides que faciliten l’extensió del projecte:

Entrada de dades

Clients d’InSim i OutSim que encapsulen la comunicació amb Live for Speed.

Sockets TCP/UDP

Processament

Motor de càlcul que filtra posicions, distàncies i gestiona el context multijugador.

Normalització de vectors

Renderitzat

Mòduls de radar ASCII i HUD per mostrar informació contextual i alertes.

Interfície textual

Configuració

Gestor de paràmetres amb recàrrega en calent i validacions en temps real.

JSON dinàmic

Flux d’execució

  1. Carrega de configuració i establiment de connexions amb InSim/OutSim.
  2. Recepció contínua de paquets de telemetria i events de carrera.
  3. Processament de la informació per detectar proximitats, col·lisions i context.
  4. Actualització del radar ASCII i del HUD amb la darrera informació disponible.
  5. Registre d’events i gestió de comandes d’usuari fins que es finalitza el programa.

Casos d’ús

Configuració

Totes les opcions s’editen a config.json. A continuació tens l’estructura bàsica i els camps més rellevants per adaptar el radar al teu servidor de LFS:

Python 3.10+ Sense dependències externes Recàrrega en calent
{
  "insim": {
    "host": "127.0.0.1",
    "port": 29999,
    "admin_password": "",
    "interval_ms": 100
  },
  "outsim": {
    "port": 30000,
    "update_hz": 60
  },
  "sp_radar_enabled": true,
  "sp_beeps_enabled": true,
  "mp_radar_enabled": true,
  "mp_beeps_enabled": false,
  "beep_mode": "standard"
}

Ajusta els valors segons la teva configuració d’InSim/OutSim i recorda que els canvis es recarreguen en calent mentre el programa està en execució.

Com executar-ho

Amb la configuració preparada i Live for Speed apuntant al teu equip, llança l’aplicació així:

python main.py

Prem Ctrl + C per aturar el radar quan vulguis.

Documentació en PDF

Consulta els manuals originals de Live for Speed per aprofundir en la configuració i protocols:

Referència tècnica

Els components principals del radar estan implementats als mòduls següents:

Consulta els fitxers anteriors per entendre l’estructura modular i detecta ràpidament punts on afegir noves funcionalitats o depurar comportaments.

Preguntes freqüents

Necessito permisos d’administrador per utilitzar el radar?
No, només cal tenir accés al servidor o host local on s’executa Live for Speed.
Es pot executar en Windows i Linux?
Sí, qualsevol plataforma amb Python 3.10+ és compatible.
Com puc afegir nous temes de color?
Afegeix les opcions corresponents a config.json i reinicia el procés per aplicar-les.

Roadmap / Estat del projecte