トップ 一覧 検索 ヘルプ RSS ログイン

DigitalCurlingProtocolの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!Digital Curling Protocol (DCP) v.0.1 beta
カーリングAIとサーバ間の通信プロトコルをDigital Curling Protocol (DCP) として定義しています。{{br}}
 現在のバージョンは v.0.1 beta です。{{br}}

!!カーリングAIからサーバ

::ISREADY   -   準備完了を通知するコマンド

::PUTSTONE   -   ストーン配置を選択するコマンド(ミックスダブルスのみ)
:::PUTSTONE type
:::    type   -   ストーン配置
:::                  0: センター, 自分のストーンが手前
:::                  1: パワープレイ, 自分のストーンが手前
:::                  2: センター, 自分のストーンがハウス内
:::                  3: パワープレイ, 自分のストーンがハウス内

::BESTSHOT ‐ ショットを送るコマンド
:::BESTSHOT x y turn{{br}}
:::  x ‐ ショットの強さ(横方向){{br}}
:::  y ‐ ショットの強さ(縦方向){{br}}
:::  turn ‐ 回転方向(0:右回転、1:左回転)

::CONCEED   -   コンシード(投了)を行うコマンド

!!サーバからカーリングAI

::ISREADY - カーリングAIの準備を待つコマンド
:::ISREADY
:::※カーリングAIはこのコマンドを受信したらREADYOKコマンドを返してください{{br}}

::NEWGAME - 試合開始を通知するコマンド
:::NEWGAME first second{{br}}
:::  first      - 先手プレイヤ(AI)の名前{{br}}
:::  second  - 後手プレイヤ(AI)の名前{{br}}

::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{{br}}
:::  xn ‐ n投目のストーンのx座標{{br}}
:::  yn ‐ n投目のストーンのy座標{{br}}

::SETSTATE ‐ 局面の情報を通知するコマンド
:::SETSTATE shot cend fend move{{br}}
:::  shot ‐ 現在のショット数{{br}}
:::  cend ‐ 現在のエンド数{{br}}
:::  fend ‐ 最終エンド{{br}}
:::  move ‐ 手番(0:第一エンドで先手だったチーム、1:第一エンドで後手だったチーム){{br}}

::GO ‐ 思考開始を合図するコマンド
:::GO t1 t2{{br}}
:::  t1 ‐ 先手の残り持ち時間(ミリ秒){{br}}
:::  t2 ‐ 後手の残り持ち時間(ミリ秒){{br}}
:::※カーリングAIはこのコマンドを受信したらBESTSHOTコマンドを返してください{{br}}

::SCORE - 直前のエンドの得点を通知するコマンド
:::SCORE score{{br}}
:::  score - 直前のエンドの得点(+ならば'''1エンド目で'''先手だったプレイヤの得点、-ならば後手の得点){{br}}

::GAMEOVER ‐ 試合の結果を送るコマンド{{br}}
:::GAMEOVER WIN/LOSE{{br}}
{{br}}{{br}}