Skip to main content

Snake

Snake generates five rounds with either two or four dice per round. Every die uses its own four-byte window, and all windows advance through one deterministic random stream.

Interactive Snake verifier

Follow every die across all five rounds

Edit the inputs and see the floats, byte cursors, dice, code, and final rounds update.

1
Step 1 of 5

Generate the mnemonic seeds

Snake begins with two editable 12-word BIP-39 phrases.

mnemonic must be a non-empty string, got
Edit the inputUpdates automatically
Code usedgenerateMnemonic()
const clientMnemonic = generateMnemonic()
const serverMnemonic = generateMnemonic()

Technical data for this step

Format
BIP-39 English mnemonic
Entropy
128 cryptographically secure random bits
Length
12 words including checksum
Client ownership
Player-selected or generated as a default
Server ownership
Generated and committed before the round
1 of 5

What the verification proves

  • Every die is deterministic. The same server seed, client seed, nonce, and dice selection always reproduce the same five rounds.
  • The byte cursor advances correctly. Each die begins four bytes after the previous one, including when the stream crosses into a new HMAC block.
  • The dice selection is part of the result. Two dice produce 10 draws; four dice produce 20 draws.
  • The complete calculation is visible. Floats, byte windows, die values, functions, parameters, and final rounds are shown in the wizard.

The server seed must have been committed before the bet and revealed afterward. The seeds determine the dice; payout coefficients do not take part in generating them.