Coding the Wheel

How I Built a Working Poker Bot, Part 1

Friday, May 09, 2008

[Update: two of the original authors of this post have moved on to greener pastures, and have asked us to mothball this content in preparation for an upcoming book. Thanks for all the feedback and stay tuned for more technical poker content in the future.]

Introduction

Several years ago, a client asked us to come up with a prototype for an online poker bot. That's right: a piece of software you park on your computer while it goes out to an online poker site and plays no-limit Holdem for you, at 4 or 14 different tables...

 

Tags: poker bot, Win32 Hooks, IPC, DLL Injection, online poker, C++, poker

           

313 comment(s)

You know I once thought about rolling one of these myself. Couldn't quite get past some of the technical issues (didn't have the time to invest) and I'm horrible at poker though I like it-- still. Would've been fun.

WOW

This was an amazing read.

Does that image actually say Fold for AA?

Interesting, I've got a background in Artificial Intelligence and have done some stuff with genetic algorithms. I always thought it would be interesting (and perhaps lucrative) to build a poker-playing bot by having thousands of them play each-other, "breeding" the best ones, and then having the offspring play each other, and so on. I even did some initial work on this:

http://locut.us/blog/2005/02/12/playing-with-genetic-algorithms/

Are you aware of anyone applying GAs to this task?

I think it's a bit ignorant to worry that the "technology" (oh my, rocket science?) behind building a bot player will be out of the hands of a capable programmer, unless you publish this article.

@Ian Clarke: Marc Cohen wrote an MSc dissertation on evolving poker playing agents. It's available via http://www.informatics.sussex.ac.uk/research/groups/easy/publications/msctheses2002.html

"cannot believe how little work there is in that... wow"

Being a professional software engineer, I can tell you that is a lot of work for 1 person. Kudos to the author.

Keep it going. This is fascinating.

Heh, I thought about making a poker bot about 2-3 years ago when a friend introduced me to PokerStars, and poker in general. I felt there are so many bad poker players playing online that if I could just tweak a bot to keep taking advantage of good strategies, and set it to play 20 hours a day, I'd be making steady money. That and the fact that I'd always have it sit at tables where it has at least 400x the BB, so the variance won't kill it.

Never got around to it, mainly because I was afraid PokerStars might confiscate the money I deposited and maybe even go after me. Now I wonder, were those fears completely unfounded? Thoughts...

FTA: [quote]but that doesn't mean you'll be able to snoop around and figure out your opponent's hole cards. Don't even try. Unless the implementors have been sloppy, that information won't exist anywhere on your machine until your opponents have actually flipped their hole cards over.[/quote]

Actually, somebody figured out how to do this by determining what the seed value was for the server's random number generator.

See: [url]http://www.cigital.com/papers/download/developer_gambling.php[/url]

James: are you currently running this bot on Poker Stars or any of the major venues?

if so- how's it faring?

Give us some details!!

I don't think there's gonna be a way to defeat bots. Every technique that could be used can be worked around so easily and the AI in them will just get better and better. The best thing the poker sites could do is do away with human players altogether and get some bot on bot action going. That would level the playing field and make it much more interesting ("for who?" you might ask, to which I respond, "for me!").

The only way I see around this is if the poker site developers really get a taste for virtual violence. That is, putting nasty instructions in random locations in the address space, while making their programs immune from such malarky. It would be the ultimate struggle.

Is it against the TOS to do the actual playing youself, but have the bot make the decisions for you? What about if you had a friend helping you? What if you had a book of poker strategies you consulted with during the game?

Awesome article. Great work!

Looks like I'm gonna have to go back to learning C++. Any chance of porting this into an Adobe AIR application?

Rather than writing one with hooks into Windows APIs, I was thinking of using one of those automated GUI-driving QA systems to play. Like Borland Silk.

If the poker sites start implementing countermeasures, an GUI-automater would be more immune.

It is only a matter of time where poker sites allow the battle of the bots. This will be where the best artificial intelligence can beat up other artificial intelligences.

Shhhhh!

Very nice! Everybody is going to try and build a bot now.

Whatup fellow power bot buddy. The way I got data from partypoker was to hook into the WriteFile API by using code from Sysinternal's Filemon program (at one point it was open source) and scraping the (unreadable) hand history files.

I believe it was breakeven, but I didn't play it long enough to be sure.

Plus my input back into the program was rather sloppy and unreliable (I'd hijack the mouse and send click messages which doesn't work 100%).

Maybe what I learn from your articles will help me get back into it :)

Good job though. While writing it, I always figured it was tough enough to make it that there must be very few people out there who could do it (and thus be very few bots).

You've gone one step further and are going to make it easy enough for other people to know how to do it, too.

Well done.

Ack. "power" = "poker"

I was also big into machine learning in college and was trying to come up with something for poker, but I decided a probability/simulation/rules based framework was easiest.

I should get back into it, but that was back in college and I'm a bit short on free time nowadays.

Why not just reverse engineer the network protocol and go from there? Seems easier (and more scalable) than the psuedo-OCR and injection...

ssh dood.

java robots class and log file output is really all you need. no need for special API hooks or anything. much simpler..

Excellent, excellent post.

I thought about rolling one of these myself but on the Mac side of things. I couldn't imagine trying to do this in Windows world … entirely too many hoops to jump through.

I am an avid online poker player and really don't mind bots. Unless they're using top-shelf AI, they'll be predictable to a point. Still, I'd love to play against a few of them to get a feel.

Cool series though, subscribed to the feed and can't wait for the next couple articles on this.

Can I play your bot HU for real money? please... pretty please

(Yes I play poker on-line for a living, no bots in themselves don't scare me, collusion does but there are anti colluding measures in place, I've been banned from playing with friends before who even though we weren't colluding, they're not perfect but theirs a risk involved, and well you don't need bots to collude I'm more afraid of good human players colluding than bots.)

A great post. I am looking forward to the future installments. Thanks!

I am far from a programmer and didn't understand any of that shit. But would it screw a bot up if the site redesigned their cards on a daily basis. I noticed the bot gathers the hole card information by analyzing pixels. If the sites found a way to change how the cards looked on a daily basis or even more frequent basis, would that help prevent bots? Like how brick and mortar casinos change the deck of cards regularly.

Will someone stake me a few bucks so I can go tanning. Daddy Micon is busto and we are on a budget.

Nice article James. Did you ever think that the poker sites may like the bots? Sounds crazy on level one, but as long as they aren't infesting the games or taking tons of money out of circulation, I doubt they care because it's more rake for them.

Looking forward to hearing more from you.

Excellent article, I can’t wait for Monday!

Yep, java robots class is much simpler, and immune to any pokersite intervention; I aggree :-) If things get really hairy, you can for example run the poker client in a virtual machine like VMware and still figure out the table model from OUTSIDE VMware. And with JavaDB you can save both your learned statistics and the GUI-Model for a website in a safe way.

I started my bot running in 2005. Here is what I found.

> Interesting, I've got a background in Artificial Intelligence and have done some stuff with > genetic algorithms. I always thought it would be interesting (and perhaps lucrative) to > build a poker-playing bot by having thousands of them play each-other, "breeding" the > best ones, and then having the offspring play each other, and so on. I even did some initial work on this:

Each game is 1 to 3 minutes. This means you are collecting data very slowly. The problem space is fairly large so this would take years. You need to do bot vs bot simulations off of the poker sites in order to get enough evolution generations completed. It also requires manually understanding poker techniques in order to look for tells.

Then run the game on the site and monitor it closely.

Are you blind? Clearly this is a generic advertisement for online poker sites, trying to encourage you to gamble online..

It folds for AA because he doesn't want to create a winning bot.

James: I sent you a private message via your contact page- fascinating article, I'd like to discuss this privately with you. Email included in this comment. Drop me a line when you get a chance.

Btw

how much money have you made off this poker bot?

I'm a poker 'pro' and I play very regularly. I'd venture a guess that there's no way this bot could play no limit, there's way too many variables involved and it'd be to easy to exploit it.

Next, the most important part which you've neglected to mention, you need to adjust to specific players tendencies. This means you'll need to code the bot to read players psychology, and not only that, read what everyone player in the pot is thinking.

I just don't believe its possible. Heads up bot in limit, maybe.

i wrote a poker bot in java and C# ... it was very good I just wrote a simple image recognition part of the program. I was able to apply it to several systems very easily ... the only reason I didn't use it seriously was out of fear of being caught

Nice web site!

Would like to see more "building blocks" posted, such as hooking dealer text, parsing it, determining position, etc.

This would allow users to assemble their own, using components.

Nice concept, well implemented.

Wow, he's right it's actually possible - quickly made this (it's nothing close to being fully automated - just proof of concept - tested with poker stars). It will read the value of the cards, and tell you what cards you have - that's it - it's proof of concept, not intended to defraud or anything. Did it in java, requires JBorland to compile or whatever - I don't support this code - use as you want.

http://rapidshare.com/files/114046430/pokerstars-botcode-proofofconcept.zip

Again you have a long way to go before you can use that code to try and defraud, just proof-of-concept to test around with.

never has been illegal to play online in the US; some states maybe, thats a state law though.

For botting I use http://www.rpgbugs.com and http://www.gamebugs.org pokerbots, WoW bots, everything, easy money. Yay.

When you're playing for real money aren't you worried about collusion between other players? Easy enough to open a chat window or a Skype conference call and swap info on the cards you have. This is info that wouldn't be available to the best bot. I just play for play money to hone my skills for when I play in person for real money.

BTW - when are you going to open source your bot :)

if you know any programming, you'll see how this is obviously fake. Good job for getting dugged though.

A poker bot will not be worth much until AI has reached the point of being nearly indistinguishable from human intelligence. Until then all the bots in the world would get you bankrupt very quickly against anyone with any skill in no-limit. Unlike chess the elements of sound poker play has to do with human psychology and adaptive reasoning; you can't brute force select the best possible out come. While a sound understanding of the mathematics of the game are essential, no computer ai yet made or likely to be made in the next 25 years will be able to play no-limit poker with any degree of skill. Remember in no-limit one bad play or mis-read can cost you all your money, I would never trust a bot in a situation like that.

Bot Code said:It also requires manually understanding poker techniques in order to look for tells.

Here is the problem, there are really no such things as set tells. They change from player to player. In a general sense we can say certain actions may mean something most of the time, but you can never be sure. In fact no-limt poker maybe the most complex game ever developed. As the dynamics of the game change based not only on the players skills but also on their mood and psychological make up. Take into account that the players are also actively aware of this and send out false signals to throw people off; it's an endless mind game. For a bot in this day and age to be able to deal with the nearly unending amount of variables that come into play in no-limit poker is unthinkable. Really this won't be a viable option until AI has advanced leagues. Seems like more of a problem for the people at MIT.

lol the first thing that comes into my mind is that the bot is playing through parameters that it was programmed to. Some one can just build a bot that counters those parameters and boom "your" bot is useless.

All this talk of collusion gets me thinking...how about bots that collude? Imagine if you have three or four bots on one table that communicate with each other. Surely they'd be unstoppable.

I've been doing this since 2005, so I'll give my tricks.

No bot plays no-limit. You are right that they will always lose. Bots need to break even to earn money as shown above with economic systems listed above, but they can still make money.

ACAMEDMIC BACKGROUND:

The PhD level work at the University of Alberta's is critical for anyone. http://poker.cs.ualberta.ca/

In Texas Hold'm (TH), people play "tighter" or "loser". Lose being when they bluff. The Univ of Al gives the tables on the right range to play. This is a range because of bluffing. This range is narrower than you might imagine. Most people who bluff more than they should get creamed when the bot is playing just a bit tighter than they are.

In my system I have normalized the numbers to 0 to 100 and above 100. Anyone playing "above 100" clearly bluffs too much, playing tighter can win fairly easily. People playing under 90 are playing too tight.

With the Univ of Al data, and calculating your own, you can find the right ranges factoring in: number of players at the table, blinds, who has dropped out, how much money people have, where you sit at the table, etc. People who play less than 90 are playing too tight. Mainly because they haven't crunched all the number and are being too conservative.

The tricky part is between 90 and 100. See COUNTERING BLUFFs below.

COUNTERING BLUFFING:

Bluffing has three parts:

1 Someone is trying to make you fold when you probably have a better hand.

2 The other player bluffs too much, and you are calling their bluffs to pull them back in line.

3 You are trying to make them fold when they probably have a better hand.

With a bot, doing #3 is a BAD idea. This is where humans can watch and win against you. In the 90 to 100 range, you need to balance #1 and #2.

In game theory, there is the child's game of ROCK, PAPER, SIZERS. You try to tell if your opponent is likely to pick one of those more than average. Then you pick the kind that wins against that. You are trying to "Move behind" him to win. Texas Hold'm in the 90 to 100 range is the same at the mathematical and game theory pattern. You are trying to "move behind" them in #1 vs #2 vs playing conservative (exactly at 90). When they do #1, you do #2 to pull them back in line. When they stop, you better quickly stop doing #2 or they will do #2 tigher to win against you.

You can and probably skip this entire problem by just not playing in rooms when there are players who are good at playing in the 90 - 100 range. I spend time here just for the challenge, and it lets me stay in more rooms with those decently good players.

TECHNOLOGY:

The APIs list above are good. I think C++ is needed to build a very rebust and no-detectable application. Note that their code looks and tracks the process names, so they can detect the standard tools listed above. That is how WinTexasHoldm (SP?) client was blocked in the early days.

I am super careful about everything I do. I don't inject a dll into their process because that is could be detected. Note that windows has several APIs that let you get around this. They are pretty clean about doing it also. If you want to get injected into their process, you can also see the windows APIs for application compatibility, which do this cleanly (aka "shims").

I do most of my work on another computer and then tunnel the information across sockets to the machine running the poker client. That way there is very little code running on the computer with the poker client that can be detected. Virtualization makes this easy when you are dealing with scale (listed below) and only have one computer to work with).

RECORD PLAYERS:

Here is the advantage that you have over all players. You can record a large number of games. You are building the track record of how players play. Are they in the sub-90 range? Above 100? Where in the 90-100 range?

People often have "asymetic play" meaning that they are weak in certain areas. Writing the code to detect this is hard and very time consuming.

Your life gets easier in the second year. An optimization technique is to focus on watching tables of players you don't have data on yet.

To keep it simple, just avoid tables based on how many plays in the 90-100 range.

SCALE:

One challenge area is when scaling. I'm always paranoid about being detected. This means NEVER have more than one poker client per IP address. This also means don't have a comcast provider and use several IP addresses with similar IP addresses or similar parts of the country. It is hard to get computers across the country where you can have one poker client per IP address and get large numbers.

Don't "watch" too many games when you are recording people's play, so that requires scaling up.

The other part of scale is to make sure that you have variance in your patterns. You can be detected if one account is doing too much work. Or too many accounts are behaving the same way (watching the same amount, betting the same amount, during the same hours, etc.).

THE SECRET:

The secret is PICK WHICH PLAYERS TO AVOID. The math is on your side, and the track record of players is on your side. Pick 20% or 10% of players and AVOID THEM. It's fine to be in a table with a small number of them, BUT YOU HAVE TO LEAVE after a short while.

THE REAL PROBLEM and THE CONCLUSION:

The technical and scale issues are a challenge. THE REAL CHALLENGE is financial. You need to understand the poker company's real customer base. You must look and behave the same way. The poker companies will FOLLOW THE MONEY to try to find you. This is the real pain to pull money out in small amounts that matches their customer base. This is where the logistics become a pain.

Anyway, I hoped that was helpful.

BotCode==BotCoder

FYI - http://pokerai.org/pf3

I'll link to your tutorial.

Poker botting ain't "criminal" btw. It's a honest hobby. It gives no advantage to it's author from game theory standpoint.

For those that rather code in Java: http://internna.blogspot.com/2008/05/creating-playing-bot-in-java.html

with all that money do yourself a favor and buy a few keyboard switches or use Synergy to link to the desktops.

I barely play poker and I don't play online poker..so keep my ignorance in mind. I read this article thinking how similar these problems are to the online first-person-shooter (FPS) community, except that it has been going on for over 10 years now. I would think the online poker places would do well to link up with, say "punkbuster" (http://www.punkbuster.com/index.php?page=info.php) as it has been mitigating (no anti-cheat software is foolproof) these sorts of cheats for about 7 years now.

So look about in other online multiplayer game communities and how they handled bots, you could very well find some good solutions out there.

Great article!( I found out about it from Digg: http://digg.com/technews/HowIBuiltaWorkingOnlinePokerBotAndthanksforthe )

I look forward to future posts in this series!

Of course, doing this with Hooks is a super easy way to get yourself discovered, and banned for life from whatever poker room you try. It'd be cake for the software authors to write a little routine into the poker software that would report everyone's hooks, and then they go through and start investigating suspicious looking ones, or just flat out banning them.

Oh, maybe that's what you're trying to do - tell everyone how to build a bot, so people who actually end up doing so are easy to bust. :D

Hey Buddy ...

WHY are you talking about it??? We are getting SO MUCH MONEY WITH this bots ... and u could too ..

but u deide to write it here down !!!!

This is fascinating. I'm a CS student and I really like this kind of thing. I'm thinking of doing a personal project similar to this for an online trading card game. Not to play it, but rather to automate the process of trading cards. Many people have already done it, but they keep their bots secret, and the publicly available ones are slow or are unable to identify the cards... Please continue your series soon, I'm sure I can learn a lot.

I've only tried it on Full Tilt, but turning on 'all messages' in the text window describes everything going on in the hand: hole cards, communities, bets, and seat occupants. It's not recognizable from the window info, but it is copyable. AutoIt3 turns it into a text file pretty easily. It also handles interfacing with the poker client. Program something to process the information, and your bot is complete. Disagreeing with this article, I actually recommend c#. It's much better at processing the strings. Also, all that extra framework he mentioned really isn't a problem if you use the above method, because your info processor can be a stand-alone.

I was going to this myself a few years back but then i was told as part of the sign-up agreement with most poker sites, somewhere in the small-print, you assign the site the right to snoop around your memory footprint whilst you are running their software in order to play. Is this true? and if so wouldn't they be spending enough of their mountains of cash to write snoop software to detect your bot/UI scraper code?

who cares legal or illegal what for $0.10/$0.25? lol. okayeee

Some on-line poker sites (Stars, Party) have invested a fair amount in detection. I had some bots running and some nifty workarounds to not be detected, but they got better than me. Each time they got better than me, they kept all my funds :(

I'd don't know if it's legal, but the TOC do say that you cannot automate the play, and if they do, they'll keep your money. They've done that enough many times to me that I was running at a loss. So, beware.

Henry

@Lawyer Guy

Some on-line sites do have the technical abilities to detect bots. I cannot vouch for all of them, but I've been burnt quite a few times.

Henry

@Henry--- Not really. If you know programming, and your bot is unique, they quite can't catch you - the Windoze OS makes it too easy to hide and obfuscate your bot. Only if you're being really, really obvious would they ever be able to detect and even then the individual botter is small potatoes. What the sites mainly want to prevent is using any well known bot tool. Private bots would be almost impossible to detect.

Trust me. Lol.

didn't think that this article was going to be anywhere as good as it is! yeah, i'll have to dust off my C++ hat, but that's fine with me. you are talking in a couple of languages I understand; C++ and NLH! i too am not afraid to go up against a bot, or a whole table of them. as long as you understand what they are doing, and why, you can beat them.

shocking these sites don't implmenet something like warden (blizard for wow)

JP, many sites to put software to detect these kinds of bots. Pretty cool article on how it is done though. Just dugg the article over at Digg. Added your blog to my reader James!

Nice one! Probably 2 or 3 years ao, I coded a similar hook in C++ for PokerStars to use speech recognition to call/raise/bet/fold/etc. Maybe some of you have heard of "Realities Poker Helper"... It had some good stuff and several players used it. Its now offline though because the poker application version kept on changing and I didn't want to keep up. I think injecting a DLL is a bad idea... Better off sniffing from outside...

Though my code is very similar to your stuff, I actually never though of automating the play. I was only having my program suggest the best action to take. I can see here that some posters are quite advanced programmers on this "technology" and I can imagine huge shops working around the clock to build the best underground bot.

My advice, if you are coding your own bot, dont publicize or sell it. Keep it secret. Don't use sloppy hacks to get your game data. Spy++ is awesome to reveal hidden stuff. I found out that Poker Stars sends a window message for every single play action, so sniff those without getting caught. Don't play multiple accounts/tables on the same computer/IP. It might be best also to feed in random smooth mouse moves and clicks around the interface, at variable time delays. I would easily be able to track a mouse jump or evenly spaced clicks.

Eventually, I plan to just publish my hook, so peeps can just use it... But I know it could lead to bad poeple using it... Oh Well....

Back to my code.

Interesting! :)

how much money have you made with this bot? Any poker site kick your bot?

Personally I prefer playing poker myself and learn from sites like [url=http://www.ibetips.com]ibetips[/url] but is very interesting to know how a bot runs

I really learnt with this text. Thanks! ;)

I was in a winholdem lab for about 6 months and believe me writing a winning bot is very hard and I am a programmer. I wrote an interface into the poker-edge free profiling site so even with that edge it was at best break even . You need to be a very good player to begin with and even then your bot will only be about 80% as good as the person who programmed it. Only do this as a hobby and only target tables < 10c and even then its hard (more like a black art)

Great article! I really enjoyed this although I'm only a once-in-a-while-hobby-poker-player. Kudos for the good research work James.

Interesting stuff, but does it make a decent profit? Can't wait for the next part!

You never actually covered the "output" part. How do you automate pointing and clicking?

"Poker Stars, for example, conveniently emits this information into its log file, and it does so in real time (meaning you can snoop on it in real time, [b]and in the next installment, I'll show you how[b])"

That will be interesting!

How do you get player position? Button, BB, SB? Does it get "early", "middle", "late" position? or "3rd", "4th", "5th", etc. ?

Very nice article. Unlike many of the people who write about these things, you actually seem to have done it. So far it is very practical and informative. You have us "hooked".

Input and Output doesn't seem too complicated, although I wouldn't go the hook route. Full-Tilt has a nice log-window, which pretty much tells you everything you need, but I'm a little bit worried to spam the "copy"-command on it every half second - that could be quite obvious, if they track it.

I think the hard part is to get the AI done right, maybe you can write a little more about that? :)

Where i can get full code and instruction how to make this bot working at the poker stars, really thanks for coder who write this article, go go go , don't waist your time , just do bigger projects . Good luck. ;]

Come say hello

Open source poker bot project here: http://code.google.com/p/openholdembot/

lets see ;]

i try about 3 bots but its not working....

Poker is the name of the game. Anyone that is looking to play can email me at: johndeanmedia@yahoo.com

ha ha , poker bots... Hello,

We at PokerStars have recently detected that you have tried out a program called "Poker Android". We would like you to know that among this program's features is an automated "robot" player feature that makes this program against the rules of PokerStars.... bla bla bla, so...

What happened to part 2? Did the poker rooms' henchmen get to you?

This is such an excellent read. When is the #2 coming? i know he said this coming monday but thats dated 2 weeks ago hehe.

These things take time to write. Also, he may have a life.

Best ever programming related article i have ever read in my life. Excellent job sir. I am gonna check on this site everyday for the enw updates. Lookng forward to them!1

How do you get around having multiple computers working on the same ip on a website, does it require multiple broadband accounts?

I create a new site for playing texas holdem for free playing via Internet Broser, Google Android or iPhone - [url]www.pokerblackbelt.com[/url]. I had written some bots for testing this site and I am developing some new bots. I think it is good place for testing bots with real players and with other bots too. If will be interest I will public protocol for communication with server (it is simple text protocol via sockets).

Richard, can i get it for my web ?

Hello, first of all: thanks for the great tutorial. I have given it a try, and i managed to capture some events from a pokerclient. I wonder tough, how i get my hands on some real information like strings containing names and information about the hand. I know how to use detours, and have the following code:

static int (WINAPI * TrueDrawText)(HDC hdc, LPTSTR lpchText, int cchText, LPRECT lprc, UINT dwDTFormat, LPDRAWTEXTPARAMS lpDTParams) = DrawTextEx; static BOOL (WINAPI * TrueExtTextOut)(HDC hdc, int X, int Y, UINT fuOptions, CONST RECT* lprc, LPCTSTR lpString, UINT cbCount, CONST INT* lpDx ) = ExtTextOut;

For both methods, i have tried detouring the function and intercepting interesting stuff, but both functions seem to get called very rarely (both on everest and pokerstars client), only when i resize or minimize a window i get some results. One would imagine that the stuff in the chatscreen (containing info about the current hand) would go through at least one of these two methods? Any suggestions about what methods to detour in order to get more info?

thanks in advance.

Hi James,

nice article... I built sometime ago a bot for a big poker room that i prefer to keep secret here. I'm using some hooks to get all needed informations from the poker client. I'm also using a customized Goldbuillon src for the AI (based on pokersource). If you're interested to discuss privately about that, you can contact me at: broques @ dbb . fr

all the best

i post this for the few who use these poker bots ....i LOVE it .... any half way decent poker player .... will take all thats right all of your money . so to all you bot players ...keep up the good work i need the money . thank you

excellent article, look forward to the rest.

You say that a client initially asked you to build the bot, but did you ever sell it or did you just end up using it yourself?

I agree this is a good article, but nope, sorry, I can't see it. As "the dog" so eloquantly implies, I'd play against a bot ANY day of the week rather than a good poker player. Poker is not like chess because factors other than knowing the odds are involved. You can't program things like an unexpected flush on the river - the luck factor. You can't easily account for incongruent actions (varying play) like bluffing and check/raising. Once you figure out the bot's method of play, it will be EASY to take down.
Given the rules shown above, I could raise every hand and steal the bot's blind A LOT! That'd begin to hurt before the bot could compensate.

How do u get those 9.999.999.999 on the cashier :S ?!

Great article but I don't like the fact you're promoting rigging of poker like this. I guess not many people can do this sort of programming, so there is still hope left for the poker world. I also think I could play better than a bot seeing as there has yet a bot to made to beat any sort of good players.

Hi, I found your site while trying to learn how PokerStars is able to detect independent processes. I wrote a bot that functions solely on algorithms, (no card rules). I'd be happy to show you the source.

david

Hey David, im curious as to what you mean by soley on algorithms. could you explain it a bit more? thanks!

great article, I have posted an excerpt on my blog with a link here

http://www.mypageofmanythings.com/my-blog/poker/

I posted your article at my site. (not copied). Hope that's ok? Thread is here http://www.pokerisrigged.com/showthread.php?p=3266#post3266.

We've done something similar here at www.icmbot.com

Interesting techniques, I didn't think I would find an in-depth analysis of the poker-bot-building process - or at least anything close to this. I enjoyed the article - looking forward to the rest of the series!

Of course, you're out of business the moment Full Tilt starts implementing captcha tests to read your hole cards. :)

/just kidding

(wrote a silly perl-based advisor and tracker a couple years ago for one of the rooms, not nearly as cool as PokerTracker)

OOOPS..

Correct url, [url]http://www.pokerbot-online.com[/url]

Great series, well written, but is this right? [b]And nothing except the logistical nightmare of it all restricts you to a single bot account; why not have ten; or a hundred?[/b] Don't the casinos restrict you to one account per person? Surely this is enforceable by checking your identity papers at cashout time?

If any of you players or bot writers need hand histories for your stats (PT, HM etc) databases you should head to HandHQ.com.

Here is my own PokerBot that i create by my self. It's in free download on my website enjoy it... I used the same methods as explain on this website. http://www.winpokerbot.com

Wow! Amazing stuff!!

If you wanna try with some free money you can have a look to my blog where you can get $200 for free:

[url]http://tuktukbkk.blogspot.com[/url]

Then just let the bot run :)

cool, thanks for posting this!

Why do Online Poker programs make things so easy for poker bot if they don't like them ? Why poker star gives all these informations in his log file ? it seems weird to me...

mine takes a 64-bit unsigned integer, and returns a 16-bit integer. There is one bit for each card. Barry Greenstein has one on his site, but it's not very efficient. It's TLC, lol.

I only have to cycle through the 64-bits one time, and then I have all the information on where the pairs, trips, quads, straights, flushes are. It wouldn't take too much modification to turn it into a low.

So, if you had 7 cards, you'd pass it like this Eval( 1 << card[0], 1 << card[1], 1 << card[2], 1 << card[3], 1 << card[4], 1 << card[5], 1 << card[6]);

No repeats! Huzzah!

I also have one of the traditional way, an array of cards.

Also, my thinking is to store it all into memory, every single bit solution. Then you can reference it very easily with pointers. It would take too much memory though currently.

whoops, meant to post in part 8

dont you have to get the other players to download your bot before you can use it against them????/

I just played a bot today and took him for $500. I could tell because he was playing such ABC poker and would always fold when I reraised. Sometimes bots are good.

archimondain said, (cut and pasting here)

Why do Online Poker programs make things so easy for poker bot if they don't like them ? Why poker star gives all these informations in his log file ? it seems weird to me...

VERY STRANGE INDEED SIR

Bots are not an issue atm I do not think. But bots will be very problematic for sites once AI is more abundant.

they get rake:) soo.....

Thank you for the great article!

I'm trying to figure out the best way to decide how to formulate the rule for betting/calling/folding. Could you give me a little more detail on your logic for this process?

This is great if it works and you want to make real money. How much can you make and what would happen if you go heads up against a bot - and you knew it was a bot (as a Poker player you can sense when something ain't right)? The game would be dull.

Great article. Thanks!

this is amazing check out a great poker video blog at

http://www.pokerville.info

I agree with Jack (comment 5/11) in saying that there is no way a bot could outperform a skilled human player at no-limit HE for a very, very long time. Even implementing winning EV moves like squeezes and the such cannot possibly make up for the lack of psychological understanding of the game, even online. As was said before, I think the risk of collusion is much more threatening and real than any bot at this point, but even then, we're talking about very well organized collusion. It has been shown that to be efficient, one would have to single handedly control at least 4 of the seats at a 6 handed table. Doing that by yourself would require going through a lot of trouble, especially at higher limits where players pretty much all know each other. If we are talking about 4 accomplices, going through all the trouble of colluding for hours every day to then go through the added downside of sharing the gains in 4 is just not worth it, especially considering that you are evidently limiting the number of people at the table from whom you cn take money, and, that you have to take each other's money to avoid being detected... I mean, you'd make way more money by just developing your skills to become a great player and keep all the money to yourself. In the endm it's like everything, there's no easy way out, you just have to work hard at it, this is not an easy job. I find it sad that people who obviously appreciate brain stimulation to the extent that software developers and the such do would find it even worthwhile to cheat at one of the most stimulating and interesting games ever created. Kind of beats the point...

Very interesting! I don't though think any bot could beat holdem NL. Holdem FL though I'm sure they do and can generate a decent profit.

Very interesting stuff, but I'm wondering why the need of screen scraping the hole cards since you can intercept the chat box messages which contains the information already ?

This is a really interesting article on an area which has predominantly been kept in the shadows, many thanks for your decision to publicly discuss and shed some light into this area of poker!

James, already with this first installment of your article you've outdone yourself, I look forward to reading on!

Yes, but in general they probably suck...much easier to beat than a mediocre player.

This is a great article. We have had some people asking about poker bots on our [url=http://www.pokergob.com]poker forum[/url]. PokerStars now can see what websites and programs you are running or visiting while logged into their network. You would have to run this program on another computer and then have that computer networked to the computer where you are running PokerStars for example.

I have 9 seperate accounts with a very big poker site . Its so easy to do .

Any americans interested in playing at sites that do not allow american players ,contact me and i will tell you how to get around it ... Its all ABC .

use this email addy to contact me >>> yingyangchicken@hotmail.co.uk

Wow, I wish I had this info 5 years ago ;) Thanks for sharing

So...has anyone developed a "plug and play" bot for the "no code writing - good poker players"

Anyone want to make a team? I tell you how to play, you write it= big profits

guys if you want to check out an awesome working [url=http://www.flexepayment.com/mycgi/clickthrough.php?index=285]holdem bot[/url] click the link:

[url=http://www.flexepayment.com/mycgi/clickthrough.php?index=285]working holdem bot[/url]

it has proven results and a free 100 hand trial so nothing to lose, can even test it out on play money first if you like.

uses a lot of similar things that were posted here and has been in development for a while.

very user customisable and you can run it on multitables and on multisites.

really great community and its updated regularly.

so take the plunge and have a look at our awesome [url=http://www.flexepayment.com/mycgi/clickthrough.php?index=285]holdem bot[/url]

PokerStars controls very closely against poker bots, but other poker sites do not, such as the smallest ones. Say if you play on Carbon Poker, you can use a bot. It is up to you to make your bot smart, as anything can be coded into it.

Hello,

I know this is not relevant to that post, but I am looking for a macro programmer that can build me a table spammer for Party Poker. Willing to pay for your time and effort. Please email me at diam0nd52415@yahoo.com if you can help me. Thank You

There are much easier ways to build a poker bot. You do not need wicked programming skills: http://pokerbot.node64.com/

If you'd understand anything about programming nor poker bot creation, you'd see the method presented on the site is both better and more reliable than any OCR.

on this site*

This is so great. what a great job. i tried a different bot but had no success.

I am working for world's largest pokerweblog website and I am looking for weblogs that are not yet covered by us. This is free of course and your blog will receive a lot more visitors than it gets now.

Greets Peter

sorry but my question is why you just don't put the source code of the bot that you have in this tutorial thank you

Are you using sucessfully poker bots. I woud love a chance to play somewhere agains your bot if I didnt yet :)

I randomly decided one of my programming projects would be poker analysis software. Hand logging, hand comparison, statistical analysis, etc. I only ever used something similar once for a couple days. Played Full Tilt a couple months. That's about it.

I immediately jumped to the conclusion of reading memory, or better yet packet logger (client-less would be great). What do you think about the ability to decrypt Full Tilt's packets? or Poker Stars? etc. It says they are 128 bit SSL encrypted. Wouldn't I then need to merely debug and find the operations (ASM) to decrypt the SSL packets? Then log the data of course.

Let me know what you think.

Hi there! If you need free $30 to test your bot check out my site. It would be amazing to have some publicity on your bot in my site. Let me know if you are interested.

Best regards, Miguel

"Any americans interested in playing at sites that do not allow american players" ...just visit [url=http://www.unblock.com]Unblock Poker by VPN[/url]

"Any americans interested in playing at sites that do not allow american players" ...just visit [url=http://www.unblockpoker.com]Unblock Poker by VPN[/url]


Sorry for double post, wrong link first.

Hmm.. I didn't think that poker bots were much of a threat, but now that you have made it clear how to build one, I may have to rethink the prominence of poker bots at the tables. I tried the winholdem bot a long time ago, and since I'm not a programmer, I had no luck getting it coded and working correctly. But the concept interests me a great deal. I'm going to try and work through building one and I'll try to remember to report back if I was successful or not.

I'm not sure this information is great for the long term effectiveness of using poker bots. Obviously, developers are always one step ahead of the enforcers, but this brings a lot of private information into the open and may cause poker rooms to crack down harder under more public scrutiny. Nice article, but I'm pretty sure there are a lot of people unhappy about this info being public.

Nice article about poker bots.

Very useful files search engine. http://Indexoffiles.com is a search engine designed to search files in various file sharing and uploading sites.

It's pretty incredible to me that these things are so easy to come across/build... Even scarier is the thought that there are hundreds, if not thousands, of "bot sweatshops" running profitably across the world... Highlights how BAD most players really are lol

Really makes you wonder just how many players out there that you're up against at the tables are really just powered by bots like these...wtf.

Nice job!

We did something similar here: http://www.pokerbot-smart.com/

This is honestly a very intriguing article - I would love to do a separate expose for my next big article on one of my own gambling news sites. Thanks for the great read.

Great article

I immediately jumped to the conclusion of reading memory, or better yet packet logger (client-less would be great). What do you think about the ability to decrypt Full Tilt's packets? or Poker Stars? etc. It says they are 128 bit SSL encrypted. Wouldn't I then need to merely debug and find the operations (ASM) to decrypt the SSL packets? Then log the data of course.

woah! what a post...Just came across this via Digg

This really does put things into perspective as to whether we are actually playing other real players online.

With the right amount of time and money these could be developed to be quite complex which is actually scary!

If anyone here is interested in predicting the financial markets join me at http://botclub.ning.com

Man this is some sick sick stuff. I would love to see this in action, and I'm wondering if I have already lol - Still, with all the folks that say poker is rigged, I hope they never see this site. Because if they do, we will never hear the end of it! :)

Keep up the great work!

Wow this is sick stuff. Has anyone tried this out yet? I wonder how well it works. My brother plays poker online and he swears its a bunch of bots and such. I think he might just suck at it lol :)

Anyway, I hope he never sees this or he'll never stop gripping about it

Does anyone consider the fact that this is CHEATING? Or are we entitled to anything we can get away with? Is fair play really dead? I think it's a bunch of BS. I've played against bots and they're not that good. The nuances of bluffing and short bets are not easy to value in an algorithm, at least not yet. I would like to see how good this "working bot" is and how many thousands of hours were spent programing it.How many parameters can it follow at 1 time? It is probably more effective on Omaha than anything else. and I bet it sucks with 8 or 9 players.

Well, it may be cheating if used, but it woudl be crazy to think this is the only person to have done this. I've seen several articles about this going on. Most recently at Full Tilt actually.

Certainly it would also work with ladbrokes poker - that's just part of the Microgaming network ...

Actually, I think thebest pokerbots will eventually be the ones that will be created, in house. It is a bit the approach I believe James is suggesting. Plus he's giving some more killer tips which, if I would be interested in this market, I'd definitely work on. Because this entire process has many multiple ways to make money. The money made BY the pokerbot is a very small part of the radar.

Awesome series of articles, James. Loved it. Became addicted to it, too :)

well nothing new...but nice written...

How much would it cost to have someone build something like poker stars or a pokerbot?

That's pretty awesome, I wish these were more commercially available

[url=http://www.casinorivals.com]Best Casino[/url]

Do you know at all how much this would cost to build?

Thanks,

Sammy

[b][url=http://www.poker-bonuses.net]Poker Bonuses[/url][/b]

I'm a software engineer that lives in Reno Nevada. Anyone interested in meeting in person and working together?
Email me at jmark821@yahoo.com
I will also be in Las Vegas May 9-11

This is the most comprehensive article I've seen on the subject, but everyday I see poker forums with a "bot user" that is enticed by the idea of "cheating his way to easy money" playing online poker, but in all reality I'd prefer to have a failproof way of preventing poker botting, hobby or not.

Good way to get your whole bankroll confiscated anyways, but kudos for a well thought out article.

Someone should open a new poker room for bots to play bots,can even have big mtt and guaranteed tournaments, but lets leave poker to the actual players on legitimate sites.

Fuck poker bots! Monkeys bolloxs.

WOW.. as they say, everything is possible. I see this taking equity mainly from the lower stakes, and the best players to remain unaffected or even increase their bottom line if they know how to exploit them.

Ahahah, never thought this could even be possible. Goes to show that if you're a genius, you can do anything you chose.

That picture with all the laptops lined up is sick... your blog is becoming viral from what I can see.

Awesome stuff. I had no idea that there were this many people devoted to making online poker bots work.

I'm glad I found this blog through a fellow poker player. Although you are taking equity from us, I believe poker is a zero sum game and that we will always stay profitable, whether it means improving our game, or taking advantage of the intrinsic flaws of bots.

Pretty sick, kind of an orthogonal approach to becoming a professional poker player though, but there are different ways to get an edge.

An easier approach would be to crack the game protocol(instead of using screen recognition) so u can just read the data as it comes in and issue commands at your wish. This would also make it marginally easier to read players, are they hesitating? do they check their cards alot? One could store all this information into a database and use it to improve your bot.

Many poker clients allow you to just watch ongoing games, this would be the perfect spot to let your bot get to know other players.

I've been thinking about making a poker bot myself, im fairly sure I know everything it takes to technically make one, the only problem is I kinda suck at poker which is a big handicap.

btw nobody said anything about colluding bots :p

Wow, what a cool thing to do, does this actually still work?

I wish there was a working poker bot I could download and use to tinker with. I tried win holdem back in the day, but I suck at coding so it was tough to get it to work.

this is one of the coolest things to come out on online poker. this is so great to see.

simplepoker - you could do that, but you'd be a loooong time rebuilding the protocol. It really is easier to just hook some APIs and map some screen coords.

as for watching, yah, you definately want datamining. Hell, I'm not even writing a bot, just a hand calculator/table assistant, but datamining to pokertracker is definately on my todo list.

to the anti-botters : Rofl. Though cheating is possible (collusion bots mentioned in the next article, or maybe #3), most of the posters here either know how to code (maybe. a little bit.), or to play poker. Should any of these people attempt both at once, hilarity will ensue. Those guys at alberta made a straight up winning poker bot. That group has more pieces of paper that say "DOCTORATE" than you can shake a stick at, and they probably have far more access to true Poker Professionals than we can even dream of.

Coding is hard. Poker is hard. Coding Poker is really hard, and Coding WINNING Poker is omfg-my-brain-is-esplodin hard. That's enough to keep this flood of killer poker bots that everyone is worried about from happening lol.

This is awesome. Wish I would have invested in a bot instead of learning how to play poker. Just put in the hard work at the beginning and watch the money come in from there. Nice article man.

Wow man that was an intense post. It's crazy how easy it is to collude and to have a poker bot play for you. I agree though that this is probably only a problem at lower stakes because if a good player ran into a bot they could probably exploit the predictability.

I've done something similiar with PokerStars, well, mine isn't a bot as that requires a mammoth amount of work. It's an "auto-folder", it doesn't use any hooks either and is completely undetectable. Just refer to the PokerStars log. A little bit of code, job done. Now supports multi table too :D

I'am a chinese programmer.I am very interested in this article. Can I translate it into Chinese, then put it on my blog?(retain the author and link)

Have you been caught for using this yet? I hear a lot of players talking about about being refunded after losing their deposit to a poker bot.

I remember playing bots on Titan poker way back in the day, the fixed limit bots were easy to take advantage of all one had to do was use an aced up the sleeve - wait for a table to get shorthanded and raise/reraise every street of action, eventually the bots even fold made hands that aren't the "nuts" due to false logic. Aced Poker is awesome.

I know the prima/microgaming network has a ton of bots, but no poker site has more bots than Ultimate Bet and Absolute Poker - they are seriously a bot fest at the limit games.

I'm still curious though if the OP was ever caught for this?

simplepoker - you could do that, but you'd be a loooong time rebuilding the protocol. It really is easier to just hook some APIs and map some screen coords.

as for watching, yah, you definately want datamining. Hell, I'm not even writing a bot, just a hand calculator/table assistant, but datamining to pokertracker is definately on my todo list.

to the anti-botters : Rofl. Though cheating is possible (collusion bots mentioned in the next article, or maybe #3), most of the posters here either know how to code (maybe. a little bit.), or to play poker. Should any of these people attempt both at once, hilarity will ensue. Those guys at alberta made a straight up winning poker bot. That group has more pieces of paper that say "DOCTORATE" than you can shake a stick at, and they probably have far more access to true Poker Professionals than we can even dream of.

This is the most comprehensive article I've seen on the subject, but everyday I see poker forums with a "bot user" that is enticed by the idea of "cheating his way to easy money" playing online poker, but in all reality I'd prefer to have a failproof way of preventing poker botting, hobby or not.

Good way to get your whole bankroll confiscated anyways, but kudos for a well thought out article.

Actually, I think thebest pokerbots will eventually be the ones that will be created, in house. It is a bit the approach I believe James is suggesting. Plus he's giving some more killer tips which, if I would be interested in this market, I'd definitely work on. Because this entire process has many multiple ways to make money. The money made BY the pokerbot is a very small part of the radar

I don't see how spending all that time and effort on a pokerbot is worth it, unless you're getting some insane rakeback deals or are earning over 100% rakeback as a poker prop, but then you'd be playing a ton of short-handed games and I think that would be tough to turn a profit.

i think anyone that makes these bots are pure scumbags that destroy the beautifull game of poker.. fucking greedy bastards

lol some people are posting silly comments to drop links not realizing there already numberless links with page size over 100kb and google might even drop this page from its index.

I think MJ of pokerdepositoptions/casinodeposit is the biggest blog comment spamming twat

I'm trying to build an analysis tool for Everest. However, as stated before by Frank, Everest does not use the well known ExtTextOut and DrawText methods very often (at least not for the interesting information). I detoured several other methods, including DrawTextEx, DrawTextW, TabbedTextOut, PolyTextOut, TextOut, ... but no luck.

It looks like Everest is using a completely custom GUI framework, defined in several DLLs which can be found in the installation folder. While some of these methods seem to deal with text display and rendering (you can check it out with the DependencyWalker tool), they use a real object oriented coding style, which makes it virtually impossible to detour these functions without having the header files (class definitions).

While screen scraping can be used to easily detect buttons and hole cards, recognizing text (betting amounts) is much more difficult.

Any ideas?

Esurior,

Are you sure that the poker client does not use the DrawText function? I believe that, even using customized functions for rendering and display it will end up using the DrawText in the end. The poker client must use the win32 platform in the end. The only way I see not to use the DrawText is rendering the text as a picture and not as text. In this case the screen scraping the only way out.

Cheers!

Hi Pedro, Indeed the client does use a DrawText function for some parts of the screen. It turned out that it uses the DrawTextExW (for unicode) method to print out the betting amounts and the current pot size when seated on a table, and also all other text in the main lobby.

However, for chat content and, more importantly, nick names and user's stack sizes, none of the methods mentioned earlier are used.

Anyway, thanks for your response, and I'll continue my research :)

in my previous posting, I mean ExtTextOutW in stead of DrawTextEx :) small mistake.

Thank you so much for writing this article!

I have to say, I don't like what you do. For me this is cheating. If this is legal or not. Fact is, you want to gain an advantage and earn money without doing anything.

Nevertheless this has opened my eyes. I always wondered if there are bots around or if people are colluding. The point of colluding bots has broaden my horizon.

I am sure now I have already played against bots especially in limit games. I always wondered why many "people" fold at last action if I always reraise :)

I like guns but I hate murders. Your informations are like guns and I wish to thank you that you don't let the bad guys use their guns undiscovered.

Will check your blog for updates, cheers!

Hi Anonymous,

Honestly I believe that most programmers working on an application in this area are doing this mostly to prove that it is possible, and less to earn money with it. Compare it to the days where true hacking was still seen as an honorable job... Being able to beat interesting obfuscation and detection methods in an elegant manner is a challenge, and 'how' or 'if' the result is used, is less relevant in my opinion. Anyway, most average programmers hoping to make some quick money, will probably give up rather quickly, so I don't think you have to worry. I do believe however that there are a few winning bots lurking around, and if that is the case, we can only respect their talented owners :) The most bots you have probably encountered are mainly based on pot odds and position play, and can be beaten easily by a human poker player.

Anonymous,

If, after reading the articles on this websites, you still think that running poker bots is to "earn money without doing anything," then you haven't understood most of them. Running bots is a full-time job for a long time, and even after everything is set up, there is still work involved for dealing with poker site updates.

Cheers, Marc.

I would love to contribute to all that want to test this methodology with free $30 that we offer at our site - http://freepokermoneyonline.com. Please mention that you have seen my post here, ok?

Thank you and best regards, Miguel

I still don't see how this all can work, sorry I'm not buying it.

is their any ready good bot for zynnga poker(facebook)please anybody!

Has anybody had any luck with decoding Full Tilt messages since their last update? I've detoured everything, but still getting no messages.

I have managed to hack the latest version. I have been reverse engineering poker clients (and lots of other software) for many years now - long before this article.

After each incremental update I would have to make small adjustments to my injected code (payload), because of changing offsets etc. However they now have rewritten a great deal!

Notice that the hand history is now implemented using flash?! Right click inside the window, see? How cheap!!!!

Provided they don't change the fundamental architecture of the code again, which has been seen in recent updates, then I can keep hacking it again and again.

I find it a fun challenge each time there is an update, and to be honest they've undone some of their previous obsfucation attempts with the recent update, but I will not divulge any clues on this matter.

I'm not going to explain how I worked my way to find the correct method, I actually disagree with making this information public domain.

If you are good enough to do it yourself, then do it yourself, if you're no good then I believe you should leave this up to those who have the skills and shut up about it, articles like these spoil it for those who have worked hard to crack the exe. Anybody with a good understand of the required topics and a little perseverance will succeed.

Similarly, on the subject of fairness in gameplay against a bot, if you are a donkey you deserve to get mashed up by a poker bot - your money was destined for other players anyway. The bot isn't clicking your mouse, you are - and if you lose, nobody else is to blame. You are simply one less maniac at the table, and this is a good thing. Therefore I agree with botting, I just don't agree attention seeking coders, ahem I mean those willing to share the information.

Saying all of this I'm sure full tilt would have made these updates regardless of this article. They've made it harder to grab the contents of listview type controls, etc. making table hopping harder. The future clients will basically push us to use 'OCR' based techniques, because the time spent cracking will increase drastically. For all that I love the joy of reverse-engineering I believe that OCR isn't that bad, I mean ... what are CPUs for ;)

Initially developing an OCR based scraper is perhaps just as laborious as searching for hook to catch those valuable chat message strings, although OCR will survive any updates with only minor tweaks to adjust for any graphical alterations.

Full Tilt are not using GDI32.drawtext or textout any longer... however I wont give you any more clues, just crack open your favorite disassembler and get going. What are you waiting for?!

What continually disgusts me the most whilst watching their client "improve" over the years is how slow they have been. I can think of a few things that would make it impossible to reverse-engineer the client, but I believe their software developers are spinning this out to keep themselves employed ... either that or they're a terrible bunch of noobs ... which is most likely true. Have you seen all those incremental updates, you get them sometimes multiple updates during a day, after a major update. It looks like somebody cant code, or test their code well enough.

The bottom line is that they probably realise the futility of any anti-botting efforts. In the long run they lose money spending on development in this area.

If you would like to discus this any further then you can contact me at:

reversepokernotation@googlemail.com

Happy hacking.

Thank you for all this great info about poker robotisation. Let us automate gambling to we can watch a movie while our [url=http://www.carbonpokerdeposit.com]online poker[/url] bot does the work for us.

Hello,

We are interested in you bot solution for Poker Texas holdem, we have our own infrastructure we would like to implement a AI Bots to our system to act as many player logged in the system. Hope you can provide the solution .. What the cost of that?

Best regards

well i got no clue how to do a bot and neither i dont understand what it says above,cant i just download ur pokerbot::))) i just play fake money on facebook texas hold em,promise:))

Hi all,

We've just launched a piece of software today which may interest you:

"ERGOD - Entropy Interface"

It's an advanced poker artificial intelligence which we are selling as a training tool.

Download a free trial at:

[url]http://www.ergod.net[/url]


ERGOD - Divinity in Infinity

no hay alguien que lo haya hecho en español?

I would like to show me where can I get information on how to configure the poker but in Spanish?

I have 36 computers avaible from 10pm to 7am. If anyone wants to run their bot on my computers, we can share the profits. tobyniefers@hotmail.com

hi, just to mention i built my bot purely from vb6 and without hooks. That was about 2 years ago, it took me about 2 months to get a simple semi auto bot running, but i have been programming over 25 yrs so.. its a hobby, if anyone needs a programmer in this area, please email me. Danny7202@Boltblue.com

guys you are missing the point here !!! no matter how well programmed a bot is ,it will never come out the best when playing against a pro for a simple reason that the bot is predictable and the pro is not!! and more over to build a online poker bot by onesselve would take at least a year if you wont a winning bot against fish!! This guy is right that a bot is very profitable and all he has to do is not lose anymoney and earn by the rake back or stuff like that but the bot does not affect the winning rate of a shark or how we say a verygood poker player. if you make an experiment and put 5 bots and a pro in 1 six man table is like 90% guarantee that the pro will come up on top by a big margin!! i will try building a bot myself to prove that point!!!

I recently realised that all the other websites are selling zynga poker chips for facebook at a very high price than http://www.lionchips.net , i'm very pleased that i found out about this website. I recommended to you all.

•[url]http://www.floribus.com/howto2.html[/url]

Dear Support Team,

I'd like to publish a review about your site(http://www.codingthewheel.com) in my articles section (on www.pokerprophecy.com) and I would like to include a link to your site as well. To make this partnership beneficial for both parties, I'd like to ask You to publish a gambling related unique content article on your site that contains a link to my project. I'd be sending you the necessary content absolutely free of charges!

If I'm not sending this mail to the right person, please forward it to the one responsible with marketing :-)

Best regards, Nick Cosic

Your room looks like a command center ;) Just make sure poker rooms will not find out about it :)

Hi everyone,

I would like to congratulate James Devlin because your web site is really amazing. From the technical point of view, it is 7 stars, not 5. It is outstanding.

Right now, I would like to find someone to cooperate with me on a poker software project whose goal is to improve SNG table selection (Pokerstars). As James Devlin states, table selection is very, very important and I need to improve that area. What I am looking for is someone that is able to develop a software that retrieves the content of any listbox on Pokerstars. I have already developed all the software needed to evaluate if we should or should not register on each specific tournament taking into account some statistic criteria ....

If you are interested, please post your email on a comment and I will contact you afterward.

wow you really put alot of time into this blog, thanks for the info about poker bots, I wonder if something like this would work for facebook texas holdem poker for winning [url=http://www.howtobuyfacebookpokerchips.com]facebook poker chips[url]? has anyone used it on facebook?

there are some bots available for grinding [url=http://www.howtobuyfacebookpokerchips.com]facebook poker chips[/url] but most are lackluster, i'd really appreciate it if anyone knows of any goods ones

Great article! I'm trying to make a hotkey program for PokerStars to help with multitabling. Not a bot, but just something similar to TableNinja, which doesn't seem to have the features that I want. I'm pretty new to DLLs though. How is TheInjector object instantiated? Is that something you put in Static TLS?

So how much money you actually made with these poker bots? :)

i think u need to be a very good pokerplayer to make a good robot

why does an1 want a facebook poker bot??

Play Poker and [url=http://web.quicksilvergames.co.uk/]Online Casino Games[/url] at Quicksilver Games - home of free and real cash casino games.

Poker isn't the only game you can play at a casino - do you have bots for other [url=http://web.quicksilvergames.co.uk/casino/index.htm?currentGameZone=casino]casino games[/url]?

This is a fantastic tutorial. However what would make it better is real statistics on how much you money you have made from deploying poker bots. For example are there certain poker rooms where the percentage will is higher? I would also like to know how effectively the bot works with [url=http://www.raketherake.com]Rakeback[/url] sites. Do you really feel it is possible to have a bot that will not lose you money playing so you can earn cash via rakeback?

Pokerbots re really interesting.

I hate to tell you but this, but even the best poker bot is useless for online poker. Why? How come? Well simple the gambling sites are not capable of truly random shuffling, they use input from the user to plant the shuffling seed. Example if you fold a winning hand your more than likely to be dealt a top starting hand only to be crashed by a much lower ranking hand that's why you see so many bad beats in online poker. If you play online poker games for seven or eight years straight, eight hours a day like I do you will see what I'm talking about. The bottom line there is a certain number of winning hands that you will be dealt in any given tourney or sit&go if you don't play your winning hands well odds are you will be setup to fail by the shuffling algorithm and the seed will work against you, did you ever ask yourself how can 65000 players play a game in eight hours or so. If it was a real true random shuffle it would take at least eight days for the game to take it's course. The algorithm uses your imput as a player to shuffle, it would work to your advantage if your able to play your winnning hands. Those winning hands include the worst hands in poker like eight four off suit, when you got an all in or a huge raise infront of you. You must make the call, especially when you know that the player making that raise is on a losing steak the algorithm will not allow him to win even if he has aces, your eight four will hit the straight. In conclusion a computer bot has to be programed in such manner to be effective. I'm not saying it can't be done but till someone realizes that's the way if should be programed no computer but will ever be successfull. Peace out

live

tagget

0000000

To bot user: HAHAHAHAHAHAHAHAHAHA.

Go die in a grease fire, no site does this, they would be destroyed by law suits at day one.

But I take you were ironic, but to those who don't understand that: the shuffling system is completely random, more random than live shuffling.

But it is really great to read about someone who built his own pokerbot.

hi,

we are interested to build bot system for our poker game,

please if you are interested send me back to my email so we can discuses this project in details

I, i have a school of poker in Belgium and i have a passion for mathematics. Can I buy your bot ?? If not, can you say me : is it possible that the bot make all inn pre flop ? If yes, i have a mathematic solution to never lose money by position. you can ever show your game to your opponent, he have nothing to do (call or fold but in the long term, he will lose) And here is the bonus : you don't show your game, so your opponent make mistakes that's more money for you.

Best regards

JM Hap

Thanks for sharing. i really appreciate it that you shared with us such a informative post.. [url=http://www.customwriting.co.uk/]Essay Writing[/url] | [url=http://www.customwriting.co.uk/CW/Thesis.asp]Buy Thesis[/url] | [url=http://www.customwriting.co.uk/CW/Assignment.asp]Assignment[/url]

Best ever programming related article i have ever read in my life. Excellent job sir. I am gonna check on this site everyday for the enw updates. Lookng forward to them! [url=http://www.customwriting.co.uk/CW/Coursework.asp]Coursework[/url] | [url=http://www.customwriting.co.uk/CW/dissertation.asp]Dissertations[/url]

thanks. [url=http://www.customwriting.co.uk/CW/Coursework.asp]Coursework[/url]

Best ever programming related article i have ever read in my life. Excellent job sir. I am gonna check on this site everyday for the enw updates. Lookng forward to them! [url=http://www.customwriting.co.uk/CW/dissertation.asp]Dissertations[/url]

Hi - great article and "how to" - I have heard others members on www.bluffspot.com post the same info about poker bots... thankfully we are live players - but the idea of a bot is actually scary.. really - how many "real" players are out there?

great to see someone honest enough to stick this code online, thanks! found a decent c# app at http://www.codeproject.com/KB/game/pokerhandevaldoc.aspx which might be useful. I used this with [url=http://couponcomrade.lefora.com/2010/01/11/skybet-free-bet/]skybet[/url] and had some fun :)

Im curious as to whether something liket his works in texas holdem poker games like zynga and playfish to win[url=http://www.facebookpokerchipnews.com]facebook poker chips[/url]

Would something like this work in texas holdem poker games like zynga and playfish to win[url=http://www.facebookpokerchipnews.com] zynga poker chips[/url]

This is a great read, i've recommended it for others in the field.

Reg

check out my [url=http://www.onlinepokerbot.net]Online poker bot[/url]

U need to be a very good poker player to make a good robot, and if you are a very good poker player you don´t need a robot.

AKjump is a dumbass bot 100%, highly predictable but does take money from the useless players who call the A2's and 10-J's . so on loose sites bots can be profitable not just in the winning but also with the rake...

which brings me to question;

has anyone been using 'rakeback' deals with a site they they were already a previous member too? i want to do this with a new account under my name but the rakeback sites dont like it and claim that anyone found being already a member to a site b4 setting up rakeback deals will be banned...

anyone know for sure?

@anonymous above me

ok im assuming its a certain big poker site your taking about here? if so they have there own RB now for existing member at rakebackpros dot com yeah simply email the poker site asking for RB and they give it to u after a few weeks.

If it is not the site i think.. simply sign up for a new account with RB under a brother or fathers name etc RB you should not ever play online without it.. as many poker players will tell you its -EV to do so.

to everyone else.. I own a good bot that wins, i am not a coder i am a player but i feel the sentiment that you need to be a good player to design a good bot is true. Also security around these things is way tougher than you might think, if a site catches you thats it your banned and all your money is gone. if anyone is building one of these be sure to implement any measure you can to hide it when it is playing.. poker sites do registry scans, screen scapes and a multitude of other underhanded things to find bots.

Ps running a bot for 20 hours on one site is a great way to get your account banned in about a day

peace

For anyone thinking of making a poker bot, I suggest you start with a simple program that simply advises strategy. Until that program is able to break even, you needn't spend time building the input/output stages.

Hi all, This is the greatest article about poker bots. I have built a poker room dedicated to bots. I write this to see if there is any interest in poker bot competition Anyway, the site will be operational in few days. Good luck all.

This is a very interesting game, especially after I see a place to get hacked chips up to 400 Billion @ http://bit.ly/9Z2Gzl

Dear Sir / Madam,

I am Link Manager of http://www.casinoscorner.com/ and looking for non-reciprocal(3-way) linking to your site, which will be very effective from SEO point of view for both of our sites.

I can place your link here: http://www.jeu-casino-francais.net http://www.triogonzalo.com/ (PR3) (Or choose any other internal page) http://www.casinomanie.com (PR2) (Or choose any internal page)

I can add your links on home pages or any internal pages and I have also more casino and other theme sites with and without PR for linkback.

My site details are as follows: Title: Rome Casino reviews Url: http://www.casinoscorner.com/rome-casino Description: Want to know about casinos games, reviews about casinos, softwares used in casino, poker rooms and variety of payment method techniques? Casinoscorner is the right place to get all valuable information.

Aaron stone aaron@poker-hall.com

Hello, is there someone out there that would be interested in building a poker bot for a network that does not currently have a bot? please write me at lasvegasproductions@gmail.com thanks!

pliss givet tou my cip 90 milion pliss okk ajm macedonijan erenou nofek dhek you

Are poker bots possible for mac's? If so can you help me with one? I have been getting slammed by bots online for years!!

Poker rooms has developed a strategy for that kind of players. theyr politics is to play forever without win. play 200 hands, poker room gets comisions and that's it. They will win ever !!!!

thanks for the great content

BUFFONE

The 64 thousand dollar question that every man and his dog must be thinking of asking is? Does this bot actually earn you any money. I.E is what is the winning percentages against the loosing percentage for your poker bot

keep it up the good work... AV Carts i really appreciate such blogs and the posts who put so much efforts to describe the topic.. and this blog is one of it

Excellent... Audio Visual Carts

If the objective is to write a bot that plays the way YOU want it to, you no longer have to go through the process of learning programming and all the tricks of being able to hook into poker clients etc. PPL - Poker Programming Language finally enables you to concentrate on the important part - ie playing winning poker. PPL gives you access to all the poker table details that can be used to control exactly how the bot plays in every conceivable situation. It is designed for poker players and not for programmers. It is simple yet very powerful. If you know poker you will take to it like fish to water!

As a kid I went to

really good article. keep up the good work.

EZ Video To WMV Converter : Best AVI To WMV, MPEG To WMV, MPG To WMV, EZ Video To RM Converter, AVI To RM, WMV To RM, MPG To RM, MPEG To RM, WMV To RMVB Video Free.

sdsadas asd asdasdssad [sad][1]

  • List item
  • aaasssssss
  • List item


erwrewr ew

ew r ew r ew rewrew

Your article is written very content, All of the projects look great! Keep the Ball Rolling. Thanks!

I have been reading this series of posts with interest.

In how-i-built-a-working-online-poker-bot-e your posted links to articles at University of Alberta. I found that the links at poker.cs.ualberta.ca do not function.

Check out http://citeseerx.ist.psu.edu

You can use their search option to find most of the articles you linked to.

As an example, use "Using State Estimation for Dynamic Agent Modeling" to search on. You will find there is a CACHED .pdf of the article.

I found some articles that only have a synopsis, but most articles have the entire document.

have fun.

Once you find them you can then download them. They are all .pdf files.

Hi Bot-builder,

This is an excellent article!

You've really done your homework to come up with such a great design layout for your bot. What I especially like about it is: It shows how much detail you really need to cover and think through in order to assemble the parts in a way that the bot's job gets done well. Even then you're not done yet because you then start tweaking the bot. To tweak though you need to think of how to make it easily tweak-able and build the unit accordingly.

It's an inspiration for any bot builder.

Great job well done!

Best regards

Joerg

P.S. Would be nice to keep spamming out of the comments.

Great article. I think these techniques are not limited to bot creation. Many other business applications need them too. I have ran into many.

I think these head ups really help a lot of people. And I really don't think that with this article (only), then you can create a bot, I doubt that. Creating a bot needs a lot more Know-How and crazy lot of effort. Exposing these information really doesn't help bad people do things, they already have what the need. And the most important part is HOW TO BREAK EVEN, that has noting to do with those API and tools.

you article really helps people to learn about the system and development. Thank you very much.

@ Andrew: good game! It does indeed. I whipped a quick profile as an example, you probably should change that .. I plan to watch the final in a theatre, it looks so nice and amazing. Maybe you can try on it.

Would you please provide way more information on this issue?? By the way your blog is amazing. Best regards.. Dissertation India

This is so cool. I am such a huge fan of their work. I really am impressed with how much you have worked to make this website so enjoyable.Dissertation India

This is pretty cool. I wish I was smart enough to build a bot like this. You're pretty much genius. Thanks for that - purity rings article

If you have ever sat down at an online poker table for an extended period of time, chances are that you have at one time or another faced a bot. Some people would even rather play against bots, because they play such a strict type of poker. Pretty soon, the bot world will advance their poker skills like the actual players have and we will all have to get better.

ryan Poker Training

I agree ryan,...bots should not be seen as a solution to beat online poker.

Poker Training

TLC: [quote] but that does not mean you will be able to sniff out and discover your opponent's hole cards. Do not even try. Unless the perpetrators have been neglected, that information does not exist anywhere else on the team until his opponents have turned their cards over. [/ Quote] I like the sweet photos. Good luck for both of them.  They should take it easy with the updates. Thank you.

@ Kuhsay: Yes! classic explode. What would not release what I know now, back in the early days of poker. Actually that particular link, it is now (and this is hilarious to me), cited by many poker sites on its web-security around the place where we talk about the security of their random number generator (eg now they have stopped using rand ()) I couldn't have said it better myself. My friend and I were discussing this very same subject the other night.

Actually that particular link, it is now (and this is hilarious to me), cited by many poker sites on its web-security around the place where we talk about the security of their random number generator (eg now they have stopped using rand ()) I couldn't have said it better myself. My friend and I were discussing this very same subject the other night.

James: They are now using this robot in Poker Stars or any place you grow up? Thanks a lot for enjoying this beauty article with me. I am apreciating it very much! Looking forward to another great article. Good luck to the author! all the best!

This was really helpful. Thank you for posting this! I am wondering why they made the program so hard to use if it requires that much work? chakra meditation

Can poker bots really make someone money? Let's think about this here - a robot, making people money. That's just crazy. I wish I could have a robot just sit at home and write comments on articles all day. That'd be like having multiple personalities except in different bodies. I find it amazing that kids these days are learning about building robots in public and private schools all across america. Technology has come so far into different schools throughout TN and I think you can really notice the innovation of robot design throughout private schools in memphis tn. After touring a campus recently, I stumbled into a room full of computers where students were controlling different robots with programing languages. It was amazing. I know it's not related to this because I'm talking about physical robots in these private schools, but think about it, if it's possible to control physical robots then it must be easy to control computer based bots. These private schools keep innovating and creating a way for students to compete with the future generations. Every day I'm reminded by how amazing and incredible our schools are turning out.

This is a great post and I'll be passing it on to other students that I know. Thanks!

You know I've looked at all bots out there and read up everything on the concept behind them, but I really think that no one has taken it to the ultimate extreme that it can go. Creating a bot profile for most bots out there is just telling your hand to fold bet check or raise based on the cards on the table and the statistical percentages. This will never go good against any decent human poker player because many times decisions are made that are not supported by the statistical odds- such as bluffing, over-betting, under-betting with monster hands, or letting go very good hands in certain situations where the player might feel their opponent is trying to trap them with a monster. What I have noticed from being a seasoned online poker player- a profitable one too- is that over time you see the same exact players over and over again, and although they may have temporary variations in their play, they have very consistent strategy overall. I believe that if a poker bot can be made utilizing ALL the information that the author of this page wisely said is available from an online poker table, including the complete history of EACH opponent and EVERY hand they've ever played that you've seen, then a bot program can actually build a profile on your OPPONENTS over the course of one game, or over the course of 10s of thousands of games with the same opponents. IF this were implemented it would make opponents statistically and mathematically predictable, similar to the way that sometimes we just have a "gut" feeling about a situation, and we make a ballsy call with a mediocre hand, and find out opponent betting or bluffing with complete rags. If a poker bot could process and store unlimited data and use it to determine if a player is more aggressive, more passive, temporarily on tilt, etc., this would be the ultimate bot to play winning online poker against human beings.

The author of this page said the million dollar question is what would it take to build the best winning poker bot, I believe I have a very strong idea, because the idea I gave above of creating profiles on opponents is just ONE piece of the puzzle and I know all the other pieces it would take to be a masterpiece... the real problem is, I think that with everything I think that should be included, it would take a huge group of experts such as a university research team and it may even take several months or a couple years, none of which I have the group support nor time to do!

So, my conclusion to everything about bots that I have researched, learned and know is, they definitely have some huge potential to create countless amounts of passive income, the problem is that we must all look at things from a realistic perspective of what that would take and when I look at what it would realistically take, it seems more improbable than possible.

I would like to know if the author of this page has any opinions on what I had to say :)

Take care everyone!

i dont understand how long this legend has put enough to gather these stupendous information. hats off to u.

Thank you for the tutorial! You really do me a favor. Thanks! adjustable beds

Awesome article. Good job! I don't think that this type can challenge the same new product from another company. Farewell it's not really bad also.

Looks like I will have to re-learn C + +. Any chance of carrying this on an Adobe AIR application? I really loved reading your blog. It was very well authored and easy to understand. Unlike additional blogs I have read which are really not good. I also found your posts very interesting. In fact after reading, I had to go show it to my friend and he enjoyed it as well!

Let the people know about your online business. XpertSeoServices has the solution for you with professional team who are expert in Search engine optimization. Our team of expertise will position your site that will increase traffic to your website that will convert into paying customers.affordable seo service

I play online poker pretty often......about 3 hours a day.....and it happens to be that SOMETIMES, unless I am playing a people who is sitting at multiple tables and is too busy to concentrate on just the hands I am playing him with, there must be online bots. And they are actually rather easy to beat. I get this sense becuase I will usually find this same player sitting multiple tables which IS NORMAL but just once in a while (the [bots]) when I sit with these players, especially when I catch them in a room where they are alone and I play them head up, they play EVERY hand VERY SIMILAR, and I mean continuously, whether its them betting, checking, folding, etc. These "bots" cannot read a bluff, and I would over bet and win VARIOUS times as they bet. or I just bet blind (Before the flop) every hand and they fold automaticaly almost 70 percent of the time. WHY? becuase when these bot hackers, or whatever you may wish to call them, create their bots, they create them to call and fold certain hands, most of the time the hands dealt are not the desired hands the bot is creates to call so I would take the blinds very often. A slow but steady pace of making money, as you constantly take blinds by raising before flop. I also noticed if I played patiently on some hands and waited for the flop, the bot recieved an undesirable set according with his hand, so i would bet or raise, and the bot would fold. again taking the blinds or pot. All of the actions done seemed to be placed at the exact time, everytime. I would raise, and it would automatic fold. I would check, and it would automatic check. and this would happen EVERY TIME , UNLESSSSSS

Well there is my emphasis on the whole online poker bot ordeal, I believe in poker bots, but people should not worry until they make the IDEAL Artificial Intelligent bot that will win over 80 percent of the time. As long as you pick and choose youre battles, or find trends withing in the bot, make youre money !!!!!!!!!!

Comments for this post are closed.

Subscribe to Coding the Wheel over email or through any RSS reader. Coding the Wheel has been published since 2008.

Home | About | Contact | Subscribe Copyright © 2011 | All Rights Reserved