The problem
A daily leaderboard is only fair if everyone flies the same course and every score can be checked. That needs a game whose physics give the same result on every phone, from the same input.
Role
Everything: the game, the backend, the store release and the operations.
Key decisions
- No framework, no build step. The game is plain JavaScript modules on a 2D canvas, wrapped with Capacitor for Android, so what is tested is exactly what ships.
- Deterministic replays. A flight is its inputs. The physics carry a version, and changing them means bumping the version and regenerating a corpus of recorded flights that the tests replay.
- One course a day. Every player in the world flies the same course on the same day, so the leaderboard compares like with like.
- A small backend. A .NET service on Azure keeps the monthly and all-time leaderboards in Cosmos DB and backs up progress behind a hashed recovery code.
Where it stands
Published on Google Play.