Haven Station is under attack and never stops being so. Join whoever is flying, launch from the hangar, fight the raiders and the Swarm side by side, and leave whenever you like: the sector goes on without you. What you shoot down pays credits for better ships and upgrades, and those stay yours for the next visit.
This device seems to have no mouse and keyboard. The game needs them, or a game controller.
Loading …
| Mouse | steer (the first click takes the mouse, Esc gives it back and pauses) |
| Left / right mouse button | lasers / missile (wait for the lock tone) |
| W / S or mouse wheel | throttle |
| Shift / X | afterburner / brake |
| A / D | roll |
| T / R / Tab / H | target: nearest hostile / in your sights / next / your attacker |
| G | dock at Haven Station (follow the HAVEN marker): repairs, rearms and opens the hangar with its ships and upgrades |
| C / F3 / F11 | cockpit view / frame rate / fullscreen |
| Game controller | sticks steer and roll, triggers fire, A afterburner, B brake, Start pauses |
| Size | about 14,000 lines of C; the whole game is a download of about 1 MB |
| Engine | none. No game engine and no 3D framework: the game draws with WebGL 2 directly (OpenGL ES 3.0 on the Raspberry Pi) |
| Models | no modelling tool. Ships and stations are put together in code from boxes, cylinders, wings and skin stretched over cross-sections; the asteroids are noise with craters |
| Textures | none. Hull panels are drawn by a shader, the nebula sky and the planets are computed once per sector |
| Picture | HDR rendering with bloom, tone mapping and edge smoothing, in eleven small shader programs |
| Sound | no recordings. A software mixer plays 38 synthesized effects and music in seven moods that is composed while it plays |
| Libraries | SDL 2 for window, input and sound output, FreeType for the letters, Emscripten to bring the same C code into the browser |
| Multiplayer | a small server, also written in C, runs the sector with the game's own world code. Your ship is flown on your machine, so the controls answer at once; everything else is synchronised 20 times per second over a WebSocket |
| Made for | the Raspberry Pi 5, where the game runs at 60 frames per second in 1080p |
Everything you see and hear is generated in your browser when the game starts; that takes a few seconds. Your pilot (credits, ships, upgrades) is kept on the server under a key that this browser stores: another browser, or one whose site data was cleared, starts a new pilot. There is a single-player campaign too: nova.tbidev.com. Licenses