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