Flip 7 is a card game created by The OP Games where each player takes turns drawing cards from a deck. Each card is either a value of 0 to 12 or some modifier card. Each number card has that number of cards in the deck, for example a 4 card has 4 copies of itself in the deck. Modifier cards add points to your score, force other players to draw cards or save you from losing a round.
In your turn you may choose to draw a card or stop drawing for the round and keep the points in your hand. If you continue to draw cards and you draw a card you already have (say, draw a 6 when you already have a 6), your round is over and you lose the points in your hand. The goal is to close out a round with as many points as possible and get your running total to 200.
While an official score keeping app already exists, I wanted to try my hand at creating one on my own. I used Python to create a terminal based app that a designated score keeper can use to keep an eye on everyone's scores and see how close everyone is to winning. The program accepts a defined number of users and their names, then manages the flow of the game. After each round the user will enter each player's score and the program produces a table showing the scores of the current round, all previous rounds and each player's total score at that point in the game.
The program also manages the dealer for each round by shifting to the next player in clockwise order. This was necessary to make sure that, in a game where more than one player achieves the winning score in a single round, the first person to do so is selected as the overall winner.
I also used this opportunity to learn and get familiar with Git's version control system. The entire project is kept on my GitHub profile.
Languages and Tools Used: Python, Git and GitHub.
Dependencies: Python (+ Python's tabulate package)