I’ve written a chess software in Python which use Stockfish via this library: https://pypi.org/project/stockfish/
The software works and plays well. Too well actually…
Mi idea was the app can offer a level / ELO choice, but I just can’t scale it down. It doesn’t matter if I use Stockfish or Fairy Stockfish seemingly none of the parameters has any effect, especially not the “Skill Level” or “Elo Parameter”.
I tried multiple combination it’s only an example:
params = {
"Debug Log File": "",
"Contempt": 0,
"Min Split Depth": 0,
"Threads": 2, # More threads will make the engine stronger, but should be kept at less than the number of logical processors on your computer.
"Ponder": False,
"Hash": 512, # Default size is 16 MB. It's recommended that you increase this value, but keep it as some power of 2. E.g., if you're fine using 2 GB of RAM, set Hash to 2048 (11th power of 2).
"MultiPV": 1,
"Skill Level": 1,
"Move Overhead": 10,
"Minimum Thinking Time": 20,
"Slow Mover": 100,
"UCI_Chess960": False,
"UCI_LimitStrength": True,
"UCI_Elo": 1000
}
#stockfish = Stockfish(path="/usr/games/stockfish", parameters = params)
stockfish = Stockfish(path="/home/python/chess/fairy-stockfish_x86-64", parameters = params)
Documentation(https://pypi.org/project/stockfish/) says:
i think what controlls the difficulty might be the
depth=18parameter.