Keep simulation independent from rendering
A fixed-step simulation and seeded traffic make gameplay rules testable without a browser renderer; this is an update interval, not a measured frame-rate guarantee.
A browser, Windows, and Linux arcade game that separates flight simulation, rendering, and local progression so routing rules remain testable across delivery targets.





1 / 5
A flight-path drawing game needs collision and landing rules that agree with what players see, while keeping progress meaningful across short sessions and different screen layouts.
Flight paths require mouse, touch, or pen input; keyboard navigation alone does not cover gameplay.
Browser and desktop saves are separate and local, with no cloud sync or save export.
Browser offline play requires an initial online visit and successful asset caching.
Resizing or changing orientation can invalidate an active airfield layout; broader real-device testing and difficulty tuning remain ongoing.
A framework-independent TypeScript simulation feeds Phaser rendering and pointer interactions. DOM menus coordinate sessions, IndexedDB persists local progression, and Vite builds browser and Electron delivery targets.
Fixed-step updates at 1/60 second, seeded random traffic, flight-path geometry, and aircraft-shaped collision polygons live outside Phaser.
Phaser scenes render airfields and aircraft, while pointer routes guide aircraft to matching landing zones. DOM menus expose difficulty, career, achievements, and settings.
IndexedDB stores versioned saves, career progression, achievements, and records. Completed shifts contribute progress; practice and abandoned shifts do not.
Vite and a service worker support cached browser play. Electron loads bundled assets through a restricted custom protocol, with AppImage and Snap packaging for Linux. Windows players can install the game from the Microsoft Store.
A fixed-step simulation and seeded traffic make gameplay rules testable without a browser renderer; this is an update interval, not a measured frame-rate guarantee.
Collision outlines follow the airframe heading and exclude selection halos, shadows, and rotor blur so visual effects do not become fatal collision surfaces.
Recording outcomes only when a shift finishes keeps practice, restarts, and abandoned sessions from inflating career progress.
The browser uses cached assets and site-local saves; the desktop app bundles assets and maintains separate local saves rather than implying cross-device synchronization.





1 / 5
Share your challenge, scope, and timeline to start a focused conversation.