Online Poker Bots - Threat or Not?

IntroductionOutput - Pressing the appropriate button on the poker
Online games from chess and backgammon to 1stroom client.
person shooters are rife with people who useMy Poker Bot
computer assisted play or computer robots - evenMy program was written in early 2004 with Microsoft
when there is no money at stake. With the appropriate.Net C++ and was developed to play at one online
program any player is able to play at a worldroom only. For the technically minded the program
championship level ruining the game for honest players.relied heavily on MFC and the Win32 API. 1) Data
What makes online poker different, given that thereGathering My bot gathered information about game
are huge amounts of money at stake? In this article Istate and history from online poker tables by taking
will explain how I developed a poker bot and what Irepeated screenshots and analysing the image. To
learnt from this experience. My conclusion is thatbegin with I just observed games, taking screenshots
although it is possible to construct a poker playing botautomatically so I could gather data on the position of
the threat from poker bots to the online poker player isthe cards, chips and button. By determining the color of
extremely small to non-existent.a certain few pixels I was able to gather all this
"Games" Theoryinformation about the state of the game. Eventually I
For interest and college courses I had previouslywas able to gather data from multiple poker tables (4
written computer playing programs or bots for gamesat a time) by repeatedly bringing each window to the
including chess, Connect 4, Othello, backgammon,foreground and taking a screenshot. From this
bridge and various others. For games such asscreenshot I was able to determine my cards, board
Connect 4, Othello, chess and backgammon where allcards, button position, who was left in the hand, pot
players have the same available information about thesize and player bet sizes. 2) Data processing This is
game state, the theory on how to construct expertthe component that eventually bought my poker bot
bots is well known. Deep search techniques, lookingproject to an end, unable to develop a strong enough
many moves ahead, are used for games such asstrategy to win consistently. I tried various rules based,
Othello and chess. Recently (10 years ago) it wasneural net and simulation techniques. At best my bot
discovered neural networks could be taught to playwas able to make a very small profit at $1/2 and $2
backgammon better than almost any human player.$4 limit hold'em, but nowhere near the thousands of
Games such as poker and bridge contain hiddendollars a week I envisioned earning when I started the
information where the players can see their own handproject. In the end it just wasn't worth my time to
but not that of the other players. The published theorycontinue to put resources into developing my poker
behind writing expert computer bots for thesebot further. 3) Output This was the easiest component
incomplete information games is decades behind theto write. This involved programmatically moving the
complete information games and there are doubtsmouse pointer to the appropriate screen co-ordinates
techniques will be developed so that computers canand then sending a mouse down/mouse up command
play at expert or world championship level. At presentsignalling a left-click. I did give consideration to adding
the best techniques for these incomplete informationthe ability for the bot to use chat but never progressed
games seem to involve some form of simulation andthat far.
opponent modelling.Conclusion
Anatomy of An Online Poker BotAlthough you might run into a poker playing bot whilst
There are 3 basics parts to a poker bot. 1) Dataplaying online the odds are it plays very poorly. At any
Gathering - observing the game state and history 2)level of play you are much more likely to run into an
Data Processing - using the information from the dataexpert human player than an expert computer player.
gathered to determine whether to fold, call or raise. 3)