ctm / mb2-doc

Mb2, poker software
https://devctm.com
7 stars 2 forks source link

folded with no action to player in bomb pot #1334

Closed ctm closed 4 months ago

ctm commented 4 months ago

Fix the bug that showed up in this evening's tournament 5172 that had smalltalkdan fold when there was no bet.

This may be due to some problems we've seen with advanced action as well as pot-sized bet calculation. It appears the GUI thinks there's a bet when there's not.

ctm commented 4 months ago
Screenshot 2024-03-05 at 07 11 38

There's no action here, but the advanced-action checkbox says "Fold" and one checkbox is "Call 100", meaning the GUI thinks there's a 100 bet.

FWIW, I checked this on the original bomb pot structure that I did for BARGE 2021 and it had the same problem. There's a chance that this is a regression, although I guess there's a chance that nobody noticed the problem in 2021. I don't even remember if we had the GUI then. How time flies.

ctm commented 4 months ago

This is related to the blinds being set as Some(0, 0) instead of None. There is very likely a regression related to how mb2 now picks up the big blind from min_bet rather than from a Blinds message, because the Blinds message doesn't contain the amount of the big blind, but instead has the amount the player blinded which may be less due to not having enough chips. In games with blinds, min_bet in the first betting round is indeed the big blind, but in a bomb pot scenario, min_bet is the amount of the ante.

So, changing the blinds in the structure to None will probably solve this, but I'd also like to put something in the server that issues a warning if we get a 0 big blind in the structure, since we really should just have None for blinds.

ctm commented 4 months ago

I added a sanity checker for the structure that currently makes sure that none of the Stakes fields contain Some(x) where x is logically 0. I then fixed our three bomb pot structures to use blinds: None and verified that doing so fixes this problem as well as #1335 and #1336.

Deploying shortly.