Crafty – computer chess program

Crafty is a strong chess program. It is a chess engine, and concerns itself with playing chess and not with providing a graphical user interface. This means that Crafty is typically invoked indirectly by using a chess client.

Crafty uses all of the search algorithms you have probably read about and performs better than gnuchess in most positions. It has a good set of features to use, and offers a great starting point to try your own new search extensions.

Crafty is the son of Cray Blitz, also written by Bob Hyatt.

Features include:

  • Flexible and powerful command-line interface.
  • Uses the Chess Engine Communication Protocol.
  • Rotated bitboard data structures.
  • Supports multiple processors.
  • Negascout search.
  • Static exchange evaluation.
  • Alpha-beta pruning.
  • Transposition table.
  • Refutation table.
  • Evaluation cache.
  • Recursive null-move search.
  • Killer/history move ordering.
  • Quiescence move ordering and pruning.
  • Opening book.
  • Positional learning. Crafty learns from experience, and makes appropriate modifications to its opening book. The “book” command allows generation of an opening book (from PGN data), and customization of how it is used. The learning facilities synthesize several different approaches, and allow various ways for the user to customize and follow what is being learned.
  • Supports endgame tablebases; precompiled tablebases in the appropriate format are freely downloadable.
  • Polished facilities for internet play.
  • Annotation – generate PGN or HTML files.
  • Informative log files.

Developer: Robert Hyatt
License: Open source


Crafty is written in C. Learn C with our recommended free books and free tutorials.

Return to Chess Home Page | Return to Games Home Page

Read our complete collection of recommended free and open source software. The collection covers all categories of software.
Share this article

Share your Thoughts

This site uses Akismet to reduce spam. Learn how your comment data is processed.