Canvas Arcade · Cabinet No. 08×04

NEON//BREAKER
32 bricks, three balls.

SYS 60 FPS SPD 3.4 BEST 0
CRT 400 × 600 MODE · READY
Breakout — 8 by 4 grid of cyan bricks, a paddle and a ball.
drag on screen · arrows · space

Scoring

Ten points a brick.
Nothing for mercy.

Every brick is one hit, ten points, 32 bricks on the board. 320 clears the wall and the cabinet pays out with a win screen.

Ball speed ramps a hair on every paddle return — clamped to a 4 px/frame ceiling so it stays reflex, not roulette.

Collision model

  • WallsLeft / right flip dx, ceiling flips dy, position snapped flush to the boundary.
  • PaddleHit offset from centre maps to a bounce angle up to ±60°, so edges throw wide shots.
  • BricksAABB overlap → entry side from previous position decides axis. One brick per frame, penetration resolved, magnitude preserved.
  • DeathBall passing y > 600 costs a ball; three gone is game over.

Cabinet

0000

Insert coin

Vanilla JS, one canvas, one file. Procedural WebAudio blips, 60 Hz fixed-step physics, HiDPI rendering, touch-drag paddle.

© Neon Breaker · Canvas buildIdle