UCI协议:修订间差异

来自皮卡鱼 Wiki
跳到导航 跳到搜索
无编辑摘要
无编辑摘要
第35行: 第35行:


其中,“uciok”是必需的。如果界面输入uci后,没有接收到引擎输出的“uciok”,那么界面会认为该程序不是UCI引擎。
其中,“uciok”是必需的。如果界面输入uci后,没有接收到引擎输出的“uciok”,那么界面会认为该程序不是UCI引擎。
== position fen ==
给引擎输入[[FEN(局面码)是什么?|FEN]]局面。
例如:
position fen 3k1a3/4a4/5n3/9/9/9/9/9/9/4KR3 w
或者在此基础上加上movelist(历史着法):
5a3/3ka4/5n3/9/9/9/9/9/9/4K1R2 w - - 0 1 moves g0f0 d8d9

2024年4月8日 (一) 03:18的版本

本页面正在施工中...

quit

退出引擎,输入后引擎将立即退出。引擎不会输出任何内容。

setoption

设置引擎选项,用法:setoption name <id> [value <x>]。

其中,<id>是UCI选项名,<x>是你要设置的值。

例如界面要将引擎的线程数设置为16,可发送“setoption name Threads value 16”。

某些选项,如Clear Hash(清空置换表),可省略value直接使用,例如:“setoption name Clear Hash”。

关于UCI选项,详见“UCI选项”页面,这里不再赘述。

引擎不会输出任何内容。

isready

用于检查引擎是否工作正常,引擎应始终输出“readyok”。

uci

用于获取引擎相关信息(如名称、作者、UCI选项等),输出示例如下:

id name Pikafish 2024-02-18
id author the Pikafish developers (see AUTHORS file)
option name Debug Log File type string default option name Threads type spin default 1 min 1 max 1024 option name Hash type spin default 16 min 1 max 33554432 option name Clear Hash type button option name Ponder type check default false option name MultiPV type spin default 1 min 1 max 128 ... uciok

其中,“uciok”是必需的。如果界面输入uci后,没有接收到引擎输出的“uciok”,那么界面会认为该程序不是UCI引擎。


position fen

给引擎输入FEN局面。

例如:

position fen 3k1a3/4a4/5n3/9/9/9/9/9/9/4KR3 w

或者在此基础上加上movelist(历史着法):

5a3/3ka4/5n3/9/9/9/9/9/9/4K1R2 w - - 0 1 moves g0f0 d8d9