Poker-AI.org
http://poker-ai.org/phpbb/

Best method for Botting
http://poker-ai.org/phpbb/viewtopic.php?f=26&t=3219
Page 1 of 1

Author:  Robot [ Tue May 28, 2019 1:39 pm ]
Post subject:  Best method for Botting

I've built my AI which I'm happy with however I could use some advise on my bot. I'm taking application screen shots and then looking at specific bounds for each player, stack, bet, pot and cards. However there are a couple of problems with this method;

1) All of this data takes up to 8 seconds to process using tesseract OCR. Once I have the data, the model is instantaneous.
2) My co-ordinates are resolution specific. Even when I set the same resolution on different devices, if the aspect ratio or native resolution is different, I have to redefine all of the boundaries.

Pokerstars have banned me on one of my machines and although I've created a brand new account and purged everything relating to pokerstars, changed the physical address and IP address, I still can't use that machine anymore. So I'm going to use a VM instead which I can easily clone and delete when necessary. But this means I have to start again with my bot, so I though I would see what everyone else is doing.

What botting methods are preferred, is there an opensource python library I can use?

Author:  spears [ Tue May 28, 2019 8:55 pm ]
Post subject:  Re: Best method for Botting

Robot wrote:
1) All of this data takes up to 8 seconds to process using tesseract OCR.


This doesn't sound right. Are you sure it's Tesseract that is taking the time and not some other part of the process? Also, have you researched how to make Tesseract run faster?

Robot wrote:
2) My co-ordinates are resolution specific. Even when I set the same resolution on different devices, if the aspect ratio or native resolution is different, I have to redefine all of the boundaries.

Is this such a big deal?

Robot wrote:
But this means I have to start again with my bot

Why?

Author:  Robot [ Wed May 29, 2019 8:00 am ]
Post subject:  Re: Best method for Botting

Thanks for responding.

I've separated each element, including the suit and value as different images, then all the stack sizes, potential bet amounts and then another image to decide if the player has folded or is bust. Some of this is done with average pixel values and others with tesseract. It takes a long time due to the volume of data points I want to include in the model. I'm actually decoding 55 different elements before each decision, this gets faster as players start to bust out, as I remember this and stop checking for that player.

I thinking I have to start again in terms of redefining all the bounds and potentially the approach, to make it faster. My next task is to sign up for another site and create a database of cards that I can feed into a neural network.

Author:  spears [ Wed May 29, 2019 9:43 am ]
Post subject:  Re: Best method for Botting

My guess is that you could speed it up quite a bit. It appears that you do all the work immediately before your bot acts, but you could start to collect data immediately after each opponent acts. You've done the hard bit in getting this to work at all: I reckon you are not that far off a working solution.

Author:  Robot [ Wed May 29, 2019 10:06 am ]
Post subject:  Re: Best method for Botting

I had a working solution, until PS banned me!!! And now require verification so I can't create dummy accounts anymore.

I wanted the bot to act in one go, as I'm thinking for multi table botting, I can just cycle through each and when one requires a decision, I run the decipher code.

I'll start working on another site, I just wish there was an archive of images of different poker tables, I could build a more generalised solution then.

Author:  spears [ Wed May 29, 2019 1:11 pm ]
Post subject:  Re: Best method for Botting

Have you checked out openholdem / openscrape? Even if you don't use their code there might be table maps available.

Author:  shalako [ Wed May 29, 2019 9:53 pm ]
Post subject:  Re: Best method for Botting

Quote:
Pokerstars have banned me on one of my machines and although I've created a brand new account and purged everything relating to pokerstars, changed the physical address and IP address, I still can't use that machine anymore. So I'm going to use a VM instead which I can easily clone and delete when necessary. But this means I have to start again with my bot, so I though I would see what everyone else is doing.


Pokerstars takes a hardware fingerprint of your machine. You can see the ID in the log file. It is unknown what variables it gets the data from but its things like processor SN, HD SN, guid etc. The only way around this is too use a VM in which you can control these specific IDs or buy a new computer. I used a VM for this a few years ago and it worked good and you can verify the fingerprint is different before botting/creating a new account.

Also..Tesseract should be nearly instant so you have some other issue that is slowing you down there. You should be able to grab all the table data in milliseconds.

Author:  Robot [ Thu May 30, 2019 10:00 am ]
Post subject:  Re: Best method for Botting

shalako wrote:
Pokerstars takes a hardware fingerprint of your machine. You can see the ID in the log file. It is unknown what variables it gets the data from but its things like processor SN, HD SN, guid etc. The only way around this is too use a VM in which you can control these specific IDs or buy a new computer. I used a VM for this a few years ago and it worked good and you can verify the fingerprint is different before botting/creating a new account.

Too late for that now, they (PS) linked my dummy botting accounts to my real personally identifiable account, perma ban! VM all the way, I've got a clean install with no poker apps that I can clone, need to do more research on what I ID'ing things need to change, MAC address etc. Also what things I need to change to hide the fact it's a VM.


shalako wrote:
Also..Tesseract should be nearly instant so you have some other issue that is slowing you down there. You should be able to grab all the table data in milliseconds.

It is quick when I decode the entire screenshot but the results are difficult to decipher especially when there are mistakes. So I'm pulling 9 players bets & stacks, 7 card values and pot, which tesseract is decoding separately. And a bunch of pixel values for other information. This is why it takes so long. I have had an idea to concatenate all the tesseract images, then decode them all in one go with a separator image. So I'll keep this in mind for the next site.

Author:  shalako [ Thu May 30, 2019 9:58 pm ]
Post subject:  Re: Best method for Botting

Quote:
Too late for that now, they (PS) linked my dummy botting accounts to my real personally identifiable account, perma ban! VM all the way, I've got a clean install with no poker apps that I can clone, need to do more research on what I ID'ing things need to change, MAC address etc. Also what things I need to change to hide the fact it's a VM.


There is no way to hide the fact your on a VM as there are countless ways it can find out. I also think PS is checking for known connected networks to identify "war rooms". Using wifi is a bad idea (for a number of reasons including geo loc) and so are known VPN services. A knowledgeable network guy is key.

Author:  mlatinjo [ Fri May 31, 2019 12:36 pm ]
Post subject:  Re: Best method for Botting

Why would you want to play on pokerstars? high security, no rakeback, tough regulars

Author:  Robot [ Sun Jun 02, 2019 10:13 am ]
Post subject:  Re: Best method for Botting

mlatinjo wrote:
Why would you want to play on pokerstars? high security, no rakeback, tough regulars


I like a challenge and if I can get it to work on PS it should work anywhere.

Anyway, I've set up a different site now, much cleaner lines and easier to decode with higher accuracy so it's all for the best.

Author:  niergeman [ Sun Jun 30, 2019 5:58 pm ]
Post subject:  Re: Best method for Botting

shalako wrote:
Quote:
Too late for that now, they (PS) linked my dummy botting accounts to my real personally identifiable account, perma ban! VM all the way, I've got a clean install with no poker apps that I can clone, need to do more research on what I ID'ing things need to change, MAC address etc. Also what things I need to change to hide the fact it's a VM.


There is no way to hide the fact your on a VM as there are countless ways it can find out. I also think PS is checking for known connected networks to identify "war rooms". Using wifi is a bad idea (for a number of reasons including geo loc) and so are known VPN services. A knowledgeable network guy is key.



I'm on the road deciding which way is safest for getting screen to another Operating System for OCRing. Need to bypass Pokerstars and Partypoker security.
Clearly there is VM that i do not think is the best solution because what you pointed out- being suspecious VM user is not good.
Having 2 PCs i the way to go for me- i see 2 options: 1) screen sharing program (like RemoteDesktopConnection/TeamViewer...) 2) capture cards

As RDC/TV would be detectable that those programs work on the host PC, i've thought that capture cards might be the safest bet.

So far i've read from this forum that somehow Stars could somehow identify capture cards and reverse engineering might be needed to prevent that.
If anyone had some feedback on using Capture cards or just information about safe screen sharing i would be nice to hear- helps the OP also i think.

Some links about capture cards
https://www.epiphan.com/store/
https://filmora.wondershare.com/screen- ... -card.html

Edit: viewtopic.php?f=26&t=3032&start=0
From this thread you could read that this https://www.aliexpress.com/item/32814946489.html + https://www.aliexpress.com/item/32796327703.html (or other great quality capture card) could do the work on being totally safe. Could that be true?

Author:  mlatinjo [ Sun Jun 30, 2019 8:13 pm ]
Post subject:  Re: Best method for Botting

You should also think about mouse movements. They can detect if mouse input is from API or from mouse hardware, so you would need a special mouse which receives input from your bot and sends output.

Another thing is and i think the toughest, to have multiple bot accounts look as having different strategies.

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/