Three ideas for the next Winboard...

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

Three ideas for the next Winboard...

Postby Alessandro Scotti » 22 Mar 2005, 00:30

Hi folks,
here's three things I'm missing from the current Winboard, and how I think they could be implemented... let me know what you think!

1) GUI improvements (move list, full engine PV's, game stats, etc.)
2) GUI for engine options (a la UCI);
3) learning tools for human players (e.g. coaching, training, etc.)

Ok, let's see implementations now.

1) GUI improvements.
My idea is: let's give anyone the possibility to improve the GUI by registering a "boardlet". In practice, a boardlet would be a DLL that has its own window and is automatically loaded and managed by the main program. This design opens many interesting scenarios: displaying the move list, full PV's, graphical game statistics, game broadcasting and so on... they could be each managed by a dedicated boardlet. As boardlets are separated from the main program, they can be written with any language from Visual Basic, to Delphi, to C++, thus bypassing the limits of Winboard itself.

2) GUI for engine options
This shouldn't require a new protocol version. Rather, an engine declares support for this feature using the standard "feature" command and then the GUI proceeds accordingly. The idea is: make the protocol similar or identical to UCI (to help engine authors) and then update PolyGlot... suddenly, there will be many engines to play with until the others catch up.

3) I'm too bad to play against a computer, but I've had great fun playing against my old copy of Fritz 6 in one of its training modes. My favorite is when the engine blunders on purpose and creates mini-combinations for you to discover. I miss this feature a lot, and would really like to see it in Winboard (or another GUI). No particular ideas on this... feedback would be very welcome!

Uhmmm... comments?
User avatar
Alessandro Scotti
 
Posts: 306
Joined: 20 Nov 2004, 00:10
Location: Rome, Italy

Re: Three ideas for the next Winboard...

Postby Igor Gorelikov » 22 Mar 2005, 10:41

Hi Alessandro,

And what about simple tournament mode?

It needs an additional dialog to select from the list of the engines (registered
in winboard.ini) and set options for a round-robin.

Igor
User avatar
Igor Gorelikov
 
Posts: 153
Joined: 27 Sep 2004, 10:12
Location: St. Petersburg, Russia

Re: Three ideas for the next Winboard...

Postby Gábor Szots » 22 Mar 2005, 11:47

Alessandro Scotti wrote:Hi folks,
here's three things I'm missing from the current Winboard, and how I think they could be implemented... let me know what you think!

1) GUI improvements (move list, full engine PV's, game stats, etc.)
2) GUI for engine options (a la UCI);
3) learning tools for human players (e.g. coaching, training, etc.)

Ok, let's see implementations now.

1) GUI improvements.
My idea is: let's give anyone the possibility to improve the GUI by registering a "boardlet". In practice, a boardlet would be a DLL that has its own window and is automatically loaded and managed by the main program. This design opens many interesting scenarios: displaying the move list, full PV's, graphical game statistics, game broadcasting and so on... they could be each managed by a dedicated boardlet. As boardlets are separated from the main program, they can be written with any language from Visual Basic, to Delphi, to C++, thus bypassing the limits of Winboard itself.

2) GUI for engine options
This shouldn't require a new protocol version. Rather, an engine declares support for this feature using the standard "feature" command and then the GUI proceeds accordingly. The idea is: make the protocol similar or identical to UCI (to help engine authors) and then update PolyGlot... suddenly, there will be many engines to play with until the others catch up.

3) I'm too bad to play against a computer, but I've had great fun playing against my old copy of Fritz 6 in one of its training modes. My favorite is when the engine blunders on purpose and creates mini-combinations for you to discover. I miss this feature a lot, and would really like to see it in Winboard (or another GUI). No particular ideas on this... feedback would be very welcome!

Uhmmm... comments?


What I am missing most is the possibility to set different times on the clocks. Even Arena can't do it.
Also, I would like to have WB wait until both engines initialize, and only then start the game.

G?bor
Gábor Szőts

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

Re: Three ideas for the next Winboard...

Postby Gábor Szots » 22 Mar 2005, 11:48

Sorry, my message should have began with this line:

"Hi Alessandro"

:-)
Gábor Szőts

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

Re: Three ideas for the next Winboard...

Postby Alessandro Scotti » 22 Mar 2005, 12:30

G?bor Szots wrote:What I am missing most is the possibility to set different times on the clocks. Even Arena can't do it.


Hi Gabor,
can you tell me how you would like this to work, so I can make an idea about a possible implementation?
User avatar
Alessandro Scotti
 
Posts: 306
Joined: 20 Nov 2004, 00:10
Location: Rome, Italy

Re: Three ideas for the next Winboard...

Postby Gábor Szots » 22 Mar 2005, 12:42

Alessandro Scotti wrote:
G?bor Szots wrote:What I am missing most is the possibility to set different times on the clocks. Even Arena can't do it.


Hi Gabor,
can you tell me how you would like this to work, so I can make an idea about a possible implementation?


Sometimes I have to interrupt games and I would like to be able to continue them. The problem is that the engines have probably used up different amount of time. Therefore, when I load the interrupted game, I would like to have the possibility to set the clocks for white and black independently. The procedure could be as follows:

1st step: Start WB with the two engines.
2nd step: Load the interrupted game and jump to its end.
3rd step: Set the time controls, e.g. 18+15 for white and 26+15 for black.
4th step: Start the game.
Gábor Szőts

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

Re: Three ideas for the next Winboard...

Postby milix » 22 Mar 2005, 14:21

Hi Alessandro,

1) GUI improvements (move list, full engine PV's, game stats, etc.)

I need this also but I have my thoughts on the described implementation proposal. In my opinion Winboard must not be *much* different than XBoard.

2) GUI for engine options (a la UCI)

Nice but it mimics UCI too much!

For me, I'll like to see FRC support and the ability to use bitmaps for squares/pieces.
Anastasios Milikas
milix
 
Posts: 54
Joined: 04 Nov 2004, 19:36
Location: Greece

Re: Three ideas for the next Winboard...

Postby Alessandro Scotti » 22 Mar 2005, 16:26

milix wrote:Hi Alessandro,

1) GUI improvements (move list, full engine PV's, game stats, etc.)


I need this also but I have my thoughts on the described implementation proposal. In my opinion Winboard must not be *much* different than XBoard.


Although I don't have problems with Winboard being different from Xboard, I think most if not all of the work can be done by the system independent code here.
Then, the portability issue is "delegated" to the boardlet implementation: some will work on Windows only, some on both, some on X only (*).

(*) Well ok, not likely!

milix wrote:
2) GUI for engine options (a la UCI)


Nice but it mimics UCI too much!

For me, I'll like to see FRC support and the ability to use bitmaps for squares/pieces.


Yes, if possible I would like it identical to UCI! The protocol is already good and tested, and dozens of UCI engines would be immediately available thanks to PolyGlot.

P.S. I would like FRC too... but for the moment I can at least offer some aesthetic improvements, see the "Tinkering with Winboard" thread!
User avatar
Alessandro Scotti
 
Posts: 306
Joined: 20 Nov 2004, 00:10
Location: Rome, Italy

Re: Three ideas for the next Winboard...

Postby Michael Yee » 22 Mar 2005, 19:05

3) learning tools for human players (e.g. coaching, training, etc.)


Hi Alessandro,

With respect to training modes, I think there are two main approaches:

(1) have engines themselves support it (through some kind of "LimitStrengh" option)

or

(2) have GUI support training/coaching mode with any engine.

Option (1) is not really new--several engines already offer different ways of limiting strength. (And Mike Byrne's modifications to crafty support a lot of interesting ways to weaken the strength.)

But if you want to enable the GUI to alert the human that a combination possibility exists, then option (2) seems the way to go.

Here's one idea I had:

(1) Get exact scores for all moves in the root position
(2) With some probability, select a losing line where the material balance changes at some desired depth. For example,

score(mv1) = 0.05
score(mv2) = 0.04
score(mv3) = -1.05
score(mv4) = -2...
...

If the material balance along the PV starting with move mv3 becomes -1 after ply 2, then it means (or might mean) that the computer will lose the pawn immediately. But if the material balance becomes -1 on ply 4, then maybe the computer will lose the pawn after a 2-move combo from the human.

This technique wouldn't be perfect, but at least it would allow the GUI to get a sense of how difficult the combination is.

Michael
Michael Yee
 
Posts: 51
Joined: 26 Sep 2004, 19:49

Re: Three ideas for the next Winboard...

Postby Alex Guerrero » 23 Mar 2005, 04:26

About dll.
It would be extraordinary.
I would wish an control between GUI winboard and engine, thus any people might do an openings-book engine, or an adapter UCI-WB for Winboard without need of pipes.
Maybe too, we might change of engine or its level without closing Winboard.

Regards.
Alex Guerrero
 
Posts: 53
Joined: 02 Oct 2004, 06:38
Location: Sinaloa Mexico

Re: Three ideas for the next Winboard...

Postby Anthony Cozzie » 23 Mar 2005, 05:15

Alessandro: Arena does 99% of this, however there are 3 problems with Arena:

1. It doesn't run on Linux

2. Quisinsky & Conkie's shoe sizes are larger than their IQs.

3. By the time they get all the bugs worked out of it, it won't be free any more.

However we must give the Arena team their due: Arena has a LOT of stuff that Xboard doesn't: UCI support, evaluation graphs, much better tournament support, looks nicer, better engine management, etc. Its not perfect, and it still needs some bug fixing, but it is a quality interface and the result of a lot of man-hours. Doing all that stuff for XBoard would require even more time than for Arena due to the crossplatform nature. I'd love to see someone do this, but recognize that it is a lot of work.

I don't think your plugin idea will work out well. If nothing else, I hate having 5000 windows on my screen, and in general design by commitee doesn't work. But feel free to try; I've been wrong before.

Gabor: What you want is an adjourn feature.

Yee: if you find a good way to do human learning/coaching, let me know and we'll make a lot of money.

anthony
Anthony Cozzie
 
Posts: 50
Joined: 17 Oct 2004, 19:35

Re: Three ideas for the next Winboard...

Postby Alessandro Scotti » 23 Mar 2005, 10:51

Anthony Cozzie wrote:Alessandro: Arena does 99% of this, however there are 3 problems with Arena...


Hi Anthony,
portability and not being open source are important issues for me, as I use Win/Xboard on Linux and Windows, and soon on Mac OS too. Also, the program being free and open makes me feel somewhat safer! But, there has been progress in this field and Winboard is starting to feel a bit outdated IMO...

Anthony Cozzie wrote:I don't think your plugin idea will work out well. If nothing else, I hate having 5000 windows on my screen, and in general design by commitee doesn't work.


Well it doesn't work that way. What is installed and what is displayed are entirely under the user control. You may have boardlets for the move list, the evaluation graph, the per-engine PV's and so on, but still you get to choose what to see, and where. Winboard would take care of dispatching the relevant events to boardlets (as opposed to the current situation where some applications have to parse the log file, e.g. Tom's server) and also provide some window management (e.g. you minimize Winboard, all the boardlets disappear too).

Anthony Cozzie wrote:Gabor: What you want is an adjourn feature.


Adjourning as in suspending the game is not difficult to implement, but resuming might be not so easy. Anyway, you probably need both to have something useful!

Anthony Cozzie wrote:Yee: if you find a good way to do human learning/coaching, let me know and we'll make a lot of money.


Hi Michael, ignore him and let me know first! :D

Anyway, Michael's idea #2 is more or less what I was thinking of, and for me a good argument for having the GUI pick up the move to play, rather than the engine. I'm still not entirely sure the whole thing would work without explicit engine support, but if so that would be a great feature!
User avatar
Alessandro Scotti
 
Posts: 306
Joined: 20 Nov 2004, 00:10
Location: Rome, Italy

Re: Three ideas for the next Winboard...

Postby Alessandro Scotti » 23 Mar 2005, 11:03

Alex Guerrero wrote:About dll.
It would be extraordinary.
I would wish an control between GUI winboard and engine, thus any people might do an openings-book engine, or an adapter UCI-WB for Winboard without need of pipes.
Maybe too, we might change of engine or its level without closing Winboard.


Hi Alex,
well to be honest I wasn't thinking of going so far! But what you suggest, is already possible. All (!) there is to do, is to write a dummy engine that is actually an engine manager and install it under Winboard. Existing programs that fall into a similar category would be BookThinker (hope I got the name right) and Polyglot.
In fact, one of the things I was considering for adding UCI support to Winboard is making it aware of Polyglot and having it used automatically for UCI engines.
User avatar
Alessandro Scotti
 
Posts: 306
Joined: 20 Nov 2004, 00:10
Location: Rome, Italy

Re: Three ideas for the next Winboard...

Postby Anonymous » 23 Mar 2005, 22:21

G?bor Szots wrote:
Alessandro Scotti wrote:Hi folks,
here's three things I'm missing from the current Winboard, and how I think they could be implemented... let me know what you think!


What I am missing most is the possibility to set different times on the clocks. Even Arena can't do it.
Also, I would like to have WB wait until both engines initialize, and only then start the game.

G?bor


Arena can do it. But you have first to enable saving games with time for each move. This information will be saved in PGN file.
When you relod this game (in your case it will be a non finished game), you have to chech whether two starting engins are loaded. Then you go to the end of game in its moves list, ajust which engine is to play next, and click the Demo button. The game will be finished correctly with the correct time left for each engine.

Stevan
Anonymous
 

Re: Three ideas for the next Winboard...

Postby Dann Corbit » 23 Mar 2005, 22:25

If the engine receives an adjourn signal, it could save its hash files to disk.

When it received a resume signal, it could load them from disk.

That solves the chief difficulty with adjourning a game, I think.
Dann Corbit
 

Re: Three ideas for the next Winboard...

Postby Anonymous » 23 Mar 2005, 23:03

Alessandro Scotti wrote:Adjourning as in suspending the game is not difficult to implement, but resuming might be not so easy. Anyway, you probably need both to have something useful!


I think the problem is only the possibility to change two playing engines without exiting from Winboard.
Saving time with each move you already have, saving game exists.

Now,
a) we reload a selected game (an not finished one for example),
b) navegate through the move list while the GUI makes calculation of both engines? left time,
c) select two identical engines for resuming this game from any position we want, and
d) click PLAY.

In case we want adjourning of a game, all these should be automatic but with not finished (sdjourned) games only, and resuming them from the final position.

Stevan
Anonymous
 


Return to Winboard and related Topics

Who is online

Users browsing this forum: No registered users and 26 guests