fatima-syed / UNO

Bringing to you a Player vs PC Python version of the World's No.1 Classic Card Game, UNO. The first one to get rid of all their cards wins the game!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UNO

Bringing to you a Player vs PC Python version of the World's No.1 Classic Card Game, UNO. The first one to get rid of all their cards wins the game!

----------------------------------------------------------PROJECT-----------------------------------------------------------

Project Title: Python UNO

Group members

  1. Syeda Fatima Shahid
  2. Syed Sheraz Hussain
  3. Khubaib Ahmad Qureshy
  4. Hadia Tarik

Project Description

The purpose of our project is to create an interactive game that primarily focuses on the concepts that were learnt in class and manipulating the functionalities of Python to design a complex yet efficient and easy to comprehend game, UNO.

UNO is one of the most famous and exciting classic card games for both the children (age:7+) and the adults. It includes a deck 108 cards: four each of "Wild" and "Wild Draw Four," and 13 each of four different colors (red, yellow, green, blue). Each color consists of cards from 0 through 9, and one each of "Skip," "Draw Two," and "Reverse." These last three types are known as "action cards.“ To start a hand, seven cards are dealt to each player, and a card from the remaining deck will be randomly selected and set aside to begin the play. The first turn will be decided randomly. On a player's turn, they must do one of the following: play one card matching the discard in color, number, or symbol play a Wild card, or a playable Wild Draw Four card draw the top card from the deck, then play it if possible The first player to play all of their cards wins the game.

Game Features

⦿ REPLAYABILITY

Choice to play again and again with a different gameplay each time thus keeping the player hooked to the game

⦿ GAMING ENVIRONMENT

Action cards create an energizing environment bombarding the player with continuous challenges

⦿ WINNING CHANCES

At the beginning of the game, both the player and computer have equal winning chances. Neither of them has an advantage over the other

⦿ LIMITING INACTIVITY PERIOD

We will be designing a player vs computer game to keep the player riveted on to the game instead of a multi-player game - which can devastate the player's interest due to long periods of inactivity while waiting for their turns

⦿ CARD DEALING

This is an added feature not found in the traditional UNO game. We have included this in the game to create a competitive environment and to increase the difficulty level of the game - If a player has no playable cards in his hand, then they can exchange an action card with the required colour card, from the PC and vice versa.

⦿ CHALLENGING WILD DRAW FOUR

Another added feature - If a player wants, then they can challenge the other’s throw of Wild Draw 4 card. WILD DRAW FOUR can only be played when no valid card is available. If played otherwise and challenged, then as penalty 6 cards must be drawn from the deck.

Technical Architecture

A detailed architecture diagram for the project linking the various functions and modules to the main loop has been attached to this file.

How to deploy the program

To play the game:

  • You must have a python IDLE (game originally created on Visual Studio Code)
  • You must import the third party module 'colorama' to view coloured text; We used Colorama to bring colors to the game, especially the starting UNO title, “Fore” command is used to color the characters of a line The rest of the games’ lines have also been colored to light cyan to make the game look appealing.
  • Built-in modules 'time' and 'random' have been used in the program therefore, they must also be imported for code execution.

⇛ P.F.A ⇚

About

Bringing to you a Player vs PC Python version of the World's No.1 Classic Card Game, UNO. The first one to get rid of all their cards wins the game!


Languages

Language:Python 100.0%