New Engine: Juggernaut
I’m pleased to announce my new chess engine — Juggernaut. The name is somewhat tongue-in-cheek as Juggernaut is written in Delphi 64-bit, which does not product the fastest executable. Nevertheless, Delphi is my “mother tongue” and I simply wanted to develop a Delphi chess engine.
Juggernaut 1.0 Objectives:
- Create a rock-solid Delphi chess engine, capable of playing ultra-fast games (tested at game in 0.5 sec + 0.05 sec increments)
- Multi-PV and multi-threaded capable — this is a first for me (Juggernaut is certainly the weakest multi-threaded engine, and one of the weakest chess960 engines)
- Support all aspects of the UCI protocol including: UCI_CurrLine, UCI_Refutations
- Chess960 support
- The initial engine is intentionally super-simple:
- Simple piece-square table evaluation
- A basic alpha-beta and quiescent search
- Move ordering of hash move, captures (mvv/lva), then quite moves sorted by history table — that’s it!
- There are zero extensions, no check extensions, no killer moves, no null move, no singularity extensions, no static exchange evaluators, no history reductions
- Own opening book support
- Can consume Polyglot opening books
- UCI options to select which book is used
- Opening book is loaded into memory for faster access
- Opening book randomness parameter: 0.5 uses opening book weights; 0.0 always plays the move with the highest weight; 1.0 weighs all moves equally.
Download here: Juggernaut 1.00 (estimated strength of 2100 ELO on the CCRL scale)
Juggernaut 2.0 Objectives:
- Adding all the normal search enhancements
- Add aggressive mate-search extensions similar to those in The King by Johann de Konnig
Juggernaut 3.0 Objectives:
- Use generic algorithm to evolve an optimum search
Juggernaut 4.0 Objectives:
- Switch the evaluation to a NNUE approach





