Wednesday, 22 June 2016

Improving the Novag Citrine Interface

I have improved my Novag Citrine interface. I have added a pull-down menu to choose between playing against a PC based engine, or the on-board Citrine engine at various levels of play. The pull-down menu curently offers the strongest "Beginner" level BE1, and the eight "Average Time" levels AT1 to AT8. I have coloured the start/stop button light green when it is showing "Start Engine", and pink when it is showing "Stop Engine". This is how the window looks now:

The program now writes the options available for PC engine to the console on start-up. Here is the table for Stockfish 7:

Engine Option         Type    Default Min    Max     Var
Clear Hash            button  ''      None   None  
Contempt              spin    0       -100   100  
Hash                  spin    16      1      1048576
Minimum Thinking Time spin    20      0      5000  
Move Overhead         spin    30      0      5000  
MultiPV               spin    1       1      500  
Ponder                check   False   None   None  
Skill Level           spin    20      0      20    
Slow Mover            spin    84      10     1000  
Syzygy50MoveRule      check   True    None   None  
SyzygyPath            string   None   None    
SyzygyProbeDepth      spin    1       1      100  
SyzygyProbeLimit      spin    6       0      6    
Threads               spin    1       1      128  
UCI_Chess960          check   False   None   None  
Write Debug Log       check   False   None   None  
nodestime             spin    0       0      10000

These options can easily be changed from within Python, e.g.:

engine.setoption({'Skill Level' : 0})

This certainly works - Stockfish plays rubbish on Skill Level 0. The code can be found here. [Updated 5 July 2016.]


  1. Hi,
    Can you provide a link to the source code as a .py file please? My editor is producing indent errors when I paste the source code in from the webpage.

  2. I do not know how to do that. Try copying the text from the webpage to the clipboard, and pasting the clipboard into gedit or notepad. That should strip out any formatting. The indentation looks fine to me.