Author: Russell Reagan
Date: 14:15:40 09/12/02
Go up one level in this thread
On September 12, 2002 at 11:02:51, Miguel A. Ballicora wrote: >You are looking at a derivative of WB-II. :-) >With the "feaure" command, you can alter winboard in any way you want keeping >compatibility to WBII. So, nobody stop any GUI writer to come up with >improvements over winboard. If Tim Mann is the one that makes the improvement, >it will be called WB-III. The feature command is too restrictive for what I'm talking about. I'm talking about a protocol that would allow you to support Winboard (any version), UCI, and any other protocol that comes along. Even if an engine doesn't support a protocol, but only has a text mode console interface, you could make that work also. The basic idea is that the new protocol has certain commands, and you can set those commands to do other things. Kind of like aliasing or overridding. For example, if the new protocol's command to start a new game was "newgame", then you could have a configuration file called winboard.cfg and have the line: newgame=new Similarly, you could have a file named uci.cfg and have: newgame=position startpos In reality it would be a little more advanced than that to support aliasing for positions and moves and such, but the idea seems to work (in my head). The true advantage of this is that now you don't even have to implement a protocol. If I create Russell's Simple Chess Program and the command I use to start a new game is 'reset', then I just write a .cfg file russell.cfg: newgame=reset and my engine will now run under the new protocol in it's GUI. Another idea that I think should certainly be included is the ability to modify the GUI's menu. So if you wanted to be able to turn swindle mode on or off in Crafty, Crafty could send something like this to the engine: menu Mode>Swindle On "swindle on" menu Mode>Swindle Off "swindle off" That would add a top level menu called Crafty and add whatever items Crafty tells it to add to the menu, and when the user clicked on Crafty>Mode>Swindle On the GUI would send "swindle on" to the engine, and now you can play in swindle mode from the GUI. You could do this to support any command that you wanted FROM THE GUI. Current protocols are just communication protocols, they aren't GUIs, and I think it would be very cool if people had the ability to focus their attention on writing their engine, and still have access to a kick ass GUI that was fully customizable. Winboard is customizable from the user's point of view (like setting colors), but the user is stuck with a set of commands he/she can send to the engine from the GUI, and that's no good. It should be easier without making assumptions about the engine as UCI does. So anyway, I have a few ideas about things I think would be great to add to a new protocol, but I also need people who are more experienced to provide input on this subject. If I knew that people would be interested in this topic, I'd give it a go and draft a new protocol and let people blast away at it, rewrite it, blast away, over and over until it's decent, but my inquiries have led me to believe that I'm in the minority in wanting a new protocol and GUI. If I'm wrong, speak up and we'll get something done. Russell
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.