GALABET FAIR / A path you can read
Plinko.
Every left or right turn comes from a recorded fraction. Follow the ball, inspect a turn and count your way to the final bucket.
Interactive public-seed demonstration

RESULT / BUCKET
08Turn 1: right0.56117123
≥ 0.5
8 right turns → bucket 8. Read the calculation ↓
Public inputs. Real calculations.
Each new example advances the nonce and runs @galabet/fair in your browser. Results are reproducible, and the seed is visible to everyone.
Inspect this Plinko result · nonce 42
THIS EXAMPLE / NONCE 42
Keep the inputs.
Check the result.
This demonstration uses a public server seed. Its record checks the calculation; it does not establish when a live service published a commitment.
- Client seed
- galabet
- Fractions consumed
- 16
- Highest cursor
- 1
- Server seed commitment
- ab37723062965715c5e6eeb54816f909a8e787bd3bfaee67a3cc0a3b90707de7
Revealed inputs and complete JSON
{
"spec": "GFS/1.0",
"profile": "single-player",
"game": "plinko",
"params": {
"rows": 16
},
"serverSeed": "5c1f7d3e8a2b4c6d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d",
"clientSeed": "galabet",
"nonce": 42,
"commitment": "ab37723062965715c5e6eeb54816f909a8e787bd3bfaee67a3cc0a3b90707de7",
"cursor": 1,
"result": {
"path": [
1,
0,
0,
1,
0,
1,
1,
1,
0,
0,
1,
1,
1,
0,
0,
0
],
"bucket": 8
},
"at": 0
}
AN ANIMATION WITH AN AUDIT TRAIL
Find the turn.
Check the route.
When a ball animation and its recorded bucket disagree, the path identifies where they diverged. Select a turn in the demonstration to read the fraction that chose its direction.
Below 0.5
The next step goes left.
0.5 or above
The next step goes right.
R L L R L R R R L L R R R L L L8 right turns → bucket 8A path of sixteen decisions uses sixteen fractions. The bucket is the number of right turns, indexed from zero. A payout table can then assign a value to that bucket; the path mapper itself does not set the payout.
MANY ROUTES TO THE MIDDLE
The buckets are
not equally likely.
There is only one all-left path. There are many ways to mix left and right turns and reach a middle bucket. That difference explains the shape below, even though every individual turn uses the same 50/50 boundary.
If the ball lands in the wrong bucket, start at the first wrong turn.
Keep the returned path as the animation input. A renderer can play slowly, skip motion or recover after a backgrounded tab without asking for a second random result.
For QA, compare the selected turn with its fraction, count the right turns, then read the payout from the same row configuration. Those three checks locate a path error, an index error or a table mismatch.
recorded path → count of right turns → configured bucket valueREFERENCE EXAMPLE / NONCE 42
Give the renderer the recorded path
import { play } from '@galabet/fair';
// Public example inputs. Never publish an active server seed.
const seeds = {
"serverSeed": "5c1f7d3e8a2b4c6d9e0f1a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d7e8f9a0b1c2d",
"clientSeed": "galabet",
"nonce": 42
};
const { result } = await play({
game: 'plinko', ...seeds, params: { rows: 16 }
});
if (typeof result !== 'object' || result === null ||
!('path' in result) || !Array.isArray(result.path) ||
!('bucket' in result)) {
throw new Error('Expected a Plinko path and bucket');
}
const path = result.path.map(turn => turn === 0 ? 'L' : 'R');
console.log(path.join(' '));
console.log('bucket', result.bucket);R L L R L R R R L L R R R L L L bucket 8
The shape check narrows the library’s unknown result before the renderer reads its path. This example is valid TypeScript and JavaScript.
PUT THE GALABET PATH TO WORK
From the first bounce
to a replay on another screen.
Animate the returned turns.
Galabet returns the left/right decisions your board needs. Use them to guide the ball through your own artwork, with movement paced by elapsed time so the same drop plays consistently on phones and high-refresh displays.
Return to the same drop.
Keep the path with the round record and replay it when someone revisits a result. After a tab switch, your interface can resume from a saved turn or show the final bucket using those same decisions.
Show how the ball got there.
Use the recorded turns to draw a static route for readers who prefer less motion. The highlighted path, right-turn count and bucket label give them the same result to inspect, without waiting for an animation.
