Leorik 2.4
This version keeps the evaluation of version 2.3 but has an improved search. The most notable addition is the use of a Static-Exchange-Evaluation (SEE) to skip bad captures in Quiescence search and to search moves with a bad SEE score at a reduced depth in the main search. This new version also includes a nice simplification: I removed Futility Pruning and made Null-Move Pruning the only remaining place where entire branches can be pruned because they are just 'too good' for one side. Futility pruning relied on the static evaluation of a position and didn't explore it further if this evaluation was way below alpha. I now use the same idea in my null-move pruning implementation: When a position's static evaluation is way above beta and close to the leaves then Leorik just returns beta without further evaluation.
Last but not least Leorik now recognizes certain drawn positions with a material advantage for one side (e.g. KvKNN) and evaluates them much closer to zero.
The playing strength of Version 2.4 should be around 2800 Elo.