Asteroids feels like it needs a physics engine — momentum, rotation, splitting rocks, screen wrap. It doesn't. The whole thing is velocity vectors, one angle, and a screen that wraps , in about 120 lines of vanilla JavaScript on a canvas. 🎮 Play it: https://dev48v.infy.uk/game/day10-asteroids.html 1. Rotation is just one number The ship doesn't move left/right — it rotates . Arrow keys nudge a single angle : if ( left ) ship . angle -= 0.07 ; if ( right ) ship . angle += 0.07 ; Everything else —