The game One is to be a Ruby language software version of Uno.
The basics of the game remain the same. The aim is to be the first player to lose all his or her cards. The deck is made up of cards consisting of the following:
4 different coloured cards (red, blue, yellow and green) with numbers ranging from 0-9. There are two of every number except 0 of which there is only one.
In each colour category, there are also special cards - skip, reverse and pickup 2.
There are 3 wild cards which can be any colour determined by the player.
There are 4 wild Pickup 4 cards
Each player starts with 7 cards and takes turns to discard a card onto a discard pile. The player can only play a card from their hand if it matches the top card of the discard pile by colour or number. If the player cannot play a card, they pick up from the deck.
As I am just starting on my coding journey, I thought this would be a good project to do as it is complicated enough to be challenging but simple enough that I think I can do it. This is a game that is played by my son and I almost every evening. I wanted to develop it to test my coding ability but also to impress my son. I'm hoping that once it's finished, he will be keen to play it with me. *Note - Now that it's finished, he bugs me to play it all the time :-)
My target audience is primarily my son Marshall. Anyone who enjoys Uno can download and play the game though.
Given time to develop the program once it is submitted for the assignment, I'd like to include AI players *(this is now done) and even test the validity of the AI's by getting them to play themselves. I'd like to put a nice front end on it and have it as a good portfolio example. So potential target audience in future will also include people whom I'm trying to impress in the search for employment.