This week's entertainment is an original creation--my first computer game. The game is based on the board game "99" (French: "Le Jeu de 99") that my girlfriend's family introduced me to a couple of summers ago.
I made the game for several reasons. The first was to improve my very modest Python programming skills--this was my first program to include a GUI. An earlier version was text based, and it was very ugly--email me for the source code if you want to see just how ugly. The second reason was the irony of turning an old-fashioned Mennonite game into a computer game. Perhaps I will try to preserve other antique games this way in the future. My third motivation was to create a multi-player online version, but that will have to wait.
Game play proceeds as follows. On each turn, the player (total number: two or three) can draw a card, discard, skip their turn, or play. The cards are numbered with a range: the largest is 0 to 99, the smallest is 99 to 99. This range specifies the number spots on the board onto which the player can place their marker. You may have up to five cards in your hand at a time. The game allows players to hide or show their hands so that their competitor may not see them. When you choose to play, you may place your marker on any open spot within the range specified by the card that you play. The game is won when a player places five of their markers in a row horizontally, vertically, or diagonally. (Full instructions.)
[caption id="attachment_446" align="aligncenter" width="300" caption="Opening screenshot"][/caption]
The game does not currently have a function to tell when a player is won, so you'll have to do that visually for now. This is the first update that I hope to add, along with a "replay" button. As I said above, I'd also like to make the game playable online, which will probably mean learning Django.
Thanks to Jennifer for her help as a beta tester. You can download the source code for the game here or the Mac OS X app version here. Please notify me of any problems with the game--developers are welcome to modify the source themselves under a Creative Commons license.