Welcome to Certabo forum
Both posts in italian and in english are accepted on the forum to help everybody to provide contribution irrespective to geographical location. Object of the forum is to provide technical information on various items and help developer and users to personalise software for Certabo chessboards. User explicitly accepts the conditions of use of this forum here reported.
A brief introduction of user is always appreciated in section Welcome to….
Benvenuti nel forum di Certabo
Sul forum possono essere postati articoli sia in lingua italiana che inglese per permettere a tutti di dare il proprio contributo da diversi luoghi geografici. Il forum ha come scopo fornire informazioni tecniche in generale e aiutare gli sviluppatori ed utenti a personalizzare software per le scacchiere Certabo. L’utente accetta esplicitamente le condizioni del presente forum consultabili qui.
Un breve saluto del nuovo utente è sempre gradito nella sezione Benvenuti a….
Modded distribution of version 4.5 !!
Quote from Pietro on June 14, 2022, 7:20 pmQuote from tobias on June 12, 2022, 10:03 amHi Elia,
that there will be a DaVinci version sounds great. Surely it makes sense to wait here.
The underscore in the UCI parameter was changed again in the version 2.6.1, so the 2.6.1 should work. I now started a game with low ELO and the Dragon played really crazy, so the ELO-limitation seems to work but is not shown on the GUI. Nevertheless it seems to work.
And for the 2.6.1 version the ELO limit from 0 - 3500 is listed correct in engines_names.json. If I see it correct you choosed the range of limitation from 800 to 3000 ELO. But other engines have also a range outside these parameters, and they show correct the ELO limit in the GUI: Texel 018a18 goes from -216 !, Houdini 6 pro or Hiarcs 15.1 go also over 3000 ELO and there the ELO limitation up to 3000 is correct shown in the GUI.
On the end I copy the UCI options from Dragon 2.6.1
Just another problem occured while testing: I can´t start a game using an opening book. If I choose an opening book, after my move the first engine move is called as invalid and in the terminal occurs:
2022-06-12 10:37:42,334:main: ----invalid chess_engine move! ---- b8c6
2022-06-12 10:37:42,335:main:Exception: 'NoneType' object has no attribute 'bestmove'
Thanks again
Tobias
Here are the UCI-parameters from Dragon 2.6.1
id name Dragon 2.6.1 by Komodo Chess 64-bit
id author Don Dailey, Larry Kaufman, Mark Lefler, Dmitry Pervov, and Dietrich Kappe
option name NUMA Offset type spin default 0 min -1 max 32
option name Threads type spin default 1 min 1 max 256
option name Ponder type check default true
option name Hash type spin default 256 min 1 max 524288
option name Clear Hash type button
option name Table Memory type spin default 64 min 1 max 1024
option name MultiPV type spin default 1 min 1 max 218
option name OwnBook type check default true
option name Book File type string default komodo.bin
option name Book Moves type spin default 1000 min 0 max 1000
option name Best Book Line type check default false
option name Log File type string default <empty>
option name Hash File Name type string default <empty>
option name Save Hash to File type button
option name Load Hash from File type button
option name UCI_Chess960 type check default false
option name UCI_AnalyseMode type check default false
option name Use LMR type check default true
option name Null Move Pruning type check default true
option name Overhead ms type spin default 50 min 0 max 10000
option name Time Usage type spin default 0 min -90 max 90
option name Use Syzygy type check default true
option name SyzygyPath type string default <empty>
option name Syzygy Probe Depth type spin default 1 min 0 max 99
option name Syzygy Probe Limit type spin default 6 min 0 max 7
option name Syzygy 50 Move Rule type check default true
option name Smart Syzygy type check default false
option name King Safety type spin default 83 min 0 max 200
option name Selectivity type spin default 85 min 10 max 250
option name Reduction type spin default -20 min -500 max 50
option name Dynamism type spin default 100 min 0 max 400
option name Contempt type spin default 16 min -250 max 250
option name White Contempt type check default false
option name NNUE_Scale type spin default 70 min 10 max 500
option name Use Regular Eval type check default false
option name MCTS Hash type spin default 128 min 128 max 32768
option name Use MCTS type check default false
option name MCTS Explore type spin default 50 min 15 max 500
option name MCTS Explore Root type spin default 60 min 15 max 500
option name MCTS Optimism type spin default 10 min -50 max 50
option name WeightsFile type string default <empty>
option name Personality type combo default Default var Default var Aggressive var Defensive var Active var Positional var Endgame var Beginner var Human
option name Armageddon type combo default Off var Off var White Must Win var Black Must Win
option name Variety type spin default 0 min 0 max 100
option name UCI_Elo type spin default 3500 min 0 max 3500
option name UCI_LimitStrength type check default false
option name Auto Skill type check default false
option name UCI_Opponent type string default <empty>
uciok
Hi Tobias and all
Super Elia did quite a bit of adjustment and add on! We have recompiled with her fixing/addon please download again from the same link.
https://www.certabo.com/wp-content/uploads/SOFTWARE/Certabo_4.5_64bit_Modded_by_EliaI.zip
She also added random generation of 960 position so if you select just 960 it will start from random position if you select also play from position together 960 you can set your preferred 960 position. Have a try!
All the best
Pietro
Quote from tobias on June 12, 2022, 10:03 amHi Elia,
that there will be a DaVinci version sounds great. Surely it makes sense to wait here.
The underscore in the UCI parameter was changed again in the version 2.6.1, so the 2.6.1 should work. I now started a game with low ELO and the Dragon played really crazy, so the ELO-limitation seems to work but is not shown on the GUI. Nevertheless it seems to work.
And for the 2.6.1 version the ELO limit from 0 - 3500 is listed correct in engines_names.json. If I see it correct you choosed the range of limitation from 800 to 3000 ELO. But other engines have also a range outside these parameters, and they show correct the ELO limit in the GUI: Texel 018a18 goes from -216 !, Houdini 6 pro or Hiarcs 15.1 go also over 3000 ELO and there the ELO limitation up to 3000 is correct shown in the GUI.
On the end I copy the UCI options from Dragon 2.6.1
Just another problem occured while testing: I can´t start a game using an opening book. If I choose an opening book, after my move the first engine move is called as invalid and in the terminal occurs:
2022-06-12 10:37:42,334:main: ----invalid chess_engine move! ---- b8c6
2022-06-12 10:37:42,335:main:Exception: 'NoneType' object has no attribute 'bestmove'
Thanks again
Tobias
Here are the UCI-parameters from Dragon 2.6.1
id name Dragon 2.6.1 by Komodo Chess 64-bit
id author Don Dailey, Larry Kaufman, Mark Lefler, Dmitry Pervov, and Dietrich Kappe
option name NUMA Offset type spin default 0 min -1 max 32
option name Threads type spin default 1 min 1 max 256
option name Ponder type check default true
option name Hash type spin default 256 min 1 max 524288
option name Clear Hash type button
option name Table Memory type spin default 64 min 1 max 1024
option name MultiPV type spin default 1 min 1 max 218
option name OwnBook type check default true
option name Book File type string default komodo.bin
option name Book Moves type spin default 1000 min 0 max 1000
option name Best Book Line type check default false
option name Log File type string default <empty>
option name Hash File Name type string default <empty>
option name Save Hash to File type button
option name Load Hash from File type button
option name UCI_Chess960 type check default false
option name UCI_AnalyseMode type check default false
option name Use LMR type check default true
option name Null Move Pruning type check default true
option name Overhead ms type spin default 50 min 0 max 10000
option name Time Usage type spin default 0 min -90 max 90
option name Use Syzygy type check default true
option name SyzygyPath type string default <empty>
option name Syzygy Probe Depth type spin default 1 min 0 max 99
option name Syzygy Probe Limit type spin default 6 min 0 max 7
option name Syzygy 50 Move Rule type check default true
option name Smart Syzygy type check default false
option name King Safety type spin default 83 min 0 max 200
option name Selectivity type spin default 85 min 10 max 250
option name Reduction type spin default -20 min -500 max 50
option name Dynamism type spin default 100 min 0 max 400
option name Contempt type spin default 16 min -250 max 250
option name White Contempt type check default false
option name NNUE_Scale type spin default 70 min 10 max 500
option name Use Regular Eval type check default false
option name MCTS Hash type spin default 128 min 128 max 32768
option name Use MCTS type check default false
option name MCTS Explore type spin default 50 min 15 max 500
option name MCTS Explore Root type spin default 60 min 15 max 500
option name MCTS Optimism type spin default 10 min -50 max 50
option name WeightsFile type string default <empty>
option name Personality type combo default Default var Default var Aggressive var Defensive var Active var Positional var Endgame var Beginner var Human
option name Armageddon type combo default Off var Off var White Must Win var Black Must Win
option name Variety type spin default 0 min 0 max 100
option name UCI_Elo type spin default 3500 min 0 max 3500
option name UCI_LimitStrength type check default false
option name Auto Skill type check default false
option name UCI_Opponent type string default <empty>
uciok
Hi Tobias and all
Super Elia did quite a bit of adjustment and add on! We have recompiled with her fixing/addon please download again from the same link.
https://www.certabo.com/wp-content/uploads/SOFTWARE/Certabo_4.5_64bit_Modded_by_EliaI.zip
She also added random generation of 960 position so if you select just 960 it will start from random position if you select also play from position together 960 you can set your preferred 960 position. Have a try!
All the best
Pietro
Quote from tobias on June 16, 2022, 11:25 amThank you again, Elia and Pietro. Great project.
I tested now different engines with ELO reduction. Seems to work fine. And Dragon 2.6.1 now shows ELO limit correct. Unfortunately they changed in the version 3 back to the UCI option without the underscore 🙁
don´t know if you will find here a workaround. They argue, that with underscore more GUIs have problems. A little bit curious, cause all other engines, I looked for are using the underscore.
With this new functions (ELO limitation, time per move) the Certabo software will be again my favourite for "easy playing", espacially if there will be sometime a Davinci version 🙂
Thank you again, Elia and Pietro. Great project.
I tested now different engines with ELO reduction. Seems to work fine. And Dragon 2.6.1 now shows ELO limit correct. Unfortunately they changed in the version 3 back to the UCI option without the underscore 🙁
don´t know if you will find here a workaround. They argue, that with underscore more GUIs have problems. A little bit curious, cause all other engines, I looked for are using the underscore.
With this new functions (ELO limitation, time per move) the Certabo software will be again my favourite for "easy playing", espacially if there will be sometime a Davinci version 🙂
Quote from Lady Eklipse on June 16, 2022, 4:18 pmThe full list of changes:
- The bug with opening books not working is fixed.
- ELO range is now from -1000 to 4000, should be enough for all engines.
- Strength/skill level is now shown on the New Games screen.
- Dragon 2.61 should now display ELO limit.
- Added free/opensource engines. Will arrange them later into folders and maybe replace some with newer versions.
- "Skill" and "Skill Limit" UCI options are both controlled via "Skill Level" option in GUI. For example, it's "Skill" for Komodo and "Skill Level" for Stockfish, both range from 0 to 20.
- Engines now can be sorted by folders, so if your chess engines have dependencies, you can just copy the folder with the engine and its dependencies to the engines/ folder and it will be picked up.
- Having Chess960 option turned on will result in Certabo software randomizing positions of pieces for you.
- You can now use PC keyboard to type in saved game name.
- Current date/time is automatically suggested as a name for your saved game .pgn
- A new option in Options - Chessboard: "Check light". If turned off, Certabo board won't light up a LED where the king in check is.@tobias thank you for your feedback. Of course it's possible to make the software interpret "UCI Elo" as "UCI_Elo", thus enabling this function for Dragon. If they are so persistent to go against the common naming convention for UCI options, so be it. The only thing is, I'll ask you to report whether it works or not, because I have no way to test it.
DaVinci version will happen when I run out of things to tweak and fix and it will be unlikely that a new version will have to be released because a bug is found on the release date or a day later.
The full list of changes:
- The bug with opening books not working is fixed.
- ELO range is now from -1000 to 4000, should be enough for all engines.
- Strength/skill level is now shown on the New Games screen.
- Dragon 2.61 should now display ELO limit.
- Added free/opensource engines. Will arrange them later into folders and maybe replace some with newer versions.
- "Skill" and "Skill Limit" UCI options are both controlled via "Skill Level" option in GUI. For example, it's "Skill" for Komodo and "Skill Level" for Stockfish, both range from 0 to 20.
- Engines now can be sorted by folders, so if your chess engines have dependencies, you can just copy the folder with the engine and its dependencies to the engines/ folder and it will be picked up.
- Having Chess960 option turned on will result in Certabo software randomizing positions of pieces for you.
- You can now use PC keyboard to type in saved game name.
- Current date/time is automatically suggested as a name for your saved game .pgn
- A new option in Options - Chessboard: "Check light". If turned off, Certabo board won't light up a LED where the king in check is.
@tobias thank you for your feedback. Of course it's possible to make the software interpret "UCI Elo" as "UCI_Elo", thus enabling this function for Dragon. If they are so persistent to go against the common naming convention for UCI options, so be it. The only thing is, I'll ask you to report whether it works or not, because I have no way to test it.
DaVinci version will happen when I run out of things to tweak and fix and it will be unlikely that a new version will have to be released because a bug is found on the release date or a day later.
Quote from tobias on June 16, 2022, 5:12 pmsounds great Elia,
especially the option to put engines in folders with associated files is nice. Will test it.
Thank for helping me with Dragon and sure I will report then.
And sorry if you feel urged about the DaVinci version. That was definitively not my intention. I only wanted to say that I look forward to this version.
P.S. just one little bug: the Strength displays one decimal to much, instead of e.g. Strength 500/1000 it shows 5000/1000
sounds great Elia,
especially the option to put engines in folders with associated files is nice. Will test it.
Thank for helping me with Dragon and sure I will report then.
And sorry if you feel urged about the DaVinci version. That was definitively not my intention. I only wanted to say that I look forward to this version.
P.S. just one little bug: the Strength displays one decimal to much, instead of e.g. Strength 500/1000 it shows 5000/1000
Quote from Lady Eklipse on June 17, 2022, 4:39 pm@tobias which exact engine does the strength bug occur with? Is your "Strength" setting in Certabo SW equal 50?
Edit:
I can reproduce it by manually setting Strength to 500 in game_settings.json.
I know why you did this and you don't have to do this anymore. My mod automatically aligns strength, which is set from 0 to 100, to a different scale if the engine supports Strength value from 0 to 1000.
Now you can just set Strength to 50 and it will be displayed as 50/100 for Houdini and 500/1000 for Texel.It's a bug, for some reason I've changed max strength in Certabo SW from 100 to 1000. Will be fixed in the next release.
The next version will do the same trick for Skill Level, because I've found out that some engines have different maximum value for Skill rather than 20.
@tobias which exact engine does the strength bug occur with? Is your "Strength" setting in Certabo SW equal 50?
Edit: I can reproduce it by manually setting Strength to 500 in game_settings.json.
I know why you did this and you don't have to do this anymore. My mod automatically aligns strength, which is set from 0 to 100, to a different scale if the engine supports Strength value from 0 to 1000.
Now you can just set Strength to 50 and it will be displayed as 50/100 for Houdini and 500/1000 for Texel.
It's a bug, for some reason I've changed max strength in Certabo SW from 100 to 1000. Will be fixed in the next release.
The next version will do the same trick for Skill Level, because I've found out that some engines have different maximum value for Skill rather than 20.
Quote from tobias on June 17, 2022, 7:21 pmHi Elia,
the problem occurs for the Texel engine. It uses strength from 0 to 1000. And if I choose for example 100, the engine gets 1000. So,if I choose a strenght more than 100, e.g. 500 the engine gets strenght 5000 and crashes.
Some engines use strenghts 0-100 (Houdini, Revenge), some use 1000 (Texel).
Using Houdini or Revenge, the strenght is set correct. But here you have to check, that strenght goes not over 100. Otherwise the engine crashes too.
Perhaps for a future version you should think about the option, to make the setting in the „new game“ menu, according to each engine. So you choose an engine, the software reads the uci-options (or knows the uci-options from a config-file) and than you can choose the setting and the book.
Hi Elia,
the problem occurs for the Texel engine. It uses strength from 0 to 1000. And if I choose for example 100, the engine gets 1000. So,if I choose a strenght more than 100, e.g. 500 the engine gets strenght 5000 and crashes.
Some engines use strenghts 0-100 (Houdini, Revenge), some use 1000 (Texel).
Using Houdini or Revenge, the strenght is set correct. But here you have to check, that strenght goes not over 100. Otherwise the engine crashes too.
Perhaps for a future version you should think about the option, to make the setting in the „new game“ menu, according to each engine. So you choose an engine, the software reads the uci-options (or knows the uci-options from a config-file) and than you can choose the setting and the book.
Quote from Lady Eklipse on June 18, 2022, 9:09 am@tobias, I'm aware of different strength ranges for different engines and I've attempted to address this by aligning strength relative to its maximum value, but that resulted in a bug you've reported, which is already fixed. Thus, if you set Strength in Settings to 50, it is supposed to show as 50 for Houdini and as 500 for Texel. I don't see a need to implement an option to change Strength, skill level and ELO limit in the New Game menu other than putting a link to Settings in there. The GUI is tweaked for small screens in mind, so I'm hesitating to add more GUI controls in the new game screen, which is already a bit overwhelmed.
Right now I'm working on implementing personalities for engines which support those. Rodent I, II and III will have files called [engine_name].personalitities.json with custom settings for each personality. You will also be able to create different personalities yourself.
But for engines like Komodo, which have personality UCI option, those values will be extracted automatically.
When this and some other minor fixes will be implemented, the new version will come out.
@tobias, I'm aware of different strength ranges for different engines and I've attempted to address this by aligning strength relative to its maximum value, but that resulted in a bug you've reported, which is already fixed. Thus, if you set Strength in Settings to 50, it is supposed to show as 50 for Houdini and as 500 for Texel. I don't see a need to implement an option to change Strength, skill level and ELO limit in the New Game menu other than putting a link to Settings in there. The GUI is tweaked for small screens in mind, so I'm hesitating to add more GUI controls in the new game screen, which is already a bit overwhelmed.
Right now I'm working on implementing personalities for engines which support those. Rodent I, II and III will have files called [engine_name].personalitities.json with custom settings for each personality. You will also be able to create different personalities yourself.
But for engines like Komodo, which have personality UCI option, those values will be extracted automatically.
When this and some other minor fixes will be implemented, the new version will come out.
Quote from bryan.whitby on June 18, 2022, 9:53 amHi Elia
I was just wonder why you have added x5 speed to MessChess.
The x10 is great as I have added all the 300+ ROMS but why the x5?
Also, what would the fastest speed that could be implemented?
Regards
Bryan
Hi Elia
I was just wonder why you have added x5 speed to MessChess.
The x10 is great as I have added all the 300+ ROMS but why the x5?
Also, what would the fastest speed that could be implemented?
Regards
Bryan
Quote from Lady Eklipse on June 25, 2022, 8:09 am@bryan-whitby If you look at MessChess GUI, you'll see in Options - Maximum Speed the only value beyond 1000% is Unlimited.
My mod of Certabo SW sends a --speed command line parameter to MessChess.exe, which accepts an integer, but does not accept "Unlimited". In theory I can pass a value > 10 there, but then I don't see a checkbox in Maximum Speed, so I don't know how well it works. I will try putting 100x there and see how well it works.As of 5x option, I thought that on weak computers, which cannot handle 10x, that option would be better, because trying to achieve higher speed might result in actually lowering the speed. I might be wrong. For example, on Certabo DaVinci there is no point in setting a speed multiplier, because at the end of the emulation MessChess puts a line in log file, saying what was the average percentage of emulation speed, and it's usually <30%.
I'll test it a bit more and if there is no point in having different values, I'll make it a "True/False" value, like "Unlock MessChess speed".
@bryan-whitby If you look at MessChess GUI, you'll see in Options - Maximum Speed the only value beyond 1000% is Unlimited.
My mod of Certabo SW sends a --speed command line parameter to MessChess.exe, which accepts an integer, but does not accept "Unlimited". In theory I can pass a value > 10 there, but then I don't see a checkbox in Maximum Speed, so I don't know how well it works. I will try putting 100x there and see how well it works.
As of 5x option, I thought that on weak computers, which cannot handle 10x, that option would be better, because trying to achieve higher speed might result in actually lowering the speed. I might be wrong. For example, on Certabo DaVinci there is no point in setting a speed multiplier, because at the end of the emulation MessChess puts a line in log file, saying what was the average percentage of emulation speed, and it's usually <30%.
I'll test it a bit more and if there is no point in having different values, I'll make it a "True/False" value, like "Unlock MessChess speed".
Quote from Lady Eklipse on July 26, 2022, 8:10 pmhttps://drive.google.com/file/d/1QtNRqArxsBI2_MnpuQzktm-W_ESU8KI1/view?usp=sharing
This is (hopefully) the final release of my mod.
I've modified the installer, so it installs the drivers and includes manual. The manual will be opened automatically upon installation. Please do not ignore the manual, I've described every single function that was implemented by me or was not covered by the official manual, so I hope this will be helpful and educational.List of changes:
- Added support of tweaking ELO for Dragon 3 engine.
- Fixed a bug not allowing tweaking Strength parameter for Texel
- Some engines, e. g. Komodo series, have a "Personality" parameter. Now you can select a personality for those, like for Avatar engine and change their play style. Certabo SW now supports creating personality profiles for different engine in JSON format. To see how it's done, look at the engines\stockfish231.personalities.json or engines\rodentiii\rodent_III_x64.personalities.json. Note that you must create a file called [engine_name].personalities.json with [engine_name] part exactly matching the engine's executable name, otherwise it won't work.
- Updated Stockfish to version 15.1 in the distribution.
- If you want the board to recognize pieces faster, there is now a new parameter: Settings - Chessboard - Reaction speed. The default is 3, but I personally prefer 5. This also works for Certabo Online (of course if launched from my distribution, not the 6.0 version). @jaume-martinez-vanaclocha
- Another new option in settings: Chessboard - "Play black if board flipped". When starting a new game, you won't have to worry about forgetting to set "Flip Board" and "Play black" anymore. Just make sure you have all 16 pawns in their designated places and "Flip board" status will be set automatically. If "Play black if board flipped" is checked, Certabo SW will assume you want to play black if black pieces and pawns are on the bottom. Since this behavior is triggered by pawns' positions only, this feature works for Chess960 as well.
- Thanks to @bryan-whitby I've discovered that there is no point in having different speed parameters for MessChess, so it's now limited to 1x and "unlimited", which internally means a 100x speed, which your hardware won't achieve anyway, but all emulated chess computers will think as fast as it's possible for your CPU.
- If you press "Analysis" and the hint engine recognizes the current position as "Mate in X moves", it will be explicitly shown, instead of showing 0 centipawns.
- The distribution now comes with Windows 7,8 and 10 drivers for Certabo board. The drivers will be installed automatically during the setup process and the installer is now a single EXE
- During installation you can omit installing additional free engines I've included in the distribution as well as omit MessChess. This is useful for casual players, for which Avatar, maia and Stockfish are more than enough or those primarily interested in playing online or with engine of their choice which they can install manually.
- During uninstallation you are provided with an option to remove logs and settings. This may be useful if something is broken and the program needs reinstalling or if my distribution breaks official Certabo SW in some way and you need to rollback the installation.
- When my version of Certabo SW launches the first time, it launches every engine in engines folder to get its name and parameters. You can now be aware of this process, because it shows what engine it's reading on the screen as well as in log window.
- Depth setting is now hidden for Maia, because the authors of Maia engine mod recommend using "go nodes 1" instead of "go depth X", otherwise it behaves like regular lc0. Therefore I've hardcoded "go nodes 1" for specifically for Maia as an exception.
- You can now (almost) fully control Certabo SW from keyboard. Press the key corresponding to the first letter of the button text and it will be pressed: "n" for new game", "o" for options. This was specifically done to allow pressing "h" to get a hint without touching the mouse, as well as "a" for analysis, "+" for extended hint/analysis. Pressing "Return" is equal to pressing "Done". Yet you cannot control Settings and select and engine or an opening book using arrow keys. For that please use a mouse or trackball.
- Slightly changed the behavior of Analysis button: it works like an on/off switch and the centipawns update automatically after each move if it's on.
- You can now choose any engine for analysis, which supports MultiPV option. Some people might want to use commercial engines for analysis, e. g. Dragon, Houdini Pro or Shredder.
- When ELO, skill or strength is displayed on New Game screen, there is a "..." button, which links to Options screen. After tweaking the corresponding option and pressing "Done" the user is automatically returned back to New Game screen.
- The software now recognizes a draw by threefold repetition, but there is an option to wait for a fivefold repetition, like in original version.
- Now you can go to game engine options directly from New Game screen to change Skill, Strength and ELO parameters (if available). You will be redirected back to New Game screen after pressing Done in this scenario.
https://drive.google.com/file/d/1QtNRqArxsBI2_MnpuQzktm-W_ESU8KI1/view?usp=sharing
This is (hopefully) the final release of my mod.
I've modified the installer, so it installs the drivers and includes manual. The manual will be opened automatically upon installation. Please do not ignore the manual, I've described every single function that was implemented by me or was not covered by the official manual, so I hope this will be helpful and educational.
List of changes:
- Added support of tweaking ELO for Dragon 3 engine.
- Fixed a bug not allowing tweaking Strength parameter for Texel
- Some engines, e. g. Komodo series, have a "Personality" parameter. Now you can select a personality for those, like for Avatar engine and change their play style. Certabo SW now supports creating personality profiles for different engine in JSON format. To see how it's done, look at the engines\stockfish231.personalities.json or engines\rodentiii\rodent_III_x64.personalities.json. Note that you must create a file called [engine_name].personalities.json with [engine_name] part exactly matching the engine's executable name, otherwise it won't work.
- Updated Stockfish to version 15.1 in the distribution.
- If you want the board to recognize pieces faster, there is now a new parameter: Settings - Chessboard - Reaction speed. The default is 3, but I personally prefer 5. This also works for Certabo Online (of course if launched from my distribution, not the 6.0 version). @jaume-martinez-vanaclocha
- Another new option in settings: Chessboard - "Play black if board flipped". When starting a new game, you won't have to worry about forgetting to set "Flip Board" and "Play black" anymore. Just make sure you have all 16 pawns in their designated places and "Flip board" status will be set automatically. If "Play black if board flipped" is checked, Certabo SW will assume you want to play black if black pieces and pawns are on the bottom. Since this behavior is triggered by pawns' positions only, this feature works for Chess960 as well.
- Thanks to @bryan-whitby I've discovered that there is no point in having different speed parameters for MessChess, so it's now limited to 1x and "unlimited", which internally means a 100x speed, which your hardware won't achieve anyway, but all emulated chess computers will think as fast as it's possible for your CPU.
- If you press "Analysis" and the hint engine recognizes the current position as "Mate in X moves", it will be explicitly shown, instead of showing 0 centipawns.
- The distribution now comes with Windows 7,8 and 10 drivers for Certabo board. The drivers will be installed automatically during the setup process and the installer is now a single EXE
- During installation you can omit installing additional free engines I've included in the distribution as well as omit MessChess. This is useful for casual players, for which Avatar, maia and Stockfish are more than enough or those primarily interested in playing online or with engine of their choice which they can install manually.
- During uninstallation you are provided with an option to remove logs and settings. This may be useful if something is broken and the program needs reinstalling or if my distribution breaks official Certabo SW in some way and you need to rollback the installation.
- When my version of Certabo SW launches the first time, it launches every engine in engines folder to get its name and parameters. You can now be aware of this process, because it shows what engine it's reading on the screen as well as in log window.
- Depth setting is now hidden for Maia, because the authors of Maia engine mod recommend using "go nodes 1" instead of "go depth X", otherwise it behaves like regular lc0. Therefore I've hardcoded "go nodes 1" for specifically for Maia as an exception.
- You can now (almost) fully control Certabo SW from keyboard. Press the key corresponding to the first letter of the button text and it will be pressed: "n" for new game", "o" for options. This was specifically done to allow pressing "h" to get a hint without touching the mouse, as well as "a" for analysis, "+" for extended hint/analysis. Pressing "Return" is equal to pressing "Done". Yet you cannot control Settings and select and engine or an opening book using arrow keys. For that please use a mouse or trackball.
- Slightly changed the behavior of Analysis button: it works like an on/off switch and the centipawns update automatically after each move if it's on.
- You can now choose any engine for analysis, which supports MultiPV option. Some people might want to use commercial engines for analysis, e. g. Dragon, Houdini Pro or Shredder.
- When ELO, skill or strength is displayed on New Game screen, there is a "..." button, which links to Options screen. After tweaking the corresponding option and pressing "Done" the user is automatically returned back to New Game screen.
- The software now recognizes a draw by threefold repetition, but there is an option to wait for a fivefold repetition, like in original version.
- Now you can go to game engine options directly from New Game screen to change Skill, Strength and ELO parameters (if available). You will be redirected back to New Game screen after pressing Done in this scenario.