Skip to content

Obstruction game made in Python, also having implemented a Min-Max algorithm for opponent.

Notifications You must be signed in to change notification settings

danisuba10/Python-Obstruction-Game

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Review Assignment Due Date

🎮 Assignment 10 - Let's play

Requirements

  • You will be given one of the problems below to solve
  • Use object oriented programming and layered architecture
  • All modules with the exception of the UI will have specifications and PyUnit test cases
  • The program will be implemented as a human player vs. computer player game
  • The program must protect itself against the user’s invalid input

NB! We do not expect you to implement optimal play for the computer player. However, it should still employ a strategy when making its moves in order to attempt to win the game and provide an entertaining opponent for the human player. Minimally, the computer player should move to win the game whenever possible and should block the human player’s attempts at 1-move victory, whenever possible

deadline is week 14

GUI Bonus (0.2P)

  • In addition to the console-based user interface required, also implement a graphical user interface (GUI) for the program
  • To receive the bonus, both user interfaces (menu-based and graphical) must use the same program layers. You have to be able to start the application with either user interface

AI Bonus (0.2P)

  • Implement computer AI using a minimax algorithm. Computer play should be competitive against the human player
  • In the case where minimax cannot be applied (e.g. Battleship, which is not a complete information game), find a suitable alternative; talk to your lab professor about the bonus possibility in this case

Best-of-FP Bonus (0.2P)

  • This bonus will be awarded to the very best implementations. To receive it, you need to implement both the GUI and AI bonuses, follow all implementation requirements, and have your work be selected by the laboratory professor
  • These implementations will be part of a separate GitHub repository that we aim to make publicly accessible in order to feature some of our students' best work during this semester

Problem Statements

Connect Four

The game is described here

Gomoku

The game is described here

Obstruction

The game is described here

Battleship

The game is described here

Planes

The game is described here

Nine men's morris

The game is described here

Other games

You are free to implement a different board game, as long as its complexity is similar to those above. Talk to your laboratory professor to validate your idea before starting work!

About

Obstruction game made in Python, also having implemented a Min-Max algorithm for opponent.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages