Welcome, Guest. Please login or register.
June 03, 2023, 10:58:25 PM
Home Help Login Register
News:

Shanky Technologies Poker Bot Support Forum  |  General Category  |  PPL Support (Moderator: sngbot)  |  Topic: Profile Cleaner - a FREE utility 0 Members and 1 Guest are viewing this topic.
Pages: [1] 2 Print
Author Topic: Profile Cleaner - a FREE utility  (Read 42935 times)
Egor
Forum Admin
Extreme Botter
*****

Karma: 377
Posts: 34965



WWW
« on: November 02, 2010, 06:56:29 PM »

I have written a little utulity in Visual Basic which I am making available for free. It is called Profile Cleaner.

The idea of Profile Cleaner is to tidy up your profiles and identify common logic errors which frequently go undetected and can cause strange results. Even the best coders can make such mistakes, especially in large complex profiles, and the program can also be a useful learning tool for newbies.

What Profile Cleaner DOES do
•   Standardize spacing and capitalization in your code.
•   Apply a standard indentation, even when a single code line is spread over more than one line for easier reading, so it is easy to see which code lines belong to which open when.
•   Identify and mark "and/or" conflicts, even in multi-bracketed situations. Only the first error in the line is marked.
•   Identify and mark "or not" code which is incorrect 99.9% of the time.
•   Identify and mark where a code line has more open brackets than close brackets or vice versa.
•   Help identify where you have missed out the Force keyword - the line will not be indented.

What Profile Cleaner does NOT do
•   Overwrite your original profile - it creates a new file.
•   Adjust line spacing in the main code body - this makes it easier to spot "open when" errors.
•   Split long code lines - that's for you to do, if you want to!
•   Identify keywords that have been either spelt or used incorrectly - the bot itself will pick up these errors so it would be re-inventing the wheel.
•   Turn your profile into a guaranteed money maker - sorry I don't do miracles!

The following code is not good ppl and is not good poker - it is designed purely to be untidy, difficult to read, and full of the kind of errors which I often see in profiles people send to me - and indeed in this forum!

Code:
custom
preflop
when insmallblind and hand=AA or hand=KK or hand=QQ
when (raises=0 and calls>=1) or (raises=1 and calls=0) and stacksize <10 raisemax force
when (bigblindsize=100 and stacksize<30) or (bigblindsize=200 and stacksize<15)) and botslastaction=raise raisemax force
when inbigblind
when (raises=0 and calls>=1) or (raises=1 and calls=0) and stacksize <10 raisemax force
flop
when position=first
when havetoppair and (not havebestkicker or not have2ndbestkicker) call force
when position=middle
when havetoppair and (not havebestkicker or not have2ndbestkicker) raise
turn
when opponentsattable=1 and position=first and(have2ndnutflush or havenutflush)
when bets=0 and raises=0 betpot force
when bets=0 and raises=1 raisemax force
when opponentisallin call force
when opponentsattable=1 and position=last and(have2ndnutflush or havenutflush)
when bets=0 and raises=0 betpot force
when bets=0 and raises=1 raisepot force
when bets=0 and raises=2 raisemax force
when bets=1 and raises=0 raisemin force
when bets=1 and raises=1 raisemax force
when opponentisallin call force
when opponentsattable=1 and position=first and(have3rdnutflush)
when bets=0 and raises=0 betpot force
when bets=0 and raises=1 raisemax force
when opponentisallin call force
when opponentsattable=1 and position=last and(have3rdnutflush)
when bets=0 and raises=0 betpot Force
when bets=0 and raises=1 call force
when bets=1 and raises=0 call fForce
when opponentisallin call force


Now run it through Profile Cleaner and this is the result:

Code:
custom

preflop

when In SmallBlind *** and Hand = AA or Hand = KK or Hand = QQ
  when (Raises = 0 and Calls >= 1) *** or (Raises = 1 and Calls = 0) and StackSize < 10 RaiseMax Force
  ***() when (BigBlindSize = 100 and StackSize < 30) or (BigBlindSize = 200 and StackSize < 15)) and BotsLastAction = Raise RaiseMax Force
when In BigBlind
  when (Raises = 0 and Calls >= 1) *** or (Raises = 1 and Calls = 0) and StackSize < 10 RaiseMax Force

flop

when Position = First
  when HaveTopPair and (not HaveBestKicker *** or not Have2ndBestKicker) Call Force
when Position = Middle
when HaveTopPair and (not HaveBestKicker *** or not Have2ndBestKicker) Raise

turn

when OpponentsAtTable = 1 and Position = First and (Have2ndNutFlush or HaveNutFlush)
  when Bets = 0 and Raises = 0 BetPot Force
  when Bets = 0 and Raises = 1 RaiseMax Force
  when OpponentIsAllIn Call Force
when OpponentsAtTable = 1 and Position = Last and (Have2ndNutFlush or HaveNutFlush)
  when Bets = 0 and Raises = 0 BetPot Force
  when Bets = 0 and Raises = 1 RaisePot Force
  when Bets = 0 and Raises = 2 RaiseMax Force
  when Bets = 1 and Raises = 0 RaiseMin Force
  when Bets = 1 and Raises = 1 RaiseMax Force
  when OpponentIsAllIn Call Force
when OpponentsAtTable = 1 and Position = First and (Have3rdNutFlush)
  when Bets = 0 and Raises = 0 BetPot Force
  when Bets = 0 and Raises = 1 RaiseMax Force
  when OpponentIsAllIn Call Force
when OpponentsAtTable = 1 and Position = Last and (Have3rdNutFlush)
  when Bets = 0 and Raises = 0 BetPot Force
  when Bets = 0 and Raises = 1 Call Force
  when Bets = 1 and Raises = 0 Call fForce
  when OpponentIsAllIn Call Force



See how all the errors are marked with *** - do a search for *** in the new file and you will come across all your logic errors (if there are any!) so that you can easily correct them. Can you also spot how the indentation makes the open when error in the preflop code easier to spot? Note how the last line of the flop code is missing its Force keyword and is not indented as a result. Note also that although there was nothing "wrong" with the original turn code it is now much easier to read.

If you want to download and use this utility you can find it here: http://www.mediafire.com/?mmidmmmhu2y read the short ReadMe.txt file before installing.

zulu has tested the script for me and I believe Dman has checked the file for anything malicious - so you can have confidence in it!

ENJOY!

OMIL
Logged

Please do not PM me about license issues or help stuff - email me or use the Help board. Thanks! -Egor
bixie
Aspiring Botter
**

Karma: 1
Posts: 66



« Reply #1 on: November 12, 2010, 02:13:03 AM »

You don't even have to install it. 
Just place the ppl file in the right folder
Just rename the executables into .exe (ie delete the .deploy and .manifest extension)

The cleaner works great, #1 !!! Smiley
Logged
qwertyqwerty
Read Only
Wide-Eyed Newbie
*

Karma: -5
Posts: 21


« Reply #2 on: November 29, 2010, 09:15:35 PM »

were can downlowd
Logged
Egor
Forum Admin
Extreme Botter
*****

Karma: 377
Posts: 34965



WWW
« Reply #3 on: November 29, 2010, 09:17:31 PM »

the link is towards the bottom of the first post
Logged

Please do not PM me about license issues or help stuff - email me or use the Help board. Thanks! -Egor
BeefHead
Aspiring Botter
**

Karma: -5
Posts: 89



« Reply #4 on: December 13, 2010, 03:34:33 AM »

Hey egor  nice tool and free very nice. Not really working for me. I tryed it on a full profile and it said it find to thing but i cant fine them ? How i fine them out of 1k lines? The new folder it made is not the same size its not as big ?  . I tryed it on a couple of lines i made and the bot picks up something not right in them but the cleaner dose not pick anything up?
Logged

Welcome to the greatest game of all time MX Simulator have you got what it takes to be a pro.
jackal697
Botter
***

Karma: 9
Posts: 120


Shanky Bonus Bots Rock!


« Reply #5 on: December 13, 2010, 04:16:18 AM »

Profile cleaner is not Egors tool. He reposted it as a help from the old forum. As to logic problems found do a search for *** and it will show the lines associated with the logic error. It doesn't mean it won't work as written but alot of them don't. As for the errors in your profile look up the line number shown in the bot after you have Notepad++ (you'll find it in here somewhere). Then look at the code. Alot of my errors are spelling. If you can't figure out the issue post it and someone will help.
Logged
BeefHead
Aspiring Botter
**

Karma: -5
Posts: 89



« Reply #6 on: December 13, 2010, 06:39:18 AM »

lol sorry jackal thought it was egor's work.
very nice and thanks for fast reply ill try some more and see what i can do
if not i might post the code
thanks
Logged

Welcome to the greatest game of all time MX Simulator have you got what it takes to be a pro.
jackal697
Botter
***

Karma: 9
Posts: 120


Shanky Bonus Bots Rock!


« Reply #7 on: December 13, 2010, 06:55:45 AM »

PM me if i can help
Logged
Balu66
Sellers
Botter
*****

Karma: 25
Posts: 216

Shanky Bonus Bots Rock!


« Reply #8 on: March 13, 2011, 11:57:37 AM »

Just tried out Profile Cleaner - wonderful  thanks

No problem with normal size code.

But, I am just running a quite large profile with 9MB of code, e.g. bombers profile with 125000 lines of code.
It started and processor is on 50% performance but there still seems no progress.

So the question -  any limitation to codesize ?


« Last Edit: April 26, 2011, 09:57:18 PM by Balu66 » Logged

Balu66
Sellers
Botter
*****

Karma: 25
Posts: 216

Shanky Bonus Bots Rock!


« Reply #9 on: May 27, 2011, 10:50:32 PM »

Just tried out Profile Cleaner - wonderful  thanks

No problem with normal size code.

But, I am just running a quite large profile with 9MB of code, e.g. bombers profile with 125000 lines of code.
It started and processor is on 50% performance but there still seems no progress.

So the question -  any limitation to codesize ?

woops, just saw, Egor is not the creator of this nice tool - who is it? -  any limitations on length of profile?

edit: Profile Cleaner is still running but no progress (5%) with large file.
Profile Cleaner works good on normal length profiles for me.
« Last Edit: May 27, 2011, 11:24:25 PM by Balu66 » Logged

Mrphil
Extreme Botter
*****

Karma: 79
Posts: 2175


full limit = rakemaker


« Reply #10 on: June 19, 2011, 05:15:39 AM »

^ i'm pretty sure there is. I have the same problem with large code too.
Logged

My life is a "missed click restoring state"
TightFish
Wide-Eyed Newbie
*

Karma: -27
Posts: 43



« Reply #11 on: August 03, 2011, 10:37:09 PM »

question:

Is this the updated version? that also work with the new ppl variables?

or only working for the old ppl variables?

Thanks.
Logged

"I had the NutFlush, just the wrong color"
cannotdecide
Botter
***

Karma: -13
Posts: 154


« Reply #12 on: September 27, 2011, 01:30:31 AM »

nice work, working with websites etc I love clean code  thumbsup
Logged

Sun, Sea and Sin Semilla
bgisvold
Wide-Eyed Newbie
*

Karma: 0
Posts: 8


« Reply #13 on: September 29, 2011, 04:47:02 PM »

I ran this on doodle.txt and it found 4 errors. Are there bugs in doodle??
Logged
Egor
Forum Admin
Extreme Botter
*****

Karma: 377
Posts: 34965



WWW
« Reply #14 on: September 29, 2011, 04:57:06 PM »

No. It doesn't like one of the techniques I use where I have a not condition inside a bracket with a positive condition, but since the not condition is last and it is the only one in the bracket it works.
Logged

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

Karma: 1
Posts: 10


« Reply #15 on: November 02, 2011, 04:05:32 PM »

Hi Egor,

I found this when doing the profile cleaning:


when PairOnBoard and (OnlyOneStraightPossible *** or not StraightPossible) and not (FlushPossible or OneCardStraightPossible or Board = AA or Board = KK or Board = QQ or Board = JJ or Board = TT or Board = 99 or Board = 88 or RaisesOnFlop) and Opponents < 3


Whts wrong here? 

thx
Logged
sngbot
Moderator
Extreme Botter
*****

Karma: 138
Posts: 1483


« Reply #16 on: November 02, 2011, 04:26:26 PM »

Hi Egor,

I found this when doing the profile cleaning:


when PairOnBoard and (OnlyOneStraightPossible *** or not StraightPossible) and not (FlushPossible or OneCardStraightPossible or Board = AA or Board = KK or Board = QQ or Board = JJ or Board = TT or Board = 99 or Board = 88 or RaisesOnFlop) and Opponents < 3


Whts wrong here? 

thx

I ran this on doodle.txt and it found 4 errors. Are there bugs in doodle??

No. It doesn't like one of the techniques I use where I have a not condition inside a bracket with a positive condition, but since the not condition is last and it is the only one in the bracket it works.

wink
Logged
Ronin21
Wide-Eyed Newbie
*

Karma: 1
Posts: 10


« Reply #17 on: November 02, 2011, 04:33:37 PM »

yeah sometimes it helps reading the details  Smiley
Logged
terapeuta
Guest
« Reply #18 on: December 18, 2011, 05:26:00 PM »

Im using event horizon latest version, found 11 errors, someone had this problem? should i be worried?

Thanks alot
Logged
Egor
Forum Admin
Extreme Botter
*****

Karma: 377
Posts: 34965



WWW
« Reply #19 on: December 18, 2011, 06:32:07 PM »

depends on the errors

this program is a bit out of date, also some of the "errors" are OK, feel free to start a PPL Board topic and post any of the specific codelines you have questions on
Logged

Please do not PM me about license issues or help stuff - email me or use the Help board. Thanks! -Egor
Pages: [1] 2 Print 
Shanky Technologies Poker Bot Support Forum  |  General Category  |  PPL Support (Moderator: sngbot)  |  Topic: Profile Cleaner - a FREE utility
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!