Provably fair

We don't roll the dice. Ethereum does.

The website cannot pick a winner. After the host starts the table, a future Ethereum block — a public number nobody has seen yet — becomes every player's die. Anyone can check it later.

  1. You sit, then the host startsETH or an NFT goes into the table contract. 1v1 up to 10 seats. The host can start with any number of players once at least two are in. Nothing is rolled until they confirm.
  2. Wait 3 new blocksEthereum keeps adding blocks. The result is hidden during this wait, so nobody can peek and leave.
  3. That later block is every rollEvery block has a fingerprint (a hash). We turn that fingerprint into a die 1 through 6 for each player. Highest roll wins the pot.
  4. Six or more players: top 5 go to a finalThe five highest rolls advance. They wait three more blocks and roll again. Winner takes the whole pot. Ties on a face use extra bits of the same hash — no extra luck from the server.

Why you can't cheat

When the host starts, the winning block does not exist yet. You cannot pick a lucky number, and neither can we. If that block gets too old (past 256 blocks), everyone at the table gets their money back.

No house fee

The pot pays out in full. We don't take a cut of games. Mint and creator-fee revenue goes back into the platform.

How you can check

After a match, copy the reveal block from a block explorer. Plug it into the same recipe the contract uses. If the dice match what you saw in-game, the roll was honest.

The exact recipe (optional)

Mix the block hash with the table id, your wallet, the wager, the round, your seat, and a counter. Take the first byte as a die (1–6). Remaining bits break ties. Same inputs always make the same ranking.

hash = keccak256(block + table + you + bet + round + seat + counter)
your die   = 1–6 from the first byte
if 6+ sit  = top 5 advance, mix a later block for the final
winner     = highest die, hash bits break ties

Chain: Sepolia. Match contract: not deployed yet.