Poker Patience
A couple of days ago I was looking through The Popular Dictionary of Card Games, and this ‘Poker crossed with Patience’ game caught my eye. I had already written a version of the classic Patience game for the Amstrad NC100 Notepad and NC200 Notebook computers, so I thought I would have a go at writing this one.
But what language to write it in? I could have used the NC200’s BBC BASIC, or made it an online game using Internet Explorer and VBScript, but I decided to use Visual Basic 6 since I needed to learn it for my final year project at university.
I wrote this program over two days, and the biggest challenge was creating the logic required to detect which Poker combinations the player has made. The source code is included in the download below for those who are interested.
To install the game, extract the files from the ZIP archive and run setup.exe. This will copy the Visual Basic 6 runtime files to your Windows folder, create a Poker Patience folder in your Program Files folder, create a Pack sub-folder that contains the card images, create a Source sub-folder that contains the program source code, and create an entry in your Start menu.
Playing the game
To run Poker Patience, click on its entry in your Start menu. You will then see the playing area:
The Poker Patience playing area
Twenty-five cards are turned one by one from a shuffled 52-card pack and placed face up on the table in such a way as to gradually build a square of five rows by five columns. Cards once placed may not be moved in relation to one another.
At the end of play, score for each row and column (ten in all) according to the Poker combination it makes, regardless of the actual order of cards within the line.
The game uses the American scoring schedule which has a target score of 200:
Combination |
Description |
Score |
One Pair |
Two cards of the same rank |
2 |
Two Pair |
Two sets of two cards of the same rank |
5 |
Triplet |
Three cards of the same rank |
10 |
Straight |
Five cards in numerical order (ace counts high or low) |
15 |
Flush |
Five cards of the same suit |
20 |
Full House |
One Pair and one Triplet |
25 |
Four of a Kind |
Four cards of the same rank |
50 |
Straight Flush |
Five cards of the same suit in numerical order (ace counts high or low) |
75 |
Royal Flush |
Cards 10, Jack, Queen, King, Ace (high) of the same suit |
100 |
Use the mouse to move the top card from the pack around the playing area. Click an empty dark gray cell adjacent to a card already placed to place the card. If you make a mistake, you can press CTRL-Z once to undo your last placement.
The right-hand side of the window displays the next card in the pack, details of any scoring combinations that were made when you last placed a card, and your current total score.
- Click Scoring for a summary of the scoring schedule and a list of the last five top scores and players.
- Click New to start a new game with a newly shuffled pack.
- Click Quit to exit the program.
Changes in version 1.3
- The Next Card display now shows the card following the card about to be placed.
- The Scoring window will be aligned to the right of the playing area window where possible.
- Improved Scoring window layout and scoring examples.
- Improved card images and use of ClearType-capable font.
Changes in Version 1.2
- The top five scores and players are now saved.
- The Scoring window now displays the top five scores.
- The About window can now be maximized for easier reading.
References
- Parlett, D., The Popular Dictionary of Card Games, Parragon by arr. with Oxford University Press, ISBN 0-75251-849-6
- Card images adapted from those available at jfitz.com.