Two Plus Two Newer Archives  

Go Back   Two Plus Two Newer Archives > Internet Gambling > Software
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #11  
Old 01-20-2007, 04:25 PM
jukofyork jukofyork is offline
Senior Member
 
Join Date: Sep 2004
Location: Leeds, UK.
Posts: 2,551
Default Re: AHK script for Party Poker SNGs - ALL-IN

Bleh, the "Seat Empty" thing still didn't work properly and my edit time has expired now. Here's the fixed version:

<font class="small">Code:</font><hr /><pre>;---------------------------------------------------------
;----------------- Party SNG Helper v1.01 ----------------
;---------------------------------------------------------
; AutoHotkey Version: 1.x
; Language: English
; Platform: Win9x/NT
; Author: jukofyork (reused code and thanks to: _dave_ &amp; Roland!)

; Features:
; =========
; 1. Push with/without autobet using middle mouse mutton.
; 2. Check or fold (ie: check if we can, else fold) using right mouse button.
; 3. Scroll wheel moved bet amount up/down in big bets.
; 4. Auto-confirm and check the buying box so all that will be needed is to click on an empty seat to join a SNG.
; 5. Auto-timebank clicker.
; 6. Auto-confirm the "Would you like a summary sent" box after being knocked out of a SNG.

; New for v1.01:
; ==============
; 1. Now will click Check/Fold checkbox if visible.
; 2. Pressing F12 over a player's name will simulate a right mouse click so we can takes notes, etc.
; 3. Have made it so that AlterAmount amount can take another argument to increment in 0.5BB amounts.
; 4. Have made it so we will close finished SNGs.
; 5. Have changed the timings to be 1000ms rather than 500ms to try to save on CPU time.

#Persistent
#NoEnv

SendMode Input

SetTitleMatchMode 2

; Set the options.
autobet = 1 ; Do we want to actually hit raise after we set the edit box to all-in?
increment_half_bb = 0 ; Set this to use 0.5BB increments with the scroll wheel, rather than 1BB.


; Start the timers.
SetTimer, AutoClickTimeBank, 1000
SetTimer, AutoBuyin, 1000
SetTimer, AutoRequestSummaryAndCloseFinishedSNGs, 1000

return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

~F12::
id := ""
MouseGetPos, x, y, id
if (id &lt;&gt; "")
PostRightClick(x, y, id)
return

~RButton::
CheckFold(getid())
return

~MButton::
Push(getid(),autobet)
return

~WheelUp::
AlterAmount(getid(),"up",increment_half_bb)
return

~WheelDown::
AlterAmount(getid(),"down",increment_half_bb)
return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

AutoClickTimeBank:

checkfield = AfxWnd42u37 ; AfxWnd42u37 is timebank control
LobbyWindowTitle = Poker Lobby ; identify poker lobby substring
TableWindowTitle = Buy-in. ; identify pokertable substring

WinGet, lobbyID, ID, %LobbyWindowTitle%

WinGet, pid, PID, ahk_id%lobbyID%
WinGet, rlist, LIST, %TableWindowTitle% ahk_pid%pid%
Loop %rlist%
{
this_id := rlist%a_index%
If this_id != %lobbyID%
{
WinGetTitle, name, ahk_id%this_id%
ControlGet, result, Visible, , %checkfield%, ahk_id%this_id%
if (result)
{
ControlClick %checkfield%, ahk_id%this_id% ;Click timebank
}
}
}

return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

AutoBuyin:

IfWinExist, ahk_class #32770, Tournament Buy-in
{
WinGet, idList, List, ahk_class #32770, Tournament Buy-in
Loop, %idList%
{
winID := idList%a_index%
ControlSend, Button2, {SPACE}, ahk_id%winID%
Sleep, 40
ControlSend, Button5, {SPACE}, ahk_id%winID%
}
}

return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

AutoRequestSummaryAndCloseFinishedSNGs:

; Lets try requesting the summary BEFORE we try closing the table.
IfWinExist, ahk_class #32770, Would you like a tournament summary
{
WinGet, idList, List, ahk_class #32770, Would you like a tournament summary
Loop, %idList%
{
winID := idList%a_index%
ControlSend, Button1, {ENTER}, ahk_id%winID%
}
}

; Now lets try closing the SNGs.
checkfield = Button3 ; Button3 is the "Auto Post Blind" checkbox.
LobbyWindowTitle = Poker Lobby ; identify poker lobby substring
TableWindowTitle = Buy-in. ; identify pokertable substring

WinGet, lobbyID, ID, %LobbyWindowTitle%

WinGet, pid, PID, ahk_id%lobbyID%
WinGet, rlist, LIST, %TableWindowTitle% ahk_pid%pid%
Loop %rlist%
{
this_id := rlist%a_index%
If this_id != %lobbyID%
{
WinGetTitle, name, ahk_id%this_id%

; Go through all the "Seat Open" buttons.
seats = 0
i = 3
Loop, 10
{
i++
;If they're visible, this is an empty seat.
ControlGet, is_visible, Visible, , AfxWnd42u%i%, ahk_id%this_id%
If is_visible = 1
seats++
}

; Are we not seating and is the "Auto Post Blind" checkbox not visible?
ControlGet, result, Visible, , %checkfield%, ahk_id%this_id%
if (seats = 0 AND result = 0)
{
; Lets make 100% sure and try again incase of a graphics delay.
Sleep, 150
ControlGet, result, Visible, , %checkfield%, ahk_id%this_id%
if (result = 0)
{
WinClose, ahk_id%this_id% ; Close the table.
}
}
}
}

return

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

getid()
{
id := ""
MouseGetPos, , , id
return id
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

PostRightClick(x, y, table_id, activate=1) {
; ### JUK: Send the down left click, then the mouse-up messages.
; NOTE: This is relative to the top left of the client area and NOT the top left of the
; window (ie: It *doesn't* include the title-bar like AHK's MouseClick does!!!).
If activate
WinActivate, ahk_id%table_id%
PostMessage, 0x204, 0x0001, ((y&lt;&lt;16)^x), , ahk_id%table_id%
PostMessage, 0x205 , 0, ((y&lt;&lt;16)^x), , ahk_id%table_id%
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

; This will set the edit box to the maximum amount.
Push(id, autobet=0)
{
pot := 10000000
ControlSetText, Edit3, %pot%, ahk_id%id%
Sleep -1
Sleep 50
WinSet, Redraw,, ahk_id%id%
If(autobet)
{
ControlClick, AfxWnd42u19, ahk_id%id%
}
}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

; Clicks Check/Fold-in-turn or fold-in-turn button if sees it, else clicks check if sees
; it, else clicks fold.
CheckFold(id)
{

; Check/Fold checkbox.
ControlGet, v, Visible, , AfxWnd42u23, ahk_id%id%
if (v)
{
ControlFocus, AfxWnd42u23, ahk_id%id%
Sleep, -1
ControlClick, AfxWnd42u23, ahk_id%id%
return
}

; Fold checkbox.
ControlGet, v, Visible, , AfxWnd42u22, ahk_id%id%
if (v)
{
ControlFocus, AfxWnd42u22, ahk_id%id%
Sleep, -1
ControlClick, AfxWnd42u22, ahk_id%id%
return
}

; Lets see if we can see the check button.
ControlGet, v, Visible, , AfxWnd42u18, ahk_id%id%
if (v)
{
ControlGetText, text, AfxWnd42u18, ahk_id%id%
IfInString, text, Check
{
ControlFocus, AfxWnd42u18, ahk_id%id%
Sleep, -1
ControlClick, AfxWnd42u18, ahk_id%id%
return
}
}

; Lets try for fold then.
ControlGet, v, Visible, , AfxWnd42u17, ahk_id%id%
if (v)
{
ControlFocus, AfxWnd42u17, ahk_id%id%
Sleep, -1
ControlClick, AfxWnd42u17, ahk_id%id%
}

}


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;

AlterAmount(id, dir="",increment_half_bb=1)
{
WinGetTitle, title, ahk_id%id%
amount := 0

; Get the current BB amount.
if (InStr(title, "NL") &lt;&gt; 0 AND InStr(title, "Buy-in") &lt;&gt; 0)
{
ControlGetText, text, Static6, ahk_id%id%
IfNotInString, text, Blinds-Antes
{
StringMid, bb, text, InStr(text, "/") + 1, InStr(text, ")") - InStr(text, "/") - 1
}
else
{
StringMid, bb, text, InStr(text, "/") + 1, InStr(text, "-","",InStr(text, "/")) - InStr(text, "/") - 1
}
;msgbox, %bb%
}

; Do we want to increment by a whole or a half BB?
if (increment_half_bb = 1)
amount := bb / 2
else
amount := bb

if (dir="down")
{
amount := amount - (2*amount)
}

ControlGetText, t, Edit3, ahk_id%id%
t := t + amount
if (t &lt; 0)
{
t := 0
}

; Lets round to 0DP or 1DP.
if (increment_half_bb = 1)
t := Round(t, 1)
else
t := Round(t, 0)

; Alter the edit-box.
ControlSetText, Edit3, %t%, ahk_id%id%
;WinSet, Redraw,, ahk_id%id%

}

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;</pre><hr />

Juk [img]/images/graemlins/smile.gif[/img]
Reply With Quote
  #12  
Old 01-20-2007, 06:30 PM
K䲰䮥n K䲰䮥n is offline
Senior Member
 
Join Date: May 2006
Posts: 3,616
Default Re: AHK script for Party Poker SNGs - ALL-IN

After few sets the newest version works like a charm. Havent tried the 0.5xBB yet though. All I need now is a script that gives a spite call warning.

Thanks for the script! Which level you play, Juk?
Reply With Quote
  #13  
Old 01-20-2007, 06:58 PM
jukofyork jukofyork is offline
Senior Member
 
Join Date: Sep 2004
Location: Leeds, UK.
Posts: 2,551
Default Re: AHK script for Party Poker SNGs - ALL-IN

[ QUOTE ]
After few sets the newest version works like a charm. Havent tried the 0.5xBB yet though. All I need now is a script that gives a spite call warning.

[/ QUOTE ]
Just be careful about the table closing - it's messed up on me a few times now and either won't let me sit down or starts trying to close SNGs that haven't finished yet (I've had to disable it on mine).

[ QUOTE ]
Thanks for the script! Which level you play, Juk?

[/ QUOTE ]
Only playing Speed 11s atm, and want to build a decent sample of 1.5-2k SNGs before playing 22s. Got through about 600 since last Friday, but now I can 9 table with ease (the Party slider was horrible...) and I've stopped the client crashes I was getting, it won't take too long hopefully.

So far my impression of the 11s is VERY juicy: I lost my net connection last week while playing 9 at various stages and was severely upset to say the least (hence got dual connections now), BUT when I woke up in the morning I couldn't work out how come I'd only lost $19. After looking at the Party account page, I saw I'd come 3rd in 4/9 of them!!!

Juk [img]/images/graemlins/smile.gif[/img]
Reply With Quote
  #14  
Old 01-21-2007, 02:37 PM
K䲰䮥n K䲰䮥n is offline
Senior Member
 
Join Date: May 2006
Posts: 3,616
Default Re: AHK script for Party Poker SNGs - ALL-IN

Okay I run into really annoying problem.

I use PartyPlanner and I 12-table with slight overlap. Today the tables started popping up like a [censored] pinball table (pinball tables pop up?). They moved on top of each other every time when there was action (any movement) on the table. So I had to shut down the script. What might cause this? Anyway to prevent this?
Reply With Quote
  #15  
Old 01-21-2007, 03:24 PM
jukofyork jukofyork is offline
Senior Member
 
Join Date: Sep 2004
Location: Leeds, UK.
Posts: 2,551
Default Re: AHK script for Party Poker SNGs - ALL-IN

[ QUOTE ]
Okay I run into really annoying problem.

I use PartyPlanner and I 12-table with slight overlap. Today the tables started popping up like a [censored] pinball table (pinball tables pop up?). They moved on top of each other every time when there was action (any movement) on the table. So I had to shut down the script. What might cause this? Anyway to prevent this?

[/ QUOTE ]
I don't have overlap on my setup, but I did get some weird table flashing yesterday. Since then I've disabled the auto-close tables bit of code because it didn't seem to work properly and it seems to have got rid of the table flashing too. Try just putting a return statement right before this line: "; Now lets try closing the SNGs." and see if that fixes it.

I'll have to have another go at writing the table auto-close code to be safer (it didn't even work properly when I checked 10 times in a row if I wasn't at the table).

Juk [img]/images/graemlins/smile.gif[/img]
Reply With Quote
  #16  
Old 01-21-2007, 07:56 PM
jukofyork jukofyork is offline
Senior Member
 
Join Date: Sep 2004
Location: Leeds, UK.
Posts: 2,551
Default Re: AHK script for Party Poker SNGs - ALL-IN

[ QUOTE ]
[ QUOTE ]
Okay I run into really annoying problem.

I use PartyPlanner and I 12-table with slight overlap. Today the tables started popping up like a [censored] pinball table (pinball tables pop up?). They moved on top of each other every time when there was action (any movement) on the table. So I had to shut down the script. What might cause this? Anyway to prevent this?

[/ QUOTE ]
I don't have overlap on my setup, but I did get some weird table flashing yesterday. Since then I've disabled the auto-close tables bit of code because it didn't seem to work properly and it seems to have got rid of the table flashing too. Try just putting a return statement right before this line: "; Now lets try closing the SNGs." and see if that fixes it.

I'll have to have another go at writing the table auto-close code to be safer (it didn't even work properly when I checked 10 times in a row if I wasn't at the table).

[/ QUOTE ]
Did that help? It seems that PartyPlanner and my script don't get on well together - I've never had any problems with PartyPlanner before and now it's started lagging the Party tables and crashing itself after an hour or so. [img]/images/graemlins/frown.gif[/img]

Juk [img]/images/graemlins/smile.gif[/img]
Reply With Quote
  #17  
Old 01-22-2007, 04:18 AM
K䲰䮥n K䲰䮥n is offline
Senior Member
 
Join Date: May 2006
Posts: 3,616
Default Re: AHK script for Party Poker SNGs - ALL-IN

For some reason it stopped doing the pinball thing. I did nothing different. Then, it started again. Then it stopped. Bleh. I quess I can live with it since my ROI% at the 22s is 137% after I started using this piece of software. Sustainable? [img]/images/graemlins/wink.gif[/img]
Reply With Quote
  #18  
Old 01-22-2007, 10:42 AM
K䲰䮥n K䲰䮥n is offline
Senior Member
 
Join Date: May 2006
Posts: 3,616
Default Re: AHK script for Party Poker SNGs - ALL-IN

I'm having problemos with the auto-closer. But only when I'm starting my set.

Can I disable the auto-closet from the script and run it as a separate script after after I've gotten all my tables open?
Reply With Quote
  #19  
Old 01-22-2007, 11:30 AM
jukofyork jukofyork is offline
Senior Member
 
Join Date: Sep 2004
Location: Leeds, UK.
Posts: 2,551
Default Re: AHK script for Party Poker SNGs - ALL-IN

[ QUOTE ]
For some reason it stopped doing the pinball thing. I did nothing different. Then, it started again. Then it stopped. Bleh. I quess I can live with it since my ROI% at the 22s is 137% after I started using this piece of software. Sustainable? [img]/images/graemlins/wink.gif[/img]

[/ QUOTE ]
Lol, it seems to have blessed me with unsustainable good luck too. I'm not sure if my fold equity went up bc of the speed of my middle button pushes now though - maybe I imagined it, but I think maybe the fish think fast push = big hand?

I've been having problems with Party planner, so the table flashing thing could be something to do with it mixed with PartyPlanner (I've adapted _dave_'s StarsPlanner to work at Party now).
Reply With Quote
  #20  
Old 01-22-2007, 11:34 AM
jukofyork jukofyork is offline
Senior Member
 
Join Date: Sep 2004
Location: Leeds, UK.
Posts: 2,551
Default Re: AHK script for Party Poker SNGs - ALL-IN

[ QUOTE ]
I'm having problemos with the auto-closer. But only when I'm starting my set.

Can I disable the auto-closet from the script and run it as a separate script after after I've gotten all my tables open?

[/ QUOTE ]
I don't trust t, so have turned it off atm (it tried to close non finished SNGs a few times).

To use it alone you just need to make a small script like this:

<font class="small">Code:</font><hr /><pre>
#Persistent
#NoEnv

SendMode Input

SetTitleMatchMode 2

SetTimer, AutoCloseFinishedSNGs, 1000

return

AutoCloseFinishedSNGs:

; Now lets try closing the SNGs.
checkfield = Button3 ; Button3 is the "Auto Post Blind" checkbox.
LobbyWindowTitle = Poker Lobby ; identify poker lobby substring
TableWindowTitle = Buy-in. ; identify pokertable substring

WinGet, lobbyID, ID, %LobbyWindowTitle%

WinGet, pid, PID, ahk_id%lobbyID%
WinGet, rlist, LIST, %TableWindowTitle% ahk_pid%pid%
Loop %rlist%
{
this_id := rlist%a_index%
If this_id != %lobbyID%
{
WinGetTitle, name, ahk_id%this_id%

; Make sure we are not seating.
ControlGet, result, Visible, , Seat Open, ahk_id%this_id%
if (result = 0)
{

; Is it not visible?
ControlGet, result, Visible, , %checkfield%, ahk_id%this_id%
if (result = 0)
{
; Lets make 100% sure and try again incase of a graphics delay.
Sleep, 150
ControlGet, result, Visible, , %checkfield%, ahk_id%this_id%
if (result = 0)
{
WinClose, ahk_id%this_id% ; Close the table.
}
}
}
}
}

return</pre><hr />
You can also right click on it's taskbar icon and use "Pause Script" to turn it on/off.

Juk [img]/images/graemlins/smile.gif[/img]
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:26 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.