Added intial plugin
This commit is contained in:
49
README.md
Normal file
49
README.md
Normal file
@@ -0,0 +1,49 @@
|
||||
# Project CARS UDP Telemetry Viewer
|
||||
|
||||
Simple TypeScript/Node app that listens for Project CARS UDP telemetry on port `5606` and displays the latest packet data in a browser table UI.
|
||||
|
||||
## Run
|
||||
|
||||
```powershell
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
Open `http://localhost:3000`.
|
||||
|
||||
In Project CARS, enable UDP telemetry/streaming and point it at this computer. The app binds UDP on `0.0.0.0:5606`.
|
||||
|
||||
## Scripts
|
||||
|
||||
- `npm run dev` starts the TypeScript server directly with `tsx`.
|
||||
- `npm run build` compiles TypeScript into `dist/`.
|
||||
- `npm start` runs the compiled server.
|
||||
|
||||
## Notes
|
||||
|
||||
The parser covers the packet types from the supplied header: car physics, race definition, participants, timings, game state, time stats, and participant vehicle/class names. The frontend focuses on the most useful live values, while the server keeps the full parsed payload available through `/api/state`.
|
||||
|
||||
## Recording and Replay
|
||||
|
||||
Stop the Node app before capturing because only one process can bind UDP `5606`.
|
||||
|
||||
```powershell
|
||||
python scripts\capture_udp.py --mode auto
|
||||
```
|
||||
|
||||
This creates a replayable session folder like `captures/session_20260514_160000` containing raw packet files and `manifest.jsonl`.
|
||||
|
||||
Replay into the Node app:
|
||||
|
||||
```powershell
|
||||
npm.cmd run dev
|
||||
python scripts\replay_udp.py captures\session_20260514_160000
|
||||
```
|
||||
|
||||
Useful replay options:
|
||||
|
||||
```powershell
|
||||
python scripts\replay_udp.py captures\session_20260514_160000 --speed 4
|
||||
python scripts\replay_udp.py captures\session_20260514_160000 --loop
|
||||
python scripts\replay_udp.py captures\session_20260514_160000 --types 1,2,3,4,7,8
|
||||
```
|
||||
Reference in New Issue
Block a user