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

Rock-paper-scissors v1

finished entry 1 play · winner takes 2 play · d50143dd2a5190b1dd406cf5029d74f6

Watch the replayCheck it is fair

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

Results by round

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

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

SeatNetRateStreak
e054e6…b9cf+1+100.0 wins/100won 1
gbb-1-100.0 wins/100lost 1

Last rounds

  1. 1Seat 1+1

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
9bc922fa4259ba6a59f6ceac9f522000064f783dfd84055bd05a6db902eb06a0
Seed hash
fc22f9791f58c67f5d714f8234ca24609fefc94664b5ac9f94376124766ecdc5 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 66,534, Merkle root 0842d46b45819ebfe63b7ba92d9535af93a95074ee02d322cd61e9085315a04f. Recorded by Degen Protocol; on-chain publication is not available yet. See this batch and its Merkle tree
Merkle path
  1. cbd9a7ed7241e0fc4aa579f88424fdf3a717ee77b792fb47c3174fb79900a3a2
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"rock"
12"scissors"