通信対局規約
TCP/IP上でNNGSに改変を加えたものを使って対局するものとする。
1.ネットワーク環境
- 会場にはネットワークケーブル(RJ-45 モジュラージャック)が準備される。 参加者は、そのネットワークケーブルを用いて計算機をネットワークに接続する。
- IPはDHCPで割り当てられる。ただし、ネットワーク環境の不具合によってDHCPによるIPの 割り当てが困難な場合には手動でIPを設定していただくことがある。
2.対局サーバ
- 対局サーバはNNGS 1.1.22をベースに修正を施したものを使用する。
3.プロトコル
- 通信対局にはNNGSを拡張したプロトコルを用いる。なお、マッチング及びゲームの開始は、AI竜星戦2018と同様に管理者が操作する。
参加者が使ってよい命令は下記の5種類に限る。- ログイン・ログアウトのための通信
[ユーザ名, パスワードの送信, "quit"コマンド] - 対局のための通信
[石を打つ位置の指定, "pass"] - 表示を簡略化するための命令
["set client FALSE", "set verbose FALSE"] - 残り時間を問い合わせる命令
["time"] - 対局を終了する命令
["done"]
この種類以外の通信を行い、サーバまたは相手方に問題が生じた場合には、 処罰の対象になることがあるので注意すること。
管理者が対局開始するために、以下のコマンドが用意されている。
- ログイン・ログアウトのための通信
- 対局を開始するための通信
["adminmatch"コマンド]
テスト期間中のみ管理者用の”admin”アカウントからテスト対局を開始することができる。この期間中は、パスワードadminでログインできるように する。このコマンドを自由に使っても良いが、本番では”admin”アカウントにパスワードをかけるので、本番中については、管理者以外使うことはできな い。
コマンドは以下のように使うこと。
player1とplayer2にログインした状態で、”admin”アカウントで以下のように入力する。
"adminmatch <player1> <player2> <color> 19 <minutes> <seconds>"
例えば、alpha対betaを、持ち時間30分、秒読み無しで、alphaの黒番で始めるには
"adminmatch alpha beta b 19 30 0"
となる。
4.終局手順
- 連続して2回サーバが"pass"を受け取った場合に対局は停止するが、その後の死に石の情報を送信する手順は無視する。(行う必要はない)。各プレイヤは対局の停止の直後に"done"を送信する。なお、勝敗は前述の「対局ルール」の中の「4.対局のルール及び、終局と勝敗の決定」に基づいて決められている。
5.テストサーバ
- 本番で使用するサーバはテスト用に以下のように公開する。 プログラムの動作チェックをすることを強く推奨する。(なお、テスト期間は、11月25日~12月12日とする。公開が遅れ、大変失礼いたしました。)
サーバ:nngs1.3-ize.jp
ポート:9696 - テストサーバについて
NNGS 1.1.22を独自に改変したプログラムを使用する。
ユーザ登録をしなくてもゲストアカウントとして接続ができる。従来のようなユーザによるマッチング操作は行わない。“admin”が”adminmatch”コマンドを発行することでマッチングを行う。テスト期間中は”admin”アカウントのパスワードは、"admin"とする。期間中、参加者は自由に使って良い。「自作プログラムvs自分」といった形でのプログラムの動作確認を行うことができる。
ユーザ登録(メールアドレスが必要)をしてもかまいません。
【登録用コマンド】register ログイン名 メールアドレス 名前 名字
・メールアドレスにパスワードが送信されます。
・以後、接続にこのパスワードが必要となります。