/Chess-Connoisseurs

A chess application that was developed by a group of 8 people during their attendance to INF112 Software Engineering

Primary LanguageJavaGNU Lesser General Public License v2.1LGPL-2.1

NB: This repository has been cloned from a GitLab server that was used for assignment delivery

Chess Connoisseurs

example1

example2

Images are from the jar-executable

Team members:

  • Keerthan Kumaranayagam

  • Malin Jakobsen

  • Olav Gjerde

  • Ole Kristian Solheim Gjerløw

  • Renate Nikolajeva

  • Rune Vatne

  • Simen Gad Hasvi

  • Henrik Borgli

    • Coach: Jonathan Prieto-Cubides

How to run:

  • Run the already compiled version in the 'executable' folder
$ cd executable
$ java -jar .\chess-application-3.0.jar
  • Or run "mvn package" in the 'application' folder
    • Then launch the compiled ...-shaded.jar file in the 'target' folder
$ cd application
$ mvn package

Regarding the post_develop branch:

  • The code in this branch is a slightly refactored version of the original (master) version.
  • The documentation for the GUI is a bit slim in some parts.
  • The "bubble-effect" behind the chessboard is not present in this version.
  • There is no sound in this version either.
  • Internet connectivity is disabled in the sourcecode
    • But the original release (with sound, effects and connectivity) remains in the 'executable' folder.
Refactoring
The GUI code is still by no means pretty, but some of the main parts  
have been separated into their own classes. I did this because I had  
some spare time on my hands, and wanted the structure of the application  
to at least hint at what we would have wanted for the game.  
Following a MVC pattern or some established method would have been optimal.

Extra license information:

This project is inspired by Amir Afghani's Black Widow-chess, and therefore alters code available in his application.
Works based on Black Widow-chess must use the same license, hence our license is the GNU Lesser General Public License 2.1.

Main changes to, and use of open source inspriation code
  • Our code uses JavaFX as its GUI framework instead of Swing
  • Our code uses coordinate(x,y) representation instead of tile numbering (0-64)
  • All tests were written by us
  • No code has been directly copied but written line by line to judge if it's
    feature/function "x" was necessary, and after this expanded upon where needed.
Artwork
Music and Sounds