Snooker
Snooker, built from scratch on a green baize table with a real little physics engine running the show — the balls carry momentum, roll on with a touch of follow-through after a strike, lose speed to the nap of the cloth, bounce off the cushions and trade it in elastic collisions. Fifteen reds and six colours, a proper tapered cue, and two players taking turns on the same screen. Nothing is sent to a server.
Press Rack & break to set up the table.
How to play
Aim by dragging on the table: pull straight back from the cue ball like a slingshot — the cue draws back with you, and the further you pull the harder the strike — then release to play the shot. A dashed guide shows the line of aim and where the cue ball would first make contact. You can also nudge the aim with the arrow keys and tap Space to play at the set power. On a phone the table stands upright in portrait so it fills the screen.
The rules are a friendly, simplified snooker. You must first strike a red (1 point each); pot one and you’re then on a colour — any colour you like — worth its own value: yellow 2, green 3, brown 4, blue 5, pink 6, black 7. While reds remain, potted colours are re-spotted; you alternate red, colour, red, colour, building a break. Keep potting and you keep the table.
Once the reds are gone, the colours must go in order — yellow, green, brown, blue, pink, black — and this time they stay down. Pot the final black and the frame is over; the higher score wins. Miss, or commit a foul (hitting the wrong ball first, potting the wrong ball, or going in-off), and your turn ends and your opponent is awarded penalty points — at least four. An in-off gives them the cue ball in the “D” to play from.
- ← → — rotate the aim (hold Shift for fine)
- ↑ ↓ — more / less power
- Space — play the shot
- M — mute / unmute sound
A short British fanfare plays at the start of each frame, and the knocks, rail thuds and pocket drops are all synthesised in the browser with the Web Audio API — no audio files are downloaded; their pitch and volume follow how hard the balls actually hit. Use the Sound button (or press M) to turn them off, and on a supported phone the Haptics button adds a buzz on contact; both choices are remembered. This is an original implementation and is not affiliated with, or endorsed by, any commercial product.