v0.15.0
-
π Exclude promotions from killer moves and take them into account in move ordering (#302)
-
π Enhance depth extension on check (#313)
-
π Increase
MaxDepth
default value to 128 (#292) -
π Add
ToggleBits
method and use it in Make/Unmake moves (#324) -
π Replace
!_isFollowingPV
LMR condition with!pvNode
(#312) -
β‘ Move to .NET 8 (#291)
-
β‘ Implement make/unmake move instead of allocating a new
Position
(#321) -
β‘ Avoid passing
Game.CurrentPosition
reference down search methods (#322) -
β‘ Change threefold repetition detection to 2 repetition detection (#296)
-
β‘ Use
Bmi1.X64.TrailingZeroCount
andPopcnt.X64.PopCount
hardware intrinsics (#330) -
β‘ Don't reload config on file changes (#299)
-
β‘ Disable NLog autoreload (#329)
-
β‘ Make NLog targets
async
(#331) -
β Simplify time management (#288).
This makes this release the first cutechess-friendly one, which means no timeouts when tested with short tc (10+0.1, 8+0.08, etc.) -
π Fix TT probing condition and TT moves score (#298)
Non strength-winning changes:
- π Fix nlog concurrency issue when accessing log files (#286)
- π Fix overflow that was causing negative
hashfull
numbers in uciinfo
commands (#307) - π Fix PV table bug which keeps extra moves in PV after the move where a draw is detected (#297)
- π Fix illegal moves potentially sent when the previous search line is hit (#294, #295)
Full Changelog: v0.14.1...v0.15.0