Ball Orbit is a minimalist web-based arcade game I worked on recently — just one button, one core mechanic: jump between orbits with perfect timing.
Despite its simplicity, designing satisfying player feedback was surprisingly tricky. Here's what I discovered
The Power of Rhythm-Based Design
The game doesn’t use music to guide players, but the orbits themselves create a natural rhythm. Matching jump timing to this rhythm makes gameplay feel smooth and "flowy".
Tip: even in non-music games, implicit rhythm can guide player input.
Feedback Without UI
There’s no flashy UI. Just motion and momentum. I relied on:
- Scale changes to emphasize jumps
- Camera shake on missed timing
- Color transitions to indicate speed build-up
This taught me how much you can do with just motion and color.
Built with HTML5 + JS
No engines. Just plain canvas, requestAnimationFrame, and a few utility helpers for easing and collision.
function jumpToNextOrbit(current, target) {
// basic timing & position interpolation
}
Try it out:
https://ballorbit.io/