Welcome, Guest. Please login or register.
April 09, 2020, 09:31:36 PM
Home Help Login Register
News:

Shanky Technologies Poker Bot Support Forum  |  General Category  |  PPL Support (Moderator: sngbot)  |  Topic: What's wrong with my code for this scenario? 0 Members and 1 Guest are viewing this topic.
Pages: [1] Print
Author Topic: What's wrong with my code for this scenario?  (Read 307 times)
ferotaro
Confused Newbie
*

Karma: 0
Posts: 12


« on: March 14, 2020, 10:38:37 PM »

I didn't like how DoodleMTT will limp with weak suited kings so I added this line toward the bottom of the preflop code:

When (hand = K2 suited or hand = K3 suited or hand = K4 suited or hand = K5 suited or hand = K6 suited or hand = K7 suited or hand = K8 suited or hand = K9 suited) and raises = 0 and calls <= 2 and stilltoact >= 3 fold force

Yet it then proceeded to limp K9 suited (from default code, no custom line sourced) in middle position with zero calls or raises and with 4 left to act.

What did I do wrong? Should I change it to "and calls = 0" ?
« Last Edit: March 15, 2020, 01:57:52 AM by ferotaro » Logged
Egor
Forum Admin
Extreme Botter
*****

Karma: 358
Posts: 33297



WWW
« Reply #1 on: March 15, 2020, 04:43:28 AM »

Quote
I added this line toward the bottom of the preflop code:

You probably attached it to an open when condition in the above codeblock

Put it at the top of the preflop section and it will be obeyed

or better yet, just start your own text profile since the Doodle loads in .ppl format be default anyway

---------------------

custom
preflop

When (hand = K2 suited or hand = K3 suited or hand = K4 suited or hand = K5 suited or hand = K6 suited or hand = K7 suited or hand = K8 suited or hand = K9 suited) and raises = 0 and calls <= 2 and stilltoact >= 3 fold force
Logged

Please do not PM me about license issues or help stuff - email me or use the Help board. Thanks! -Egor
ferotaro
Confused Newbie
*

Karma: 0
Posts: 12


« Reply #2 on: March 15, 2020, 07:08:18 AM »

I see, and what is the best way to determine which open codeblock would be the culprit? I did rename the DoodleMTT as a custom .txt and have been slowly modifying existing lines or adding code as I see fit. My strategy for a lot of the added code is to put it at the bottom of that round of actions codeblock, logic being that if it's not properly addressed in a line above, it will eventually get to my custom lines to avoid a default bot decision.

These are the most recent additions to the code, and I would speculate that likely one of these is the open when condition. But which applies to a suited K9? I'm having trouble deciphering.

When (hand = K J) and not (hand = k suited or stacksize < 40) and StillToAct >= 4 fold force

When (hand = AJ or hand = AJ suited)
When StillToAct >= 7 and StackSize < 30 fold force
When raises = 0 and StackSize >= 25 raisemin force
When raises = 1 and BetSize <= 2 and StackSize >= 25 call force
When raises >= 2 fold force
When ( BotsLastAction = raise  or BotsLastAction = call )  and BetSize < 35% PotSize call force
When ( BotsLastAction = raise  or BotsLastAction = call )  and raises = 1 and BetSize < 40% Potsize call force
When calls = 1 and StillToAct <= 3 raisemin force
When calls = 1 and StillToAct >= 4 call force
When calls >= 2 and StillToAct <= 3 call force
When calls = 0 and StillToAct >= 5 and StackSize < 20 fold force

When raises = 0 and calls = 0 and StillToAct <= 2 and (hand = AK or hand = AQ or hand = AJ or hand = AT or hand = A9 or hand = A8 or hand = A5 or hand = A4 or hand = A3 or hand = A2 or hand = QK or hand = KJ or hand = KT or hand = JQ or hand = JT or hand = 55 or hand = 66 or hand = 77 or hand = 88 or hand = 99 or hand = TT) raise 2 Force

When raises = 0 and calls = 0 and StillToACt <= 2 and not (hand = AK or hand = AQ or hand = AJ or hand = AT or hand = A9 or hand = A8 or hand = A5 or hand = A4 or hand = A3 or hand = A2 or hand = QK or hand = KJ or hand = KT or hand = JQ or hand = JT or hand = 55 or hand = 66 or hand = 77 or hand = 88 or hand = 99 or hand = TT) Fold Force

When (hand = A6 suited or hand = A7 suited or hand = A8 suited or hand = A9 suited) and raises = 0 and calls <= 2 and stilltoact >= 3 fold force
When (hand = A2 suited or hand = A3 suited or hand = A4 suited or hand = A5 suited or hand = AT suited) and raises = 0 and calls <=2 and stilltoact >= 3 raisemin force

When (hand = K2 suited or hand = K3 suited or hand = K4 suited or hand = K5 suited or hand = K6 suited or hand = K7 suited or hand = K8 suited or hand = K9 suited) and raises = 0 and calls <=2 and stilltoact >= 3 fold force

When (hand = 22 or hand = 33 or hand = 44 or hand = 55 or hand = 66 or hand = 77)
When stilltoact >= 6 and stacksize < 40 fold force
When raises >= 2 fold force
When raises = 1 and betsize <= 2 and stacksize >= 30 call force
When raises = 0 and calls = 0 and stacksize >= 35 raisemin force


So would it be best to just add this to the top of my preflop code as you suggested? Would a carefully placed When Others end the offending open when condition? Where would I put that?
Logged
Egor
Forum Admin
Extreme Botter
*****

Karma: 358
Posts: 33297



WWW
« Reply #3 on: March 15, 2020, 06:44:00 PM »

In what you posted, everything under this line:

When (hand = AJ or hand = AJ suited)


...is tied to it, including conflicting lines that could never be true such as:

When (hand = A6 suited or hand = A7 suited or hand = A8 suited or hand = A9 suited) and raises = 0 and calls <= 2 and stilltoact >= 3 fold force

The code is a mess. Keep in ind line breaks are ignored by the bot; they do not close out code blocks. Once you start using open when condition code blocks you have to use that style the rest of the betting round, all 1-liners should be placed higher than all nested-style code blocks.
Logged

Please do not PM me about license issues or help stuff - email me or use the Help board. Thanks! -Egor
ferotaro
Confused Newbie
*

Karma: 0
Posts: 12


« Reply #4 on: March 16, 2020, 01:48:08 AM »

The code is a mess.

 lol

Reasonable assessment! Clearly. Bear in mind, not all of us have an engineering/coding background. And even though I scour the PPL Guide my stupid little brain sees it with fogged eyes. I'm a poker player, not a coder. But am working on the latter!

Why can't this line ever be true? Because of the open when condition above it?

When (hand = A6 suited or hand = A7 suited or hand = A8 suited or hand = A9 suited) and raises = 0 and calls <= 2 and stilltoact >= 3 fold force


Also, if I added When Others to the end of codeblock starting with When (hand = AJ or hand = AJ suited) would that effectively close it and allow the following lines to become untethered?

Okay so all one liners get placed above the other open when conditions. Will certainly read and re-read that section until it becomes more clear.
Logged
Egor
Forum Admin
Extreme Botter
*****

Karma: 358
Posts: 33297



WWW
« Reply #5 on: March 16, 2020, 03:24:46 AM »

Just remember that line breaks are not there for the bot, only for human eyes. That will help you understand it.
Logged

Please do not PM me about license issues or help stuff - email me or use the Help board. Thanks! -Egor
Pages: [1] Print 
Shanky Technologies Poker Bot Support Forum  |  General Category  |  PPL Support (Moderator: sngbot)  |  Topic: What's wrong with my code for this scenario?
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!