Skip to content

Latest commit

 

History

History
48 lines (39 loc) · 1.97 KB

README.md

File metadata and controls

48 lines (39 loc) · 1.97 KB

CRUD Command Line Chess Game


By Alex Wang ([email protected])

Installation Instructions:

To get a local copy up and running follow these simple steps. Clone the project https://github.com/AlexWang18/Chess.git

# To start a match  
java -jar target/test-classes/domain/chess-1.jar

Features:


Allows for PvP games using standard chess rules and no rules alike. Simply enter the letter and number of the piece you want to move and the coordinates you want to move to. Comes with castling, pawn promotion, and En Passant Has robust error detection that prevents the match from crashing.

Starting

Welcome to CL Chess! What style of rules do you want to play? Classic, Silly, or None classic Let's begin 1 ♖ ♘ ♗ ♕ ♔ ♗ ♘ ♖
2 ♙ ♙ ♙ ♙ ♙ ♙ ♙ ♙
3 - - - - - - - -
4 - - - - - - - -
5 - - - - - - - -
6 - - - - - - - -
7 ♟︎ ♟︎ ♟︎ ♟︎ ♟︎ ♟︎ ♟︎ ♟︎
8 ♜ ♞ ♝ ♛ ♚ ♝ ♞ ♜
a b c d e f g h

Castling

En Passant

Promotion

ThreeFold repetition

What I've learned:

This was my first personal project spurred on from binging Queen's Gambit. I dabbled a bit in Regex, design patterns, Maven and the general principles of OOP in this project. It has definitely ingrained into me some useful lessons. For one having a plan with your idea is key and drawing out a UML can be especially useful. Another is to only work on a problem one at a time and finish that thoroughly before moving on. I've definitely also learned the importance of having readable and formatted code as was a pain to try to parse through some of my spaghetti code. Frequently when debugging I found myself writing more code instead of getting rid of the faulty ones. I could have definitely done a lot more differently with the high level implementation and perhaps added a GUI but I am overall pleased with how it turned out.

License:


https://www.gnu.org/licenses/gpl-3.0.html