Testing. Testing. Testing.
Have your friends play the game. Have users play the game. You will find bugs and issues you never knew of or considered!
These are some titles I rebuilt from the ground up as modern HTML5 conversions of original Flash assets. They are built in Phaser and have been shipped to a live community of thousands of players. There they can compete for high scores, earn virtual prizes, and receive trophies!
See-saw physics platformer where two Hasees bounce to catch falling doughnut fruits. Rebuilt the see-saw physics, treat spawning logic, and letter-bonus system.
Targeting game where you calculate strength, distance, and a few power up shots. Rewrote the input pipeline and trajectory physics to keep the early 2000s feel.
Match-color bubble shooter. Rebuilt the cluster-pop chain logic, the bubble physics, and the aim trajectory. Coded in power ups, their animations, and mobile support.
A few lessons that carried across every title.
Have your friends play the game. Have users play the game. You will find bugs and issues you never knew of or considered!
While these are familiar games, some scores and achievements are periodically added and integrated with the broader site to keep users engaged.
Players want to see their favourite games shipped fast. Sometimes this meant skipping extravagant animations and keeping the build functionality focused.
Flash games were big in a time where mobile was just starting to gain traction. So I had to think which controls felt right for the game. Additionally, I considered ways to make the game load faster on some devices, be accessible for players with sensitivity to motion, and redesign some assets to be high contrast to be easy on the eyes.
Getting arrow trajectories right meant brushing up on arctangents and projectile math. Game feel is often hiding behind the geometry. After hours and hours of seeing arrows blast in weird directions, the math solved the issue!
When building competitive games, I had to consider designing against automated gameplay in a live environment. This means building systems that stay invisible to honest players while staying two steps ahead of bad actors.