WinBoard-AA beta release

Discussion of anything and everything relating to chess playing software and machines.

Moderators: hgm, Rebel, chrisw

User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Add draw score range

Post by hgm »

Ferdy wrote:Feature request, add draw score range in the draw adjudication.
Perhaps after 6 successive moves by each side without capture or pawn move. If there is capture or pawn move reset the succsessive move counter to zero.
Thank you.

Image
This is not the purpose of this adjudication. The purpose is to make sure games terminate within 200 moves, even when one of the engines has a score of +100.

Of course another adjudication, declalring draw after N successive moves with scores within a margin from zero could be added.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Add draw score range

Post by Ferdy »

hgm wrote:
Ferdy wrote:Feature request, add draw score range in the draw adjudication.
Perhaps after 6 successive moves by each side without capture or pawn move. If there is capture or pawn move reset the succsessive move counter to zero.
Thank you.

Image
This is not the purpose of this adjudication. The purpose is to make sure games terminate within 200 moves, even when one of the engines has a score of +100.
Yeah that is what I thought in the first place.
Of course another adjudication, declalring draw after N successive moves with scores within a margin from zero could be added.
Great :!:
shrapnel
Posts: 1339
Joined: Fri Nov 02, 2012 9:43 am
Location: New Delhi, India

Re: WinBoard-AA beta release

Post by shrapnel »

hgm wrote:WB2UCI does that.
Download Link please.
Thanks.
i7 5960X @ 4.1 Ghz, 64 GB G.Skill RipJaws RAM, Twin Asus ROG Strix OC 11 GB Geforce 2080 Tis
User avatar
Guenther
Posts: 4605
Joined: Wed Oct 01, 2008 6:33 am
Location: Regensburg, Germany
Full name: Guenther Simon

Re: WinBoard-AA beta release

Post by Guenther »

shrapnel wrote:
hgm wrote:WB2UCI does that.
Download Link please.
Thanks.
Have you ever heard of google or any search engine?
This forum is full of WB2UCI threads BTW.
If you have ever downloaded ProDeo you already have it anyway.

Moreover HGM has nothing to do with it. File for Odd Gunnar Malin.
https://rwbc-chess.de

trollwatch:
Chessqueen + chessica + AlexChess + Eduard + Sylwy
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Feature request: Save installed engine automatically

Post by Ferdy »

There can be a time that the
Save Settings on Exit
is not enabled.

Image

When user installed the engine and then just exit without pressing
Save settings now
then the installed engine will not be saved. Opening Winboard again and the supposed installed engine cannot be found in winboard startup box.

Image

Perhaps it is better that the engine should be installed and saved automatically without requiring the user to press the
Save Settings Now
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Feature request: Add Install and Uninstall Engine btn/lbl

Post by Ferdy »

It is more clearer rather than relying on Load First Engine.


Image
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Feature request: Save installed engine automatically

Post by hgm »

Ferdy wrote:Perhaps it is better that the engine should be installed and saved automatically without requiring the user to press the
Save Settings Now
Yes, this could be a problem. In practice I don't suppose there are many people that would ever switch 'Save Settings on Exit' off, though. The point is that switching it off by definition will not be persistent, so next time they start WinBoard, it would be on again. Only when they switch it off and then press 'Save Settings Now' they would have switched it off persistently.

An even worse problem of the same type occurs when you have multiple WinBoard instances open, and you would close them in the wrong order. This actually does happen, at least to me. There might not even be a right order: if you installed different new engines in either of them, you would always lose what you did in the one you closed first.

I am not sure how this can be solved. Saving the settings automatically on engine install would still not solve the overwrite problem. That would only be solved if all open instances of WinBoard would share the settings instantly, i.e. reload them as soon as the settings file is changed. This I would certainly not want for all settings. Although for the engine list (and similarly, the 'themes' and ICS lists) it might perhaps not be that bad. I.e. every time when the user opens a Load Engine dialog, update the engine list from the persistent settings file, and then immediately write it back (but not any other option setting) when he makes any changes. That would also solve the Save Settings on Exit problem, in the sense that you could never lose any changes in the engine list by suppressing this saving.

I se the 'Save Settings on Exit' option mainly as an emergency feature, only to be used when I completely messed up things, and it would be more work to undo that than to redo what I wanted to save. Often this applies to changes I made in the engine list. I would hate that possibility. But I guess a waring would certainly be in order. It would be easy enough to keep track of whether the engine list was changed (e.g. through a checksum), and in the case where it is, have the event of switching Save Settings off throw up an "are you sure" type popup, saying something like "Beware that not saving settings wil also make you lose the changes you have made in the Engine and Themes list".

For the overwrite problem it could also be possible for any WinBoard instance to 'touch' the settings file without changing it (but changing the 'last accessed' date stamp, which other instances could probe) whenever they change the engine list. On opening the Load Engine dialog WinBoard could then check if the copy of the engine list it holds is up-to-date (time-stamp is from before its starting time), and if not throw up a warning that another instance is planning to make changes which could erase the ones you are going to make now, if you don't save those first.
User avatar
Evert
Posts: 2929
Joined: Sat Jan 22, 2011 12:42 am
Location: NL

Re: Feature request: Save installed engine automatically

Post by Evert »

hgm wrote: Yes, this could be a problem. In practice I don't suppose there are many people that would ever switch 'Save Settings on Exit' off, though. The point is that switching it off by definition will not be persistent, so next time they start WinBoard, it would be on again. Only when they switch it off and then press 'Save Settings Now' they would have switched it off persistently.

An even worse problem of the same type occurs when you have multiple WinBoard instances open, and you would close them in the wrong order. This actually does happen, at least to me. There might not even be a right order: if you installed different new engines in either of them, you would always lose what you did in the one you closed first.

I am not sure how this can be solved. Saving the settings automatically on engine install would still not solve the overwrite problem. That would only be solved if all open instances of WinBoard would share the settings instantly, i.e. reload them as soon as the settings file is changed. This I would certainly not want for all settings. Although for the engine list (and similarly, the 'themes' and ICS lists) it might perhaps not be that bad. I.e. every time when the user opens a Load Engine dialog, update the engine list from the persistent settings file, and then immediately write it back (but not any other option setting) when he makes any changes. That would also solve the Save Settings on Exit problem, in the sense that you could never lose any changes in the engine list by suppressing this saving.
I have "save settings on exit" switched off. I want XBoard to start in a reasonable default state, and if I do something to the windows for something particular I want to do, I don't want that to be remembered. What would be useful is the ability to store different settings as a "profile" and let me pick the one I need from a list.
Storing the engine list as part of the settings is understandable from a design point of view, but a mistake from a user point of view. It should be separate.
I don't think there is a way to synchronise different instances, unless you make them aware of eachother and have them share data explicitly. In the case of the engine list, the problem could be ameliorated by having an explicit "reload" option. Or you do that if, on gaining focus, the engine list has been updated since it was last read.
User avatar
hgm
Posts: 27787
Joined: Fri Mar 10, 2006 10:06 am
Location: Amsterdam
Full name: H G Muller

Re: Feature request: Add Install and Uninstall Engine btn/lb

Post by hgm »

Ferdy wrote:It is more clearer rather than relying on Load First Engine.
Well, I am not so keen on having many dialogs that are practically clones of each other. I consider it already bad that there are separate firts- and second-engine dialogs. But initially I had a single dialog with a first/second combobox, and that really did not work at all in practice. If the problem is that it is not sufficiently clear to users that 'Load Engine' also means 'Install Engine', it can also be solved by just changing the name of the menu item to "Load or Install First/Second Engine".

I always considered it strange that users expect that they have to do something like 'installing' an engine. For one, it is a misnomer; 'installing' software in general means getting it in your machine, and should apply to the process of downloading it and unpacking the archive. It is pretty ridiculous that this is not enough to immediately use the engine on every Chess GUI that is present on your system, but that you now for each of those has to open a special dialog, invoke the file browser, navigate to the executable, provide some info the GUI cannot know, and the user can only know by first digesting a README file that came with the engine, to 'register' the engine for use. Totally ridiculous, in fact. All of this should have been fully automatic. Then 'Load Engine' would only have to present you the listbox with engines from which you could choose. And perhaps some Up/Down/Delete/Group buttons to resort/organize the list to his preference.

What makes the Load/Install issue a bit different from the First/Second Engine problem, is that it is actually extremely rare that a user would not want to 'register' an engine. So if the only functional difference between Load and Install would be whether the engine is added to the list, or not, a simple checkbox that gives you the default you would virtually always need seems a good solution. An alternative would be to simply always add it to the list, and in the rare case people did not want that, just have them delete it again.

As to the Uninstall; I am not sure if this is worth a separate menu item + dialog. It would be rarely needed, much less than Install (which is already rare), as usually you install engines to keep them. And it seems to me just one of the functions needed for managing the list. Sorting and grouping items in the list seems much more important. And I don't think it would be optimal to have a menu item "Manage (Engine) List", as at that point it would not be very clear what list this is about. So I'd rather have that kind of stuff in the same dialog as that displays the list itself, i.e. in Load Engine. That would make it much more obvious to the noob user, like "hey, that is cool! I actually have control over how this list I have to select from looks!".

Something like having a group box labelled "Organize List" next to the list, with buttons Up, Down, Cut (to delete the selected entry), Paste (put back the previously Cut entry above the selected one, disabled before anything is Cut). And a button 'Group', only enabled if an accompanying text entry 'Group Name' is not blank, to make the highlighted engine into a singleton group.
Ferdy
Posts: 4833
Joined: Sun Aug 10, 2008 3:15 pm
Location: Philippines

Re: Feature request: Add Install and Uninstall Engine btn/lb

Post by Ferdy »

hgm wrote:
Ferdy wrote:It is more clearer rather than relying on Load First Engine.
Well, I am not so keen on having many dialogs that are practically clones of each other. I consider it already bad that there are separate firts- and second-engine dialogs. But initially I had a single dialog with a first/second combobox, and that really did not work at all in practice. If the problem is that it is not sufficiently clear to users that 'Load Engine' also means 'Install Engine', it can also be solved by just changing the name of the menu item to "Load or Install First/Second Engine".

I always considered it strange that users expect that they have to do something like 'installing' an engine. For one, it is a misnomer; 'installing' software in general means getting it in your machine, and should apply to the process of downloading it and unpacking the archive. It is pretty ridiculous that this is not enough to immediately use the engine on every Chess GUI that is present on your system, but that you now for each of those has to open a special dialog, invoke the file browser, navigate to the executable, provide some info the GUI cannot know, and the user can only know by first digesting a README file that came with the engine, to 'register' the engine for use. Totally ridiculous, in fact. All of this should have been fully automatic. Then 'Load Engine' would only have to present you the listbox with engines from which you could choose. And perhaps some Up/Down/Delete/Group buttons to resort/organize the list to his preference.

What makes the Load/Install issue a bit different from the First/Second Engine problem, is that it is actually extremely rare that a user would not want to 'register' an engine. So if the only functional difference between Load and Install would be whether the engine is added to the list, or not, a simple checkbox that gives you the default you would virtually always need seems a good solution. An alternative would be to simply always add it to the list, and in the rare case people did not want that, just have them delete it again.

As to the Uninstall; I am not sure if this is worth a separate menu item + dialog. It would be rarely needed, much less than Install (which is already rare), as usually you install engines to keep them. And it seems to me just one of the functions needed for managing the list. Sorting and grouping items in the list seems much more important. And I don't think it would be optimal to have a menu item "Manage (Engine) List", as at that point it would not be very clear what list this is about. So I'd rather have that kind of stuff in the same dialog as that displays the list itself, i.e. in Load Engine. That would make it much more obvious to the noob user, like "hey, that is cool! I actually have control over how this list I have to select from looks!".

Something like having a group box labelled "Organize List" next to the list, with buttons Up, Down, Cut (to delete the selected entry), Paste (put back the previously Cut entry above the selected one, disabled before anything is Cut). And a button 'Group', only enabled if an accompanying text entry 'Group Name' is not blank, to make the highlighted engine into a singleton group.
After pressing Load First Engine...

Image