The Rise of the PokerBots

Computer geeks have a long history of gaming the gaming industry. One of the most notable exploits is documented in the book Bringing Down The House: The Inside Story of Six MIT Students Who Took Vegas for Millions (read an excerpt in Wired). But things have changed now that gambling is moving to the internet in a big way. There's a fascinating article on Wired about the rise of the PokerBots:


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2005/08/the-rise-of-the-pokerbots.html

On second thought, maybe that Eliza algorithm isn’t such a smart idea. Here’s a snippet of me playing around with that JavaScript version I linked:

  • you’re retarded
    Do you sometimes wish you were retarded?

A few comments from somebody who is working on this problem:

  1. Your overall conclusion is correct: the online sites are going to be overwhelmed by bots within the next 12 to 24 months. More below.

  2. True screen-scraping is rarely required. Party Poker Network is the biggest, and their clients write a log file in a known format. (This log is used by 3rd party programs like Poker Tracker that the gambling sites recognize as legitimate.)

The Empire Poker client, at least, uses standard Windows controls that can be “clicked” via PostMessage.

  1. Highly skilled players in the medium and high-limit games (e.g. $20/$40 and up) can currently make tremendous amounts of money. If you had a bot this good, all you’d have to do is pay human beings in 3rd world (or maybe even 1st world) the local minimum wage to act as manual real-time translators between the bot software on one PC and the poker client on another. After paying the typist, the return would still be very large.

  2. Finally, the uninitiated have to keep in mind that writing a competent poker bot is an exceedingly difficult problem. For more information, this is a good read:
    a href="http://www.cs.ualberta.ca/~darse/Papers/AIJ02.html"http://www.cs.ualberta.ca/~darse/Papers/AIJ02.html/a
    and in general everything on
    a href="http://www.cs.ualberta.ca/~games/poker/"http://www.cs.ualberta.ca/~games/poker//a

Remember that atomic bombs are not conceptually complex either, they’re just exceedingly difficult to implement.

Hey Jeff, I answered your question on skill games over at my blog.

It is true that writing a competent poker bot is difficult, but I don’t think that’ll be the case forever. Poker bots currently are great for the low stakes tables where players are not quite as skilled.

Personally, I think you’ll start to see poker sites offering custom variations of the standard poker games to throw off the calculations of the bots.

Ah… the memories…
That’s how I started experimenting with screen scrapping and pseudo automation… some 4 or 5 years ago… Only then it was some add bar or something that had to be made to “believe” there was someone using the computer, hence seeing the ads… I ended up completely cheating the little app (not a very wise design in itself) and then setting it up on a virtual (think vmware) bunch of machines, with cross referenced accounts… It was a nice technical exercise, which did not return anything financially in the end, being an attempted scam at scamming another scam and all… :slight_smile:

A bot that could match up players and allow them to communicate (i.e. collude) would be a house buster, too. Interesting to think about this…

Based on the amount of spam my site gets from on-line poker companies I have absolutely zero love for that industry. Any technology that can help it go out of business quicker is great news to me.

I still think the best solution is to vary the table layout, fonts, and card visuals every other hand. If you had a combination of say, 5 table layouts, 3 fonts, and 10 card designs… that’s 5 * 3 * 10 arrangements right there. Writing a scraper for that is possible but it would be far, FAR more difficult than it is now with fixed layouts.

You could also periodically ask players to solve a CAPTCHA or some other human verification test, but I think this would get unbearable for the real human players awfully quickly…

I would think a major concern for would-be cheaters should be the danger that the bot-coder could easily embed code in the bot package that locates the customer when he is playing online, and shows his hole cards to the bot’s creator, or to a higher-level bot that reads the customer’s hole cards and takes their money.
This would generate a lot more money for the bot developer than bot sales, and would give him the moral rationalization of “i’m only cheating cheaters”

Fluent in mandarin chinese and thai. Do not have a lick of programming skills. Have money to get something started. Anyone interested?

Well, as far as “striking up chat with players” goes, that is entirely useless at fighting bots because a lot of humans don’t chat. All poker rooms have a “turn chat off” option and as much as half of the people use it. So a poker room can’t detect bots at all by trying to chat with all of the players and seeing who responds.

And you can’t really change around the screen in any significant way without it being way too disrupting to humans. The poker GUIs all work in the same manner. They have an images directory full of all of the card files which they overlay onto a larger bitmap of a table Any screen scraper could easy use those files to find the cards on the screen, even if there were files of numerous sizes. The sites can’t really switch to dynamic images either because it would be too taxing on the end user’s PC.

Moving the cards around or changing the colors would be a disaster, as would moving buttons. A lot of people play 4 tables, and if their fold button suddenly got swapped with their raise button they wouldn’t know what to do.

CAPTCHAS would annoy humans too much, though Party has been rumored to use them when they suspect someone of playing 8 tables. Still they are too obnoxious for frequent use, not to mention that even if they weren’t a winning bot owner would be making more than enough per hour to spend his time babysitting.

If you spend a good deal of time thinking about it you will realize that a poker site has 2 options:

  1. Piss off players to the point where they don’t want to use the poker software anymore
  2. Do what little they can to deter bots and tell the humans that the bots don’t exist while raking as much as they can.

Guess which they have chosen.

The game level demonstrated by the bots in WSOPR that have taken place in Las Vegas, was really good, the 6 bots had a level worthy of this competition, it was very touching to see how they played, even better than many humans.

You can see the web of a WSOPR contestant, which name is Hold’em Memory DOT com

People should remember that when you cheat at online poker you are not hurting the site, you are hurting PEOPLE.

I also believe that writing a bot that can play good enough to be profitable against a good player would be very difficult, probably much harder than chess. Only at low stakes where playing a straight up optimal strategy with no attempt at varying play could this work. Of course the bot never gets tired so I suppose this could be profitable even though slow. But if any player with a good amount of knowledge saw what was going and played accordingly, they would probably have little problem breaking the bot.

Collusion is cheating.

Software that plays according to the rules of the game isn’t cheating. You may not like it, and it may be in violation of the terms and conditions of the site, but it isn’t cheating.

I own bots, and they all play fair. There is no pleasure to be derived from writing software that cheats. Writing software that is the leading edge of poker AI is satisfying.

Any reasonable human that takes an interest in improving his play shouldn’t be worried at all. Most bots suck royally. The few good ones out there are nothing compared to expert human players (top 10%).

Also another point that I’ll make is that collusion is hard to do. It is much easier for a low-life scammer to develop a click-bot that defrauds advertisers and Google of ad revenue. The point is that if a coder decides that he will make money by cheating people, there’s more lucrative schemes out there than cheating at poker.

As long as there are players on the servers, poker sites dont mind poker bots. They are hardly doing anything BIG about it. That is not ENOUGH.

I agree with AI researcher - the only problem is getting hold of a decent one. Any idea’s?

Many sites use words overwritten with noise. - This should be implemented between each pause. - At least then the completely indecent people using poker bots would have to sit and pay attention and get tired once in a while.

Picture, name and address of people caught should be published on the poker sites.

All money they have on any bankaccount should be confiscated and they should not be allowed to have bankaccounts again.

Its really just a matter of severe punishment to stop most of these people. - There will always be a few… but at least only a few…

I have multiple poker bots that I run 24 x 7. Its a great way to make a lot of money and quickly.

http://pokerai.org/wiki/index.php/Cheating

and

http://pokerai.org/pf3

Jeff: not to shamelessly self-promote but I just posted a relevant post on this topic:

http://www.codingthewheel.com/archives/how-i-built-a-working-poker-bot

Thanks