Digital Curling Protocol (DCP) v.0.1 beta
カーリングAIとサーバ間の通信プロトコルをDigital Curling Protocol (DCP) として定義しています。
現在のバージョンは v.0.1 beta です。
カーリングAIからサーバ
- ISREADY - 準備完了を通知するコマンド
- PUTSTONE - ストーン配置を選択するコマンド(ミックスダブルスのみ)
- PUTSTONE type type - ストーン配置 0: センター, 自分のストーンが手前 1: パワープレイ, 自分のストーンが手前 2: センター, 自分のストーンがハウス内 3: パワープレイ, 自分のストーンがハウス内
- BESTSHOT ‐ ショットを送るコマンド
- BESTSHOT x y turn
x ‐ ショットの強さ(横方向)
y ‐ ショットの強さ(縦方向)
turn ‐ 回転方向(0:右回転、1:左回転)
- CONCEED - コンシード(投了)を行うコマンド
サーバからカーリングAI
- ISREADY - カーリングAIの準備を待つコマンド
- ISREADY※カーリングAIはこのコマンドを受信したらREADYOKコマンドを返してください
- NEWGAME - 試合開始を通知するコマンド
- NEWGAME first second
first - 先手プレイヤ(AI)の名前
second - 後手プレイヤ(AI)の名前
- GAMEINFO - 試合情報を通知するコマンド
- GAMEINFO rule_type random_type rule_type - ルールの種類(0:通常, 1:ミックスダブルス) random_type - 乱数生成器の種類(0:直交座標系, 1:極座標系)
- RANDOMSIZE - 乱数の大きさを通知するコマンド
- RANDOMSIZE size_1 size_2 size_1 - x軸方向(直交座標系),大きさ v にかかる乱数の大きさ size_2 - y軸方向(直交座標系),角度 theta にかかる乱数の大きさ
- PUTSTONE - ストーン配置の選択を要求するコマンド(ミックスダブルスのみ)
- ミックスダブルスルールにおいてのみ使用されます
- POSITION ‐ ストーンの位置情報を通知するコマンド
- POSITION x1 y1 x2 y2 ・・・ x16 y16
xn ‐ n投目のストーンのx座標
yn ‐ n投目のストーンのy座標
- SETSTATE ‐ 局面の情報を通知するコマンド
- SETSTATE shot cend fend move
shot ‐ 現在のショット数
cend ‐ 現在のエンド数
fend ‐ 最終エンド
move ‐ 手番(0:第一エンドで先手だったチーム、1:第一エンドで後手だったチーム)
- GO ‐ 思考開始を合図するコマンド
- GO t1 t2
t1 ‐ 先手の残り持ち時間(ミリ秒)
t2 ‐ 後手の残り持ち時間(ミリ秒)
※カーリングAIはこのコマンドを受信したらBESTSHOTコマンドを返してください
- SCORE - 直前のエンドの得点を通知するコマンド
- SCORE score
score - 直前のエンドの得点(+ならば1エンド目で先手だったプレイヤの得点、-ならば後手の得点)
- GAMEOVER ‐ 試合の結果を送るコマンド
- GAMEOVER WIN/LOSE
最終更新時間:2018年07月12日 08時55分29秒