The PokerBot Pro
How to Create Your Very Own Online Poker Playing
Software Program – And Make Big Money
1
Copyright Notices
Copyright © 2005 by David Glazen. All rights reserved.
No part of this publication may be reproduced or transmitted in any forth or by any
means, mechanical or electronic, including photocopying and recording, or by any
information storage and retrieval system, without permission in writing from the
Publisher.
Legal Notices
While all attempts have been made to verify information provided in this publication,
neither the Author nor the Publisher assumes any responsibility for errors, omissions,
or contrary interpretation of the subject matter herein. This publication is not intended
for use as a source of legal or accounting advice. The Publisher wants to stress that
the information contained herein may be subject to varying state and/or local laws or
regulations. All users are advised to retain competent counsel to determine what state
and/or local laws or regulations may apply to the user’s particular situation or
application of this information. The purchaser or reader of this publication assumes
complete and total responsibility for the use of these materials and information. The
Author and Publisher assume no responsibility or liability whatsoever on the behalf of
any purchaser or reader of these materials, or the application or non-application of the
information contained herein. We do not guarantee any results you may or may not
experience as a result of following the recommendations or suggestions contained
herein. You must test everything for yourself.
Any perceived slights of specific people or organizations is unintentional.
2
Table of Contents
Table of Contents................................................................................................................ 3
Chapter 1: Introduction to PokerBot Pro ............................................................................ 4
Welcome ......................................................................................................................... 4
What you need ................................................................................................................ 5
Chapter 2: How it all Works ............................................................................................... 6
Technical Overview ........................................................................................................ 6
The Decision Engine....................................................................................................... 8
The Input Generator...................................................................................................... 11
Chapter 3: Putting it all together....................................................................................... 12
How to write your automated script.............................................................................. 12
How to start your Bot.................................................................................................... 18
Sample working script from party poker ...................................................................... 18
Useful Links...................................................................................................................... 22
3
Chapter 1: Introduction to PokerBot Pro
Welcome
Hello and welcome to the PokerBot Pro. If you have downloaded this
amazing information package then I am going to assume that you are tired of
making only mediocre online poker profits and are looking for a way to
consistently bring in Big Money. Well the good news is you have made a
wise decision and are in the right place. I am going to help you make you
poker wishes become poker reality.
I feel your pain because I too was once exactly where you are today.
When I first started playing online I actually lost over $10,000 of my own
money. It was a very painful lesson to learn but one I did learn nonetheless.
Since then I have worked my but off to come up with an ingenious way to
make consistent profits at online poker. The truly amazing thing is that my
system doesn’t even require any poker skills, just the ability to follow simple
instructions and understand simple concepts. If you can do that then in no
time at all you will be taking down pot after pot with your very own
PokerBots!
In the following pages I am going to reveal to you exactly how you
can produce you own poker playing computer programs. Once they are
4
ready all you will have to do is start your poker client, pick a table, start your
program, and watch the money pour in. Everything you need to know is
right in these pages.
IT IS EXTREMELY IMPORTANT THAT YOU DO NOT SHARE
THIS INFORMATION WITH ANYONE. I MEAN ANYONE. I cannot
stress this enough. In order for this to remain so profitable it must, absolutely
must remain in very few hands.
Normally this is where I would wish you good luck but you aren’t
going too need it. Not when you have a PokerBot Playing for you ….
What you need
Before getting started you will need a few basic things. First and
foremost you will need to have a computer running some version of the
windows operation system. Unfortunately the system will not work under
Linux or UNIX or Macintosh yet. Perhaps one day but not yet.
You will also need to have an online poker account with one of the
online poker rooms. If you don’t have an account set up yet I suggest you
check out some of the links in the poker resource directory. I would
5
personally recommend Party Poker because it is the biggest and most
popular site and there are plenty of fish at the tables.
You will also need to put on your thinking cap a little. While the
system is pretty simple and straight forward it does require some thinking
and effort on your part. I know that you are not programmers or techies so I
explain everything as simple as possible and assume no prior knowledge.
For those of you with a little bit more technical experience you can fast track
through many of the sections.
Everything else you need has been included in the download and will
be explained in detail in the following pages.
Chapter 2: How it all Works
Technical Overview
I would like to begin with a general overview of how the system
works. The system relies on two existing technologies. The first is what I
call The Decision Engine. This is actually a program called the Online
Hold’em Inspector. This is an incredible piece of software that knows your
6
hole cards and will capture all of the upcards at the table and calculates
detailed statistics. It will then recommend what play to make. This program
was designed to be an aid to live players not a substitute for them. I however
have found a way to exploit the program.
The Online Hold’em Inspector is only one piece of the puzzle. The
second piece is what I like to call The Input Generator. This is actually a
software tool called AutoIt. This amazing tool allows you to fake windows
commands such as mouse clicks and key strokes. It will allow us to
automate interaction with the poker client.
So how do these programs work together to make a PokerBot? Easy. I
am going to show you how to write a script using AutoIt that will take the
recommendations made by the Online Hold’em Inspector and perform them
on the poker client. It is as simple as that. When the Inspector advises you to
fold the AutoIt script will click the fold button automatically. If it advises
you to bet it will bet. I am sure you get the point. If it doesn’t make sense to
you yet just hang on. It will become clearer as you keep reading. This
section was only meant as a brief overview the following sections explain
everything in detail.
7
The Decision Engine
As I already explained the decision engine is really a software
program called the Online Hold’em Inspector and will be responsible for
making all of the decisions. It is the brains of the operation. The success of
your PokerBot relies heavily on how well your Online Hold’em Inspector
makes its decisions. Luckily for us this is completely configurable. But more
on that later. First let’s take a look at the program:
8
There is a lot going on here but the most important part for us is the
little traffic light at the top. That is how the program signals its
recommendations. The Red light means you have a weak hand and you
should fold in most situations. The Yellow light means you have an okay
hand and you should Check and Call in most situations. The Blue light
means you have a good hand and you should Bet or Raise in most situations.
9
The Green light means you have a strong hand and you should Bet or
Reraise in most situations.
It should be obvious to you at this point that since your PokerBots will
depend on the decisions of the Inspector there performance depends on the
quality of those decisions. So you are probably wondering just how the
Inspector makes these decisions. Well it uses fully user configurable custom
profiles. You specify the starting hands, bluffing frequency, slow playing,
when to check-raise and absolutely everything else you could possibly think
of. The inspector is always loaded with a profile when it is advising you.
The demo version of Inspector that I have included with the download
comes preconfigured with the solid profile the full version however comes
with many more plus the ability to create your own.
Before moving on to The Input Generator I strongly advise you to get
very comfortable with the Inspector. You will need to install the program on
your machine. Then just start your poker client, choose a table and start the
inspector. Do not forget to specify what seat you are sitting at on the top left
hand corner of the Inspector. The version of the Inspector that came with the
download is only a trial version and has many limitations. For one it will
only work on play money tables. For now I strongly suggest you build your
Bot with this version and once you are comfortable with it on the play
10
money table then and only then move to the real money table where you can
start making money. The full version can be found by clicking HERE!
You can do quite a few interesting things with the Inspector so please
take the time to read the user manual found with your install to learn how to
maximize your use.
The Input Generator
Now that you have had a better look at The Decision Engine it is time
to concentrate on the next piece of the system. That it the Input Generator.
As I mentioned earlier this is a tool called AutoIt that is completely free to
use and had been included with the download. I think the web site states it
best:
“AutoIt is a simple tool that can simulate keystokes, mouse movements and
window commands (maximize, minimize, wait for, etc.) in order to automate
any windows based task (or even windowed DOS tasks).
AutoIt was primarily designed to assist in automatically installing software
that cannot be automatically installed by other means. This is most useful
during a PC rollout where hundreds or thousands of client machines need to
be automatically installed. However, AutoIt is not limited to software
installation and can be used to automate most simple windows tasks.
When AutoIt is executed, it reads a specified script file. This script file
allows AutoIt to perform a number of functions, these include:
•
Executing programs (Windows applications, DOS commands, etc.)
11
•
•
•
•
•
Sending keystrokes and mouse clicks (all characters, keyboard layout
independent).
Window functions (e.g. minimizing, hiding, restoring, waiting for,
activating).
Simple text clipboard functions.
Simple registry functions.
Simple string and variable functions.”
We will of course be using AutoIt to automate interaction with the poker
client. All you need to do is write a simple AutoIt script that takes the
appropriate action (fold, raise, or bet) depending on the traffic light color
given off by the inspector. In the next section I will explain everything you
need to know to write your own script and I have even included a sample
script that worked on Party Poker( I make no promises whatsoever that it
will still function correctly once you get it but it did work 100% at the time
of this writing).
Chapter 3: Putting it all together
How to write your automated script
I understand that most of you have no experience with computer
programming and that is completely fine you do not need to worry. What
12
you need to know to get your Bots working is only a very small amount of
information and I am going to explain everything.
The AutoIt program actually specifies a language that your computer
will be able to understand. All you have to do is write some instructions out
in this language and save them in a file. Then the program will execute those
instructions by running the file. So let me start showing you how to put the
script together.
The first concept you will need to understand is that of a variable. As
the AutoIt help manual explains:
13
In your script you will also need to use variables to store information.
If you look at the top of the sample script you will see the following
variables declared:
Global $tablename = "Table Name"
$FoldButton = "AfxWnd42s14"
14
$CheckButton = "AfxWnd42s15"
$CallButton = "AfxWnd42s15"
$BetButton = "AfxWnd42s16"
$RaiseButton = "AfxWnd42s16"
The first variable holds the name of table you are playing on. You will
have to change the name every time you play on a different table. So if you
joined a table named “Texas Fire” the top of your script would say
$tablename = “Texas Fire”. Then next 5 variables simply hold the names of
each of the buttons. The actual buttons you see on your poker client are
called custom controls and they each have a unique names witch our
program will need to know so that it can click on them. Don’t worry I am
going to show you exactly how to find out the name of the controls.
The AuotIt program comes with a special utility specifically designed
to find out the names of controls. It is called the AuotIt window spy. All you
have to do is run it then click on any part of your screen and it will reveal all
the information you need. So just load up your Poker client, click on each of
the buttons and take note of the name of each of the controls. Then store
these names in the corresponding variables.
15
The next concept you will need to understand is that of the function.
The AutoIt manual explains it well:
16
There is only one last concept you will need to know in order to write
you script and that is something called loop statements. These simply allow
certain parts of our script to repeat a number of times. If you look in the
17
sample script you will see a while loop. This is the main part of the script
and will keep running until you leave the table you are sitting at. Well that is
really all you need to know to get your own working script. Like I
mentioned earlier I have included a sample working script so I suggest you
study it very thoroughly to understand exactly what you need to do. The
sections in the script that are preceded with a semi colon are there to help
you understand the script. They are called comments and are just English
sentences for your benefit.
How to start your Bot
Ok so now that you have written your script it is finally time to put it
all together and let the money start rolling in. All you will need to do is login
to your poker client find a table and take a seat. Then you will need to start
the Hold’em Inspector. Then you will need to specify the table name is your
AutoIt script. Then just start your script and let it play. That is all there is to
it!
Sample working script from party poker
I have included the sample script in the download it is called
PartyPokerSampleBot.au3 here is a look:
18
; Play Party Poker
; Pre-initialization : Set Name of Table
Global $tablename = "PUT TABLE NAME HERE"
; Initialize Buttons
; These are the button names you might have to change these for different poker clients
$FoldButton = "AfxWnd42s14"
$CheckButton = "AfxWnd42s15"
$CallButton = "AfxWnd42s15"
$BetButton = "AfxWnd42s16"
$RaiseButton = "AfxWnd42s16"
; Set Coordinate mode to relative to window
AutoItSetOption ( "PixelCoordMode", 0 )
; Wait for the window of table to become active
WinWaitActive($tablename)
; Main Loop
While WinExists($tablename)
Sleep(300);
$FoldVisible = ControlCommand($tablename, "", $FoldButton, "IsVisible", "");
$RaiseVisible = ControlCommand($tablename, "", $RaiseButton, "IsVisible", "");
if $FoldVisible = 1 then
Sleep(Random(1500, 2500))
$action = GetAction();
if $action = 1 then
; Fold/Check
; if we can check for free, then do that instead of folding
if StringInStr(ControlGetText($tablename, "", $CheckButton), "Check") = 1 then
ControlClick($tablename, "", $CheckButton);
else
ControlClick($tablename, "", $FoldButton);
endif
elseif $action = 2 then
; Check/Call
;Sleep(Random(0, 2000));
ControlClick($tablename, "", $CallButton);
elseif $action = 3 then
; Call/Bet
; if we can call then call otherwise bet
if StringInStr(ControlGetText($tablename, "", $CallButton), "Call") = 1 then
19
ControlClick($tablename, "", $CallButton);
else
ControlClick($tablename, "", $BetButton);
endif
elseif $action = 4 then
; Bet/Raise
;Sleep(Random(0, 2000));
ControlClick($tablename, "", $RaiseButton);
endif
endif
WEnd
; Poker Inspector Actions
Func GetAction()
WinActivate ("Connected to """ & $tablename);
; red - fold
$color = PixelGetColor (338, 55);
if $color = 255 then
WinActivate($tablename);
return 1;
endif
;yellow
$color = PixelGetColor (338, 67);
if $color = 65535 then
WinActivate($tablename);
return 2;
endif
; blue
$color = PixelGetColor (338, 79);
if $color = 16776960 then
; sometimes bet or just call 50% of the time
WinActivate($tablename);
return 3;
endif
; green
$color = PixelGetColor (338, 88);
if $color = 65280 then
; If we've got the nuts or close to then sometimes just check 20% of the
time
; otherwise raise or reraise
WinActivate($tablename);
return 4;
20
endif
WinActivate($tablename);
return 1;
EndFunc
; Checks how many empty seats there are
Func OccupiedSeats()
Local $Count = 0
Local $SeatOpenColor = 3246765
;Seat 1
If (PixelGetColor(517, 96) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
;Seat 2
If (PixelGetColor(665, 133) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
;Seat 3
If (PixelGetColor(735, 251) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
; Seat 4
If (PixelGetColor(660, 378) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
; Seat 5
If (PixelGetColor(493, 413) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
; Seat 6
If (PixelGetColor(262, 413) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
; Seat 7
If (PixelGetColor(108, 378) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
; Seat 8
If (PixelGetColor(53, 247) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
; Seat 9
If (PixelGetColor(126, 133) == $SeatOpenColor) Then
$Count = $Count + 1;
21
EndIf
; Seat 10
If (PixelGetColor(264, 96) == $SeatOpenColor) Then
$Count = $Count + 1;
EndIf
return $Count;
EndFunc
Useful Links
Full Version of Online Hold'Em Inspector
AutoIt
22