BREAKOUT

32 bricks · one paddle · three lives

Canvas 2D Vanilla JS — fps
Scoreboard
0/ 320

32 bricks remain · best 0

Streak
0bricks without
touching the paddle

session best · 0

Press space to launch ← → · drag

SystemReady
Lives
Controls
  • ←→ slide paddle
  • Space launch ball
  • P pause·R restart
  • On touch: drag anywhere on the screen — the paddle follows your finger from wherever it grabs.

Operator's manualHow the cabinet thinks

01

The ball never leaves straight up — it launches at 45° and holds a constant 3.6 px/frame magnitude. Flipping a velocity component never changes its speed.

02

Impact point is everything. Strike the paddle's left or right edge and the ball throws out to ~75°; dead center sends it climbing. Paddle momentum nudges the exit angle too.

03

Bricks use AABB circle tests with sub-stepped movement: only the closest brick per frame is destroyed and the ball is pushed clear of it, so it can never get stuck inside a wall of brick.

04

Physics runs on a fixed 16.67 ms accumulator, so 120 Hz phones and 60 Hz monitors play identically. +10 a brick, 320 clears the board.