Heli Escape
HTML5 helicopter side-scroller built in Phaser. Featured on LinkedIn from 2016.

TL;DR
- Single-input gameplay loop with a clean fail state.
- Three-state machine, no framework overhead above Phaser.
- Mobile + desktop input handled by one Phaser pointer abstraction.
- Asset budget tight enough to load on a single round-trip.
- First self-published interactive piece — set the bar for everything after.
In motion
Real gameplay capture. One button, gravity vs. lift, obstacle pattern ramping over time. Older code, but the loop still reads.
Problem
A side-scroller is the cleanest possible game-loop test: one input, one obstacle pattern, instant fail. The interesting part isn't the gameplay — it's whether the engine, the asset pipeline and the publishing path actually hold together end-to-end. In 2016, on Phaser 2, that was less obvious than it sounds.
Approach
Single-screen Phaser scene, gravity-bound helicopter sprite, scrolling obstacle pattern that ramps difficulty on a timer. State machine with three states: title → playing → game-over. No frameworks above Phaser. Asset budget kept tiny so the whole game loads on a single HTTP round-trip. Published to a static host and posted on LinkedIn — the first piece of self-published interactive work that wasn't a school assignment.
Outcome
Featured on LinkedIn from 2016 and still the cleanest reference point I have for 'what's the smallest version of a real game'. The pipeline learnings — Phaser scene boundaries, asset preload, mobile touch input — fed directly into every Phaser project that followed (Neon Phaser, Aether Drift).
Related


