https://github.com/ddugovic/Stockfish
Bardzo aktywny rozwój, jest to wersja Sztokfisz używana przez lichess.
Musisz przeszukać to makro:
#ifdef THREECHECK
Funkcja oceny:
https://github.com/ddugovic/Stockfish/blob/master/src/evaluate.cpp
Czeki dają dodatkową premię w przeciwieństwie do zwykłych szachów:
if (pos.is_three_check())
score += ChecksGivenBonus[pos.checks_given(Us)];
pos.checks_given
podaje liczbę już wykonanych kontroli. ChecksGivenBonus
to tablica wartości premii.
Wartości bonusowe to:
S(444, 181), // first check
S(2425, 603), // second check
444
jest premią za otwarcie / grę środkową i 181
jest premią za grę końcową . Bonus za drugi czek jest znacznie większy.
Nie jestem pewien, czy ocena pozycji w ramach trzech kontroli jest trudna. Widzę, że parametry się zmieniły, poprawiło się bezpieczeństwo króla, ale ogólna struktura jest identyczna jak w zwykłych szachach.