Skip to content
/ MyRPS Public

Simple Rock-Paper-Scissors game for CMPE 135 at SJSU (Object Oriented Design/Analysis)

Notifications You must be signed in to change notification settings

drofp/MyRPS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MyRPS - A Simple Rock Paper Scissors Game

NOTE: This project is purely for academic purposes for satisfying program requirements for CMPE 135 at San Jose State University

Prerequisites

Please have wxWidgets and Boost installed before attempting to build the project.

How to Run

Run these commands at root of project to compile and run

make
./bin/main

Assignment Tasks

v0.1 (Homework 3)

  • Implement the first version of the Rock-Paper-Scissors game.
    • Each game has 20 rounds.
    • Prompt the human player for each round’s choice.
    • The computer makes a random choice.

v0.2 (Homework 4)

  • Add simple machine learning algorithm (overview found here)
  • Design an interface (abstract class) with pure virtual member functions to represent the computer’s choice algorithm.
    • Implement the interface with the random choice class and with the simple ML choice class.
    • Use a factory class to create algorithm objects.
    • Code to the interface.
  • Be able to swap between the two algorithms with minimal changes to the rest of the code.
    • Implement a command-line option, such as -r for random and -m for machine learning. (This is implemented as menu options in our version)
  • The ML version must save its frequency data at the end of each game to be read at the start of the next game.

v1.0 (Homework 5)

  • Minimum features
    • Which round
    • A way for the user to enter a choice for each round.
    • The computer’s prediction of the human’s choice for the round.
    • The computer’s choice for the round.
    • Who the winner is (or is it a tie) of the round.
    • The number of human and computer wins, and the number of ties.
  • Menu Commands
    • About
    • Exit
    • Start new game
  • Provide way for human player to change number of rounds per game
    • Default is 20 rounds per game