Poker Strategy
Poker Odds
Poker Rules
Other Poker Rules
IRC Poker
Poker IRC Software
What is IRCbot?
IRCbot is a poker dealing program designed to use Internet Relay Chat (IRC) as its communication medium. The program (also referred to as dealer or as a bot) resides on a particular channel and manages the action of a game.
History
IRCbot is a result of some poker simulation work done by the author (Todd Mummert). This work entailed the simulation and statistical evaluation of a wide variety of games. The author became aware of a poker dealing robot (Hbot) running on IRC that dealt only Holdem which was written my Anthony Chang, based on some work by Bob Herlien. Using the commands that Hbot understood as a basis from which to work, IRCbot took shape.
Connecting to IRC
An IRC network consists of one or more interconnected servers. An IRC client program is used to connect to this network and communication with other IRC clients can then be made using an established protocol. In general, once you've connected to a server you will join a specific channel that consists of clients with interests similar to yours.
Finding an IRC client
Hopefully, your system already contains an IRC client program. In general, it is usually called irc or ircII. If you do not have such a program, you can compile one from sources available via ftp from cs-ftp.bu.edu (/pub/irc/clients). Currently, the ircII2.2.9* files are known to work well.
Connecting to the poker server
The poker server currently resides an an isolated IRC server, one that is not connected to any of the established IRC networks. This isolation was necessary to allow the poker dealers to communicate with the channels at a sufficiently high rate to increase the rate at which a game is played. The name of the server is irc.poker.net, and its current IP address is 204.32.41.79.
You can connect to this particular server with a command similar to:
The 2nd argument is your nickname for that session, and is limited to nine primarily alphanumeric characters. Alternatively, if you just use the command irc and it connects you to a different server you can change servers using the IRC command /server irc.poker.net.
The easiest way to become familiar with the poker server is to join in on one of the active channels and just watch the play for a while. You join a channel by using the following command: /join #holdem, where #holdem is the name of one of the poker channels. You can see the names of the channels and the number of clients connected with the /list command. After joining a channel, any command you issue that does not begin with a leading '/' will simply be echoed publicly to the channel. This is a simple way to ask questions of the other players, or if you're playing for the first time, to send commands to the dealer.
How to talk to the dealer
In general, the dealer is parsing everything that is sent publicly over the channel, as well as commands that are sent privately to it. However, the dealer expects to receive its commands in a very specific format. All commands to the dealer, whether public or private, should begin with the single character identifier P. For example, to inquire about the status of a game, type p status. The dealer is case insensitive, except when entering a password. Game action commands such as call, raise, check, etc may be done in advance. The dealer will remember the command and act upon it when it is your turn to act.
Upon playing a game for the first time, or if you just drop by to watch, you may notice the lack of public action by the other players. This is because once players become familiar w/ IRC, they realize that all actions can be sent privately to the dealer. This has several advantages:
Commands may be entered in advance, without the other players knowing the specific action. Publicly announcing your action is similiar to 'acting out of turn' in a real game, and should not be done under normal circumstances.
The channel traffic is kept to a minimum. This increases the overall rate at which the game progresses, and those players w/ slow net connections will really appreciate it. For example, to send a private message to a dealer named Dbot (all the dealers have unique names), we would use a command like:
/msg is the irc command to send a msg to a person or channel. dbot is the case-insensitive name of our dealer and the rest of the command is the specific action we wish to make. Notice that the 'p' is still a necessary part of the command.
Download IRCbot (3,5 KB ZIP)
IRCbot command list
This is only a description of the commands that the poker dealer understands. It does not describe any of the IRC commands necessary for joining a channel.
Commands for joining/leaving a game
join password - This command is used to join the game. The password is case sensitive.
quit - Quit immediately. However, since you may have money in the pot, your seat is not freed until the end of the hand.
wait password - In case the game is full, join the waiting list on a particular channel. You must give the correct password here, since it will attempt to use it to join the game once a seat is available.
unwait - Remove yourself from the waiting list. Quit would also check the waiting list to see if you were on it.
Status commands
status - Check the status of a game. This is displayed using the same format as was used for WRGPT3, for those who are familiar with that game. Basically, the only non-obvious symbols would be the flags preceding the name. V means on vacation, B means that the person is the virtual dealer (i.e., blinds start to his left). As far as pot numbers go, a player is in all pots less than or equal to his pot number.
board - Print out the current board (common cards). Generally, only holdem and omaha and derivitives thereof have board cards.
cards - Show your current cards. This will show both your up and down (hole) cards.
game - Print out what game is being dealt. This is primarily useful on the dealer's choice channel.
rank - For games that maintain statistics print out your current ranking.
top - Print out the list of the top players ranked by largest bankroll.
top2 [#hands] - Another method of ranking players, by number of units won per hand. The optional argument is to require some minimum number of hands to have been played.
Game actions
All these commands may be made in advance. Making as many of your actions in advance is recommended to speed up play.
fold - Fold your hand.
call [amount] -Call up to amount. If it is more than amount to you, then fold. With no arguments, call any amount.
check - Check. That is if it is 0 to you, then call, otherwise you will get a warning.
raise [amount] - Raise amount. If amount is insufficient, you will be given an error message. On channels with a fixed betting limit, no argument is necessary. Certain channels also limit the number of raises during a betting round.
make amount - Make it amount to you. If amount is an illegal raise, then you'll be prompted again. For example, if you wish to raise if it is unraised when it gets to you but wish to call at least one raise, you can do p make 20. Therefore, if it is unraised, you'll raise 20, if it is 20 to call you'll call; otherwise, you'll be prompted for another action.
toss [card1] [card2] [...] - In draw games, specify which cards you'd like to toss. Cards are numbered from 1...N. Use toss 0 to toss no cards.
undo - Undo any advance actions.
Tournament commands
Certain of the channels have been set up to facilitate the playing of tournaments. Basically, the dealer keeps track of when the blinds double, and prevents new players from joining in mid-tournament. There are a few commands that are enabled only on the tournament channels.
double interval [hands] - Blinds will double at this frequency. Generally in seconds, although you can double by number of hands played if you wish.
bankroll amount - Start with a bankroll of this size.
blind amount - The small blind will be this size initially. Large blind is twice the small blind.
start - Start the tournament. New players cannot join after this. Game parameters (above) must be set before the tournament starts.
abort - Abort the tournament. The current hand can be played out, but after that you're back into the pre-tournament mode.
vacation [nick] - If a person's connection lags or is dropped, you can put them on vacation. This is also useful if you need to take a short break. A person on vacation either checks or folds when it is his turn to act.
back - This is how to return from vacation. Only the player on vacation can return himself.
Miscellaneous
help - Prints out the helpfile for this channel.
commands - Print out the list of commands.
deal [game number] - In the non-tournament channels, you need to tell the dealer to deal the next game. On the dealer's choice channels, you may specify a different game.
password new_password - Change your password to new_password. You must be in the game to use this command.
remind - Remind a player that it is his turn to act.
list - List the games that are available.
motd - Print the message-of-the-day.
kick - Kick a player from the game. Should only be used if a player's connection drops or they're seriously lagging.
|