Skip to content

Final Project in Design Analysis and Algorithms course

Notifications You must be signed in to change notification settings

JulianaMancera/Corgi-Chess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Corgi Chess

    The Corgi Chess is a adaption of a traditional chess game that employs the Generate and Test Algorithm to facilitate move generation, validation, and evaluation. It has features such as delightful cute-themed pieces and a charming 8x8 board. The objective is to checkmate the opponent's corgi king, securing victory in the realm of canine strategy.

How to Play the Game?

  • Begin by downloading and extracting the provided zip folder.
  • Find and Run the ChessMain class.

image

image

Generate and Test Search Algorithm

  • As the final project in the Design and Analysis of Algorithms course, this game shows the implementation of Generate and Test Search, which is commonly used for decision-making when an exhaustive search of all possible moves is impractical due to the game's complexity.

Move Generation

  • The game algorithm dynamically generates all possible moves for each player based on the current board configuration, meticulously adhering to each piece's unique movement rules.

Move Validation

  • The algorithm carefully verifies each one to make sure it complies with chess rules, blocking moves that might threaten a player's king or break other rules of the game.

Move Evaluation

  • The algorithm evaluate every move's strategic value, taking into account several aspects like material gain, piece mobility, and king safety. This allows the game to make educated choices as it progresses.

Chess Piece Move Rules

  • KING - Moves one square in any direction.
  • QUEEN - Moves any number of squares diagonally, horizontally, or vertically.
  • ROOK - Moves any number of squares horizontally or vertically.
  • BISHOP - Moves any number of squares diagonally.
  • KNIGHT - Moves in an ‘L-shape,’ two squares in a straight direction, and then one square perpendicular to that.
  • PAWN - Moves one square forward, but on its first move, it can move two squares forward. It captures diagonally one square forward.

Contributors (2BSCS-1)

Programmers Github Profile
Juliana R. Mancera [https://github.com/Julsaurus]
Etienne V. Banquil [https://github.com/AintFritZ]
Aliyah Aira A. Llana [https://github.com/AliyahAira]

About

Final Project in Design Analysis and Algorithms course

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages