Straight flush      PokerApp title  Poker chips Logo

  PokerApp Home   Forum   Help / FAQ
  Download   Development   SourceForge Project Page

PokerApp Docs

Table of Contents

1.      Installing PokerApp

2.      Running PokerApp

3.      The PokerApp Server

4.      The PokerApp Client

5.      The PokerApp Applet

6.      Playing PokerApp

7.      Advanced Features

Installing PokerApp

PokerApp can be installed across multiple platforms (Windows, Linux, Unix, Mac) - so the PokerApp install is pretty much just decompressing the downloaded PokerApp file into the desired directory.  This also makes PokerApp easy to uninstall – simply delete the directory or files that were created when you installed PokerApp.  I made a basic installer/uninstaller for Windows machines, but all it does is extract the files to the directory you specify - and you have the option of making Start Menu or Desktop shortcuts to the game.  If you want to install PokerApp onto a Windows machine, download the PokerApp_v###.exe file and run it.  To install for another platform, download either the .zip or the .tar.gz file and extract it to anywhere on your hard drive.

Before you can play PokerApp the correct Java Runtime Environment (JRE) must be installed on the computer.  PokerApp was developed using Java SE version 1.4.2, so that is the recommended minimum version to use.  You can check the Java version installed on you machine by typing in the command java --version at the command prompt.  If you receive an error, either java is not installed or you do not have java in your path statement (which is important).

To installing Java, simply download the latest Java Stadard Edition (SE) JRE from your operating system vendor or  Alternately, if you want to be able to help work on PokerApp development (or write your ownn programs in Java), you can download the Java SE SDK (software development kit) – it will also contain the JRE.

For Macintosh users :  OS X should contain Java 1.4.2 so you should be able to run PokerApp.  All previous Mac OS versions only can use Java 1.1.8, so PokerApp will not work for those machines.

Finally, you must be sure that the java command is in the path statement on your computer.  For Windows, the installer for the Java JRE will do this for you.  On Linux or Unix machines, you can make a link or alias to the wherever you installed the java executable if you don't want to modify the path environment variable.  If you can successfully issue the command java --version from the directory where PokerApp was installed, then PokerApp will run fine.

Running PokerApp

Generally, PokerApp is run from the command line.  For Windows, PokerApp is run by double-clicking the PokerApp shortcut on the desktop or selecting it from the Start Menu.  (The file extension .jar was registered with Windows when you installed the Java JRE, so all you have to do is double-click the PokerApp.jarfile.)

Running PokerApp from the command line is also pretty easy.  The command to run PokerApp is java -jar PokerApp.jar [options]  Command line options are described below:  (note: do not leave spaces before or after the = sign for those options that require it)

--file=filename  : This specifies which input file you wish to use for PokerApp.  The default filename is poker_inputs.txt

--client  : The client option will automatically start a PokerApp client (not bring up the window shown below)

--server   : The server option will automatically start a PokerApp server.  You may also use the following options with the server:

--port=#####  : Required if you want to start a server from the command line

--nogui  : Server will be started without the graphical user interface - more info on this later.


If you get the following window to come up, PokerApp is correctly "installed" and running.  However, if you specify --server or --client on the command line, you will not get this window, but will get either the server or client window (shown later). 

There a two parts of PokerApp, the server and the client.  The server “hosts” the game, and the client is how you play.  To play, the client must connect to a server first.

To start a server, you must specify a port number and press the “Start a server” button.

The port number is the TCP port on which the PokerApp server communicates.  All players must know which port the server will be started on in order to join the game.  If you are playing behind a firewall, you probably will have to "open up" the port in the firewall, and possibly forward the port to the correct machine in your network (if applicable).  Port numbers 1-1024 are reserved for specific protocols, such as web browsing, FTP traffic, reading news, etc…So it is suggested that a port number greater than 1024 be used to play PokerApp.  That being said, there may be a case where it is desirable to use a reserved port to play PokerApp - perhaps to get around a firewall or avoid network monitoring.  You can use a reserved port such as port 21 (FTP) or 80 (HTTP) to play PokerApp, but if another service is running on that machine, you will get an error about the port not being available.  After a valid port is chosen and the “Start a server” button is pressed, the server window will appear and it will start listening for connections. 

To start a client, simply press the “Start a client” button.  The client window will the appear and you can join a game.

The PokerApp Server

When the PokerApp server is started, the server window will appear unless you select the --nogui command line option.  (It will not have any text in it until you start to play games).  Please see below on how to start a server without using the gui.

The large text area is where messages about the server and games will appear.  The menu options are described below:


Start a game of ________

Will start / restart the chosen game.  There will be a menu choice for each game that is available on the server.  Usually this will not have to be used, but if there is some sort of hang-up in game play, you can use these commands to start a new game and try to recover.  If you are in the middle of a game when this command is issued, it will ask if you want to evenly divide the pot and start a new game.


            Quit and Kill Server

Use this (or dismiss the server window) to stop the server.


Autostart Games

Automatically Deal Games

If this box is unchecked, each player will be able to choose the game and deal when it is their turn to be the dealer.  If this box is checked, players will not be able to deal games and the server will handle all the dealing.  The server will choose from the game to deal from among the games that are selected in this menu.  If more than one game is selected, the server will randomly decide which game (of the selected ones) to deal next.




Ante / Blinds.

These checkboxes define the initial pot input from the players.  If Ante is chosen, each player will have to deposit the ante amount in the pot prior to each hand.  If Blinds is chosen, the big and small blind positions place their respective bets before the deal.   There is also an option to increase the value of the ante or small blind.  (there is no way to decrease it without restarting the server.)

Also there are options to automatically double the blinds every so often - either based on number of hands or based on time elapsed.  Only one of these two options can be selected.  The doubling time and number of hands is specified in the poker_inputs.txt file.

Structured Betting / Bet Limit / Pot Limit / No Limit.

Structured betting uses fixed bets to determine the betting amounts.  If a server uses structured betting each player may either check, call, bet the fixed amount, or raise by the fixed amount.  Only 4 bets are allowed per betting round for structured betting.

No limit betting means a player can bet or raise whatever value he/she wants.  Players may risk all of their money at any point in the game by going "All-In".  Bet limit and pot limit games are similar to this, but the maximum raise is limited to a fixed amount.  For bet limit games the maximum bet is noted in this menu and can be increased menu option. (again, there is no way to decrease it without restarting the server).  Pot limit games mean the maximum raise is the current value of the pot. 

The minimum bet is also able to be increase independently of the blinds. (there is no way to decrease it without restarting the server).  When the blinds are doubled, the minimum bet is also doubled. 

Kick a player who hasn’t responded in a given time

If this option is selected, players must bet within the allotted time or they will be forced to fold and will be kick off the table.  The player will get 5 seconds of warning before he is kicked out.


AI Players

Add an AI Player

Selecting this option will allow a computer player to be added to the game.  An AI window will appear when this is selected.

To create the AI player, simply enter a name (default name is AI) and choose the AI type from the drop down box.  After the AI is set up, press the “Choose Name and Select Player Type” button and the AI will start playing on the server.

Currently there are only a couple “placeholder” AIs, but better computer opponents are in work.  The Simple AI will only play or deal Texas Hold’Em and fold otherwise.  The other AI is a little better at Structured Texas Hold'Em, but is still a work in progress.


Game Adjustments

Change a player’s bankroll

Will bring up a window allowing the server to modify how much money a player has in the bank.  Might be useful when players need to take a break, or PokerApp had to be restarted because of an error.  The server can correct each players bankroll, and continue on.  The players will receive a warning when their bankroll is changed.

Kick a player out

            Brings up a window that can be used to get rid of unwanted players.


The PokerApp Standalone Server

If the PokerApp server is started from the command line with the nogui option, the window shown above and all the menu options will not be avaiable.  The purpose of running the server this way is to allow the server to be started on a remote machine or a machine without a window manager.  Clients can then connect to this server to play.

An example command for starting the PokerApp server would be:

java -jar PokerApp.jar --server --port=30000 --nogui --file=server_setup.txt

BUT (and this is a big but), the way Java loads the java.awt.* classes, it requires some sort of X server to be running.  This creates a small problem for linux machines that run only from the console.  However, this can be handled by running Xvfb before starting the PokerApp server.  Please see my detailed instructions on using Xvfb.

The PokerApp Client

 When the poker client is started, the following window will appear:

You still need to connect to a server before you can play, but first is a rundown of all the menu options available.


Join a game

Used to connect to a server.  Disabled if already connect to a server – disconnect from current server before trying to connect to new server.  When you select this, the following window will appear:

You must enter a name for yourself, the IP address or name of the computer you want to connect to, and the port number where the server is listening for connections.

Leave the table

Select this option to stand up from the table and watch.  This will leave you connected to the server.  You can sit down again, but you will start with the original buy-in amount.  This option is disabled if you are not playing in a game.

Disconnect from Server

Use this choice to fold your hand (if applicable) and disconnect from the server.  You can now connect to another server.  This option is disabled if you are not connected to a server.


Will disconnect from the server (if connected) and quit the PokerApp program. 



The deal menu is used to deal the game.  If it is not your turn to deal the deal menu will be disabled.  If it is your turn to deal, the deal menu will be enabled and you must choose which game you wish to play from the available games.  Everyone is probably waiting for you to deal already !



Hide hole cards

Choose this option to keep your hole cards face down.  This can be used to prevent snooping over your shoulder.  If you’ve seen them once and know what they are, why do you need to keep looking at your cards?

Don’t show losing hands

Normally at the showdown, the player who is called must show his cards first.  You can select this option to not have to show your garbage hand if you cannot beat what was previously shown.  If you unselect this option, all of your hands, good or bad will be revealed at the showdown (you still will not show if everyone else folds to you).

One click Check and Call buttons

Select this option to make the check and call buttons be single click.  If this option is not selected, you must press the Check or Call button and then press the Submit Bet button, which can be annoying.  The benefit of not having this option enabled is when you want to review your bet or change your mind, you can fiddle with your bet before pressing the Submit Bet button.  For structured betting games all the buttons are only single click.



Use this menu to select what you want the card backs to look like.  The cards that are already dealt won’t change, but any new cards to be drawn will have the newly selected card back.



Use this menu to change what the table looks like.



View Rules for this table

This menu item will bring up a window that describes the rules of the server where you have connected.  If you don’t like the rules, you can then leave before sitting down – or use the communicator to petition for rules to your liking.  This option is disabled if you are not connected to a server.  A sample window displaying the rules is shown below.


Open Communicator

You can use the communicator to talk with other players in the game.  The communicator window is shown below:

The conversation text will be displayed on the large blank area.  To write a message type something in the small box at the bottom of the window and press the submit button.  To quickly erase something you are about to submit, you can use the clear button.

Open Message Window

The message window displays a history of messages that come from the server.  The messages also come one line at a time on the message line in the main client window, but somethimes a message can be missed or you will want to see past messages.  The message window is what you would use to keep track of past messages from the server about the game.



PokerApp Help

Brings up a dialog box that gives a brief description of the current version of PokerApp, who it is registered to and a couple of links that you can go to for help.  You can click on the links to try to launch your web browser, but at the moment the buttons only work for Windows machines. 

The PokerApp Applet

A PokerApp applet is also delivered with PokerApp.  The applet can be used to start PokerApp via a webpage.  This way the client doesn't even have to download the program, the client will be run from the server.  The method will require the server to have a pretty good connection with higher than normal upload speed for it to work optimally.  Normally, its just easier to play via the PokerApp Client.

In order to set up the PokerApp applet, the follwing instructions should be followed:

  • Create a webpage which will run the PokerApp applet.  This can be a very simple webpage - a simple example is provided with the PokerApp package.  The following line of HTML code is required to put the applet in the webpage:
    <applet archive="PokerApplet.jar" code="net/sourceforge/pokerapp/PokerApplet" height="1" width="1"></applet>
  • Place the PokerApplet.jar and applet_inputs.txt files in the web page directory
  • Edit the applet_inputs.txt to include the proper IP address and port of the server you are about to start
  • Run the PokerApp server on the server and port specified in the applet_inputs.txt file.  It is suggested that this server be run in the background using the --nogui option.   Note that when the server is started, it will use the normal poker_inputs.txt file as its input.
  • When the server is started, it will be listening to connections on the specified port.  Players will be able to connect using the normal PokerApp client or from the webpage.   If players cannot connect via the webpage, make sure that you are allowed to execute java applets from your webspace.

    Playing PokerApp

    When you first connect to a server (using the Game/Join a game menu option from the client window), the client window will change to reflect the current status of the game as well as which seats (if any) are open.  Below is an example of what it might look like when you first connect to a server:

    You must choose seat to be able to play.  Press one of the “Sit Down” buttons to jump in the game.  If a game is in progress, you will have to wait for the current game to end to start playing.

    To start the game the dealer must deal.  If you are the dealer (as indicated by the dealer button next to your name), you must select what game you wish to deal.  Your Deal menu will be enabled and you should select on of the games from the drop down list.  If the server is automatically dealing, each player will not be able to choose which game to deal – in this case, you may have the dealer button by your name, but the deal menu will not be enabled.  The cards will be dealt by the server after a short delay. 

    Each player interacts with the game using the buttons at the bottom of the PokerApp client window.  For bet limit, pot limit or no limit games, the buttons will look something like this:  For bet limit and pot limit games the "All In" button will be a "Max Bet" button

    For structured betting (limit) games, the buttons will look like this:

    or this:

    depending on what you can do at that point in the game.

    Brief description of the buttons:


    Your hand will be immediately folded this round.  You lose, but you don’t have to throw any more money in the pot.  For no limit, pot limit, and bet limit games all of the other buttons require the player to press the Submit Bet button – except for Fold.  If you press Fold, there is no need to press Submit Bet because your hand will be folded immediately.


    The Check button will set your bet to zero.  It is most useful if you are adding several denominations to your bet and then want to reset back to zero.  You must press the Submit Bet button with your current bet of zero to actually check in the game.  For structured betting games, the check button will place of bet of zero immediately (you will not be allowed to check if you have to call a bet)


    Will make you bet match the current high bet in the game.  Using this button is a good way to determine how much you must bet to stay in the game.  For structured betting games, the call button will immediately call the bet - no matter what the current bet is.

    Submit Bet

    After you have decided how much you wish to bet and you wish to “push the chips into the pot”, you press the Submit Bet button.  This will take your money and put it in the pot.  On your turn you must eventually press either Fold or Submit Bet.

    Bet (Structured betting or limit games only)

    Bet will cause your bet to equal the set bet value.  This button will not be available if somebody already bet.  You must either call, raise, or fold.

    Raise (Structured betting or limit games only)

    Raise will cause your bet to be equal to the highest bet plus the raise amount.  If there have already been 3 raises in this round, the Raise button will just make your bet equal to the highest bet which will call.

    All In (No Limit games only)

    Will cause your current bet to be equal to your entire bankroll.  You can also go “all-in” by having to match somebody else’s high bet.

    Max Bet (Bet Limit and Pot Limit games only)

    Will cause your current bet to be equal to the maximum possible bet you can make.

    Betting Denomination buttons (Bet Limit / Pot Limit / No Limit games only)

    Increase your current bet by the denomination of the button you press.


    Game Play

    If it is your turn to bet, the buttons will be enabled; if it is not your turn to bet, your buttons will be disabled.  When it is your turn to bet the menu on the window will turn yellow.  If the menu is orange, it means it is your turn to deal the next game.

    Directly above the buttons is a status area where you can figure out what’s going on in the game.  There is a box labeled “Cash” which lets you know how much money you have to work with.  The area labeled “Pot” tells you how much money is currently in the pot.  The box labeled “Current bet” displays the current high bet that must be matched to stay in the game and who made that bet.  Below the “Current Bet” box is labeled “Your Bet” – this shows how much you would be if you pressed the Submit Bet button.  You won’t actually bet that amount until you press the button.

    Finally there is a message box that will relay pertinent information such as who’s turn it is and what is going on in the game.  It will also let you know if you need to bet more to match the minimum bet.


    Description of the available games:

    PokerApp was designed to be highly flexible and allow easy expansion.  Currently ten game types are packaged with PokerApp, but it is not difficult to add other game types.  There are five standard games plus five "special" games which feature some wild card action.

    Standard Games

    Texas Hold'Em - you have two cards face down plus you share five other cards with all the other players.  The person who makes the best five card hand out of the seven cards available to them wins.

    Omaha Hold'Em - you have four cards face down plus you share five other cards with all the other players.  However, unlike Texas Hold'Em, you must play exactly two cards out of your hand and three cards from the shared cards on the table.

    Seven Card Stud - you will receive 7 cards, 3 face down and 4 showing.  Whichever player makes the best 5 card hand wins.

    Five Card Stud - you receive 5 cards, 2 face down and 3 showing.  Whichever player has the best hand wins

    Five Card Draw - you receive 5 cards in you hand.  After a round of betting you may draw up to 3 cards (4 with an Ace), discarding the same number from your hand.  Another betting round ensues and whoever has the best cards after the draw wins.

    Semi-Standard Games

    Iron Cross - Iron Cross is very similar to Omaha Hold'em except it is more limited in what had you can play.  You must play two cards from your hand and three from the table - but you must play the three cards from one of the two arms of the cross.  This results is generally much weaker hands than Omaha or Texas Hold'Em.

    Omaha 8 High/Low Split - Same as Omaha Hold'Em except the pot is split between the person with the highest possible hand and the low hand.  The "8" part of Omaha 8 is that the low hand has an 8 high qualifier.  That means any hand over 8 high cannot be a low hand.  Many games will not have a low winner because there will not be 3 unique cards with a rank lower than 8 on the board.  The rules for the low are a little complicated.  Straights and flushes do not count against the low and the Ace can be used as a low card when playing the low.  So the lowest possible low hand would be A-2-3-4-5 (even if its a straight flush).  Each player will play his high hand (by using two cards out of his hand) and the winner is picked;  then each player will choose the low hand and the winner is picked.  When making the low hand the same cards that were used to make the high do not have to be used - so the best hand is one that can win both the low and the high.  One other thing to look out for : if the low or high have to split the pot because they tie with somebody, it is possible to get "quartered" - which happens when the person who wins one half of the pot gets half - but the players who tied for the other half of the pot have to split that - therefore they only get a quarter of the entire pot.

    Pineapple - Pineapple is Texas Hold'Em with a twist - you are dealt 3 cards initially and must discard one card after the first round of betting but BEFORE the flop.  The game then continues like standard Texas Hold'Em.

    Crazy Pineapple - Crazy Pineapple is Texas Hold'Em with a twist - you are dealt 3 cards initially and must discard one card AFTER the flop.  The game then continues like standard Texas Hold'Em.  It's called "crazy" because generally much better hands win this game as compared to the other shared card games.

    Non-standard Deviants

    Omaha Hold'Em with Shipwreck - very similar to Omaha Hold'Em.  Shipwreck means that the lowest rank down card in your hand is wild for you - and all other cards that you play that match that rank.  For example if you have a 2 in your down cards and there are a pair of twos in the shared cards, you have three wild cards!  (Ace is always considered high for shipwreck)  Remember, you must play exactly two cards out of your hand and trhee from the table.

    Seven Card Stud with Shipwreck - Play just like seven card stud except the lowest rank down card in your hand is wild for you - and all other cards that match that rank.  Nothing is worse than getting "Shipwrecked" on the last down card when you had a pair of wild 5's  and draw a 4 for the final card - making 4 wild for you instead of the expected 5's

    Five Card Stud with Shipwreck - same as Seven Card Stud with Shipwreck - with less cards.

    Seven Card Stud with Low Chicago - Same as Seven Card stud, except the pot is split between the player with the best hand and the person with the lowest spade (2 is the low)  in the hole (of their 3 down cards).  A couple things to note about this game : this game cannot be played pot-limit or no-limit because it is unfair for the person who has the 2 of spades dealt to him initially to be able to just jack up the betting without fear.  Therefore, if this game is dealt, the rules will temporarily change to Bet Limit (Structured Betting rules will stay unchanged).  The rules will automatically change back to no-limit or pot-limit after this game is finished.  Also, there is no "quartering" of the pot for a similar reason.  The player with low Chicago doesn't have to worry about having to be quartered so he can just jack up the betting.  Therefore all winners will be paid out equally.

    Seven Card Stud with Shipwreck and High Chicago - same as Seven Card Stud with Shipwreck except the person with High Chicago splits the pot with the game winner.  High Chicago is the highest spade in the hole (Ace is high).  See the rules for Shipwreck and Low Chicago above.

    Hide the Salami ! - Same rules as Seven Card Stud with Shipwreck and High Chicago, except this time each player is dealt 5 cards face down initially.  After the first round of betting, each player must choose which 3 cards he will turn face up (remember to consider High Chicago and Shipwreck).  This allows the players to "hide" their good stuff.  Play then continues as Seven Card Stud.  Each player gets one card up followed by one card down and the highest hand splits the pot with high Chicago.  I suggest coming to the showdown with a minimum of 4 Aces.

    Iron Cross with the A-Mod - Because Iron Cross has pretty weak hands most of the time, the A-Mod was created.  The A-Mod means that you may alter any 1 shared card on the table for the purpose of making your hand.  You may alter the 1 card by either changing its suit to any other suit, or by increasing or decreasing its rank by 1.  (Ace can wraparound to a 2 and visa-versa).  You may only make 1 change to one card.  So for example, if you had A-K in you hand and one of the arms of the cross contained 10-J-K, you may change the K to a Q to make your straight.  (The question is do you really want to play a straight when the flush is so readily available because of the ability for someone else to change the suit of a card?)

    Iron Cross with Wild Center - Another way that Iron Cross is made to have better hands.  The final card shown (the center card) is wild.  All other cards of the same rank are also wild.  Play is otherwise the same as Iron Cross.

    Anaconda - Each player is dealt 7 cards (face down).  After a round of betting, players will make 3 different passes to the player on their left (clockwise passing).  The first time, 3 cards are passed.  The second time 2 cards are passed, and the third time 1 card is passed.  After all the passing, the players will lay their best 5 card hand face down out in front of them (arranged however you desire).  Each player flips one card over at a time and a betting round ensues until all 5 cards are showing and the winner is discovered.


    Getting used to these games will take a couple of hands, but eventually you will get the hang of it.


    Finally a word about hand rankings:

    Standard poker ranking is used to determine the winner for the most part.  However because of the availability of wild card games, a decision was made of where to place the 5 of a kind hand.  Based on probabilities, the 5 of a kind beats everything, except for the highest straight flush - the Ace high royal straight flush.

    So the hand rankings from best to worst are:

    Royal Straight Flush
    Five of a Kind
    Any other Straight Flush
    Four of a Kind
    Full House
    Three of a Kind
    Two Pair
    High Card

    Advanced Features

    Advanced features of PokerApp are accessed by editing the poker_inputs.txt file that is downloaded with the PokerApp.  You can copy this file and specify a different filename from the command line using the --file option.  The poker_inputs.txt file is divided into 8 sections.  Each of these sections will be discussed below.  All lines that begin with a # are comments line and a pretty much ignored (except for the heading titles above each section of the file)



    This section contains rules that the server will abide by.  Some of these can be changed in the server menu, but things like betting denominations and minimum bets cannot.  Nothing can be added or removed from this section or PokerApp will not work.

    blinds = true or false - determine whether blinds or ante will be used for initial pot outlay.  This setting can be changed in the server menu.

    noLimit = true or false - sets game type to no limit.  This setting can be changed in the server menu. If all three of the game type options are false, structured betting will be used.

    betLimit = true or false - sets game type to bet limit.  This setting can be changed in the server menu. If all three of the game type options are false, structured betting will be used.

    potLimit = true or false - sets game type to pot limit.  This setting can be changed in the server menu.  If all three of the game type options are false, structured betting will be used.

    maximumBet = float value of the maximum bet for bet limit poker games.  This value can be increased during the game using the server menu

    kickPlayer = true or false - whether a player will be kicked if they do not respone within kickTimeout seconds.  This setting can be changed in the server menu

    kickTimeout = integer number of seconds to wait before non-responsive player is kicked out.  This value cannot be changed in the server menu.

    startingCash = float value of how much money each player starts with.

    button1Val, button2Val, button3Val, button4Val = float values that designate the denomination in $ of each of the 4 betting buttons for no limit, bet limit, or pot limit games.

    smallBlind = float value of the small blind or ante in $.  This value can be increased during the game using the server menu

    minimumBet = float value of the minimum bet for limit poker games.  This value can be increased during the game using the server menu

    autoDoubleTime = true or false - whether or not the blinds/antes will be doubled after a given amount of time.  The length of time it takes to double the ante/blinds is specified in the next line

    timeToDouble = integer value of the number of seconds after which to double the blinds/antes.

    autoDoubleHands = true or false - whether or not the blinds/antes will be doubled after a given number of hands.  The number of hands after which to double the ante/blinds is specified in the next line

    handsToDouble = integer value of the number of hands after which to double the blinds/antes.



    The games section lists the games available to be played on the server.  It doesn't matter what the clients have in this list, the games that the server has available will be able to be played on that particular server.  Each entry has a description followed by the game's Java class name (separated by a comma).  If a server doesn't want games to be available, they can be deleted from this file or commented out with a # sign.  The order the games appear also will be the order that they are listed in the menus.



    The AI section is similar to the games section - it lists the AI types available to the server.  Currently there are only two cheesy, placeholder AIs - but more are in work.  If you want to add an AI player to PokerApp, it would be listed in this section.  Each entry has a description followed by the game's Java class name (separated by a comma).  AI's that are unwanted can be deleted from this file or commented out.



    This section specifies what pictures are available for use as the back of the cards.  Each entry in this list will appear in the Cards menu on the PokerApp client window.  To use a user-defined card back picture, create an image of the proper size and place that image in the {PokerApp base directory}/Images directory.  Then change the poker_inputs.txt file to be able to select your new card image from the menu.  The image that is listed first in this section will be the default for the card backs.  The line in this file should contain a description followed by the file location separated by a comma.  The file location is actually from the PokerApp base directory - that is why all the current card back image files are listed as Images/*.gif.



    Almost exactly the same as the cardbacks section described above.  To add a custom table image, simply create the image with the appropriate dimensions, place the image file in the proper location (as described above), and add the entry to the poker_inputs.txt file.  Again, the image that is listed first in this selection will be the default.



    Used to set the two client options - so you do not have to change them from the menu every time you start PokerApp.

    hideHoleCards = true or false - will keep your hole cards face down.  You can quickly unselect this to look and then reselect to hide them again.

    muckLosingHands = true or false - will not show everybody your hand if you don't have to.

    oneClickCheckCall = true or false - whether or not player has to press the Submit Bet button after pressing Check or Call for open betting games.



    Used to set up the PokerApp applet.  Usually it is best to use a spearate input file for the applet as many of the options are not applicable or different between the applet and the regular PokerApp client.

    server = server IP address:port number - specifies the server and the port that the applet will automatically connect to.



    This section contains how the server will deal.

    autoDealing = true or false - determine whether the server or each player will be responsible for dealing the games.  This setting can be changed in the server menu.

    gameName = class name of game - you may specifiy as many games to deal as you like.  The server will choose randomly which game to deal from the list of selected games.  The class name must be exactly the same as it is listed after the comma in the GAMES section above.



    This section contains any logging of information that PokerApp will do while it is running.  This option is generally used for troubleshooting problems and therefore is not necessary unless you are trying to help debug a problem that you might encounter.

    logging = true or false - determine whether PokerApp will bother logging information to the log file

    keepLogFile = true or false - whether PokerApp will keep the log file when it exits.  You can enable logging and then monitor the log file during the game, but if this option is set to true the log file will be deleted after the PokerApp exits.  This is useful to monitor program execution, while not creating a bunch of log files in your directory.

    logLevel = integer value of how much information to log.  Currently a log level of 1 records just very basic information, while a log level of 4 records everything possbile.  Log levels of 2 and 3 fall in between - experiment to see how much information you want about PokerApp.