Skip to content

jesuscuevas/chess

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

chess

A simple chess engine written in C++ that conforms to the rules of chess as defined by FIDE (with the exception of a few unimplemented rules related to draws - see Planned Features for more information). The engine supports two game modes (player vs. player and player vs. engine - although currently this must be configured manually in the source code) and games can be played from the classical starting position or from a custom position specified in an FEN file. The engine uses alpha-beta pruning with captures-first move ordering and does a material count and pawn structure evaluation to evaluate heuristic nodes. It reads and displays move descriptions in algebraic notation.

Planned Features

  1. Draw by insufficient material.
  2. Transposition table and iterative deepening.
  3. Support for PGN file imports.
  4. Support for FEN and PGN file exports.
  5. Separate play and evaluation/analysis modes.
  6. Improved text formatting (libncurses).

Usage

make
./chess [options]

About

A simple chess engine in C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published