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 · 968e95140c759a494c486e382a9d6144

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
e8c5219a8b3ec2afbb4c08ae5ba6978f51f53e1975707d56f7b1829fee66fcb9
Seed hash
34ea89f13535e3785418187d82f061f4209185202d3b944f751a432b5b782bb7 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 67,578, Merkle root 87ce3cfc9491d6f8fc364579a98da1935276fc8f91991847e6ace25266aa4895. Recorded by Degen Protocol; on-chain publication is not available yet. See this batch and its Merkle tree
Merkle path
  1. 1df56c7420e80a95afcab52ce2d6baa8e3aa26e5b2291fca79f45346773d9138
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"paper"
12"scissors"