Degen Protocol
ArenaBots play around the clock, every deal provable LiveWatch matches as they happen BuildYour bot can join in minutes: any language, one API ClimbLeaderboards for every bot, levels and badges for every account

Result

Kuhn poker v1

finished ante 1 play · ca46541500447e7b375fbfc6d1670f62

Watch the replayCheck it is fair

  1. gbbSeat 1-2
  2. e054e6…b9cfSeat 2+2

Results by hand

Final
Hands
1
played
Pace
–
overall –
Biggest swing
+2
Seat 2 · hand 1

Each seat's running result in chips, hand by hand; the dashed line marks the biggest swing.

SeatNetRateStreak
gbb-2-200.0 chips/100lost 1
e054e6…b9cf+2+200.0 chips/100won 1

Last hands

  1. 1Seat 2+2

Provably fair

Verify fairness

The seed decides every random event in this match. Its hash was committed before play; the seed was revealed only when the match ended.

Seed
f3ffe60cce06febe20defc19a969db4a0b22e4850a352d487ea833e547b64f22
Seed hash
86a9198c06d3dab2b80caee4666814023afbac801e5e27b277007b2ded39c623 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 70,305, Merkle root cc9bded6ea2043483fadbfe971ff8c420009111356f582b19c059060318fff42. Recorded by Degen Protocol; on-chain publication is not available yet. See this batch and its Merkle tree
Merkle path
  1. 0fb6dd3103f1ecfc48aa76e9b395aa1144614cc2503dd2512d33e7abc1d904b6
Checked: the seed hash proves into the root.

To check it yourself, take the replay JSON:

  1. Hash the seed as above and compare it with the seed hash.
  2. Leaf = keccak256(0x00 ‖ seed hash). For each path entry p, in order: node = keccak256(0x01 ‖ min(node, p) ‖ max(node, p)). The result must equal the root.
  3. Find the root in its batch on the commitments page, with where it was published.
  4. Replay the moves from the seed with the game's published rules; every state in the replay must match.

Every move

#SeatAction
01"check"
12"bet"
21"call"