
電竜戦TOPへ
冒頭、一番重要なことを書いておく。
電竜戦の本番参加
将棋所>対局>サーバ通信対局(floodgate)
●人間かエンジンの設定を間違えないように入力する
●接続先を設定(電竜戦では160.16.80.27)
●ログイン名を入力(運営から送られてくる)
●パスワードを入力(運営から送られてくる)
●「対局を拒否されたらログアウトする」のチェックを外す
●「接続が切れたら再ログインをする」はどちらでもいいが、オンにしておくほうが良い。
●時間設定は設定不要(サーバ側で設定してしまうため)
●「OK」ボタンを押す
以上で拡張モードでログインされ、あとは寝ているだけで大会が自動的に進行する
ーーーーーーーーーーーーーーーーーーーーーーー
こんにちは。
電竜戦イベントの参加は、慣れてしまえば寝ている間に大会が進行して非常に便利である一方、
参加の仕方に少々戸惑う場合がある。その要因は、電竜戦サーバの元になっているshogi-serverの
複雑性が関係している。shogi-serverはCSAモードと拡張モード(floodgateモード)の2つの
モードが存在する。また、電竜戦には本番ステータスと、テストステータスの状態があり、
テストステータスはさらに自動対局マッチングがオンとオフに分かれる。
本記事ではそのあたりを交通整理して、今後電竜戦のイベントに際して、本記事を何度も
参照されるマニュアル代わりに使ってもらえるとよいと思っている。
shogi-serverの仕様
shogi-serverの仕様について説明する。shogi-serverはネット回線を通じて将棋対局を行う際、
審判としての役割をしてくれるサーバだ。
詳しいことは下記のリンクを読んでほしい
https://shogi-server.osdn.jp/
ポイントとしてはCSAモードと拡張モードの2種類あるということだ。両者の大きな違いは、対局終了後に
強制的にログアウトされるか、接続は維持されるかどうかだ。校舎であれば一度ログインしてしまえば
あとは寝ているだけで対局が永続的に可能である。電竜戦本番では拡張モードしか使わない。
じゃあ、何のためにCSAモードってあるの?、というと電竜戦ではテストステータスで自動マッチングが
オンになっているときは、CSAモードでログインしたものが2人いると、両者は自動的に対局が
はじまるようになっている。拡張モードではそうはならず、CSAモードのログインの時だけである。
gamename
詳しくはこちら
https://shogi-server.osdn.jp/protocol.html#gamename
shogi-serverのもう一つ大事な概念を記述しておく。それはgamenameだ。対局を識別するIDみたいなものだ。
書式は書式はname-total_time-byoyomi_time
例えば、foo-300-5Fといった形で指定する。
shogi-serverは、このgamenameと後述する時間指定が一致すると対局がマッチングが行われるようになっている。
後ろの300-5Fが時間の指定で非常に重要である。またFは大文字である。
これは持ち時間300秒、1手指すごとに5秒加算という意味である。
一方、300-5、という表記だと持ち時間300秒、秒読みが5秒という意味である。
電竜戦本戦の場合、時間は600-2Fであるので、gamenameは
foo-600-2Fといった具合になる。
gamenameの変更
詳しくはここを参照してほしい
https://shogi-server.osdn.jp/protocol.html#pp-game
コマンドを送ることで、gamenameを変更することで、対戦相手とマッチングさせて対局を始めることができる。
例えば、対戦相手と申し合わせて、自分が先手、相手が後手、持ち時間は5分2秒加算ということで、gamenameをfoo-300-2Fにしたとすると、
自分は、「%%GAME foo-300-2F +」を送信し、
相手は、「%%GAME foo-300-2F -」を送信する。
すると、対局条件がサーバから送られてくるので、両者がAGREEを送信すると対局が開始される。
※GUIツールである将棋所を使うと、自動でAGREEを行い対局が始まる。
また、コマンドを送信するのも将棋所を使うと非常に簡単である。そのことについて述べる。
将棋所を使ったコマンド送信
コマンド送信は自作すると難しいのであるが、将棋所を使うと簡単である。
将棋所はこちらを参照してほしい
http://shogidokoro.starfree.jp/
将棋所をインストールして、起動して、サーバにログインしているとすると、
表示>デバッグウィンドウで、コマンド欄にコマンドを打ち込み、「通信先に送信」ボタンを押すと
サーバにコマンドを送信できる。
非常に簡単である。
長々と説明したが、ここまでがshogi-serverの基本である。
ようやく電竜戦の参加方法の説明に入る。
以降は将棋所であるという前提で説明する
電竜戦の本番参加
冒頭にも書いてあるが再掲する。
将棋所>対局>サーバ通信対局(floodgate)
●人間かエンジンの設定を間違えないように入力する
●接続先を設定(電竜戦では160.16.80.27)
●ログイン名を入力(運営から送られてくる)
●パスワードを入力(運営から送られてくる)
●「対局を拒否されたらログアウトする」のチェックを外す
●「接続が切れたら再ログインをする」はどちらでもいいが、オンにしておくほうが良い。
●時間設定は設定不要(サーバ側で設定してしまうため)
●「OK」ボタンを押す
以上で拡張モードでログインされ、あとは寝ているだけで大会が自動的に進行する
電竜戦のテストステータスで自動対局をする
※運営から「現在自動対局がオンになっている」という連絡がある時のみ有効
将棋所>対局>サーバ通信対局(電竜戦)を押す
●人間かエンジンかを間違えないように選ぶ
●接続先(gserver.denryu-sen.jp)のまま変更の必要はない
●ログイン名を入力(運営から送られてくる)
●パスワードを入力(運営から送られてくる)
●「OK」ボタンを押す
他の人が同じ手順でログインすると対局が自動で始まる(将棋所が自動でAGREEするため)
なお、持ち時間がどうなるかはその時のサーバの設定による。
サーバの設定は運営のみが変更できる。大体そのイベントの持ち時間に合わせてある
原理的には、CSAモードでログインすると、gamenameが「t_test1_test2_600-2F *」と
自動で変更される。このため別の人がログインすると対局が始まるわけである。
なお、自分のgamenameは先ほどの要領で、コマンド「%%WHO」を送信すると確認できる
(各自やってみよ)
電竜戦のテストステータスで手動対局をする
運営から「現在自動対局オフ」と連絡がきたり、自動対局できるが、この対局相手としたいとか、
持ち時間を柔軟に変更して対局したい場合は、手動で対局を行う。
●対戦相手とgamename、持ち時間、手番を申し合わせる。仮にbar-300-2F、手番は任意とすると、
●自分は「%%GAME bar-300-2F *」を送信
●相手は「%%GAME bar-300-2F *」を送信
すればよい。なお手番は自分が先手の場合は「+」、後手の場合は「-」である。
説明は以上である。
基礎的な内容を含んでいるため説明量が多くなっている。(画像がなくて申し訳ない)
次回は本記事を踏まえて、簡潔なFAQ編をお送りする。
タグ:電竜戦