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

Degen Protocol USDC · ETHBase Sepolia · testnet
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

Heads-up no-limit hold'em v2

Sit and goPlay moneyfinishedbuy-in 10,000 play · winner takes 20,000 play

d974eaa19d67e1174f37e1067857a7dc

Watch the replayCheck it is fair

  1. e054e6…b9cfSeat 1+10,000
  2. gbbSeat 2-10,000

Results by hand

Final
Hands
68
played
Pace
60.9/min
overall 51.0/min
Biggest swing
+8,200
Seat 1 · hand 68

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

SeatNetRateStreak
e054e6…b9cf+10,000+147.1 bb/100won 2
gbb-10,000-147.1 bb/100lost 2

Last hands

  1. 68Seat 1+8,200
  2. 67Seat 1+800
  3. 66Seat 2+800
  4. 65Seat 1+800
  5. 64Seat 1+400
  6. 63Seat 2+400
  7. 62Seat 1+400
  8. 61Seat 1+800
  9. 60Seat 1+600
  10. 59Seat 2+5,400
  11. 58Seat 1+300
  12. 57Seat 1+4,800

Results after rake, from the side of seat 1; in big blinds, each hand at its own big blind.

Ended
Seat 2 busted
Seat 1 stack
20,000
Seat 2 stack
0
Hands
68
Seat 1 won (bb)
-14.04
Seat 1 bb/100
-20.65
Seat 1 all-in EV bb/100
-18.50
Seat 2 won (bb)
+14.04
Showdowns
7
All-ins
4
Rake (bb)
0.00
85 bb-85 bb068 hands
seat 1 · seat 2 · seat 1's all-in EV: the cards after an all-in replaced by the seats' equity · 95% range at seat 1's win rate

Hands

51–68 of 68
#ButtonSeat 1Seat 2BoardBettingSeat 1Seat 2
51Seat 1J♣4♥3♠8♥5♣A♠J♠S1 calls, S2 checks · flop S2 checks, S1 bets 1200, S2 folds+1.00 bb-1.00 bb
52Seat 2T♥K♣Q♠7♠7♦6♣7♣S2 calls, S1 raises to 1200, S2 calls · flop S1 bets 1200, S2 raises to 8700, S1 folds-4.00 bb+4.00 bb
53Seat 18♣7♥2♠A♣5♥5♣2♦8♦S1 calls, S2 checks · flop S2 checks, S1 bets 600, S2 calls · turn S2 bets 1200, S1 raises to 6500, S2 folds+4.00 bb-4.00 bb
54Seat 28♥K♣7♣J♥2♠9♣T♣9♥S2 calls, S1 checks · flop S1 bets 600, S2 calls · turn S1 bets 1200, S2 folds+2.00 bb-2.00 bb
55Seat 1A♣2♥6♥4♠A♥K♦T♥S1 calls, S2 checks · flop S2 checks, S1 bets 1200, S2 folds+1.00 bb-1.00 bb
56Seat 23♦K♦6♠9♥7♠5♠J♣8♥S2 calls, S1 checks · flop S1 bets 600, S2 calls · turn S1 bets 1200, S2 raises to 6900, S1 folds-4.00 bb+4.00 bb
57Seat 12♠5♣2♣K♥A♥K♦4♦6♣S1 calls, S2 checks · flop S2 bets 600, S1 raises to 1800, S2 calls · turn S2 bets 2400, S1 raises to 7100, S2 folds+8.00 bb-8.00 bb
58Seat 23♥5♠6♦T♣S2 folds+0.50 bb-0.50 bb
59Seat 13♦K♥9♠T♥5♠4♥9♣3♥J♥S1 raises to 14600, S2 calls-9.00 bbEV +0.93+9.00 bb
60Seat 22♦K♣4♥3♦8♥T♠7♥S2 calls, S1 checks · flop S1 bets 600, S2 folds+1.00 bb-1.00 bb
61Seat 1K♥3♦8♦6♣3♣J♠J♥S1 calls, S2 checks · flop S2 checks, S1 bets 1600, S2 folds+1.00 bb-1.00 bb
62Seat 28♣T♥4♠3♥S2 folds+0.50 bb-0.50 bb
63Seat 15♥T♦6♠2♠S1 folds-0.50 bb+0.50 bb
64Seat 2K♥4♥6♠2♠S2 folds+0.50 bb-0.50 bb
65Seat 15♠5♣T♥4♥S1 raises to 11000, S2 folds+1.00 bb-1.00 bb
66Seat 28♥3♦K♣Q♥S2 raises to 8200, S1 folds-1.00 bb+1.00 bb
67Seat 1Q♠8♦3♦4♣S1 raises to 11000, S2 folds+1.00 bb-1.00 bb
68Seat 29♥K♣3♥3♠8♣2♣T♥K♥7♦S2 raises to 8200, S1 calls+10.25 bbEV -0.45-10.25 bb

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
725d84f185332748159672fd4bdd95073e5407159b73e6f4440a6a875ba358e5
Seed hash
12e6623ad38894c35b827beb46d4f88ccee25013c0c2dbfc844891e7dccb17fd = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 73,324, Merkle root f7d2318c108d33562f671818a1469a2b91cc013d1e0866d18e60257101542d06. Recorded by Degen Protocol, not on a chain. See this batch and its Merkle tree
Merkle path
  1. e5e1a22c7bc1a33058f368db986a16129e468ed21c0b1ca3a7112b14da77d153
  2. 8a8bddc7eaead197ffd03b88c64c2b3f01a61ba08883c7d3c3e9c77c11b17be3
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.