v0.16.0
- Use standard
depth
concept inNegaMax
method (#377) - ⚡ Remove UCI
hashfull
command for performance reasons (#342) - ⚡ Force TT array to have a power of two length (#349)
- ⚡ TT entry
struct
alignment (#352) - ⚡ Remove explicit hardware intrinsics usage (#343)
- ⚡ Optimize divisions by power of two (#350)
- ⚡ Avoid opposite side offset calculation (#345)
- ⚡ Add
MoveGenerator.CanGenerateAtLeastAValidMove
(#360) - ⚡ Remove
MoveGenerator
methods fromPosition
(extra indirection) (#367) - ⚡ Check sliding pieces attacks last in
IsSquaredAttacked
(#369) - 🐛 Fix
IndexOutOfRangeException
whenply >= MaxDepth
(#348) - 🐛 Check maxDepth when
btime wtime
orMoveTime
go commands are provided (#361)
Non strength-winning changes:
- Make executables self-contained, without the need of
appsettings.json
(#362) - Parse cli arguments and use them as UCI commands (#370)
- Add warning when invalid fen parsed (#357)
- Remove non ascii char from standard output (#373)
- Add OpenBench support (#339, #372)
- Add Mnps to
perft
anddivide
outputs (#351) - 🐛 Fix perft
divide
(#347)
Full Changelog: v0.15.0...v0.16.0