-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathUSI-X_Protocol_Othello_Version_仕様書1.txt
62 lines (46 loc) · 3.18 KB
/
USI-X_Protocol_Othello_Version_仕様書1.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
USI-Xプロトコルオセロ版の詳細な仕様について
0.目次
|
|-0:目次
|
|-1:概要
|
|-2:盤・sfen・moveの扱い
|
|-3:拡張コマンド・USIから仕様が変わったコマンド
1.概要
USI-Xプロトコルとは、やねうらお氏(世界トップクラスの将棋AI、やねうら王の開発者)
が提案した、対局ゲーム標準通信プロトコルである。
この文書では、USI-Xプロトコルをオセロに対応させる際の詳細な仕様を提案する。
以前我々が提案していたUOIプロトコルの使用を一部受け継いでいる。
USI-Xの大まかな仕様は以下のリンクを参照のこと:
http://yaneuraou.yaneu.com/2022/06/07/standard-communication-protocol-for-games/
2.盤・sfen・moveの扱い
盤の座標は以下のようになっている
|a1|b1|c1|d1|e1|f1|g1|h1|
|a2|b2|c2|d2|e2|f2|g2|h2|
|a3|b3|c3|d3|e3|f3|g3|h3|
|a4|b4|c4|d4|e4|f4|g4|h4|
|a5|b5|c5|d5|e5|f5|g5|h5|
|a6|b6|c6|d6|e6|f6|g6|h6|
|a7|b7|c7|d7|e7|f7|g7|h7|
|a8|b8|c8|d8|e8|f8|g8|h8|
moveは、石を置くマスの座標で表す。
パスは"pass"、投了は"resign"で表す。
sfenは、1:盤面の状態を表す長さ64の文字列 と、2: 手番を表す長さ1の文字列 3: 手数を表す数字の合計65文字 + αで構成されている。
1は、黒石をX、白石をO、空きマスを-で表し、a1, b1, c1, d1, e1, f1, g1, h1, a2, b2, c2, d2, e2, f2, g2, h2, ・・・・・g8, h8の順番に並んでいる。
2は、現在の手番が黒番だとB、白番だとWとなる。
例(初期局面): ---------------------------OX------XO---------------------------B1
3.拡張コマンド・USIから仕様が変わったコマンド
"score_scale_and_type"コマンド: GUIが評価値の形式とスケールを問い合わせるコマンド("_"を半角スペースなどに変えると動きません)
"scoretype"コマンド: 上の"score_scale_and_type"コマンドに対する応答
scoretype [形式] min [最小値] max [最大値]と記述する。
[形式]には["WP"(勝率), 'stone'(石差), 'other'(その他)]のいずれかが入る
"ponderhit"コマンド: ponderがhitした際にGUI側が送るコマンド
USIから仕様変更が行われたコマンド
ponderhit btime [黒番の残り時間] wtime [白番の残り時間] [持ち時間オプション]のように記述する。
持ち時間の記述はすべてミリ秒単位で行う。
[持ち時間オプション]はフィッシャークロックの加算時間や秒読みの時間についてについて記述する。省略可能。USIプロトコルのgoコマンドと同じように記述する。
例1| 黒番持ち時間残り10秒、白番は20秒、1手当たり5秒加算の設定でponderがhitした場合のコマンド: ponderhit btime 10000 wtime 20000 binc 5000 winc 5000
例2| 黒番持ち時間残り20秒、白番は10秒、秒読み10秒の設定でponderがhitした場合のコマンド: ponderhit btime 20000 wtime 10000 byoyomi 10000
例3| 黒番持ち時間残り10秒、白番は20秒、切れ負けの設定でponderがhitした場合のコマンド: ponderhit btime 10000 wtime 20000