Skip to content

MitchellGray100/Chess

Repository files navigation

Chess

[email protected] https://github.com/MitchellGray100/Chess

JavaFX based Chess Game.
It's chess

As a personal project, I created a representation of Chess in Java that allows chess pieces to make valid moves, checks if the king is in check or checkmate, determines if a player is in stalemate, changes the piece scoreboard as the game goes on, checks if a piece is being protected and/or protecting another piece, and has a custom AI that uses MiniMax techniques. The project is displayed with JavaFX. Now Supports 1 Player (with AI) and 2 Player modes.



Play

To Play, just download the .exe file: https://github.com/MitchellGray100/Chess/raw/main/Chess.exe.

If you gen a JNI error, make sure to download [java](https://download.oracle.com/java/17/latest/jdk-17_windows-x64_bin.exe).


Images

The Title screen.
One Player mode is for playing against the AI and Two Player mode is for playing against another player on the same machine. Image of The Title Screen

Start of game

Image of Start of Game

Yellow dots show the last piece to move and where that piece moved from.

Display of Yellow Dots

Green Dots appear when clicking on a piece to indicate it’s a valid move. Currently the black queen is selected.

Display of Green Dots

The AI will use the c3 knight to take the e4 knight to gain 3 points.

Shows the c3 AI knight after taking the e4 knight

The d5 pawn takes the e4 knight to gain 3 points. Points balance out to 0:0.

Shows the d5 pawn after taking e4 knight

Game ending in black checkmating white. Text appears on screen.

Red Text saying black won the game

Backend Representation of the game (Not the actual GUI) Image of Start of Game


GIFs

Scaling of the window.

Window Growing and Shrinking

Promotion buttons being clicked. Whatever button is selected is what the pawn will promote to when promoting. Promotion Buttons switching