Some kind of service for Empty Epsilon.
The service reads Empty Epsilon game state via websocket. Each module subscribes to changes in the game state and acts on it.
- macOS / Linux [WLS2]
- Bun - the runtime
To install dependencies:
bun installTo run server:
PORT=8080 EE_CLIENT_WS="ws://localhost:8081" bun run main.tsxTo run Empty Epsilon mock game server to develop and test out server implementation without having to run Empty Epsilon:
PORT=8081 INTERVAL=1000 bun run ee.mock.ts
- Parse incoming websocket messages from EE into a more usable format
- Swap out websocket server to be a client that connects to EE
- Register connected spaceships by their callsigns (if those are unique...)
- Simple HTTP server to receive messages from devices
- Simple HTTP UI to display connected spaceships and devices
- Create event system that emits events when spaceship's state changes (e.g. when it enters into a nebula, takes hull damage, subystem changes)
- Module can subscribe to events such as hull damage, ship modules (reactor, shields, etc)
- support these events (list content can change...)
hullDamageshieldsStatesystemReactorsystemBeamweaponssystemMissilesystemsystemManeuversystemImpulsesystemWarpsystemJumpdrivesystemFrontshieldsystemRearshield