Changes

Jump to: navigation, search

UCI

1,614 bytes added, 22:51, 19 January 2021
no edit summary
==Pro==
* Statelessness. That reduces unsynchronised problems between chess GUIs and engines
* Chess systems (chess GUIs and chess engines) may work much more stablestably* Remove the need of having extra configuration/init files for engines
* Easier for chess engine developers to support: easy to parse, create commands, almost no ambiguous, straight/simple code since it is almost not required automatic algorithms
* Easier for debugging: easy to start a match from the middle of a game (using various opening types); easy to pick up a position from long logs (for debugging purposes)
Fabien wrote a protocol translation program, [[PolyGlot]] to allow use of the new protocol on [[Linux]], though this is now supported natively by the powerful [[Scid vs. PC]] toolkit. Scid vs. PC itself includes Polyglot code to enable support for Polyglot opening books.
 
[[Marco Costalba]] replied [[Robert Hyatt]] on a [[Talkchess]] thread <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=7&t=58392&hilit=winboard&start=20#p650169 Re: Ugly UCI] by [[Kempelen]], [[CCC]], November 29, 2015 » [[Protocols]]</ref>
 
The protocol is brilliant (and you can clearly realize it was designed by a very good programmer) because allows the code needed to handle it to be:
- Straightforward
- Simple (meaning with the minimal number of 'if' branches and logic)
- General (meaning the same algorithm can handle all the different cases in an uniform fashion).
The aim of the UCI protocol is to make the code simple, that's why I think it was made for programmers by a (great) programmer.
[[Pham Hong Nguyen|Nguyen Pham]] replied [[Harm Geert Muller]] on a [[Talkchess]] thread <ref>[http://www.talkchess.com/forum3/viewtopic.php?f=7&t=72019&start=36 Re: PGN standard, its improvement and standardization] by [[Pham Hong Nguyen|Nguyen Pham]], [[CCC]], October 14, 2019 » from [[Portable Game Notation]] to [[Protocols]]</ref>
=Engines=
* [[:Category:UCI|UCI Engines]]
* [[:Category:Linux UCI|Linux UCI Engines]]
<span id="GUI"></span>
=[[GUI|GUIs]]=
* [[Aquarium]]
* [[Arena]]
* [[Shredder#GUI|Shredder GUI]]
* [[Tarrasch]]
 
=[[CLI|CLIs]]=
* [[Cutechess-cli]]
* [[c-chess-cli]]
=Utilities=
* [[CPW-Engine_com]]
* [[Engine Testing]]
* [[USI]] - Universal Shogi Interface
* [[Vice#UCI|Vice UCI-Videos]]
* [[WinBoard]]
* [http://www.talkchess.com/forum/viewtopic.php?t=42037 About UCI multipv] by [[Fermin Serrano]], [[CCC]], January 17, 2012 » [[Principal Variation#MultiPV|Multi-PV]]
* [http://www.talkchess.com/forum/viewtopic.php?t=42154 good macintosh guy for UCI engine development] by [[Sam Hamilton]], [[CCC]], January 25, 2012 » [[GUI]], [[Macintosh]], [[Mac OS]]
* [https://open-chess.org/viewtopic.php?f=7&t=2053 Remote UCI engines and port forwarding] by itias, [[Computer Chess Forums|OpenChess Forum]], August 01, 2012
* [http://www.open-chess.org/viewtopic.php?f=5&t=2146 Ponder and UCI] by geko, [[Computer Chess Forums|OpenChess Forum]], November 19, 2012 » [[Pondering]]
* [http://www.talkchess.com/forum/viewtopic.php?t=46586 Problem with UCI engines hash in Arena] by Carl Langan, [[CCC]], December 26, 2012 » [[Arena]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=72140 UCI Win/Draw/Loss reporting] by [[Gian-Carlo Pascutto]], [[CCC]], October 22, 2019
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=72686 UCI pondering and time management] by [[Vivien Clauzon]], [[CCC]], December 30, 2019 » [[Pondering]], [[Time Management]]
 
==2020 ...==
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=73592 UCI to CECP] by Fulvio, [[CCC]], April 07, 2020 » [[Chess Engine Communication Protocol|CECP]]
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=73617 UCI Options, clarifation] by Alan Cooper, [[CCC]], April 10, 2020
* [http://www.talkchess.com/forum3/viewtopic.php?f=2&t=75218 Remote UCI] by [[Daniel José Queraltó]], [[CCC]], September 26, 2020
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=75783 UCI wrapper?] by Kurt Lanc, [[CCC]], November 13, 2020
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=75992 UCI Gui to remote Linux Engine] by [[Joshua Shriver]], [[CCC]], December 05, 2020 » [[GUI]], [[Linux]]
'''2021'''
* [http://www.talkchess.com/forum3/viewtopic.php?f=7&t=76344 Uci "go" command without other parameters] by [[Vivien Clauzon]], [[CCC]], January 17, 2021
=External Links=

Navigation menu