I haven’t been lazy since the last stable release of Knights. Three highly-awaited but not difficult features have made their way to feature branches and will be included in the next release.
Saving and loading the move history
Knights can now save a finished or in-progress game to a file using the PGN notation, so that users our other programs can load and analyze the game. Such files can also be opened, in which case the saved moves are replayed.
I am also planning to add a view of the game history, probably a simple list at first.
UCI protocol support
Many chess engines, most notably Stockfish, make use of the Universal Chess Interface. The basic operation of passing moves between the engine and the interface works, but I’m still working on other features (pretty much only draw offers).
Chess engines usually don’t have any explicit hard or easy modes, but you can limit their search depth. Having the computer only consider a small number of moves on advance makes its game weaker. It is also possible to reduce the size of the program’s memory hash, further reducing its strength. Fortunately, both XBoard and UCI support this setting, so there is no need for differentiation.
I decided that keeping a stable master and developing in feature branches is the easiest approach for me. So this work is still in branches ‘pgn’ and ‘uci’. I will merge them into master as soon as all translatable strings are fixed.
I would be especially happy for any testing and input regarding the difficulties (currently still in branch ‘uci’, will be merged real soon), are they too easy, too hard? Are they noticeable at all? I’m not a good player, so it’s hard for me to rate the skill of engines.
Update: I merged both branches into master.