Welcome, Guest. Please login or register.
May 12, 2021, 10:33:23 PM
Home Help Login Register
News:

Shanky Technologies Poker Bot Support Forum  |  General Category  |  PPL Support (Moderator: sngbot)  |  Topic: PLO Blockers 0 Members and 1 Guest are viewing this topic.
Pages: [1] Print
Author Topic: PLO Blockers  (Read 947 times)
tapthatace
Botter
***

Karma: 5
Posts: 160


« on: March 09, 2021, 10:29:32 PM »

I am looking for a way to determine if my hand has any blockers to a flush draw.  Any suggestions?
Logged
ykcip75
Experienced Botter
*****

Karma: 68
Posts: 394


Shanky Bonus Bots Rock!


« Reply #1 on: March 12, 2021, 04:08:50 PM »

Unfortunately there is no easy way to it...

Preflop

First you need 4 User variables to determine if you have a spade or heart or club or diamond in your hand...

ex: when (hand = Ac or hand = Kc or hand = Qc ... or hand = 2c) User_ClubInHand etc..

Then on the flop

if the flop is rainbow there are probably other dangers you should be more worried about than flushes right?
if the flop is two tone you need to idenfify if there is two spades,hearts,clubs,diamonds on the flop...

ex : when (Board = AcKc or Board = AcQc .... or Board = 3c2c) User_Flop_TwoPlus_Clubs

And you can make sure the flop is not monotone by using when User_Flop_TwoPlus_Clubs and SuitsOnBoard = 2
Or you can use when User_Flop_TwoPlus_Clubs and not FlushPossible.

if the flop is monotone you can use when User_Flop_TwoPlus_Clubs and FlushPossible
Or when User_Flop_TwoPlus_Clubs and SuitsOnBoard = 1


Then on the turn you have to do the same thing

rainbow turn (You are safe here)
3 tone turn
2 tone turn Flush not possible
2 tone turn Flush possible
Monotone turn
Logged
JoeBing
Botter
***

Karma: 5
Posts: 108


« Reply #2 on: March 14, 2021, 09:15:58 AM »

I am looking for a way to determine if my hand has any blockers to a flush draw.  Any suggestions?

I need sleep so it's impossible to get my brain into a solution-focused state right now, but since I'm reading the post anyway, I think the double-backdoorflush code can be a start, to be able to tweak it to get the result you are after:

Preflop I have this code:

Code:
//*========================-- [[ Double-Backdoor Flush Draw ]] --=====================*
//-[userFLOP_HERO_DoubleBackDoorFlushDraw]- (This rest of this code is used Post-Flop)
//*===================================================================================*
// [DFD] Double BackDoor Flush Draw ( Hand Code ) -[User_CH]-[User_CD]-[User_CS]-[User_HS]-[User_HD]-[User_SD]-
WHEN ( (Hand = Ac OR Hand = Kc OR Hand = Qc OR Hand = Jc OR Hand = Tc OR Hand = 9c OR Hand = 8c OR Hand = 7c OR Hand = 6c OR Hand = 5c OR Hand = 4c OR Hand = 3c OR Hand = 2c ) AND ( Hand = Ah OR Hand = Kh OR Hand = Qh OR Hand = Jh OR Hand = Th OR Hand = 9h OR Hand = 8h OR Hand = 7h OR Hand = 6h OR Hand = 5h OR Hand = 4h OR Hand = 3h OR Hand = 2h) ) User_CH
WHEN ( (Hand = Ac OR Hand = Kc OR Hand = Qc OR Hand = Jc OR Hand = Tc OR Hand = 9c OR Hand = 8c OR Hand = 7c OR Hand = 6c OR Hand = 5c OR Hand = 4c OR Hand = 3c OR Hand = 2c ) AND ( Hand = Ad OR Hand = Kd OR Hand = Qd OR Hand = Jd OR Hand = Td OR Hand = 9d OR Hand = 8d OR Hand = 7d OR Hand = 6d OR Hand = 5d OR Hand = 4d OR Hand = 3d OR Hand = 2d) ) User_CD
WHEN ( (Hand = Ac OR Hand = Kc OR Hand = Qc OR Hand = Jc OR Hand = Tc OR Hand = 9c OR Hand = 8c OR Hand = 7c OR Hand = 6c OR Hand = 5c OR Hand = 4c OR Hand = 3c OR Hand = 2c ) AND ( Hand = As OR Hand = Ks OR Hand = Qs OR Hand = Js OR Hand = Ts OR Hand = 9s OR Hand = 8s OR Hand = 7s OR Hand = 6s OR Hand = 5s OR Hand = 4s OR Hand = 3s OR Hand = 2s) ) User_CS
WHEN ( (Hand = Ah OR Hand = Kh OR Hand = Qh OR Hand = Jh OR Hand = Th OR Hand = 9h OR Hand = 8h OR Hand = 7h OR Hand = 6h OR Hand = 5h OR Hand = 4h OR Hand = 3h OR Hand = 2h ) AND ( Hand = As OR Hand = Ks OR Hand = Qs OR Hand = Js OR Hand = Ts OR Hand = 9s OR Hand = 8s OR Hand = 7s OR Hand = 6s OR Hand = 5s OR Hand = 4s OR Hand = 3s OR Hand = 2s) ) User_HS
WHEN ( (Hand = Ah OR Hand = Kh OR Hand = Qh OR Hand = Jh OR Hand = Th OR Hand = 9h OR Hand = 8h OR Hand = 7h OR Hand = 6h OR Hand = 5h OR Hand = 4h OR Hand = 3h OR Hand = 2h ) AND ( Hand = Ad OR Hand = Kd OR Hand = Qd OR Hand = Jd OR Hand = Td OR Hand = 9d OR Hand = 8d OR Hand = 7d OR Hand = 6d OR Hand = 5d OR Hand = 4d OR Hand = 3d OR Hand = 2d) ) User_HD
WHEN ( (Hand = As OR Hand = Ks OR Hand = Qs OR Hand = Js OR Hand = Ts OR Hand = 9s OR Hand = 8s OR Hand = 7s OR Hand = 6s OR Hand = 5s OR Hand = 4s OR Hand = 3s OR Hand = 2s ) AND ( Hand = Ad OR Hand = Kd OR Hand = Qd OR Hand = Jd OR Hand = Td OR Hand = 9d OR Hand = 8d OR Hand = 7d OR Hand = 6d OR Hand = 5d OR Hand = 4d OR Hand = 3d OR Hand = 2d) ) User_SD

//--- End of PreFlop DoubleBackDoorFlush Code ---


FLOP I have this code:

Code:
//*========================-- [[ Double-Backdoor Flush Draw ]] --=====================*
//-[userFLOP_HERO_DoubleBackDoorFlushDraw]- (Hand Code moved to Pre-Flop)
//*===================================================================================*
// [DFD] Double BackDoor Flush Draw ( Board Code ) -[User_Board_CH]-[User_Board_CD]-[User_Board_CS]-[User_Board_HS]-[User_Board_HD]-[User_Board_SD]-
WHEN ( (Board = Ac OR Board = Kc OR Board = Qc OR Board = Jc OR Board = Tc OR Board = 9c OR Board = 8c OR Board = 7c OR Board = 6c OR Board = 5c OR Board = 4c OR Board = 3c OR Board = 2c ) AND ( Board = Ah OR Board = Kh OR Board = Qh OR Board = Jh OR Board = Th OR Board = 9h OR Board = 8h OR Board = 7h OR Board = 6h OR Board = 5h OR Board = 4h OR Board = 3h OR Board = 2h) ) User_Board_CH
WHEN ( (Board = Ac OR Board = Kc OR Board = Qc OR Board = Jc OR Board = Tc OR Board = 9c OR Board = 8c OR Board = 7c OR Board = 6c OR Board = 5c OR Board = 4c OR Board = 3c OR Board = 2c ) AND ( Board = Ad OR Board = Kd OR Board = Qd OR Board = Jd OR Board = Td OR Board = 9d OR Board = 8d OR Board = 7d OR Board = 6d OR Board = 5d OR Board = 4d OR Board = 3d OR Board = 2d) ) User_Board_CD
WHEN ( (Board = Ac OR Board = Kc OR Board = Qc OR Board = Jc OR Board = Tc OR Board = 9c OR Board = 8c OR Board = 7c OR Board = 6c OR Board = 5c OR Board = 4c OR Board = 3c OR Board = 2c ) AND ( Board = As OR Board = Ks OR Board = Qs OR Board = Js OR Board = Ts OR Board = 9s OR Board = 8s OR Board = 7s OR Board = 6s OR Board = 5s OR Board = 4s OR Board = 3s OR Board = 2s) ) User_Board_CS
WHEN ( (Board = Ah OR Board = Kh OR Board = Qh OR Board = Jh OR Board = Th OR Board = 9h OR Board = 8h OR Board = 7h OR Board = 6h OR Board = 5h OR Board = 4h OR Board = 3h OR Board = 2h ) AND ( Board = As OR Board = Ks OR Board = Qs OR Board = Js OR Board = Ts OR Board = 9s OR Board = 8s OR Board = 7s OR Board = 6s OR Board = 5s OR Board = 4s OR Board = 3s OR Board = 2s) ) User_Board_HS
WHEN ( (Board = Ah OR Board = Kh OR Board = Qh OR Board = Jh OR Board = Th OR Board = 9h OR Board = 8h OR Board = 7h OR Board = 6h OR Board = 5h OR Board = 4h OR Board = 3h OR Board = 2h ) AND ( Board = Ad OR Board = Kd OR Board = Qd OR Board = Jd OR Board = Td OR Board = 9d OR Board = 8d OR Board = 7d OR Board = 6d OR Board = 5d OR Board = 4d OR Board = 3d OR Board = 2d) ) User_Board_HD
WHEN ( (Board = As OR Board = Ks OR Board = Qs OR Board = Js OR Board = Ts OR Board = 9s OR Board = 8s OR Board = 7s OR Board = 6s OR Board = 5s OR Board = 4s OR Board = 3s OR Board = 2s ) AND ( Board = Ad OR Board = Kd OR Board = Qd OR Board = Jd OR Board = Td OR Board = 9d OR Board = 8d OR Board = 7d OR Board = 6d OR Board = 5d OR Board = 4d OR Board = 3d OR Board = 2d) ) User_Board_SD

//-[userFLOP_HERO_DoubleBackDoorFlushDraw]-
WHEN ( ( User_CH AND User_Board_CH )
or ( User_CD AND User_Board_CD )
or ( User_CS AND User_Board_CS )
or ( User_HS AND User_Board_HS )
or ( User_HD AND User_Board_HD )
or ( User_HD AND User_Board_HD) )
AND DOUBLESUITED
userFLOP_HERO_DoubleBackDoorFlushDraw

//--- End of Board Double-Backdoor Flush Draw ---

So a possibility of creating user groups for the board state *(Diamonds, Hearts, Spades, Clubs)

Also... HaveFlushDraw can be used for blockers:

HaveFlushDraw AND ( NOT HaveFlush ) AND ( NOT SuitsInHand = 1 )can be used for at least 2 blockers
SuitsInHand = 1 AND HaveFlushDraw AND ( NOT HaveFlush ) can be used for 4 blockers
HaveBackdoorFlushDraw AND ( NOT HaveFlush ) may? work for 1 Blocker? ( I wouldn't trust this one 100% )
(The hardest part as I see it, is to determining when you have 3 blockers)

( I think combining the code above with the suggestions by YkCIP75 )
« Last Edit: March 14, 2021, 09:51:54 AM by JoeBing » Logged
tapthatace
Botter
***

Karma: 5
Posts: 160


« Reply #3 on: March 16, 2021, 05:27:41 PM »

thanks guys for the assistance -- I was able to take what both of you provided and used it to create code for flush blockers!!!  I gave you both Karma for the assistance!
Logged
JoeBing
Botter
***

Karma: 5
Posts: 108


« Reply #4 on: April 10, 2021, 02:28:15 PM »

Just started adding blockers to my profile and think this is the best way for when you have 3 of one suit in your hand

Code:
When SuitsInHand = 2 and ( NOT DoubleSuited )

So for me, I want to bet bigger when I have the nutflushdraw if I have 3 of one suit in my hand because I am blocking one of my own outs to the nuts, so would rather try and take it down instead of keeping the pot multiway:

    
Code:
When HaveNutFlushDraw and ( NOT HaveFlush ) AND SuitsInHand = 2 and ( NOT DoubleSuited ) RaisePot Force

Code:
When HaveFlushDraw AND ( NOT HaveFlush ) AND DoubleSuited // 2 Blockers
When HaveFlushDraw AND SuitsInHand = 2 and ( NOT DoubleSuited ) // 3 Blockers

Must've been pretty tired when made my 4 blocker suggestion because I cannot make sense of what I wrote.. how can I have 4 blockers without having a flush!?!?  .. So still stumped as to how to do 4 blockers, although probably wouldn't need to use it, unless I had a "non" nutflush and could then maybe have more courage to bet knowing that its less likely that others have the nutflush if I have 4 cards in hand.. or if I had a "NUTflush".. I could bet smaller knowing that it's less likely the opponents have a flush... so maybe my other code can just be modified in this way:

Code:
When HaveFlush AND ( NOT HaveNutFlush ) AND SuitsInHand = 1
Code:
When HaveNutFlush AND SuitsInHand = 1 

Anyway for the "1 blocker" hands, I'm going to trial this code:
Quote

// FLUSH BLOCKERS

When FlushPossible AND Raises = 0 AND Bets = 0 AND NOT ( HaveFlush OR RaisesBeforeFlop )

// NutFlush Blocker with Backup

   When HaveNutFlushCard
   AND ( HaveNutStraightDraw or HaveTwoPair or HaveSet or HaveTrips or HaveStraight )
   Bet 75% Force

// NutFlush Blocker ( A )

   When ( ( Board = Kh and Board = Qh and Hand = Ah )
   or ( Board = Kd and Board = Qd and Hand = Ad )
   or ( Board = Kc and Board = Qc and Hand = Ac )
   or ( Board = Ks and Board = Qs and Hand = As ) )
   Bet 2 Force

// 2ndNutFlush Blocker ( K )

   When ( ( Board = Ah and Board = Qh and Hand = Kh )
   or ( Board = Ad and Board = Qd and Hand = Kd )
   or ( Board = Ac and Board = Qc and Hand = Kc )
   or ( Board = As and Board = Qs and Hand = Ks ) )
   Bet 2 Force

// 2ndNutFlush Blocker ( Q )

   When ( ( Board = Ah and Board = Kh and Hand = Qh )
   or ( Board = Ad and Board = Kd and Hand = Qd )
   or ( Board = Ac and Board = Kc and Hand = Qc )
   or ( Board = As and Board = Ks and Hand = Qs ) )
   Bet 1 Force

// 2ndNutFlush Blocker ( J )

   When ( ( Board = Kh and Board = Qh and Hand = Jh )
   or ( Board = Kd and Board = Qd and Hand = Jd )
   or ( Board = Kc and Board = Qc and Hand = Jc )
   or ( Board = Ks and Board = Qs and Hand = Js ) )
   Bet 1 Force

Added this after watching this video on youtube (Andrew Neeme's PLO Review Session )
https://youtu.be/c64IMUK3iRA


Don't mind me, just using this post to think out loud...
Logged
Pages: [1] Print 
Shanky Technologies Poker Bot Support Forum  |  General Category  |  PPL Support (Moderator: sngbot)  |  Topic: PLO Blockers
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!