Open Side Menu Go to the Top
Register
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? (programming challenge) how does PokerTracker (et al) get data for their zoom HUDs?

05-25-2012 , 11:35 AM
Quote:
Originally Posted by greg nice
you still believe the stars has a hidden API that they are giving out to PT/HEM ? that just seems so farfetched to me
we had a guy in this thread claiming he has special relations to PokerStars and only his product is allowed to do what it does. we had another guy claiming his product "reads stuff" from a dll PokerStars shipped them.

i don't care what you* name it. i stick to the fact that some programms are interacting with the client in ways that are not documented. if i add to this the statements of our friends this makes exactly what qualifies as a hidden api. if in doubt read up the microsoft anti-trust cases.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 12:51 PM
Quote:
Originally Posted by mme
i am not a lawyer so be warned. but sounds to me like every legal owner of PT, HEM is free to studdy at his hearts content what it is doing (think freedom of science). regarding stars client: imo, there is effectively a hidden interface (if they name it like this or not irrelevant imo, as PT, HEM are obviously interoperating with the client). so article 6 paragraph 1 section b) should apply here.
This is wishful thinking at best. I don't believe your are allowed to decompile hem/pt3 and/or the pokerstars client by arguing you would have the right to achive same as hem/pt3.... And i even have a hard time trying to understand WHY you believe so strongly to have ANY right about. To me, you be lucky Pokerstars won't hunt you down as long as you do not break their terms... And if you cannot negotiate with them getting the info or are not smart enough to figure it out yourself, that's basicly your problem.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 01:08 PM
The open-source fpdb project now has a working hud for zoom.

The code is not yet released, but is in a workable state, IMO.

As sorrow has said, we are using a hybrid OCR technique. The hand ID is OCR'd and then the pixel pattern for each seated player is read and matched with known villain patterns. When Stars eventually writes out the hand history, any new villain pixel patterns are matched up with the actual players in the database.

We do not modify the installed Stars folders, and do not use any hooking, injection, API, DLL, messages queues or any extra special secrets or stuff like that.

The software is working on Linux+Wine. All code is pure python and will be ported to windows, when I have some spare time.

I'll post setup and getting started information on the fpdb thread at the Free Software forum sometime over the weekend.

If interested, the code is in my git -https://www.assembla.com/code/fpdb-gimick/git/nodes/zoom/pyfpdb - the main action is HUD_ocr though there is a lot of integration with the fpdb hud modules.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 05:24 PM
For observing hands before playing, Stars wrote:
You can use any permitted third-party program to observe up to 30 hands per session. The developers of any such program are free to contact us for specific advice on how to implement this feature so as to comply with PokerStars rules.
How specific do you think the "specific advice on how to implement this feature" would be?
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 06:17 PM
it's like "don't import more than 30 hands or so else welcome to the banned list"

There's not real trouble to get observed hands, the easiest method being copy/paste from the IHH window.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 07:56 PM
I understand.

Back to the issue of mapping player names to seat numbers ...
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 08:43 PM
Stars wrote:
How to identify players in seats is up to you, be it OCR, screen scraping, or windows message queue examinations;
We have an example of OCR.

The windows message queue examination method would be more elegant.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 10:41 PM
beyond my skill, but you said above clicking on an avatar reveals a pointer to the name... does the pointer change? is there a pattern in them? is there other interesting stuf in the memory nearby?
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-25-2012 , 11:04 PM
I am looking for a pattern, key, or index.

Might be beyond my skill also.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 12:02 AM
Quote:
Originally Posted by mme
i don't care what you* name it. i stick to the fact that some programms are interacting with the client in ways that are not documented.
define 'documented'

bots interact with clients in ways that are not documented. that doesn't mean that the pokersite has supplied them with some backdoor API access. it just means that the programmers were clever enough to do something. why can't the same be true for PT/HEM and they don't want to share their methods with the competing product? i think the conspiracy theories are out of control in this thread

Quote:
Originally Posted by VP$IP
Stars wrote:
How to identify players in seats is up to you, be it OCR, screen scraping, or windows message queue examinations;
We have an example of OCR.

The windows message queue examination method would be more elegant.
i would be interested in what they mean by that

Last edited by greg nice; 05-26-2012 at 12:07 AM.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 12:22 AM
mme was first to post that quote
Regards,

XYZ
PokerStars Game Security Team
So what name did it originally have?
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 12:28 AM
are you wondering what is the windows message queue? or how to obtain player names currently sat at a zoom table from it... which I'm not certain is possible. There is no doubt gobs of info that could be gleaned from snooping messages though.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 04:07 AM
Quote:
Originally Posted by _dave_
There is no doubt gobs of info that could be gleaned from snooping messages though.
not really. stars took care to not give away much through messages. i'd be very surprised if they overlooked something.

other than some standard windows api messages there are tons of WM_USER + X messages flying around. wParam and lParam pointing to some mem locations (whatevs). as i would guess, this is where the meat is. but then again, i would be very surprised to find their payload being anything but encrypted gibberish.

anyone any info why PT needs to be started before stars client to make zoom HUD work? does the same appy to HEM? [http://www.pokertracker.com/guides/P...oom-hud-issues]
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 04:36 AM
Quote:
Originally Posted by greg nice
define 'documented'
my english is not sufficient, so i take it from wikipedia:
Software documentation or source code documentation is written text that accompanies computer software. It either explains how it operates or how to use it, and may mean different things to people in different roles.


Quote:
Originally Posted by greg nice
bots interact with clients in ways that are not documented. that doesn't mean that the pokersite has supplied them with some backdoor API access. it just means that the programmers were clever enough to do something
be careful, huge difference: someone breaks into your house <--> someone breaks into your house with your consent. none of my business you may say but your enshurance company may be interested in the little twist.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 04:50 AM
Quote:
tons of WM_USER + X messages flying around. wParam and lParam pointing to some mem locations (whatevs). as i would guess, this is where the meat is.
Perhaps worth looking up what is in some of those locations if you have the patience
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 05:30 AM
Quote:
Originally Posted by _dave_
Perhaps worth looking up what is in some of those locations if you have the patience
sorry, it is WM_APP not WM_USER. i did take a peek, but found nothing i could make sense of. then decided to not go any further on this path because succeeding would be terrible for so many reasons.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 12:03 PM
Quote:
Originally Posted by mme
my english is not sufficient, so i take it from wikipedia:
Software documentation or source code documentation is written text that accompanies computer software. It either explains how it operates or how to use it, and may mean different things to people in different roles.


be careful, huge difference: someone breaks into your house <--> someone breaks into your house with your consent. none of my business you may say but your enshurance company may be interested in the little twist.

heres my point: OCR is not 'documented' anywhere. does stars prohibit it? just because someone has figured out how to do something that you have not, does not mean that the pokersite is exposing backdoor APIs for some select few third parties to access.

much more likely is that PT hooked into the client somehow and is intercepting messages, and they are not about to give up their competitive advantage and tell you (and HEM) how they do it. that would be ******ed.

so i would be heavily surprised if what you suggest is actually happening, especially from stars, but obv anythings possible.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 01:14 PM
Quote:
Originally Posted by mme
sorry, it is WM_APP not WM_USER. i did take a peek, but found nothing i could make sense of. then decided to not go any further on this path because succeeding would be terrible for so many reasons.
Yes. I respect the Stars T&Cs. Observing windows messages while "exercising" the client software does not violate them. Efforts to reverse engineer, decompile, or disassemble would violate the T&Cs.

They actually have ethical standards at Stars. They paid us, even after being kicked out the the country, while under indictment.

Last edited by VP$IP; 05-26-2012 at 01:19 PM.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 03:29 PM
Quote:
Originally Posted by greg nice
heres my point: OCR is not 'documented' anywhere. does stars prohibit it?
no need for stars to document OCR. another quote from wikipedia:

"Early optical character recognition could be traced to activity around two issues: expanding telegraphy and creating reading devices for the blind.[1] In 1914, Emanuel Goldberg developed a machine that read characters [..]"

let's hope mr. goldberg properly documented what he did back in the days ;-)
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-26-2012 , 04:50 PM
lol sigh
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-27-2012 , 02:00 AM
Quote:
Originally Posted by greg nice
heres my point: OCR is not 'documented' anywhere. does stars prohibit it? just because someone has figured out how to do something that you have not, does not mean that the pokersite is exposing backdoor APIs for some select few third parties to access.

much more likely is that PT hooked into the client somehow and is intercepting messages, and they are not about to give up their competitive advantage and tell you (and HEM) how they do it. that would be ******ed.

so i would be heavily surprised if what you suggest is actually happening, especially from stars, but obv anythings possible.
re: OCR - You can make the argument that a visual representation of the name is an API, it just interpreted by meatware.

Early on it did look like PT was using some undocumented api, but the support forums are now showing signs that at least on some OS versions or security setups are falling back to their 'old' method. "Player HUD not appearing when the table is partly obscured" etc.

Quote:
Originally Posted by VP$IP
Yes. I respect the Stars T&Cs. Observing windows messages while "exercising" the client software does not violate them. Efforts to reverse engineer, decompile, or disassemble would violate the T&Cs.

They actually have ethical standards at Stars. They paid us, even after being kicked out the the country, while under indictment.
Country specific laws pre-empt the T&C's (according to the T&C's, not just law) - Reverse engineering and disassembly for interoperability is specifically allowed under European law as far as i'm aware.

That said, i'm a fan of Stars and wouldn't do it myself.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-27-2012 , 05:53 AM
Quote:
Originally Posted by sorrow
support forums are now showing signs that at least on some OS versions or security setups are falling back to their 'old' method
wait ..i was not aware of that. checking their troubleshotting guide [http://www.pokertracker.com/guides/P...oes-not-appear]:

"If you are using Windows Vista or Windows 7, make sure that both PT3 and your poker client are configured to Run As Administrator.
Disabling 'User Account Control' (UAC) makes things easier, but you still need to run all your poker software as administrator."


this could get funny ..waiting for malware taking over users machine via PTs explicite advice. i'd love to be the users lawyer in this case so much.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-27-2012 , 06:39 AM
Quote:
Originally Posted by mme
wait ..i was not aware of that. checking their troubleshotting guide [http://www.pokertracker.com/guides/P...oes-not-appear]:

"If you are using Windows Vista or Windows 7, make sure that both PT3 and your poker client are configured to Run As Administrator.
Disabling 'User Account Control' (UAC) makes things easier, but you still need to run all your poker software as administrator."


this could get funny ..waiting for malware taking over users machine via PTs explicite advice. i'd love to be the users lawyer in this case so much.
Thats pretty standard. You can't get a hwnd (?) of another process without it as far as understand
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
05-27-2012 , 11:07 AM
Quote:
Originally Posted by sorrow
Thats pretty standard. You can't get a hwnd (?) of another process without it as far as understand
no, window handles are just free stuff flying around for everyone to play with. needing admin rights to do things is a completely different beast. for example you can not do things like opening a running process (reading its mem, monitoring file access, attaching a debugger, whatevs) if you don't have higher privleges than the target process.
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote
07-24-2012 , 02:12 PM
Any news?
(programming challenge) how does PokerTracker (et al) get data for their zoom HUDs? Quote

      
m