A Neon White mod that provides a Game State API for external programs to interact with the game.
Note
This project is part of gym-neonwhite, a Gymnasium environment for training agents to play Neon White.
The game's state is exposed as JSON through a TCP socket on port 42069.
When the player is alive, the state will be:
{
"position": [-12.15, 50.32, -398.84],
"velocity": [108.17, 0.00, -21.07],
"direction": [0.78, -0.57, -0.26],
"is_alive": true,
"is_dashing": true,
"health": 3,
"timer": 238,
"active_card": "katana",
"distance_to_finish": 376.88,
"enemies_remaining": 13,
"pov": []
}| Field | Type | Description |
|---|---|---|
| position | Vector3 | Player's position in world coordinates |
| velocity | Vector3 | Player's velocity vector |
| direction | Vector3 | Player's view direction |
| is_alive | bool | Whether the player is alive |
| is_dashing | bool | Whether the player is dashing (using Godspeed card) |
| health | int | Health points |
| timer | long | Level timer in milliseconds |
| active_card | string | Selected card |
| distance_to_finish | float | Distance to level finish |
| enemies_remaining | int | Number of enemies left to defeat |
| pov | byte[] | Raw pixel data of player's view |
- Download MelonLoader and install it on your
Neon White.exe. - Launch the game once to create required folders.
- Download the Mono version of UniverseLib and place it in the
Modsfolder. - Download
NeonState.dllfrom the Releases page and place it in theModsfolder.