[d]8/6QP/8/8/5k2/8/8/K2q4 w - - 0 1
SF default shows drawish score at depth 9 and 12.
If I disable pruning (always return false in ok_to_prun()) I see a 0.00 score at depth 25, 26 and 27. If I additionally disable razoring I see 0.00 score at depth 18 and 19.
But if I only remove this code in qsearch()
search.cpp, line 1657
Code: Select all
if (bestValue >= beta)
{
// Store the score to avoid a future costly evaluation() call
if (!isCheck && !tte && ei.futilityMargin[pos.side_to_move()] == 0)
TT.store(pos.get_key(), value_to_tt(bestValue, ply), VALUE_TYPE_EV_LO, Depth(-127*OnePly), MOVE_NONE);
return bestValue;
}
I have not much time at the moment to analyse and debug SF, so I just write what I've found so far.
Any thoughts about this issue?