From: Marco Costalba Date: Sun, 25 Jan 2015 18:22:43 +0000 (+0100) Subject: Simplify skill level and reduce ELO X-Git-Url: https://git.sesse.net/?p=stockfish;a=commitdiff_plain;h=ce0a95c2c013f4aa9d41a80b8f12f005fe162fcb;hp=8aa8608c2a30acc56c4bb4467309cef5089fb2bd Simplify skill level and reduce ELO This patch has two positive effects: - Retire a hackish formula and leave just a natural, simple and plain one. - Reduce strenght at very low level, but don't impact medium/high levels. Actually even at level 0, SF is still too strong for many beginners (this was reported many times for instance on Droidfish user comments on Google Play). Test on fishtest shows that ELO drop is around 170 ELO at level 0 (good!), 130 ELO at level 1 and smoothly reduces (as expected) until level 10 where the drop is just of 8 ELO. No functional change. --- diff --git a/src/search.cpp b/src/search.cpp index 0ce836f7..3c32c4bb 100644 --- a/src/search.cpp +++ b/src/search.cpp @@ -1393,10 +1393,6 @@ moves_loop: // When in check and at SpNode search starts from here { int score = RootMoves[i].score; - // Don't allow crazy blunders even at very low skills - if (i > 0 && RootMoves[i - 1].score > score + 2 * PawnValueMg) - break; - // This is our magic formula score += ( weakness * int(RootMoves[0].score - score) + variance * (rng.rand() % weakness)) / 128;