Skip to content

Epirius/Chess_OOP

Repository files navigation

Chess_OOP

Chess by Felix Kaasa
  • see "Class Diagram.png" for an overview of the program.
  • see this video for a short example of the program running: https://streamable.com/zm6jyp
  • this project is made up of 4871 total lines, of which 3269 are lines of code.

Installing and running the program

make sure your computer has java 17 runtime (or later) installed (guide).

installation instructions:

  • download the latest jar file from the releases page
  • on linux computers: right-click on the file, click properties, click on the permissions tab, and make sure "is executable" is selected.
  • open a terminal and cd to the location of the file. (on Windows you can click on the file path in the explorer then type cmd and press enter)
  • then enter the command:
java -jar Chess.jar

About this project

this program is an implementation of chess with:

  • possibility of playing local multiplayer or against ai.
  • choose which side you want to play as against the ai.
  • an AI that uses minimax with alpha beta pruning.
  • possibility of resizing the screen.
  • possibility of creating a new game after the old one is over.
  • possibility of undoing moves.
  • choose how many minutes the clock will start with, and number of seconds that will be added to the clock after a move.
  • display all possible moves for a selected piece.
  • text and image buttons that can execute arbitrary lambda functions when clicked.

License

  • This project is published under an MIT license

Attributes

  • CC-BY-4.0 I use GraphicHelperMethods.java written by Torstein Strømme, which is code i imported from semsteroppgave 1.
  • CC0 The chess pieces are public domain CC0 that i modified with a white outline.

About

Chess implemented in Java

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages