SkillAgentSearch skills...

Bbc

Bit Board Chess (BBC) - The easiest to understand bitboard chess engine by Code Monkey King

Install / Use

/learn @maksimKorzh/Bbc
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

BBC (Bit Board Chess) + Stockfish NNUE!

  • UCI chess engine by Code Monkey King<br>
  • written for didactic purposes<br>
  • covered in 95 YouTube video series

Subscribers' projects based on BBC

KhepriChess by Kurt1288: https://github.com/kurt1288/KhepriChess (TypeScript)<br> KittyEngine by UnboxTheCat: https://github.com/evanhyd/KittyEngineV4 (C++)<br> Soomi by Otto Laukkanen: https://github.com/Koma1867/Soomi-V1-Chess-engine-in-golang (Golang)<br> Chal by Naman Thanki: https://github.com/namanthanki/chal

Project sponsors

  • Eduardo Cáceres

Play BBC online

IMAGE ALT TEXT HERE

Final release

IMAGE ALT TEXT HERE

YouTube tutorials

IMAGE ALT TEXT HERE

Final version CCRL rating is <a href="https://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=BBC%201.4%20Stockfish%20NNUE%2064-bit#BBC_1_4_Stockfish_NNUE_64-bit">2937 ELO</a>

  • BBC 1.4 + SF NNUE FINAL VERSION <a href="https://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=BBC%201.4%20Stockfish%20NNUE%2064-bit#BBC_1_4_Stockfish_NNUE_64-bit">2937 Elo</a>
  • BBC 1.3 + SF NNUE (<a href="http://talkchess.com/forum3/viewtopic.php?f=6&t=75536">2700+ Elo</a>)
  • BBC 1.2 <a href="https://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?match_length=30&each_game=1&print=Details&each_game=1&eng=BBC%201.2%2064-bit#BBC_1_2_64-bit">1993 ELO</a>
  • BBC 1.1 <a href="https://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?print=Details&each_game=1&eng=BBC%201.1%2064-bit#BBC_1_1_64-bit">2096 ELO</a>
  • BBC 1.0 <a href="https://www.computerchess.org.uk/ccrl/404/cgi/engine_details.cgi?print=Details&each_game=1&eng=BBC%201.0%2064-bit#BBC_1_0_64-bit">1957 ELO </a>

Features

  • own online <a href="https://github.com/maksimKorzh/uci-gui">GUI</a>
  • bitboard board representation
  • pre-calculated attack tables
  • magic bitboards for sliding pieces
  • encoding moves as integers
  • copy/make approach for making moves
  • negamax search with alpha beta pruning
  • PV/killer/history move ordering
  • iterative deepening
  • PVS (Principle Variation Search)
  • LMR (Late Move Reduction)
  • NMP (Null Move Pruning)
  • razoring
  • evaluation pruning / static null move pruning
  • Transposition table (up to 128MB)
  • PURE Stockfish NNUE evaluation + 50 move rule penalty
  • UCI protocol

Credits

This project would never be completed<br> without the help of Talk Chess forum<br> community members who has been helping me<br> during the development process significantly<br> I would like to thank to:<br> <br>

  • HaraldLuessen & Pedro Castro Elgarresta for neverending hints and technical support
  • Sven Schüle for explaining how mating scores works in TT (in great details!)
  • Jay Warendorff for testing development versions of BBC<br>
  • Marcel Vanthoor for teaching me linear algebra and general inspirations
  • Ronald Friederich for providing PeSTO evaluation tables and sharing his ideas
  • Gabor Szots from CCRL for testing & rating BBC
  • Silvian R. for running private tests
  • Chris Rea for testing and fixing bugs
  • Brendan J. Norman for creating logo for BBC
  • Daniel Shawul for providing NNUE probe library <br>

And all the subscribers watching my videos and<br> motivating me to keep the development!<br>

Test matches

<a href="https://github.com/maksimKorzh/bbc/tree/master/pgn">Get PGN games</a>

Support the project

<a href="https://www.patreon.com/code_monkey_king">Become a Patron!</a>

View on GitHub
GitHub Stars104
CategoryDevelopment
Updated24d ago
Forks18

Languages

C

Security Score

95/100

Audited on Mar 8, 2026

No findings