Yes, Shredder is praised for having a good implementation of UCI_LimitStrength and UCI_Elo, but I don't have the program. Even if it is very good, I can't use the options in the Fritz GUI, and the Shredder GUI is less reliable (but workable) with the DGT board than the Fritz GUI.Bill Forster wrote: ↑Sun Jun 07, 2020 1:45 am I remember doing some experiments a while ago (I am away from my office and can't check) and I also found Rybka didn't really implement the Elo limiting convincingly. I think there's something in the Tarrasch FAQ about it. I was surprised and happy to beat it so easily at 1200 . To be fair, simulating amateur chess convincingly is not a trivial problem I suppose. I seem to recall Shredder is praised for doing a good job in this area?
I remain pleased with my suggested solution. It's not guaranteed to work with every engine, but there's a very good chance. And it's a lot easier than setting up for recompilation etc.
Your solution is a good one for commercial programs, but I don't see the need to hack an exe if I have and can compile the source code.
Today I have tested with Arasan 22.0 by Jon Dart. I've changed UCI_LimitStrength and UCI_Elo to eng_LimitStrength and eng_Elo in the source, recompiled, and tested in Fritz 17 and 11. It works. This proves that the Fritz GUI filters and hides the UCI_* options on purpose, because I can't believe that this is an oversight or bug that has been in there for 13+ years.
At Elo 1000, Arasan is *really* easy to defeat, but it doesn't 'give' you pieces outright like some engines do (such as making a losing capture on purpose). It does things such as 'missing' tactical stuff such as not seeing that it can lose a rook through a skewer.
My test has been very short; just a few games, but preliminary results feel as if Arasan is n engine with a good LimitStrength implementation.