ChessGame is a digital rendition of the classic chess game, designed to encapsulate the essence of chess within a digital environment. Developed by [CodePlay] team members Eddie Xu, Jeffery M Joseph, and Samuel Park under the guidance of Professor Mirela Gutica for the BCIT Comp 3951 - Technical Programming Option, Winter 2021.
ChessGame belongs to the abstract strategy genre and offers a two-player interactive experience. It faithfully adheres to established chess rules, supporting all canonical moves and game-ending conditions like checkmate and draw.
Currently, ChessGame is designed to run on Windows environments. To set up ChessGame: Download Microsoft Visual Studio 2022. Ensure you have .NET Framework >=4.7.2 installed on your machine. Clone the repo into your folder of choice. RUN the program.
Every piece moves according to standard chess rules, including special moves like castling.
The game allows for interactive play using mouse-based inputs for moving pieces.
Records and displays each move in standard algebraic notation.
Players can customize the chessboard's background colors using sliders.
Comprehensive testing strategies ensure robust performance and adherence to game rules.
The ChessGame project includes a detailed testing plan based on properties like game field appearance, piece movement, player turn enforcement, and special moves validity. Testing scenarios cover game initialization, piece validation, and endgame conditions.
Tests confirm the correct initialization and reset of the game field.
Validation ensures correct player turn enforcement and endgame detection.
Special moves like castling are tested for validity under appropriate conditions.
Movement notation is correctly recorded and displayed.
The chessboard color customization feature is validated for user preferences.
We welcome contributions and suggestions to ChessGame!
For further inquiries or suggestions, please contact us at:
Eddie Xu: [wxu55@my.bcit.ca] Jeffery M Joseph: [jefferymjoseph@gmail.com] Samuel Park: [sampark1080@gmail.com]