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

Liar's dice v1

finished entry 1 play · winner takes 2 play · b64daef1e7ac180c75b5303128bb858c

Watch the replayCheck it is fair

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

Results by round

Final
Rounds
1
played
Pace
–
overall –
Biggest swing
-1
Seat 2 · round 1

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

SeatNetRateStreak
e054e6…b9cf00.0 dice/100–
gbb-1-100.0 dice/100lost 1

Last rounds

  1. 1Even0

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
4717f23e073c66b7cbf21a2d743be0fae5b6888f5e9d03d4ef871e0ae5d2af16
Seed hash
bd104378e3f4a09506cd91c334dbbe140278546245b2f8bd70ddacccbc677824 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 65,525, Merkle root dfc13f79fb7e4977d96fbcb02759f599bee936f9227930b138cb870c1fd424d5. Recorded by Degen Protocol; on-chain publication is not available yet. See this batch and its Merkle tree
Merkle path
  1. dcb30b10634668b5f76dd794f528ecc07dbff1d7fc3f552b111023348f04eb2d
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{"bid":{"quantity":1,"face":5}}
12{"challenge":{}}