Skip to content

LazoCoder/Chess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chess

The classic strategy board game. Supports both player vs player and player vs AI. The AI uses a tweaked mini-max algorithm with alpha-beta pruning and can be set to go up to 4 ply in a reasonable amount of time.

Features

Left click selects and moves the chess pieces. Right click un-selects a chess piece.

alt-tag

F1 toggles piece transparency when hovered on. This is for distinguishing overlapping pieces.

alt-tag

F3 toggles displaying possible locations a piece can move to.

alt-tag

The other features can be seen in the readme.txt.

Custom Board

Move the mouse over a tile and press the first letter of a piece to place it. Press T to toggle the team.

alt-tag

Press H to see the help menu for details on how to use the custom board creator.

alt-tag

Press enter to start the game with the custom board.

The following board:

alt-tag

Becomes this after pressing enter:

alt-tag

Usage

Usage:
  java Controller.Window [mode] [ply] [custom]

Parameters:
  [mode]     'pvp' for Player vs. Player.
             'avp' for Player vs. AI.
  [ply]      Numerical value for the AI's ply.
             This value is ignored for pvp mode.
  [custom]   'true' to create a custom board.
             'false' to go with the default board.

Examples:
  java Controller.Window avp 4 false
  java Controller.Window pvp 0 true

Bugs

Having some issues with detecting stalemates.

Releases

No releases published

Packages

No packages published

Languages