0of 0 down
wave 0.00m/s
0.00× √(gh)
elapsed 0.000s
0% of the stored energy released
0fps

Dominoes

Two things go by that name, and this app is both of them. Stand a line of tiles on end and push the first, and you get a toppling wave — a cascade in which several tiles are leaning on one another at once and the energy that knocks over the last one came from the first by way of everything in between. Deal the same tiles out and you get a game, the standard double-six block or draw game, which is what most of the world means by dominoes.

Everything here runs in your browser. This app calls no model, makes no network request after the page has loaded, and keeps nothing but your running score in your own browser.

Toppling

Pick a layout, set the gap and the two friction coefficients, and knock the first tile over. The wave speed shown in the corner is measured exactly the way a stopwatch would measure it: from where each tile stood and when it was struck. Nothing internal to the physics is read to produce it.

The game

A double-six set is 28 tiles carrying every pair of numbers from blank to six. You and the computer draw seven each; the rest is the stock. Play alternately onto either end of the line, matching the number showing. In the block game a player who cannot go draws until they can, and when neither side can move the game is blocked. In the draw game you may draw as often as you like and may not pass while the stock still holds tiles. The winner scores the pips left in the loser's hand — plus the pips left in the stock, in the draw game. Doubles are laid crosswise, as they are on a table.

Controls

Drag to turn the camera, scroll or pinch to zoom. K knocks the first tile over, R stands them up again, P pauses, S changes the speed, and G switches between the toppling table and the game.

Credit, and what is original here

Dominoes is a traditional game with no author and no owner — it is in the public domain, and the European double-six set has been played since the eighteenth century. The physics of the toppling wave, though, does have authors, and this app is checked against them:

The engine, the layouts, the renderer, the tile art, the computer's playing style and every line of code here are this app's own. CREDITS.txt gives the full list with URLs and marks which numbers came from a document and which this app chose.

Limits, and every number this page quotes

Everything below is measured from the engine that runs on this page, not typed in by hand. tools-harness-page.js re-measures each tagged figure against the engine and fails the build if the page and the physics have drifted apart. Where a number comes from a document it is marked; where it is this app's own choice, that is marked too.

What the sources fix

What this app chose, because nothing published fixes it

What the physics produces

The spacing window, which has two edges and they are different things

How much bigger the next tile can be

How it is checked

What is wrong with it, or unproven

Dominoes · an independent, self-contained browser app. credits and sources · licence · llms.txt