Mufasa (wordplay on soundalike phrase "move faster") is a fast single threaded bitboard chess engine written in C++17 with the help of CMake and GTest framework.
Mufasa's move generator can traverse over 80,000,000 nodes (moves) per second during bulk counted perft.
Make sure you have C++17 and CMake installed on your desktop.
Clone the repository and run
cmake . -DCMAKE_BUILD_TYPE=Release ; cmake --build .
If you want to compile the binary with tests run
cmake . -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTS=ON ; cmake --build .
If you have an issue with move generation, search results or compilation feel free to report it on the issue tracker.
If you want to submit a pull request make sure you provide a clean description of your addition and a test suite if applicable.
- Bitboard representation
- Magic tables for sliding pieces
- Precomputed tables for other pieces
- Negamax with A/B pruning
- Quiescence search
- Transposition tables
- Iterative deepening
- Aspiration windows
- TT-move ordering
- MVV-LVA ordering
- Material counting
- Piece Square Tables
- Gamephase based time management
Mufasa uses GNU GPLv3, which means you can do anything with the project, except distributing closed source versions.
Sirgaliyev Alikhan (C)