We'll talk about some ways to make the new bot better here.
Printable View
We'll talk about some ways to make the new bot better here.
I only had time to play a few quick hands, so this is based on a very small sampling. Ninja seems better than WAZZUP, but still makes some bad/weird plays.
In FL, he set:
Q93/JT655/AAAKK
so the programmer needs to tell it to put the smaller pair in the boat, and make better use of the bigger pair.
In a regular hand he set J/5/722. Setting the J on top there is just bad, much better is xxx/75/J22. But his play on the first 2 draws was even weirder. On the first pull, he got J7x, and set the J7 in the mid, forgoing not only the JJ on top, but also the obvious 2-pair (with a good draw for a boat) on the bottom. But then he got QJx, and placed both cards on top, making JJQ/J75/722. He eventually fouled, but all 3 of these decisions were very bad. A good human player sets xxx/75/J22
and gets to Q/775/JJJ22 after 3 draws.
Thanks, Phi!
Played a few more hands just now. New bot is definitely an improvement over WAZZUP, but is still not very good.
Here are a few troubling hands (unfortunately, I can't see the cards the bot mucks, so I can't fully understand or criticize its plays):
Hand 3:
Bot sets x/Q8/JJ2, better is Q/2/JJ8
draw 1: QJx, bot plays: x/QQ8/JJJ2
my line: QQ/2/JJJ8
draw 2: K3x, bot plays: x/K3QQ8/JJJ2 (it would be much better to play the K up after taking this line)
my line: QQ/K32/JJJ8
draw 3: T6x, bot plays: T6/K3QQ8/JJJ2
my line: QQT/K32/JJJ86
4th draw: K5x, bot plays: KT6/K3QQ8/JJJ25
my line: QQT/KK532/JJJ86 (making FL)
Bot's line fails to take advantage of FL cards on set and 2nd draw.
Hand 6(?) (I might have lost count of the hands here)
bot sets Q/7/AA9, much better is Q/AA/97
I'm in FL, so I don't get to see bot's plays, but he fouls, and on the cards he has face-up at the end he could have made QQx/AAxxx/9988x (making FL)
Hand 10(?)
bot sets K/8/664, why not K/4/668?
1st draw: Q2x, bot plays: KQ/82/664
my line: KQ/42/668
2nd draw: 74x, bot plays: KQ/827/6644 (would love to know 3rd card here)
my line: KQ/4427/668
3rd draw: 99x, bot plays: KQ/99728/6644
my line: KQ/4427/99866
4th draw: Q3x, bot plays: KQ3/99728/6644Q
my line has to brick last draw too, but was live for FL on last draw (unlike bot's line) and may have had FL route if bot's unseen muck cards were helpful.
Hand 11(?)
bot sets x/8c4c/AdJd3h
This set is just awful. Far better is A/43/J8.
1st draw: T6x, bot plays: x/Tc8c4c/AdJd3h6d and has a hand with no future
my line: A/346/JT8
2nd draw: K9x, bot plays: K9/T84/AJ36
my line: AK/346/JT98
3rd draw J7x, bot plays: K9/T847/JJA63
my line: AKJ/346/JT987 (would love to know what bot has been mucking, but with cards he plays, I have to brick the top at this point)
4th draw: 84x, bot plays: K98/44T87/JJA63
my line AKJ/44863/JT987
FL may have been an option if the unseen cards helped, but bot's line was pretty much hopeless after the 1st draw, whereas my line had slim hopes for FL until after 3rd draw and ended up qualifying with a much stronger hand in the bottom.
I don't like the way he set A:h: down low utg here in hand 2 on table 7837. The ace should almost aways be set front or mid. We don't set the ace in back often unless it is part of a straight or flush.
Eric (dealer)
:ofcset::kd::ofc7::kh::ofc11::3s:
:ofcset::ac::ofcset::4c::ofc9::4s::ofc9::9s::ofc13 ::jc:
:ofcset::td::ofcset::ts::ofc7::th::ofc11::qs::ofc1 3::tc:
Discard: 8:diamond: 3:heart: J:spade: 3:club:
BetaBot
:ofc7::2h::ofc7::2c::ofc13::5h:
:ofcset::6d::ofcset::7s::ofc9::7c::ofc11::qh::ofc1 1::8h:
:ofcset::ah::ofcset::jh::ofcset::jd::ofc9::ad::ofc 13::9h:
Discard: 4:heart: 5:diamond: 9:diamond: 2:diamond:
Phi, the bot is live now. There is a BetaBot button for him next to the Waz buttons.
Should the bot have played this differently?
Keith (dealer)
:ofc7::ad::ofc11::qd::ofc13::2d:
:ofcset::4c::ofcset::7d::ofc9::tc::ofc9::kh::ofc13 ::9d:
:ofcset::5s::ofcset::qs::ofcset::as::ofc7::9s::ofc 11::3s:
Discard: 2:club: 2:heart: J:diamond: 9:heart:
BetaBot
:ofcset::4d::ofcset::4s::ofcset::9c:
:ofcset::8d::ofcset::8c::ofcset::5c::ofcset::5d::o fcset::7s:
:ofcset::ac::ofcset::kc::ofcset::qc::ofcset::js::o fcset::td:
Discard: 3:diamond:
fantasy land hand here for the bot , but is flush,two pair , J high a better set.
Yeah, he could have set 88 front for the 3 royalty points and 4455 mid here with the straight - that way he gets 2+3 royalties with the straight set.
Like you said he also could have gotten 4 royalties with a flush.
Either choice is better than what he did.
Just played another session, and there are some hands that reveal some pretty big holes in the bot's strategy.
Table 7869 found here:
http://www.flopturnriver.com/open-fa...table.php?7869
Hand 2
Bot sets xxx/A:d:T:c:/K:d:K:h:5:h:, getting very little value out of 3 FL cards. I'd set K:d:K:h:/A:d:5:h:/T:c:
1st draw: 863, bot plays: 86/AT/KK5, surrendering any chance at FL
my line: KK/A65/T8
2nd draw: 943, bot plays: 86/AT43/KK5
my line: KK3/A65/T98
3rd draw: AAJ, bot plays: A86/AJT43/KK5
my line: KK3/AA65/JT98
4th draw: AQJ, bot plays: A86/AJT43/KKAQ5
my line: KK3/AAA65/QJT98, backing into a monster
My line get very lucky on the last 2 draws, but the idea the whole way was to get value out of the FL cards that came on the set. Bot's line just had no chance to make any value after the first draw, mostly due to the awful set.
Hand 4
Bot sets K:s:/9:h:/K:d:6:d:5:d: 3-flushes are all well and good, but breaking up KK there gives away too much. I'd set K:s:K:d:/6:d:5:d:/9:h:
1st draw: A:d:T:h:8:c:, bot plays: K:s:8:c:/9:h:/A:d:K:d:6:d:5:d:
Once he went the flush-draw route, setting the A:d: low makes sense, but the 8:c: would do better in the mid in this line, I think.
my line: K:s:K:d:/6:d:5:d:A:d:/9:h:T:h:
2nd draw: T:c:9:c:7:c:, bot plays: K:s:T:c:8:c:/9:h:9:c:/A:d:K:d:6:d:5:d:
Once again, the bot surrenders the top.
my line: K:s:K:d:/6:d:5:d:A:d:/9:h:T:h:T:c:9:c:
3rd draw: 7:d:7:h:5:s:, bot plays: K:s:T:c:8:c:/9:h:9:c:8:h:7:h:5:h:/A:d:K:d:6:d:5:d:
I guess bot is worried about fouling with the flush not made yet, so he doesn't set the 77 in the mid even though there are still 5 diamonds left, but throwing away the 7:d:, which makes the flush on the bottom, seems bizarre.
my line: K:s:K:d:7:d:/6:d:5:d:5:s:A:d:/9:h:T:h:T:c:9:c:
4th draw: Q:d:8:h:6:s:, bot plays: K:s:T:c:8:c:/9:h:9:c:7:h:5:h:/A:d:K:d:6:d:5:d:Q:d:
He does make the diamond draw after all, but ends up with another weakish hand.
my line: K:s:K:d:7:d:/6:s:6:d:5:d:5:s:A:d:/9:h:T:h:T:c:9:c:Q:d:, making FL
Hand 5
Bot sets xxx/9:d:5:d:/7:c:7:d:3:s:, I prefer xxx/3:s:5:d:/7:c:7:d:9:d: because in his line if a 9 comes and a 7 doesn't, it can get awkward.
1st draw: J:d:6:s:3:h:, bot plays: xxx/J:d:9:d:5:d:/7:c:7:d:3:s:3:h:
my line: xxx/3:s:3:h:5:d:6:h:/7:c:7:d:9:d:
2nd draw: 9:c:9:s:5:s:, bot plays: 9:c:9:s:/J:d:9:d:5:d:/7:c:7:d:3:s:3:h:
Given the line he has taken, this line means he's trying to catch one of 3 Js to make 99x/JJxxx/7733x at this point, I guess.
my line: xxx/3:s:3:h:5:d:6:h:/7:c:7:d:9:d:9:c:9:s:
3rd draw: K:h:4:s:3:c:, bot plays: 9:c:9:s:/J:d:9:d:5:d:4:s:/7:c:7:d:3:s:3:h:3:c:
Yeah, the boat is made, but if he doesn't catch a 3-outer on the end, he fouls.
my line: K:h:/3:s:3:c:3:h:5:d:6:h:/7:c:7:d:9:d:9:c:9:s:, so boat on the bottom and trips in the mid are made, and freerolling for KK on top.
4th draw: A:h:8:d:2:c:, bot plays: 9:c:9:s:A:h:/J:d:9:d:8:d:5:d:4:s:/7:c:7:d:3:s:3:h:3:c: and fouls
my line: A:h:K:h:8:d:/3:s:3:c:3:h:5:d:6:h:/7:c:7:d:9:d:9:c:9:s:
I don't make the top on the end, but the hand had a chance for FL the whole way.
Some themes that keep cropping up: bot doesn't set FL cards well, often putting them low in spots where that makes no sense, bot surrenders the top hand way too early (passing on chances to backdoor FL), bot is too cautious about setting a hand in the top or mid when the hand(s) below it aren't yet made.
That's a good way of putting it. In general, if a FL card is not being used for a flush or a straight then it should not go low (in other words it should not go in back). Of course we can put aces or even kings mid if we're drawing to queens in front such that we beat them with a single pair. Queens, Kings and Aces generally don't go in back unless they are part of a straight, flush or full house draw.
Should the bot have played this differently?
Keith
:ofc7::7d::ofc9::kd::ofc11::4h:
:ofcset::tc::ofcset::kc::ofc7::3c::ofc11::3h::ofc1 3::jd:
:ofcset::5h::ofcset::8h::ofcset::ah::ofc9::5d::ofc 13::qd:
Discard: 6:spade: 2:spade: 3:spade: T:diamond:
BetaBot (dealer)
:ofcset::ad::ofc13::ks::ofc13::3d:
:ofcset::6c::ofcset::8c::ofc7::5s::ofc11::9s::ofc1 1::2c:
:ofcset::6h::ofcset::th::ofc7::qh::ofc9::9d::ofc9: :js:
Discard: 2:heart: Q:club: Q:spade: 4:club:
why discard 2h on 7th when he could put it on the bottom and discard the 5
why close out the bottom row with nothing on 9th, playing middle and top would still have kept his flush draw alive or give chance to get some pairs at least on the bottom
and looking at my play ....its just horrible lol
A new version was put up last night, supposedly plays a little better. Thank you guys for your comments - everything is duly noted.
A few hands I played
#1
givememyleg
:ofc7::kd: :ofc9::ah: :ofc13::ad:
:ofcset::2d: :ofc7::2h: :ofc9::6c: :ofc11::6h: :ofc13::qs:
:ofcset::ks: :ofcset::4s: :ofcset::js: :ofcset::5s: :ofc11::2s:
Discard 9:c: 5:c: 9:d: 4:h:
BetaBot (Dealer)
:ofc7::3d: :ofc9::jd: :ofc13::qc:
:ofcset::7h: :ofcset::2c: :ofc7::7s: :ofc11::5h: :ofc13::9s:
:ofcset::8s: :ofcset::ts: :ofcset::th: :ofc9::8d: :ofc11::tc:
Discard 3:c: 6:s: 4:d: J:h:
^^ Putting the 3 up top on the first draw is bad. I would have put it in the middle.
#2
givememyleg
:ofcset::4h: :ofcset::4c: :ofcset::qc:
:ofcset::9s: :ofcset::9h: :ofcset::jc: :ofcset::8s: :ofcset::7s:
:ofcset::kd: :ofcset::ks: :ofcset::kh: :ofcset::3d: :ofcset::3c:
Discard 5:h:
BetaBot (Dealer)
:ofc7::ac: :ofc11::6d: :ofc13::2c:
:ofcset::5s: :ofcset::3h: :ofc7::ts: :ofc11::kc: :ofc13::qd:
:ofcset::jd: :ofcset::2d: :ofcset::7d: :ofc9::9d: :ofc9::4d:
Discard Q:h: 6:h: 8:h: 5:c:
^^ This one is terribly bad. On the last draw, the bot fouled when it could have put the 5c in the middle.
#3
givememyleg (Dealer)
:ofc9::qd: :ofc13::8d: :ofc13::ac:
:ofcset::3c: :ofcset::3s: :ofcset::5d: :ofc7::7d: :ofc9::7c:
:ofcset::js: :ofcset::qs: :ofc7::2s: :ofc11::2c: :ofc11::2d:
Discard 6:c: J:h: A:d: 4:c:
BetaBot
:ofc7::as: :ofc11::kc: :ofc13::qc:
:ofcset::4s: :ofcset::6d: :ofc7::9c: :ofc11::6h: :ofc13::kh:
:ofcset::8h: :ofcset::ah: :ofcset::9h: :ofc9::8s: :ofc9::7h:
Discard 6:s: J:d: 4:h: K:d:
^^ I have no idea what it's thinking here on the 2nd draw. The 7h definitely belongs on the bottom, but not the 8s. The 8s belongs up top here.
#4
givememyleg
:ofcset::ks: :ofc7::8c: :ofc9::kd:
:ofcset::2d: :ofcset::6c: :ofc7::7s: :ofc9::7c: :ofc13::6d:
:ofcset::5h: :ofcset::4h: :ofc11::th: :ofc11::ah: :ofc13::8s:
Discard 3:d: 8:d: A:s: 5:s:
BetaBot (Dealer)
:ofc9::6s: :ofc9::2s: :ofc11::kh:
:ofcset::6h: :ofcset::2h: :ofc7::2c: :ofc11::4d: :ofc13::jd:
:ofcset::9c: :ofcset::3c: :ofcset::3h: :ofc7::9d: :ofc13::3s:
Discard 7:d: A:d: K:c: J:h:
^^ On the second draw, BetaBot has two pair locked up in the bottom, the 6s absolutely needs to go in the middle along with the Ad up top, discarding the 2s. Putting the 6s2s up top there is a very bad play.
btw, I'm just posting the hands BetaBot misplayed. It did play a few good hands, so it is getting better!
Alex - if you have any questions as to why I would play some of these hands differently, or place a card in a certain spot, let me know and I can go into more detail than just saying "I would have put this up top" etc. to help give you a better understanding.
Carl, thanks for your thoughts.
Actually, for now just saying whether the decision is wrong is good enough. The "bombs" are the results of rules stepping on each other's toes - that's always the problem with heuristics. I think I have a pretty good idea of how to streamline its placing logic and make it more aggressive towards FL. I'll try to code it up tonight - not promising anything, but we'll see if it makes any difference.
The bot went Q / 9 / 383 but Q / 8 / 393 is better.
Eric
:ofcset::kc::ofc11::kh::ofc11::7d:
:ofc7::9c::ofc7::ts::ofc9::5h::ofc13::td::ofc13::t h:
:ofcset::5c::ofcset::4s::ofcset::7c::ofcset::6d::o fc9::8c:
Discard: 4:club: 7:spade: J:club: K:diamond:
BetaBot (dealer)
:ofcset::qc::ofc11::2h::ofc13::2d:
:ofcset::9h::ofc9::9d::ofc9::jd::ofc11::3s::ofc13: :8d:
:ofcset::3h::ofcset::8s::ofcset::3c::ofc7::3d::ofc 7::8h:
Discard: 2:spade: 4:heart: 6:spade: 6:club:
#5
givememyleg
:ofcset::qd: :ofc9::kc: :ofc11::9s:
:ofcset::2h: :ofcset::th: :ofc9::jh: :ofc11::7d: :ofc13::2c:
:ofcset::as: :ofcset::5s: :ofc7::ah: :ofc7::ad: :ofc13::kh:
Discard 8:h: 3:c: 9:c: 6:h:
BetaBot (Dealer)
:ofc9::kd: :ofc11::4c: :ofc13::tc:
:ofcset::8s: :ofcset::6s: :ofc7::3s: :ofc11::7s: :ofc13::8c:
:ofcset::3h: :ofcset::2d: :ofcset::jd: :ofc7::qc: :ofc9::2s:
Discard 6:c: 5:c: A:c: J:s:
http://www.flopturnriver.com/images/full-retard.jpg
Yep, found a bug. Will have to call on the Wizard with this one. I'll let you know when it's fixed.
OK, a new version is out there. Let me know what you guys think.
The 5 card set is clearly wrong. He should go Q / X / 22TT instead of X / Q / 22TT. In other words, the queen goes front instead of mid.
Eric
:ofc7::kc::ofc11::6d::ofc13::ac:
:ofcset::5s::ofcset::4c::ofc7::5d::ofc9::7c::ofc13 ::7s:
:ofcset::3c::ofcset::3h::ofcset::jc::ofc9::jh::ofc 11::9s:
Discard: K:heart: 5:club: 2:spade: 6:club:
BetaBot (dealer)
:ofc11::kd::ofc11::4h::ofc13::6s:
:ofcset::qd::ofc7::9c::ofc7::qs::ofc9::9h::ofc13:: js:
:ofcset::2c::ofcset::th::ofcset::tc::ofcset::2h::o fc9::ts:
Discard: 7:heart: 8:spade: 8:club: 7:diamond:
Hmm, we had it working just fine. I'll check again. Thanks, Eric.
I think his second draw was wrong - he should have a pair of fours mid.
Eric
:ofcset::qh::ofc7::qd::ofc11::6s:
:ofcset::7c::ofc7::2d::ofc9::5d::ofc11::2c::ofc13: :qs:
:ofcset::jd::ofcset::jc::ofcset::8h::ofc9::th::ofc 13::3s:
Discard: Q:club: K:club: 3:diamond: 3:club:
BetaBot (dealer)
:ofcset::ac::ofc7::9c::ofc13::kh:
:ofcset::4h::ofcset::7s::ofc7::6h::ofc11::js::ofc1 3::9s:
:ofcset::kd::ofcset::8d::ofc9::5h::ofc9::4s::ofc11 ::9d:
Discard: J:heart: 2:heart: 9:heart: T:club:
His first draw is wrong - the king goes front instead of mid.
Eric
:ofc9::ad::ofc13::ac::ofc13::qd:
:ofcset::9c::ofcset::2c::ofc7::2s::ofc7::4c::ofc9: :4s:
:ofcset::jh::ofcset::3h::ofcset::2h::ofc11::6h::of c11::9h:
Discard: 5:club: 9:spade: 8:club: J:club:
BetaBot (dealer)
:ofc9::7s::ofc9::8d::ofc11::4h:
:ofcset::ts::ofc7::tc::ofc7::ks::ofc11::9d::ofc13: :td:
:ofcset::qs::ofcset::3c::ofcset::3d::ofcset::qh::o fc13::3s:
Discard: 6:spade: 7:diamond: 8:heart: 5:heart:
ShHere is another example of a five card set issue, the queen goes front and not mid.
Eric
:ofc9::qc::ofc9::3d::ofc13::2d:
:ofcset::9h::ofcset::td::ofc11::kd::ofc11::6h::ofc 13::tc:
:ofcset::ac::ofcset::2c::ofcset::4c::ofc7::9c::ofc 7::8c:
Discard: 3:heart: 2:spade: 4:diamond: 2:heart:
BetaBot (dealer)
:ofc7::7d::ofc9::kh::ofc13::qs:
:ofcset::th::ofcset::qh::ofc7::5h::ofc9::5c::ofc13 ::jh:
:ofcset::js::ofcset::8h::ofcset::8d::ofc11::jc::of c11::ah:
Discard: 6:club: 7:club: 6:diamond: 6:spade:
The ace of clubs on the first draw goes front instead of mid.
Eric (dealer)
:ofcset::ks::ofc7::qd::ofc11::kh:
:ofc9::3c::ofc9::7s::ofc11::8d::ofc13::6c::ofc13:: 7c:
:ofcset::td::ofcset::th::ofcset::4s::ofcset::4h::o fc7::ts:
Discard: 8:club: T:club: J:diamond: 2:heart:
BetaBot
:ofcset::ad::ofc7::3h::ofc11::8h:
:ofcset::7d::ofc7::ac::ofc9::kc::ofc9::qs::ofc11:: 7h:
:ofcset::js::ofcset::5c::ofcset::jc::ofc13::9s::of c13::qh:
Discard: 6:spade: 2:club: 9:heart: 4:diamond:
OK, more of the same - I'll check into it tonight.
The 2:s: should not go in front with his five card set.
Eric
:ofc7::ac::ofc9::qd::ofc13::ah:
:ofcset::tc::ofcset::2c::ofc7::th::ofc9::7h::ofc13 ::7d:
:ofcset::as::ofcset::ts::ofcset::8s::ofc11::ks::of c11::3s:
Discard: 9:heart: K:club: J:heart: 6:spade:
BetaBot (dealer)
:ofcset::2s::ofc7::kd::ofc13::6d:
:ofcset::6h::ofcset::8h::ofc11::4d::ofc11::4c::ofc 13::6c:
:ofcset::jd::ofcset::ad::ofc7::5d::ofc9::2d::ofc9: :td:
Discard: 3:club: 5:heart: 9:diamond: Q:spade:
The 6:h: on the 2nd draw should go mid instead of front.
Eric (dealer)
:ofc7::qd::ofc9::qh::ofc13::ts:
:ofcset::5d::ofcset::3s::ofc7::2d::ofc9::3c::ofc11 ::5s:
:ofcset::6s::ofcset::6c::ofcset::8c::ofc11::kd::of c13::td:
Discard: 4:heart: A:club: 9:heart: 4:club:
BetaBot
:ofcset::qc::ofc9::6h::ofc13::3h:
:ofcset::js::ofc7::4s::ofc11::ah::ofc11::jc::ofc13 ::jh:
:ofcset::7c::ofcset::9c::ofcset::9d::ofc7::7h::ofc 9::7d:
Discard: 2:spade: T:heart: A:spade: 4:diamond:
This 5 card set of
A:s: / 7:h: 8:h: / 3:c: K:s: is wrong.
The ace should be mid and the 78 suited should be on the bottom.
Something like this is better:
K:s: / A:s: 3:c: / 7:h: 8:h:
This setting error is compounded
with drawing errors. Setting 4
to a flush mid with just K3 offsuit
in back is a huge mistake.
Eric
:ofcset::qc::ofc7::qs::ofc13::7c:
:ofcset::9s::ofc9::6h::ofc11::jc::ofc11::jd::ofc13 ::5c:
:ofcset::3d::ofcset::6d::ofcset::8d::ofc7::2d::ofc 9::kd:
Discard: 5:heart: T:spade: 8:club: 5:diamond:
BetaBot (dealer)
:ofcset::as::ofc7::jh::ofc9::ad:
:ofcset::8h::ofcset::7h::ofc7::2h::ofc9::qh::ofc13 ::9d:
:ofcset::ks::ofcset::3c::ofc11::kh::ofc11::tc::ofc 13::2c:
Discard: A:club: 4:club: 6:club: 4:heart:
Agreed. I also dislike the set. I'd argue that
:ofcset::qc:
:ofcset::7c:
:ofcset::9c::ofcset::9d::ofcset::js:
is significantly better. The bot came out okay when he caught two more 7s and two more Js, but setting the J in the mid and the 7 low could have easily led to problems. If you pair the J in the mid but can't make better than 9s-up in the back, you have no shot at FL.
I thought the bot was adjusted
to not put non-fl cards like 8
in front on the 5 card set.
This set is wrong.
This set would be better:
X / 2:s: 4:d: / 8:h: 9:d: T:s:
Eric
:ofcset::kh::ofcset::kc::ofc7::qc:
:ofcset::2d::ofc11::3s::ofc11::jc::ofc13::jd::ofc1 3::ad:
:ofcset::7d::ofcset::8c::ofc7::6c::ofc9::9c::ofc9: :tc:
Discard: T:diamond: 4:heart: K:diamond: 7:spade:
BetaBot (dealer)
:ofcset::8h::ofc9::3c::ofc13::ac:
:ofcset::4d::ofcset::9d::ofc7::9h::ofc11::qh::ofc1 3::qd:
:ofcset::2s::ofcset::ts::ofc7::js::ofc9::qs::ofc11 ::5s:
Discard: A:heart: 7:club: 5:diamond: 2:heart:
The 6:d: on his first draw should go mid instead of front.
Eric
:ofcset::kc::ofc9::kh::ofc9::qs:
:ofcset::ad::ofcset::4h::ofc7::2h::ofc11::2d::ofc1 1::4c:
:ofcset::8c::ofcset::7h::ofc7::jc::ofc13::jh::ofc1 3::js:
Discard: 3:heart: T:spade: K:diamond: T:diamond:
BetaBot (dealer)
:ofc7::6d::ofc7::ah::ofc13::2s:
:ofcset::4s::ofcset::6s::ofc9::ks::ofc11::qd::ofc1 3::ac:
:ofcset::7c::ofcset::7d::ofcset::5c::ofc9::5s::ofc 11::5h:
Discard: 6:club: 8:diamond: Q:heart: 8:spade:
Queen on first draw goes front instead of mid.
Eric
:ofc7::kc::ofc9::qc::ofc13::jd:
:ofcset::8s::ofcset::4c::ofc7::2h::ofc11::8c::ofc1 3::ts:
:ofcset::tc::ofcset::th::ofcset::9d::ofc9::td::ofc 11::ah:
Discard: 5:diamond: 3:club: 6:spade: 7:heart:
BetaBot (dealer)
:ofcset::ad::ofc9::6c::ofc13::3s:
:ofcset::7s::ofc7::qs::ofc9::9s::ofc11::4s::ofc13: :qh:
:ofcset::5c::ofcset::jc::ofcset::js::ofc7::5h::ofc 11::8h:
Discard: A:club: 5:spade: 6:heart: K:diamond:
He should have set the Q:h: in the front instead of the back.
Eric (dealer)
:ofcset::ks::ofc7::qd::ofc11::9s:
:ofcset::3c::ofcset::6s::ofc7::6d::ofc9::5h::ofc13 ::kh:
:ofcset::7h::ofcset::7c::ofc9::8s::ofc11::8c::ofc1 3::9h:
Discard: 2:spade: A:diamond: 6:club: 4:heart:
BetaBot
:ofc7::jh::ofc7::9d::ofc13::8d:
:ofcset::4s::ofcset::ts::ofc9::kd::ofc9::8h::ofc11 ::4c:
:ofcset::2d::ofcset::2h::ofcset::qh::ofc11::qc::of c13::2c:
Discard: J:diamond: 4:diamond: 7:diamond: T:heart:
The bot made sure he would foul with the way he played his third draw. Setting four to a flush mid with just a straight in back, he guaranteed himself a foul.
Eric (dealer)
:ofcset::qs::ofcset::qc::ofc11::7h:
:ofcset::2s::ofc7::9c::ofc9::5d::ofc11::5c::ofc13: :ac:
:ofcset::4d::ofcset::4h::ofc7::4s::ofc9::8d::ofc13 ::jc:
Discard: 6:diamond: 7:club: 6:club: 3:heart:
BetaBot
:ofc7::kh::ofc7::ks::ofc13::9s:
:ofcset::5h::ofcset::6h::ofc11::qh::ofc11::th::ofc 13::2d:
:ofcset::js::ofcset::8c::ofcset::7d::ofc9::9d::ofc 9::td:
Discard: J:heart: 6:spade: T:club: Q:diamond:
New version is out - seems rid of "stupid tricks". Let me know how it does.
had this error message , bot was in fantasyland
heur.php:265: Slot F is full while trying to add 4h (from heur.php: 96) on table 8358
Thanks, Keith, forwarded on.
The bot's set isn't good:
K / A6 / 44
is better.
Eric
:ofcset::qs::ofcset::qh::ofc11::ac:
:ofcset::2h::ofc7::2d::ofc7::3d::ofc9::3h::ofc9::a d:
:ofcset::8s::ofcset::9h::ofc11::9d::ofc13::9s::ofc 13::as:
Discard: 5:spade: 6:club: 3:spade: 3:club:
BetaBot (dealer)
:ofcset::ah::ofc9::ts::ofc11::qd:
:ofcset::6d::ofc7::js::ofc11::jc::ofc13::8h::ofc13 ::tc:
:ofcset::4d::ofcset::4h::ofcset::ks::ofc7::4c::ofc 9::4s:
Discard: 9:club: 5:club: 5:heart: 2:club:
I didn't see all the discards but I'm guessing the bot could have played the mid better.
Eric (dealer)
:ofcset::ac::ofc9::qd::ofc11::as:
:ofcset::4c::ofcset::4h::ofc7::3c::ofc11::6h::ofc1 3::6s:
:ofcset::8h::ofcset::9s::ofc7::9d::ofc9::9c::ofc13 ::js:
Discard: T:club: 2:heart: 7:spade: 2:spade:
BetaBot
:ofc7::ts::ofc9::kc::ofc11::ks:
:ofcset::4s::ofcset::2d::ofc7::3d::ofc13::6d::ofc1 3::7c:
:ofcset::jh::ofcset::3h::ofcset::qh::ofc9::7h::ofc 11::th:
Discard: J:diamond: 5:club: 8:spade: 4:diamond:
It is probably simplest to program this bot to never set trips in front unless he's in fl.
The bot messed up by setting trip kings in front on his second draw.
He only has a flush in back so he needs to beat trip kings mid without beating his flush. Trip aces are not possible because I'm showing 2 aces. Drawing 4 runners to a straight or a flush is highly unlikely.
Eric
:ofc11::8c::ofc13::ah::ofc13::qc:
:ofcset::2c::ofcset::ac::ofc7::2h::ofc7::4h::ofc11 ::4s:
:ofcset::6s::ofcset::9s::ofcset::qs::ofc9::3s::ofc 9::as:
Discard: 9:diamond: 4:diamond: 4:club: 6:heart:
BetaBot (dealer)
:ofcset::kh::ofc7::ks::ofc9::kc:
:ofc9::9c::ofc11::7s::ofc11::js::ofc13::9h::ofc13: :7d:
:ofcset::3h::ofcset::qh::ofcset::8h::ofcset::5h::o fc7::jh:
Discard: 8:diamond: 3:club: 8:spade: T:diamond:
This A:d: / K:s: 3:s: / 2:c: T:h: set is terrible.
This bot is setting mid flushes way too often.
I'll say it again - don't set a flush mid if you're weak on bottom.
The odds of getting a full house or quads on bottom when starting with T2 offsuit are low.
Many other sets would be better here including these:
K:s: / A:d: 2:c: 3:s: / T:h:
X / A:d: K:s: 2:c: 3:s: / T:h:
A:d: / 2:c: T:h: / K:s: 3:s:
Eric (dealer)
:ofcset::kh::ofcset::qd::ofc11::ah:
:ofcset::2d::ofcset::3h::ofc7::5h::ofc11::8h::ofc1 3::3d:
:ofcset::jc::ofc7::9h::ofc9::js::ofc9::7h::ofc13:: kd:
Discard: 8:diamond: 7:spade: Q:spade: 4:heart:
BetaBot
:ofcset::ad::ofc7::6d::ofc13::6c:
:ofcset::3s::ofcset::ks::ofc9::qc::ofc11::3c::ofc1 3::kc:
:ofcset::th::ofcset::2c::ofc7::2s::ofc9::2h::ofc11 ::6h:
Discard: 5:club: 5:diamond: 4:club: 4:diamond:
The bot made big mistakes on the third draw.
Choosing from 5:h:, Q:s: and A:c:, we want to maximize our odds of beating KK mid.
I'm showing a queen and the bot discarded a queen on the previous draw so there can only be one queen left.
There can only be two aces left.
There are no fives shown anywhere so there should be three of them left.
Clearly we want to put the 5:h: mid here.
We should also put the A:c: in back to complete our full house. This will give us 6 royalty points if we don't foul plus we can now get trip sevens mid.
Eric (dealer)
:ofcset::2h::ofcset::qc::ofc13::ad:
:ofc7::3c::ofc9::6c::ofc9::tc::ofc11::ts::ofc11::3 h:
:ofcset::js::ofcset::jh::ofcset::8c::ofc7::8d::ofc 13::td:
Discard: 7:heart: 4:club: 9:spade: 9:club:
BetaBot
:ofc9::kh::ofc9::kd::ofc11::5h:
:ofcset::7d::ofcset::4d::ofc7::7s::ofc11::ac::ofc1 3::5c:
:ofcset::2c::ofcset::2s::ofcset::2d::ofc7::ah::ofc 13::5d:
Discard: 8:spade: Q:heart: Q:spade: 3:spade:
Thanks, Eric. I'll go through the placing logic once more. What is your overall impression of the current logic, is it getting closer to where you want it to be?
Yes, it is getting better.
Bad set - the ace and king should be switched.
Eric (dealer)
:ofcset::kd::ofc7::qc::ofc9::qs:
:ofcset::jh::ofc7::8d::ofc9::3s::ofc11::3c::ofc11: :8s:
:ofcset::9s::ofcset::9d::ofcset::9c::ofc13::qd::of c13::5c:
Discard: 2:heart: K:club: 5:spade: 3:heart:
BetaBot
:ofcset::ah::ofc11::3d::ofc13::6c:
:ofcset::kh::ofcset::7s::ofc9::7d::ofc11::4s::ofc1 3::as:
:ofcset::jc::ofcset::4c::ofc7::th::ofc7::ts::ofc9: :jd:
Discard: 2:spade: 4:diamond: 2:club: J:spade:
Bad set - Q / 5 / 229 is better.
Eric
:ofc9::kh::ofc13::js::ofc13::5s:
:ofcset::6d::ofc7::jh::ofc9::7d::ofc11::7h::ofc11: :7s:
:ofcset::9c::ofcset::9s::ofcset::4h::ofcset::4c::o fc7::9h:
Discard: 4:spade: 3:club: T:spade: 3:spade:
BetaBot (dealer)
:ofc7::jd::ofc7::ks::ofc9::kd:
:ofcset::9d::ofcset::5d::ofc11::ad::ofc11::td::ofc 13::2d:
:ofcset::2s::ofcset::qh::ofcset::2h::ofc9::qd::ofc 13::8h:
Discard: 3:heart: 6:heart: T:heart: 6:club:
The bot eliminated himself from fl on just the first draw by setting it wrong.
Eric (dealer)
:ofc9::qs::ofc11::td::ofc13::3s:
:ofcset::2s::ofcset::6c::ofcset::8c::ofc11::qc::of c13::qd:
:ofcset::jd::ofcset::9d::ofc7::7d::ofc7::4d::ofc9: :6d:
Discard: 2:heart: 6:spade: 9:spade: Q:heart:
BetaBot
:ofc7::3c::ofc7::tc::ofc9::7h:
:ofcset::8d::ofcset::2d::ofc9::ad::ofc11::8s::ofc1 3::2c:
:ofcset::9c::ofcset::5s::ofcset::5c::ofc11::8h::of c13::ah:
Discard: J:club: 3:heart: 3:diamond: A:spade:
Bad set - the 3:c: and 9:d: should be switched.
Eric
:ofc9::kd::ofc11::jc::ofc13::8d:
:ofcset::2c::ofcset::4d::ofcset::5d::ofc7::5h::ofc 13::jd:
:ofcset::9c::ofcset::7s::ofc7::8c::ofc9::6d::ofc11 ::ts:
Discard: 5:club: Q:club: 9:spade: 3:heart:
BetaBot (dealer)
:ofc7::qh::ofc9::as::ofc13::6c:
:ofcset::8h::ofcset::9d::ofc7::td::ofc9::kh::ofc13 ::6s:
:ofcset::3c::ofcset::2s::ofcset::2h::ofc11::ad::of c11::2d:
Discard: 7:diamond: 5:spade: Q:diamond: 7:club:
The pattern that keeps emerging is the tendency to set a small pair with a small kicker in the bottom and two connected larger number cards in the mid. This is often catastrophic because unless you make at least trips in the bottom, you can't make 2 middle pairs in the mid, and therefore can't make FL. The program must be telling the bot to place any pair in the bottom and to value setting connected cards in the mid. The combination of those instructions must be what leads to sets like this. Instead, the algorithm should be something like:
If starting 5 contains 1 pair
-----{if pair is FL pair
----------{set it on top
-----------set other cards such that J-7 go low and 2-6 go mid}
-----{else set it low with biggest non-FL card as kicker
----------{if other cards contain no FL cards, set them in mid}
----------{else set FL card on top and other card in mid}}
[dashes inserted above because I couldn't get the post to preserve my tabbing.]
This would get the bot to ignore connectivity of the other cards when the starting 5 contains a pair.
This wouldn't always get the same set that a skilled human player would make, but it would avoid sets like the one you posted about. The big problem seems to be how to get a program to consider all of the nuances that a good player takes into account (often automatically and subconsciously). That's why, if it were possible, it would be way better to program a bot by first entering a gigantic database of hands played by skilled human players and then having the bot check how similar hands were most successfully played in the past, and following the most successful line. I am so ignorant of programming that I don't know if that's even possible, but it would seem that writing code to cover all of the factors that a skilled human player takes into account on the set and the first draw is just unattainably complicated.
Eric, the case in the 6:44 post is getting into a really murky territory. In the absence of a FL card, with x/89o/322 it set a pair on the back with the first trey that has been played thus maximizing its chances of getting fh or better, while drawing to an open-ended straight in the middle. Switching 9 and 3 there would cut down on EV significantly in this spot. While I am not arguing the reasoning, programming it to set it as you suggested would be, in fact, programming against its current objectives.
I agree with the rest.
I've polished the placing code to eliminate some more of its obvious errors and will let you know when the update is live. We can look at it some more then.
I must have been writing my response as Phi was writing his. Good thoughts, Phi.
The logic does not contain specific instructions on how to place. It determines the ev of all possible sets and chooses the one with the highest value. This is because, like Phi is saying, writing out instructions for each situation would lead to an endlessly long program and is not a right approach. Bot does, however, filter out some undesirable sets, and those filters could be more or less specific. You can probably see for yourself here the big difference between the rules on "how to place" and "how not to place" as the latter is a lot more general.
Do you really see it as catastrophic to set it like this, Phi? With your explanation, I can see how it can be disadvantageous sometimes, but the odds of getting trips are still 41%. I do agree though, that this habit of drawing to straights and flushes in the middle gets in the way sometimes. Let's just see how this new version does and we'll go from there. I'll let you all know as soon as it's up.
Got this error when both hit FL. Clicked ok and it dealt the hands.
http://i57.tinypic.com/b7gs3l.jpg
I think it's catastrophic but we can keep playing against the bot to confirm my thoughts.
Per http://www.flopturnriver.com/pokerfo...fl-197179.html, our data tells us that fl is worth about 10 bonus points (on top of the 7+ royalties for having QQ+ in front). We also know that this bot doesn't get to fl as often as it should because it makes mistakes overplaying the middle hands.
It wouldn't be as easy to beat this bot if he made better decisions with the middle hands.
Quote:
Let's just see how this new version does and we'll go from there. I'll let you all know as soon as it's up.
Sounds good. We can work on the other issues and circle back to this later. Maybe it's not as catastrophic as I think.
I've been monitoring that kicker on the 5 card set situation and it looks like it does put it in awkward situations in later rounds quite a bit. I will try to fix it.
If the chances of making trips or better are 41%, that means the chances of NOT making trips or better are 59%. In those hands, you have a very hard time making a 2-pair hand in the back big enough to beat 9s-up or 8s-up in the mid. Putting yourself in a position on the set that will lead to fouling or making no royalties half the time or so just has to be a bad plan.
I'm not sure how the program calculates EV, but I have played tens of thousands of hands of POFC, and I have learned from experience that setting a small pair with a small kicker in the back is not a winning line.
To add a little more:
Players making the transition from OFC to POFC often think that the main idea of the game is to make big hands in the back, and that making royalties in the mid and top are nice extras, but not the focus of the set. However, I'd argue that POFC is mostly about making QQ+ in front, and making royalties in the back and/or mid are nice extras. So the focus of my sets is to try to give myself the maximum chance to make FL.
Probably the most-common, easiest-to-make route to FL is to make FL pair/2 pair/2 pair. xxx/98/223 makes that structure very unlikely, whereas xxx/83/922 gives you a better shot at it. I'm not saying I am thrilled to have xxx/83/922 as my set, just that I think it's much more likely to make FL over a large number of trials than xxx/98/223 is.
Definitely, Phi - I am convinced. Looking through the hands the bot plays it is obvious that the higher kicker has to be in B in that spot. Thanks a ton.
FYI, speaking of the odds, I meant making just trips is 41% (which means higher % for trips or better). But that does not make a whole lot of difference.
Well, like somebody said once "there is not a dead horse that I would not just keep on beating"... The odds of trips on a 223 set is 41%, runner-runner FH 22333, 13%, and 22223 quads 8% - for a grand total of 62% of having higher than two pair.
the other 38% though are you making it a lot more likely to then foul since you are less likely to be able to beat your mid and your mid limits your chance to get to fantasyland without fouling.
Should the bot have played this differently?
Keith
:ofcset::6s::ofc9::js::ofc13::td:
:ofcset::2h::ofcset::2c::ofc7::ad::ofc11::4s::ofc1 3::4d:
:ofcset::kh::ofcset::ah::ofc7::5h::ofc9::5c::ofc11 ::as:
Discard: 8:diamond: 3:spade: 6:diamond: 5:diamond:
BetaBot (dealer)
:ofcset::qh::ofc9::8h::ofc11::qc:
:ofcset::6h::ofcset::3c::ofc11::6c::ofc13::ts::ofc 13::2s:
:ofcset::jd::ofcset::7d::ofc7::7s::ofc7::7h::ofc9: :jc:
Discard: 4:club: 8:club: 4:heart: Q:spade:
is bot limitting his options by going for fantasy land in this hand on 11th as his "6" outs are non existent since i set 1 and discarded 1 .Leaving him drawing to a "3" or getting a pair dealt. Should he aim to protect his royalties from his boat and try to ensure a no foul?
Per http://www.flopturnriver.com/pokerfo...le-196748.htmlQuote:
is bot limitting his options by going for fantasy land in this hand on 11th as his "6" outs are non existent since i set 1 and discarded 1 .Leaving him drawing to a "3" or getting a pair dealt. Should he aim to protect his royalties from his boat and try to ensure a no foul?
the bot has about a 17% chance of getting a pair with his last 3 cards.
He can't know what you discarded so he also thinks he has 1 six as an out (he's showing 2 and you're showing 1) and 3 threes as outs. He can't know that it is really 0 sixes and just 2 threes because of your discards.
Is it worth it for him to go for fl here and risk the 6 royalties he has with the boat?
Probably not.
Sorry for misunderstanding your math claim.
I'm doing a really bad job of articulating my point. All of those chances to improve to trips, runner-runner FH, and quads are still the same whether you are chasing 2s and 3s or 2s and 9s. But on the (apparently 38%) of hands when the bottom does not improve that much, you can still make a hand to support an FL chance a significant additional percentage of the time by making 9s-up in the bottom and 8s-up in the mid.
You do sacrifice the chance to make a monster in the bottom and a straight in the mid by playing the disconnected 83 in the mid, but I don't think that the times when you do that are few enough that it should tilt the set that way.
Should the bot have played this differently?
dawgboy (dealer)
:ofc11::ac::ofc13::qh::ofc13::ah:
:ofcset::5c::ofc7::5d::ofc9::4d::ofc9::4c::ofc11:: ts:
:ofcset::jh::ofcset::ks::ofcset::td::ofcset::9c::o fc7::qs:
Discard: J:spade: K:club: 4:spade: 2:club:
BetaBot
:ofc7::as::ofc9::5h::ofc13::3c:
:ofcset::tc::ofc7::8c::ofc9::8s::ofc11::8d::ofc11: :9h:
:ofcset::6s::ofcset::kh::ofcset::6h::ofcset::kd::o fc13::qc:
Discard: 8:heart: 7:spade: 3:diamond: Q:diamond:
I just played a 25-hand set with the new bot and it seems to be playing a little better. It's still making some pretty bad sets, however. Here are some problematic hands:
Egregiously poorly set hands:
Bot is dealt J:c:T:h:9:d:4:s:2:d: and sets xxx/9:d:2:d:/J:c:T:h:4:s:
I'm having a hard time understanding the EV calculation that led to this set. Why keep the disconnected suited cards in the mid when the bottom can't possibly beat a flush? Much better is xxx/4:s:2:d:/J:c:T:h:9:d:, which allows FL pair/straight/straight, FL pair/2 pair/straight, and FL pair/2 pair/2 pair hands to develop.
Bot is dealt A:c:K:c:7:s:4:s:4:d: and sets A:c:/7:s:/K:c:4:s:4:d:. Get value out of that king! Set K:c:/A:c:/4:s:4:d:7:s:
Bot is dealt K:c:Q:s:Q:c:9:d:3:s: and sets K:c:/3:s:/Q:s:Q:c:9:d:. This is truly awful. Again, get value out of FL cards by setting Q:s:Q:c:/K:c:3:s:/9:d:.
In FL bot gets A:d:K:d:Q:c:T:c:8:s:8:h:7:d:7:c:6:s:5:h:5:c:4:s:3: s:2:c: and inexplicably sets
K:d:7:c:3:s:
A:d:Q:c:T:c:8:h:5:h:
8:s:7:d:6:s:5:c:4:s:
discard 2:c:
making 2 points for the straight in back and not making even a pair anywhere else, but it could have set
A:d:K:d:8:h:
8:s:7:d:6:s:5:h:4:s:
Q:c:T:c:7:c:5:c:2:c:
discard 3:s:
for 8 in royalties and a hand with some scoop potential.
Hands I think could be set better:
Bot is dealt Q:c:9:c:6:h:3:s:2:h: and sets Q:c:/6:h:2:h:/9:c:3:s:. Again, what's the point in keeping the suited cards together in the mid? I'd set Q:c:/3:s:2:h:/9:c:6:h:.
Bot is dealt A:d:K:c:T:d:9:s:8:c: and sets K:c:/9:s:8:c:/A:d:T:d:. I guess I can't say that this is horrible--I see its plan is KKx/straight or 2 pair/flush or better 2 pair--but K:c:/A:d:/T:d:9:s:8:c: seems best to me.
Bot is dealt 7:c:6:d:4:s:4:c:2:s: and sets xxx/7:c:6:d:/4:s:4:c:2:s:. This is the hand type we talked out yesterday. I still think setting the 2 kicker in the back is a bad play. I'd switch the 7 and the 2 for xxx/6:d:2:s:/4:s:4:c:7:c:
Bot is dealt J:d:6:s:4:h:4:s:2:d: and sets xxx/J:d:6:s:/4:h:4:s:2:d:. I know I have beaten this to death, but it would be better to set xxx/6:s:2:d:/4:h:4:s:J:d:. This set is worse than the set in the hand just mentioned because the J is a pretty big card and pairing it will cut off the top unless the bottom improves to trips or better.
Bot is dealt K:s:T:h:4:s:3:h:3:c: and sets xxx/K:s:4:s:/3:h:3:c:T:h:. This is a silly waste of an FL card. I get that the plan is QQ/KK/2 pair, but I'd argue that K:s:/4:s:/3:h:3:c:T:h: is better. Is the bot being told to set suited cards in the mid? It did this several times in this session when another play seemed better.
Bot is dealt A:s:Q:c:T:h:8:c:7:s: and sets A:s:/T:h:7:s:/Q:c:8:c:. Again, I see the plan is AA/2 pair or straight/bigger 2 pair, straight, or flush, and I can't really say that's a bad plan. I'd prefer Q:c:/A:s:/T:h:8:c:7:s: though.
I agree with Phi. There is a pattern of bad sets involving 2 suited cards mid.
The bot makes a big mistake on the 3rd draw here.
Drawing 9:d:, A:h:, 8:d:, it sets A:h: and 8:d: in front and discards the 9:d:!
How can it do this?
Does it think it is likely to get BOTH 6 AND 7 for a gutshot on the last draw
or some other RUNNER-RUNNER COMBO for trips/2 pair?
If there were more eights and nines left then maybe the bot could set one of them mid and
try to draw another 5,8 or 9 for trips/2 pairs.
I like the idea of setting both mid because of the following:
-there are no nines left
-there is just 1 eight left
-as far as the bot knows there are only 2 fives left (he can't know that it is really 1 because I just discarded a five).
This way we can still get fl with the case ace and we also have about a 17% chance of drawing a pair with our last 3 cards.
Eric
:ofc11::th::ofc11::tc::ofc13::as:
:ofcset::2d::ofcset::4d::ofcset::5c::ofc7::2s::ofc 7::4c:
:ofcset::jh::ofcset::9s::ofc9::9c::ofc9::8h::ofc13 ::5d:
Discard: J:spade: 3:club: 5:heart: 3:heart:
BetaBot (dealer)
:ofcset::ad::ofc11::8d::ofc11::ah:
:ofcset::9h::ofcset::8c::ofc9::5s::ofc13::4h::ofc1 3::3d:
:ofcset::4s::ofcset::ts::ofc7::qs::ofc7::8s::ofc9: :7s:
Discard: 3:spade: J:diamond: 9:diamond: 7:heart: