/Settlers-of-Catan

This is my Second Year Final Project for an OOP course using C++. Its a game based on the board game Settlers of Catan, which can be interacted with via the command line. Final Project Mark: 96%

Primary LanguageC++

Settlers-of-Catan

To play the game on a Mac or Linux computer:

  • Dowload the 'Catan_Executable_(Mac|Linux)' folder
  • In terminal navigate to the 'Catan_Executable_(Mac|Linux)' folder location
  • Run the following command: ./constructor
  • If you see ./constructor: Permission denied, Run: chmod u+x ./constructor

This was my OOP programing course's final project, where we received a 96%. It's based on the board game Settlers of Catan, except with a few adjustments to fit the University of Waterloo theme. The project is built with C++ and is played via the command line, example:

image

For this project I worked in a group of 3 where we used Git to manage our workflow.

The project was very OOP intensive, we planned ahead using a UML diagram (screenshot) where we implemented an observer design pattern

image

Full resolution UML (uml-final.pdf)

Additionally, we created an extensive design plan (please see pdf linked below)

design.pdf

Key C++ design principals used:

  • Classes
  • Inheritance
  • Exception Handlings
  • References & Pointers
  • Smart Pointers
  • Input & Output Streams