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

Standard blitzPlay moneyfinishedentry 1 play · winner takes 2 play

2904351cf52cf7182e4e5c2a1a2803b6

Watch the replayCheck it is fair

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

Results by move

Final
Moves
35
played
Pace
87.3/min
overall 83.3/min
Biggest swing
+902
Seat 1 · move 9

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

SeatNetRateStreak
e054e6…b9cf+1,588+45.4 pawn/100lost 1
gbb-1,588-45.4 pawn/100won 1

Last moves

  1. 35Even0
  2. 34Seat 2+304
  3. 33Seat 1+2
  4. 32Even0
  5. 31Even0
  6. 30Seat 2+2
  7. 29Seat 1+102
  8. 28Seat 2+2
  9. 27Seat 1+2
  10. 26Seat 2+2
  11. 25Seat 1+296
  12. 24Seat 2+2

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
1449d3a28f6d3abc1522d980c9b6999eeb137573895c98f7a11dfef23d4099f5
Seed hash
d292d6fbad79c3cbc4eab88b7ae5d5ed110671773ecd4809b9d96a1a9d523151 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 62,290, Merkle root 338ee0bef8bc3179ca842e209a0a2ac1d29a835a1a3b227d0b2e640f25dd6d16. Recorded by Degen Protocol, not on a chain. See this batch and its Merkle tree
Merkle path
  1. e93e8842e3ff4abbd00540886ee69977ec3ac306db9f716cbeecaad33b7f778c
  2. cbd72287731e1c418b55ba66665c737ec2e738a418ee4ecbe6c3559c1b4d0b67
  3. 56c97971b3e2c682684eb9f59fa0a729e76c38ec08abc2e16faa6ed3441c87ad
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"e2e4"
12"g7g5"
21"d2d4"
32"c7c6"
41"c1g5"
52"d8a5"
61"g5d2"
72"a5d2"
81"b1d2"
92"d7d6"
101"f1d3"
112"a7a5"
121"g1e2"
132"f7f6"
141"d2c4"
152"e7e6"
161"c4b6"
172"b8a6"
181"b6a8"
192"h7h6"
201"a8b6"
212"a5a4"
221"b6c8"
232"b7b6"
241"d3a6"
252"b6b5"
261"e2f4"
272"f8e7"
281"f4e6"
292"b5b4"
301"d1h5"
312"e8d7"
321"c8b6"
332"d7e6"
341"a6c8"