An open API service indexing awesome lists of open source software.

https://github.com/mitchellgray100/chess

JavaFX based Chess Game.
https://github.com/mitchellgray100/chess

ai chess chess-ai chessboard-game chessboard-representation game java javafx javafx-application javafx-games javafx-gui

Last synced: 3 months ago
JSON representation

JavaFX based Chess Game.

Awesome Lists containing this project

README

          

# Chess
MitchellGray100@gmail.com
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](https://github.com/MitchellGray100/Chess/blob/main/readMeImages/Chess%20Title%20Screenshot.PNG)

Start of game

![Image of Start of Game](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/Photo1.PNG)

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

![Display of Yellow Dots](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/Photo2.PNG)

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](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/Photo3.PNG)

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](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/Photo4.PNG)

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](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/Photo5.PNG)

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

![Red Text saying black won the game](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/Photo6.PNG)

Backend Representation of the game (Not the actual GUI)
![Image of Start of Game](https://raw.githubusercontent.com/MitchellGray100/Chess/main/chess%20board%20for%20github%208.0.png)

# GIFs



Scaling of the window.

![Window Growing and Shrinking](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/ScalingGIF.gif)

Promotion buttons being clicked. Whatever button is selected is what the pawn will promote to when promoting.
![Promotion Buttons switching](https://raw.githubusercontent.com/MitchellGray100/Chess/main/readMeImages/ChessGIF.gif)