Hi everyone,
I have just finished a web remake of the 1981 arcade game Lady Bug, built with Phaser 4.1, TypeScript and Vite.
The game is playable directly in the browser and is mainly intended for desktop play with keyboard or gamepad controls.
This project started after I had already made a Godot 4 version of Lady Bug. I initially considered publishing a web version from Godot, but the generated web export was much larger, in the tens of megabytes. Since this is a small arcade game meant to run directly in the browser, I decided to rebuild it with Phaser 4.1 and TypeScript instead.
The result is much lighter: the source directory of the repository is only around 2 MB, and the final web build is only a few megabytes.
A lot of the reverse engineering work focused on movement rather than visuals. The player movement required careful tuning around corners, turn windows and assisted turns.
The enemy movement was probably the most complex part of the project. To validate it properly, I built a separate simulator to test and compare enemy paths and movement decisions before integrating the behavior into the Phaser version.
Lady Bug has many small arcade-specific mechanics: rotating gates, the enemy-release border timer, flowers, hearts, letters, skulls, SPECIAL / EXTRA word progress, score multipliers, vegetable bonuses, enemy freezing, death / respawn flow and level transitions.
It is a personal, non-commercial fan project made for learning, preservation and technical exploration.
Play online:
Source code:
I’d be happy to hear any feedback, especially from Phaser developers about the architecture, timing approach, or anything that could be improved in the web version.
