Can't load UCI engines

Discussions about Winboard/Xboard. News about engines or programs to use with these GUIs (e.g. tournament managers or adapters) belong in this sub forum.

Moderator: Andres Valverde

Can't load UCI engines

Postby Gábor Szots » 03 Mar 2017, 16:31

I have downloaded WB-AA and now if I try to install a UCI engine I get a pop-up message like this:

Startup failure on polyglot -noini -ec ...Amoeba_2.2-x64 uci NalimovChache=64 -uci GaviotaCache=64. File not found.

The same happens when trying to start an already installed UCI engine.

I can see there is no polyglot attached but I thought UCI2WB will be used instead. What is wrong here?
Gábor Szőts

CCRL testing group
User avatar
Gábor Szots
 
Posts: 327
Joined: 26 Sep 2004, 21:26
Location: Szentendre, Hungary

Re: Can't load UCI engines

Postby H.G.Muller » 05 Mar 2017, 10:16

The WinBoard-AA package is configured to use the included UCI2WB both in response to the -fUCI and -fUCCI options on the line in the engine list. The persistent WinBoard options -adapterCommand and -uxiAdapter in the user settings file control this.

If it nevertheless tries to invoke Polyglot it can be because this somehow got reconfigured (e.g. by inheriting settings from a previous install, although in principle it should not do that, because it uses a user settings file with a different name than earlier versions), or that the lines in your engine list explicitly refer to Polyglot.
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: Can't load UCI engines

Postby Gábor Szots » 05 Mar 2017, 20:12

H.G.Muller wrote:The WinBoard-AA package is configured to use the included UCI2WB both in response to the -fUCI and -fUCCI options on the line in the engine list. The persistent WinBoard options -adapterCommand and -uxiAdapter in the user settings file control this.

If it nevertheless tries to invoke Polyglot it can be because this somehow got reconfigured (e.g. by inheriting settings from a previous install, although in principle it should not do that, because it uses a user settings file with a different name than earlier versions), or that the lines in your engine list explicitly refer to Polyglot.


My ini file contains this line:

/adapterCommand='polyglot -noini -ec "%fcp" -ed "%fd" -uci NalimovCache=%defaultCacheSizeEGTB -uci GaviotaTbCache=%defaultCacheSizeEGTB'

However, the ini in the downloaded package contains the same line.

So, how should that line look like and are there other relevant settings to be changed?

Is it this line from factory.ini: /adapterCommand={UCI2WB debug "%fcp" "%fd"}?
Gábor Szőts

CCRL testing group
User avatar
Gábor Szots
 
Posts: 327
Joined: 26 Sep 2004, 21:26
Location: Szentendre, Hungary

Re: Can't load UCI engines

Postby H.G.Muller » 06 Mar 2017, 08:13

Well, the way I configured it is a bit tricky. The winboard.ini file in the WinBoard folder, which is the one WinBoard will always read at startup, ends in:

Code: Select all
;
; Here we redirect the saving to another file (specific for the user)
;
/settingsFile=factory.ini
/replace='UCCI2WB -noini "%fd\\%fcp"'
/uxiAdapter={UCI2WB debug -%variant "%fcp" %fd"}
/saveSettingsFile=%APPDATA%\winboard161130.ini
/settingsFile=%APPDATA%\winboard161130.ini
;
; Any setting after this will make the option overrule the saved one
;

the /settingsFile=factory.ini is supposed to read the factory.ini file, and all options defined in the latter would then overrule anything that was set by the winboard.ini before. So that includes the /adapterCommand and /uxiAdapter settings. (In addition it would redirect saving of settings to factiory.ini, but this is again overruled later.) Then there follow two lines to conditionally replace the /uxiAdapter if it was still set to UCCI2WB. Finally it sets up WinBoard for using a persistent settings file in the user's AppData folder. Once the user has saved settings, those saved settings will overrule everything that went on before on future runs.

The definition of /adapterCommand in factory.ini (which does specify UCI2WB) thus should prevail over that in winboard.ini. But the user's settings file should again prevail over that. The logic of this setup was that by running WinBoard with the 'Additional option' @factory.ini it would be easy to overrule your saved settings, because what is on the WinBoard command line (or given in the startup dialog) is again done after WinBoard finished reading the entire winboard.ini. So normally the saved settings would overrule the factory.ini settings, but by mentioning the latter explicitly you would invert that.

I guess what happened is that while developing this package at some point I must have had a version that did redefine /uxiAdapter to UCI2WB, but still had left /adapterCommand as the usual Polyglot command (and was using -fUCCI rather than -fUCI for the included Stockfish-variant). You probably tried that package, so that these settings got stored in your user settings file. When I later changed the setting of /adapterCommand to UCI2WB too in the factory.ini file, this continued to be overruled by the persistent settings file created by the old package, and would only be effective during a 'first-time install'.

Easiest way to get rid of the old persistent settings is to run WinBoard once with the option @factory.ini. Then you won't have to hunt down your user settings file (which modern Windows hide quite deeply). But that would also destroy any engine list you already created. An alternative would be to edit the engine list out of factory.ini (delete /firstChessProgramNames upto and including the closing brace '}'), and then run WinBoard with @factory.ini . Of course you could also run once with 'Additional option'

/adapterCommand={UCI2WB debug "%fcp" "%fd"}

which then would only change the /adapterCommand and leave all other settings untouched. (I don't think I changed much else in the factory.ini file since the first creation of the package, perhaps except that I added CrazyWa to the engine list when I included that in the package as well.)
User avatar
H.G.Muller
 
Posts: 3453
Joined: 16 Nov 2005, 12:02
Location: Diemen, NL

Re: Can't load UCI engines

Postby Gábor Szots » 06 Mar 2017, 08:49

Thanks for the explanation.

While waiting for your answer I did this: I copied my old winboard48.ini from the Roaming folder to my WB folder and changed the adapter line to UCI2WB and that seemed to do the trick.

It seems the Roaming folder is not written to any more.
Gábor Szőts

CCRL testing group
User avatar
Gábor Szots
 
Posts: 327
Joined: 26 Sep 2004, 21:26
Location: Szentendre, Hungary


Return to Winboard and related Topics

Who is online

Users browsing this forum: No registered users and 23 guests