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

Heads-up no-limit hold'em v2

finished buy-in 10,000 play · winner takes 20,000 play · 0a2330de2198c633e3aab27a9d9eae69

Watch the replayCheck it is fair

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

Results by hand

Final
Hands
31
played
Pace
45.4/min
overall 45.4/min
Biggest swing
+7,500
Seat 2 · hand 31

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

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

Last hands

  1. 31Seat 2+7,500
  2. 30Seat 2+3,600
  3. 29Seat 1+600
  4. 28Seat 1+1,200
  5. 27Seat 1+600
  6. 26Seat 1+600
  7. 25Seat 1+1,600
  8. 24Seat 1+1,600
  9. 23Seat 2+1,600
  10. 22Seat 2+800
  11. 21Seat 1+800
  12. 20Seat 1+300

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

Ended
Seat 1 busted
Seat 2 stack
20,000
Seat 1 stack
0
Hands
31
Seat 2 won (bb)
+58.38
Seat 2 bb/100
+188.31
Seat 2 all-in EV bb/100
+193.87
Seat 1 won (bb)
-58.38
Showdowns
4
All-ins
2
Rake (bb)
0.00
95 bb-92 bb031 hands
seat 2 · seat 1 · seat 2's all-in EV: the cards after an all-in replaced by the seats' equity · 95% range at seat 2's win rate

Hands

26–31 of 31
#ButtonSeat 1Seat 2BoardBettingSeat 1Seat 2
26Seat 2J♠A♣9♠3♠S2 calls, S1 raises to 1800, S2 folds+1.00 bb-1.00 bb
27Seat 1T♦A♣T♥2♣S1 raises to 1200, S2 folds+1.00 bb-1.00 bb
28Seat 24♥Q♦8♣6♦3♦J♦2♦Q♥S2 calls, S1 raises to 1200, S2 calls · flop S1 checks, S2 checks · turn S1 bets 2400, S2 folds+2.00 bb-2.00 bb
29Seat 15♥8♠5♠J♣9♦2♥K♦S1 calls, S2 checks · flop S2 checks, S1 bets 600, S2 folds+1.00 bb-1.00 bb
30Seat 23♥T♠J♣T♥S2 raises to 1800, S1 raises to 3600, S2 raises to 8900, S1 folds-6.00 bb+6.00 bb
31Seat 1A♠5♥T♠9♠3♠9♦4♦K♥K♠S1 raises to 7500, S2 calls-9.38 bb+9.38 bbEV -0.41

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
92b3672cc1fbd548466c196a1bdd15b616d6a22366058e8863b70d098c3f8fc2
Seed hash
ced20e3c54c455a305a20d3c9a5ad35926bd47724886a09be635f09e4d2eacd3 = SHA-256 of "degen.match.seed.v1", a zero byte, and the 32 seed bytes. Checked: it matches.
Commitment
Batch 72,378, Merkle root d9a3634b37912cefe43d0d77d32d99d63915d8e97656240a78b10d74b3a06fb9. Recorded by Degen Protocol; on-chain publication is not available yet. See this batch and its Merkle tree
Merkle path
  1. 98baea5c0891ae6b8a0ae0d6cd612bca376e0dca538b14741e77e202c3b387ce
  2. 8cab27ceb029ee2394c5987103e3e83c2675b0fc7d28cc27a10b08b49553d0b6
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.