02

BadBeats

Thunderbird Labs · from the spec
Tower · provably fair · play moneybalance 1,000 · bet 10
25.12×
16.74×
11.16×
7.44×
4.96×
3.31×
2.21×
1.47×
Commitsha256(server seed), published before you pick
Your seed
Nonce1
Bust tileHMAC-SHA256(server, seed:nonce:level)[0..4] mod 3
Press New round. The house commits first.

The house commits before you pick.

  • RoleFounder, design, build
  • ShipsFrom the spec
  • DataPlay money. The verification is the product's code.

Notes

Thunderbird Labs · Next.js · Drizzle · Neon · Base · 2026
01 · The scheme

Commit, reveal, verify.

Each level's bust tile is derived, not drawn: HMAC-SHA256 keyed with the server seed over your seed, the round number and the level, first four bytes modulo three. The server seed is secret during the round and revealed after it.

Verification needs nothing from the house. Hash the revealed seed and compare it to the commitment; recompute each level and compare it to what you saw. The Verify button above does exactly that, with Web Crypto, in your browser.

Commit
sha256(server seed)
Bust
HMAC(server, seed:nonce:level)[0..4] mod 3
Odds
2 of 3 safe per level
Payout
1.5ⁿ × 0.98
Edge
2%, stated

The scheme in five lines. Nothing hidden, including the edge.

02 · The plan

Three phases, kept apart on purpose.

Phase one is this: email sign-in, the Tower, no blockchain. Phase two puts it on Base with wallet sign-in and real stakes. Phase three is growth. The order is fixed so the fairness scheme is proven before any money touches it.

Planning is complete: product, game logic, the cryptographic scheme, the schema. The build is next, and the Tower on this page is its first running piece.

Phase 1
Tower, email auth, no chain
Phase 2
Base, wallets, real stakes
Phase 3
growth
Games
Tower, then Mines, Plinko, Dice

From the project's planning documents.

03 · Learned

Specify the fairness before the game.

The proof is the product; the game is the demo of it. Writing the commitment scheme first made every later screen a matter of showing it, not inventing it.

The drawing below was the plate until tonight. The playable version above replaced it in one evening because the scheme was already decided.

The plate, as drawn before the Tower ran.

Punch list · 3 open
  • Phase 1 Tower, no chain
  • Proof panel: commit, reveal, verify
  • Database schema

This piece as markdown

Piece 2 of 6. Left and right arrow keys move between pieces.

ContactOklahoma City
© 2026 Dalton CoxEmail is the best way to reach me