Deep Becky - UCI chess engine
Author: Diogo de Oliveira Almeida
Author: Diogo de Oliveira Almeida
Deep Becky was born from a simple question: "Can AI create a functional UCI chess engine from scratch?"
Development began around July 2025 using conversations with ChatGPT to create the C++ code. The AI wrote 100% of the code while I provided guidance, testing, feedback, and strategic decisions about next steps.
The path was quite challenging - copying code from chat conversations to Notepad, attempting to compile, facing countless compilation errors, and when it finally compiled, dealing with recognition issues in Fritz. After many attempts and corrections, going through engines that weren't recognized, didn't make moves, or made illegal moves, I finally achieved functional code that respects all chess rules.
Deep Becky 1.0 what's new?
Deep Becky 1.0 is a major upgrade over version 0.2, with a deep internal rewrite focused on strength and speed.
Highlights
- Migrated from
8x8 arrayboard to full bitboard representation - Added Magic Bitboards for sliding-piece attacks
- Faster bitboard move generation and improved in-search legality checks
- Search improvements: Null Move Pruning, improved LMR, and Delta Pruning in quiescence
- Added full PV extraction/output
- Switched to incremental Zobrist hashing
- Much richer evaluation:
- proper tapered MG/EG blend
- pawn structure (doubled / isolated / passed)
- rooks on open/semi-open files
- knight outposts
- king safety (pawn shield + king ring pressure)
- tempo bonus and 50-move damping
- Professional build system with LTO + PGO and profiles:
portable,avx2,bmi2,native - Refactored into multi-file architecture (
engine,search,movegen,eval,magic, etc.)
Result
These changes significantly increase NPS and allow deeper searches in the same time, improving practical playing strength compared to v0.2.
Build Notes
- MSYS2 MinGW-w64:
make,make PROFILE=bmi2,make profile-build ... - Windows CMD + MinGW:
mingw32-make - MSVC supported via
cl+/LTCG

Comments
Post a Comment