Body: <p>I've managed to get the Stockfish engine working using python-chess.  I'd like to play with the skill levels of Stockfish, but need some info.  My code below uses the 'skill level' <a href="https://python-chess.readthedocs.io/en/latest/engine.html#options" rel="nofollow noreferrer">option</a> but after an internet search I can't really find much about what it does.  I just know it takes an integer between 1 and 20 with 20 being the highest.</p>
  <pre><code>engine.configure({&quot;Skill Level&quot;: skill_level})
  result = engine.play(board, chess.engine.Limit(time=timelimit))
  move_is = result.move
  </code></pre>
  <p>Can anyone shed any light on what the skill level does?  Is it better to just allow more 'thinking time' to get a higher skill level or is the 'skill level' option better?</p>
  
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-06-16T19:17:29.927Z
Comments.Text: Related but outdated from Stockfish 2.1 Release:  "In this release a new skill level facility has been introduced. Stockfish can be set to skill level 20 (default) to play at maximum strength or, through setting the 'Skill Level' UCI option, can be lowered until 0 when should be beatable even by weak players" [(source)](https://stockfishchess.org/blog/2011/stockfish-2-1/).
Comments.UserDisplayName: SecretAgentMan
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-06-16T19:21:50.827Z
Comments.Text: Also related: https://github.com/official-stockfish/Stockfish/discussions/4434
Comments.UserDisplayName: SecretAgentMan
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-06-16T21:41:30.867Z
Comments.Text: You may want to take a look here https://github.com/official-stockfish/Stockfish/pull/2225/files. Recently there has been some change in skill level calibration (in stockfish development version).
Comments.UserDisplayName: chesskobra
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-06-16T23:50:16.553Z
Comments.Text: Sorry, wanted to point to this commit: https://github.com/official-stockfish/Stockfish/commit/a08b8d4 The one in my comment above is the older one.
Comments.UserDisplayName: chesskobra
Comments.ContentLicense: CC BY-SA 4.0
Comments.CreationDate: 2024-06-18T11:48:16.943Z
Comments.Text: Giving Stockfish more time is a reliable way to improve its play. But if you want to make it play _worse_, I would say setting a low skill level is more reliable than reducing its time, because if the time you give it is too short, operating system overheads can become a relevant factor.
Comments.UserDisplayName: TonyK
Tags: <engines><stockfish>
Title: Stockfish engine - how to modify skill level?
ThreadText: # Stockfish engine - how to modify skill level?
  
  (Asked by: username_0 on 2024-06-16)
  
  I've managed to get the Stockfish engine working using python-chess. I'd like to play with the skill levels of Stockfish, but need some info. My code below uses the 'skill level' [option](https://python-chess.readthedocs.io/en/latest/engine.html#options) but after an internet search I can't really find much about what it does. I just know it takes an integer between 1 and 20 with 20 being the highest.
  
  ```
  engine.configure({"Skill Level": skill_level})
  result = engine.play(board, chess.engine.Limit(time=timelimit))
  move_is = result.move
  
  ```
  
  Can anyone shed any light on what the skill level does? Is it better to just allow more 'thinking time' to get a higher skill level or is the 'skill level' option better?
  
  **Tags:** engines, stockfish
  
  > **Comments:**
  > **username_1**: Related but outdated from Stockfish 2.1 Release:  "In this release a new skill level facility has been introduced. Stockfish can be set to skill level 20 (default) to play at maximum strength or, through setting the 'Skill Level' UCI option, can be lowered until 0 when should be beatable even by weak players" [(source)](https://stockfishchess.org/blog/2011/stockfish-2-1/).  
  > **username_1**: Also related: https://github.com/official-stockfish/Stockfish/discussions/4434  
  > **username_2**: You may want to take a look here https://github.com/official-stockfish/Stockfish/pull/2225/files. Recently there has been some change in skill level calibration (in stockfish development version).  
  > **username_2**: Sorry, wanted to point to this commit: https://github.com/official-stockfish/Stockfish/commit/a08b8d4 The one in my comment above is the older one.  
  > **username_3**: Giving Stockfish more time is a reliable way to improve its play. But if you want to make it play _worse_, I would say setting a low skill level is more reliable than reducing its time, because if the time you give it is too short, operating system overheads can become a relevant factor.  
  
  ---
  
  ## 0 answers
  
  