diff options
| author | Aargh Rai <aargh.rai+git@gmail.com> | 2026-07-10 16:01:57 +0530 |
|---|---|---|
| committer | Aargh Rai <aargh.rai+git@gmail.com> | 2026-07-10 16:01:57 +0530 |
| commit | a14da2fe3864712dab4e7c4cfb5c323026d668de (patch) | |
| tree | 418c8c8ff44a611cbe1c1269b10926527046e232 /resources/uci/uci_min.txt | |
| parent | 2761f8a533e2b025f209222a1e4ec70b91c7e8ee (diff) | |
moving header files to include directory & moving resources in it's own directory
i know currently there is race condition, but the code is getting too
messy, i will continue to this after i make a vis tool to analyse how i
should split up files & stuff
the code rn needs intense restructing for it to make any more progress
Diffstat (limited to 'resources/uci/uci_min.txt')
| -rw-r--r-- | resources/uci/uci_min.txt | 140 |
1 files changed, 140 insertions, 0 deletions
diff --git a/resources/uci/uci_min.txt b/resources/uci/uci_min.txt new file mode 100644 index 0000000..58a85b6 --- /dev/null +++ b/resources/uci/uci_min.txt @@ -0,0 +1,140 @@ +GUI to engine: +* uci +* debug [ on | off ] +* isready +* setoption name <id> [value <x>] + Here are some strings for the example below: + "setoption name Nullmove value true\n" + "setoption name Selectivity value 3\n" + "setoption name Style value Risky\n" + "setoption name Clear Hash\n" + "setoption name NalimovPath value c:\chess\tb\4;c:\chess\tb\5\n" + +* register + The following tokens are allowed: + * later + the user doesn't want to register the engine now. + * name <x> + the engine should be registered with the name <x> + * code <y> + the engine should be registered with the code <y> + Example: + "register later" + "register name Stefan MK code 4359874324" + +* ucinewgame +* position [fen <fenstring> | startpos ] moves <move1> .... <movei> +* go + * searchmoves <move1> .... <movei> + Example: After "position startpos" and "go infinite searchmoves e2e4 d2d4" + the engine should only search the two moves e2e4 and d2d4 in the initial position. + * ponder + * wtime <x> + * btime <x> + * winc <x> + * binc <x> + * movestogo <x> + * depth <x> + * nodes <x> + * mate <x> + * movetime <x> + * infinite +* stop +* ponderhit +* quit + + +Engine to GUI: +* id + * name <x> + e.g. "id name Shredder X.Y\n" + * author <x> + e.g. "id author Stefan MK\n" +* uciok +* readyok +* bestmove <move1> [ ponder <move2> ] +* copyprotection +* registration +* info + e.g. "info currmove e2e4 currmovenumber 1" or + "info depth 12 nodes 123456 nps 100000". + e.g. "info depth 2 score cp 214 time 1242 nodes 2124 nps 34928 pv e2e4 e7e5 g1f3" + Additional info: + * depth <x> + * seldepth <x> + * time <x> + * nodes <x> + * pv <move1> ... <movei> + * multipv <num> + * score + * cp <x> + * mate <y> + * lowerbound + * upperbound + * currmove <move> + * currmovenumber <x> + * hashfull <x> + * nps <x> + * tbhits <x> + * sbhits <x> + * cpuload <x> + * string <str> + * refutation <move1> <move2> ... <movei> + Example: after move d1h5 is searched, the engine can send + "info refutation d1h5 g6h5" + if g6h5 is the best answer after d1h5 or if g6h5 refutes the move d1h5. + if there is no refutation for d1h5 found, the engine should just send + "info refutation d1h5" + * currline <cpunr> <move1> ... <movei> + + +* option + * name <id> + * <id> = Hash, type is spin + * <id> = NalimovPath, type string + * <id> = NalimovCache, type spin + * <id> = Ponder, type check + * <id> = OwnBook, type check + * <id> = MultiPV, type spin + * <id> = UCI_ShowCurrLine, type check, should be false by default, + * <id> = UCI_ShowRefutations, type check, should be false by default, + * <id> = UCI_LimitStrength, type check, should be false by default, + * <id> = UCI_Elo, type spin + * <id> = UCI_AnalyseMode, type check + * <id> = UCI_Opponent, type string + Examples: + "setoption name UCI_Opponent value GM 2800 human Gary Kasparov" + "setoption name UCI_Opponent value none none computer Shredder" + * <id> = UCI_EngineAbout, type string + Example: + "option name UCI_EngineAbout type string default Shredder by Stefan Meyer-Kahlen, see www.shredderchess.com" + * <id> = UCI_ShredderbasesPath, type string + * <id> = UCI_SetPositionValue, type string + + * type <t> + * check + a checkbox that can either be true or false + * spin + a spin wheel that can be an integer in a certain range + * combo + a combo box that can have different predefined strings as a value + * button + a button that can be pressed to send a command to the engine + * string + a text field that has a string as a value, + an empty string has the value "<empty>" + * default <x> + the default value of this parameter is x + * min <x> + the minimum value of this parameter is x + * max <x> + the maximum value of this parameter is x + * var <x> + a predefined value of this parameter is x + Examples: + Here are 5 strings for each of the 5 possible types of options + "option name Nullmove type check default true\n" + "option name Selectivity type spin default 2 min 0 max 4\n" + "option name Style type combo default Normal var Solid var Normal var Risky\n" + "option name NalimovPath type string default c:\\n" + "option name Clear Hash type button\n" |
