|
BenBot 1.7.2
A chess engine
|
This is a command-line chess playing program, designed to be used with a chess GUI.
We are currently using a handcrafted evaluation, and our search function is still in its early days. The engine's ELO is approximately 1700-1800.
libchess/libbenbot/ben-bot/ is the actual engine executableSee each subdirectory's readme for details.
Building or using ben-bot, libbenbot or libchess requires CMake and C++23.
All dependencies are fetched via FetchContent, so everything should "just work" out of the box.
CMake presets are provided for IDE integration, but are not mandatory. Using the presets will enable some default warnings (defined in config/Warnings.cmake).
Notes on building:
clang requires -stdlib=libc++, without this flag clang can't find std::expected (this is added automatically by the clang configure preset)gcc, at least version 14 is requiredOur automated CI & releases include the following builds:
| OS | Compiler | Notes |
|---|---|---|
| Ubuntu | Clang | Also built with ASAN & UBSAN |
| Ubuntu | GCC | Collects test coverage information |
| Windows | Clang | |
| Windows | MSVC | |
| MacOS | Clang | Builds universal binary |
BENBOT_DOCS: controls whether docs are built (defaults to off unless this is the top-level project)BENBOT_TESTS: controls whether tests are built (defaults to off unless this is the top-level project)Special thanks to the following open source chess projects, which have provided guidance and inspiration (in no particular order):