www.free.of.pl/c/ccintorun/g/sting.rar.
In my intention, Sting should "immediately" find some very difficult for engines and
obvious (often, but not always) for a human sacrifices, thus should return much more reliable analysis.
It works exactly like Stockfish, but with an added sensitive (option) detection of good sacrifices (in midle-game and endgame).
All changes in code don't clash with the Stockfish's source code,
and because it is advisable to use my idea on high depths (or "disabled" in option), a possible drop of strength (good compilation), even if it is impossible to get a profit from this in play, can be a few points only.
My compilation of the beta version is very unprofessional, thus the beta is slower than Stockfish 1.8.
But, of course, the main goal of this (I HOPE I AM WRONG) is other than ELO points.
Sting works with an option: "Sacrifice detection" 0 - 8 (0 = disabled, default = 8).
Have a good time with Sting!
Sting can very quickly (P-IV, 2-threads, Sacrifice detection = 8), find winning sacrifices in such positions:
[d] 3N2r1/2K1p3/4Pk2/8/Bp5b/8/2P5/8 b - - 0 1
1... Bg3+ 2.Kd7 Rxd8! -+
Code: Select all
26 01:41 81.978.400 808.664 +13,61 Bh4g3+ Kc7d7 Rg8xd8+ Kd7xd8 Kf6xe6 Kd8e8 Ke6d6 Ke8f7 e7e5
1...Rxb3! -+
Code: Select all
25+ 00:34 23.415.551 671.702 +2,66 Rb6xb3+ Kc3xb3 Ra7b7+ Kb3c2 Rb7b2+ Kc2c1 Rb2e2 Bb1c2 Re2xe3
1...Qf3+ 2.Ke1 Qxc3! -+
Code: Select all
30 00:54 55.452.602 1.021.282 +15,88 Qh5f3+ Kf1e1 Qf3xc3 d2xc3 Rg7d7 Ke1f1 Kh8g7 Kf1e2 Rd7d3
1...Qxh7+! -+
Code: Select all
21+ 00:04 2.849.424 646.714 +10,01 Qh1xh7+ Kg7xh7 Kf5xg5 Ba3e7 Kg5h4 Be7c5 Kh4h5 Bc5d6 g6g5
e.g. 1...Qh1 and 2...Qxh7! (or Qxg5 after ....)
Code: Select all
25+ 00:09 4.968.051 517.828 +8,64 Qb7h1 Ba3b2 Qh1xh7+ Kg7xh7 Kf5xg5 Bb2c3 Kg5h5 Kh7g7 g6g5
1...Rb5 2.Bf6 Rf5 3.Bc3 Rxg5! -+
Code: Select all
26+ 00:54 45.214.181 823.708 +8,02 Rb7b5 Bc3f6 Rb5f5 Bf6c3 Rf5xg5 Nh6f7+ Kh8g8 Nf7xg5 Rg7b7
Especially, the last position is worth a special recommendation, but the others too.
For many positions the option Sacrifice detection = 8 can be too hight. E.g.
[d] rk6/p1p5/Bp2p3/1P6/q2B1P2/4K3/8/8 b - - 0 1
wins 1...Qxa6 or 1...Qxd4 (Sacrifice detection = 4)