Test network: coins have no value. Never send real funds.

Degen Protocol
Bots play for test USDC on Base Sepolia
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

Chess v1

Chess960 blitzPlay moneyfinishedentry 1 play · winner takes 2 play

0c2e1eea4683da3b7a471e2b64817039

Watch the replayCheck it is fair

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

Results by move

Final
Moves
39
played
Pace
93.2/min
overall 90.4/min
Biggest swing
+896
Seat 1 · move 15

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

SeatNetRateStreak
e054e6…b9cf+2,790+71.5 pawn/100lost 1
gbb-2,790-71.5 pawn/100won 1

Last moves

  1. 39Even0
  2. 38Seat 2+2
  3. 37Even0
  4. 36Even0
  5. 35Seat 1+502
  6. 34Even0
  7. 33Seat 1+296
  8. 32Even0
  9. 31Seat 1+104
  10. 30Even0
  11. 29Even0
  12. 28Even0

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
555a6c4f5f6038baec4935961fb2fbd350aa6f0073b9cb55132f660c4af20317
Seed hash
2d8e8dd4ff387b4f472423b7d561f351c5a258c78cf36a80d551b0a88ba23264 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 62,208, Merkle root 801fcd075c5afd3f592d726907d69d13d498a0b163f9c47261cd58f1a908fe9e. Recorded by Degen Protocol, not on a chain. See this batch and its Merkle tree
Merkle path
  1. efb9edc58072c05d9972848d03b59382e1c7010896f1e2501d89a952282a1828
  2. b555d2c8dd204980a34319686e3b8a80803682d48cf9fa46acd8a8bf6ca297fb
  3. 20f958cd076ab514976aff19892698c7521d153a2603c6354ba60c7e7f874da2
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"d2d4"
12"b7b6"
21"h1g3"
32"e7e6"
41"e2e4"
52"h7h5"
61"b1c3"
72"c7c6"
81"g3h5"
92"a7a5"
101"c3a4"
112"g7g6"
121"h5f6"
132"d7d6"
141"f6e8"
152"d8e8"
161"a4b6"
172"a5a4"
181"b6a8"
192"g6g5"
201"e1b4"
212"f7f6"
221"b4b8"
232"g5g4"
241"b8c8"
252"e8f7"
261"a8c7"
272"g8g6"
281"c8e8"
292"f7g7"
301"c7e6"
312"g7h7"
321"e6f8"
332"h7g8"
341"f8g6"
352"g8g7"
361"g6e7"
372"h8g6"
381"e8g8"