UCI GUI - development stage
UCI GUI - development stage
I'm in the early stages of developing my chess engine. Is it possible to use UCI for testing during development and if so what do I need to have in place to utilize it?
Thanks
Daz
Thanks
Daz
-
- Posts: 190
- Joined: Sun Jul 14, 2013 10:00 am
- Real Name: H.G. Muller
Re: UCI GUI - development stage
You would have to make your engine communicate through the UCI protocol. I don't know how you communicate with it now. Usually it is far easier to adapt a naturally evolved communication method to WinBoard protocol than to UCI, though. Often just making sure it reacts to the command 'new' to start a new game, to 'go' for making the first move, and replies to an entered move with a move prefixed by the 'move' keyword could already be enough to have it play automated games against other engines.
Re: UCI GUI - development stage
Thanks for the reply. I found one of your pages on winboard (below) which uses minimum number of commands and looks fairly simple - so may be a starting point for me. I take it you developed this protocol?
http://home.hccnet.nl/h.g.muller/interfacing.txt
UCI seems more popular than winboard but Prof Hyatt doesn't seem to be a fan of it.
Thanks
Daz
http://home.hccnet.nl/h.g.muller/interfacing.txt
UCI seems more popular than winboard but Prof Hyatt doesn't seem to be a fan of it.
Thanks
Daz
-
- Posts: 190
- Joined: Sun Jul 14, 2013 10:00 am
- Real Name: H.G. Muller
Re: UCI GUI - development stage
Well, in the end it doesn't matter much how popular it is, as long as it works. Most people would not mind driving a Porsche even though a Toyota Yaris might be more popular. Especially if the price would be lower.
-
- Site Admin
- Posts: 1226
- Joined: Wed Jun 09, 2010 7:49 am
- Real Name: Jeremy Bernstein
- Location: Berlin, Germany
- Contact:
Re: UCI GUI - development stage
UCI is also fairly easy to implement and, as you mention, the protocol of choice for many of the strongest engines out there (note that Komodo, Stockfish, Houdini and friends don't support WinBoard). While UCI has its flaws, I find it ultimately nicer to use than WinBoard. The two protocols follow different philosophies. For a GUI author, I would suggest that UCI is more attractive.
Of course, you can always support both.
Of course, you can always support both.
-
- Posts: 190
- Joined: Sun Jul 14, 2013 10:00 am
- Real Name: H.G. Muller
Re: UCI GUI - development stage
But the guy is developing an engine, not a GUI...
The point is that people that started writing a Chess program without any standard protocol in mind almost always already have ways to enter a move, print a move and start a new game. It means they only have to change the format in which they print the move (prefix the 'move' keyword) and the name of the command to reset the engine, and they can already use it for automated games as a WinBoard engine. It is often just a 3-min change.
The point is that people that started writing a Chess program without any standard protocol in mind almost always already have ways to enter a move, print a move and start a new game. It means they only have to change the format in which they print the move (prefix the 'move' keyword) and the name of the command to reset the engine, and they can already use it for automated games as a WinBoard engine. It is often just a 3-min change.