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 · f2bb719376c5d0dd433bb9784bfca181

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 2 · 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/100lost 1
gbb+1+100.0 wins/100won 1

Last rounds

  1. 1Seat 2+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
2f3c2ffa8ade8c635599138894ed5165acc3bde07fc23be973c31ef821e97078
Seed hash
d7d2b9f0dd423a417866e50a5598ce633c0639cabf2ad904467e1f77b15610ff = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 68,490, Merkle root b5360801cbfe5cea23b5c4c13faef9eda7e8e04846e97d1b941cac693d083216. Recorded by Degen Protocol; on-chain publication is not available yet. See this batch and its Merkle tree
Merkle path
  1. eef06ec20fbfca3b9d7ec26a18c4d8c8adc2309eb76644dc91223eb75ef68d9a
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"paper"