【究極の】室谷由紀女流1級【美形女流棋士】Part3
738 :
名無し名人 :
2010/10/08(金) 08:12:56 ID:Wh6FC+pt CSAモード login client: LOGIN username passwordで接続。 game_waiting ステータスに移行。password として gamenameとして適切な文字列を送ると gamename としてマッチングに用いられる。そうでない場合は、 default-1500-0に固定。どちらの場合も先手、後手の選択は出来ない。 game_waiting server: 相手が見つかると対局条件表示。agree_waiting ステータスに移行 agree_waiting client: AGREEで条件受け入れ。gameステータスに移行 game client: 対局 server: 対局終了で切断 拡張モード CSAモードとの違い: LOGIN でパスワードの後ろに"x1"を入力. connected ステータスが存在し,ログイン後に対局をするかしないか や対局する場合のgameidを選択可能. 対局終了後にconnected ステータスに戻り切断されない. その他,チャット,観戦など拡張コマンドが使える. login client: LOGIN username password x1で接続 server: ##[LOGIN] +OK x1 を送る。clientは connected ステータスへ connected client: %%GAMEコマンドでgamenameを指定すると、game_waitingステータスに移行 client:%%CHALLENGEコマンドで既に待っ ている人のいるgamenameを指定するとagree_waitingステータスに game_waiting server: gamename毎に先手後手が揃うと、対局条件表示.agree_waiting ステータスに client: 取り消す場合は%%GAMEコマンドで connectedに戻ることが可能。 agree_waiting client: AGREEで条件受け入れ。gameステータスに移行
739 :
名無し名人 :2010/10/08(金) 08:16:05 ID:Wh6FC+pt
game client: 対局 server: 対局終了でconnectedステータスに移行 文法 username LOGINの際にクライアントが名乗る文字列.A-z0-9@_-. だけが使える.文字数制限は未定. gamename 対局のマッチングに使われる文字列.拡張モードでは%%GAMEコマンドでクライアントが指定する. CSAモー ドでは固定.書式はname-total_time-byoyomi_time name は A-z0-9@_. だけが使える.文字数制限は未定.他は0-9 CSAモードの場合は default-1500-0 total_timeが0の場合は、持時間無制限 game_id 対局毎にサーバが指定する文字列.現在はgamenameとusernameと時刻を 組み合わせたもの. 拡張コマンド 拡張モードでのみ利用可能 %%WHO クライアントの一覧が出力されます. %%CHAT string チャットします.拡張モードのクライアント全てに送信されます. 現在 utf-8 が de facto standard になっています. 空行を読みとばされます (keep-alive のためにクライアントから 空行を送って良い) %%GAME gamename [+-*] 対局待ちになります. %%GAME gamename +: 先手を持ちます. %%GAME gamename -: 後手を持ちます. %%GAME gamename *: 先手後手は相手の希望に合わせます. %%CHALLENGE gamename [+-*] 対局をします。 %%GAMEと%%CHALLENGEの違いは、相手が見つから なかった場合に game_waitingに入るか否か. 対局相手が見つからない場合は(もともと相手が いなかったり、競合で負けた場合など)、 %%GAMEではエラーが表示されないが,%%CHALLLENGEの場合は、表示される。 %%LIST
740 :
名無し名人 :2010/10/08(金) 08:17:27 ID:Wh6FC+pt
game_idの一覧が出る。 ##[LIST] b-1-a-20040626025755 ##[LIST] +OK %%SHOW game_id 盤面表示 %%SHOW b-1-a-20040626025755 ##[SHOW] BEGIN Game_Summary ##[SHOW] Protocol_Version:1.0 ##[SHOW] Protocol_Mode:Server ##[SHOW] Format:Shogi 1.0 ##[SHOW] Game_ID:wdoor+yowai_gps-1500-0+test+yowai_gps+20041020235953 ##[SHOW] Name+:test ##[SHOW] Name-:yowai_gps ##[SHOW] Rematch_On_Draw:NO ##[SHOW] To_Move:+ ##[SHOW] BEGIN Time ##[SHOW] Time_Unit:1sec ##[SHOW] Total_Time:1500 ##[SHOW] Byoyomi:0 ##[SHOW] Least_Time_Per_Move:1 ##[SHOW] Remaining_Time+:1488
741 :
名無し名人 :2010/10/08(金) 08:19:50 ID:Wh6FC+pt
##[SHOW] Remaining_Time-:1489 ##[SHOW] Last_Move:-1213FU,T1 ##[SHOW] Current_Turn:2 ##[SHOW] END Time ##[SHOW] BEGIN Position ##[SHOW] Jishogi_Declaration:1.1 ##[SHOW] P1-KY-KE-GI-KI-OU-KI-GI-KE * ##[SHOW] P2 * -HI * * * * * -KA * ##[SHOW] P3-FU-FU-FU-FU-FU-FU-FU-FU-FU ##[SHOW] P4 * * * * * * * * * ##[SHOW] P5 * * * * * * * * * ##[SHOW] P6 * * * * * * * +NY * ##[SHOW] P7+FU+FU+FU+FU+FU+FU+FU * +FU ##[SHOW] P8 * +KA * * * * * +HI * ##[SHOW] P9+KY+KE+GI+KI+OU+KI+GI+KE * ##[SHOW] P+00KY ##[SHOW] P-00FU ##[SHOW] + ##[SHOW] END Position ##[SHOW] END Game_Summary ##[SHOW] +OK %%MONITOR{ON,OFF}
742 :
名無し名人 :2010/10/08(金) 08:21:09 ID:Wh6FC+pt
指定した対局の観察を継続的に行う/解除する (サーバのRevision 1.15以降) %%MONITORON game_id %%MONITOROFF game_id game_idは、%%LISTで表示される 一手進む度に%%SHOWとほぼ同じ出力が送られる。但し、先頭が##[SHOW] の代わりに ##[MONITOR][gameid]となる。 %%MONITOR2{ON,OFF} 指定した対局の観察を継続的に行う/解除する (差分バージョン) 初期局面と初手からの指手を継続的に送る (後日に例を加筆) %%RATING サーバが管理するプレイヤーのレーティング一覧を表示します(サーバのRevision 1.47以降) プレイヤ名, レーティング値, 最終更新日が表示されます レーティンググループの区別なく表示されます。グループ間でレーティング値を比較することはできません。 プレイヤが属するグループは表示されません %%RATING ##[RATING] Gekisashi_Xeon-W5590_8c 1707 @2010-05-03 ##[RATING] bonasse_980X 1620 @2010-07-07 ##[RATING] Gekisashi_Xeon-X5365_8c 1578 @2010-05-01 ##[RATING] Feliz_CSA 1569 @2010-05-03 ##[RATING] test_td10k 1565 @2010-07-10 ##[RATING] felizze980x6c 1554 @2010-05-22 ##[RATING] bonasse_1090T_6c 1531 @2010-06-21 ##[RATING] bonasse_980X 1501 @2010-05-14 ##[RATING] Feliz_980X 1496 @2010-05-18 ##[RATING] jushiro 1492 @2010-05-02 ##[RATING] senoabs 1480 @2010-05-11 ##[RATING] bonassen 1457 @2010-04-03 ##[RATING] Shueso 1450 @2010-06-06 ##[RATING] d01 1450 @2010-07-10
743 :
名無し名人 :2010/10/08(金) 08:35:08 ID:Wh6FC+pt
##[RATING] ponta_human 1446 @2010-07-02 ##[RATING] Bona_Core_i5_750 1428 @2010-07-05 ##[RATING] Bonanza_E5430_4c 1423 @2010-04-28 ##[RATING] gps_4X8_1 1421 @2010-05-02 ##[RATING] gps_4X8 1418 @2010-04-24 ##[RATING] +OK %%SETBUOY gamename moves [count] [experimental] 指定局面戦を登録する。これにより、平手の初期局面から開始するのではなく、指定された途中局面から対戦することができる。 対戦するプレイヤではない第三者が局面指定する。 gamenameは、buoy_から始まること。それ以外の命名規則は通常どおり。 例: buoy_foo-1500-0 movesは、初期局面からの指手をCSA形式で列挙したもの。カンマや空白などは用いずに、文字列を連結する。 例: +7776FU-3334FU count回対戦されると、サーバはgamenameを解除する。省略可能で、デフォルト値は1。対戦開始直後に減算される。 プレイヤが対戦する方法やコマンドは通常どおりである。
744 :
名無し名人 :2010/10/08(金) 08:38:21 ID:Wh6FC+pt
サーバから送信される対局条件において、初期局面およびそこからの指手として指定局面が(CSAプロトコルどおりに)提示される。 指定局面戦の登録(%%SETBUOY)、各プレイヤによる対局申し込み(%%GAME)の時系列は任意である。 登録後にプレイヤが%%GAMEを送信すれば、ふたり目の%%GAME後に対局が始まる。 一方、未登録のgamenameに対して、プレイヤが%%GAMEを送信すれば、プレイヤはgame_waiting状態となり、%%SETBUOY後に対局が始まる。 重複するgamenameを登録しようとするとエラーとなる。count回対戦されたり、%%DELETEBUOYで削除されたりすれば、登録が解除され、同じgamenameが再設定可能となる。 なお、指手の消費時間を指定する機能はない。対局条件における各指手は、1秒の消費時間として示される。 コマンド例1: %%SETBUOY buoy_bar-900-0 +7776FU コマンド例2: %%SETBUOY buoy_foo-1500-0 +7776FU-3334FU 10 %%SETBUOY buoy_foo-1500-0 +7776FU-3334FU ##[SETBUOY] +OK プレイヤへの対局条件提示の例:
745 :
名無し名人 :2010/10/08(金) 08:40:20 ID:Wh6FC+pt
%%GAME buoy_foo-1500-0 + BEGIN Game_Summary Protocol_Version:1.1 Protocol_Mode:Server Format:Shogi 1.0 Declaration:Jishogi 1.1 Game_ID:hoge+buoy_foo-1500-0+daigo1+daigo2+20100904193853 Name+:daigo1 Name-:daigo2 Your_Turn:+ Rematch_On_Draw:NO To_Move:+ BEGIN Time Time_Unit:1sec Total_Time:1500 Byoyomi:0 Least_Time_Per_Move:1 END Time BEGIN Position P1-KY-KE-GI-KI-OU-KI-GI-KE-KY P2 * -HI * * * * * -KA * P3-FU-FU-FU-FU-FU-FU-FU-FU-FU P4 * * * * * * * * * P5 * * * * * * * * * P6 * * * * * * * * *
746 :
名無し名人 :2010/10/08(金) 08:44:31 ID:Wh6FC+pt
P7+FU+FU+FU+FU+FU+FU+FU+FU+FU P8 * +KA * * * * * +HI * P9+KY+KE+GI+KI+OU+KI+GI+KE+KY + +7776FU,T1 -3334FU,T1 END Position END Game_Summary %%DELETEBUOY gamename [experimental] 指定局面戦gamenameの登録を解除する。%%SETBUOYで指定されたcountは対局のたびに減っていくが、このコマンドにより、残数のあるgamenameを強制的に削除できる。 gamenameを登録したプレイヤ(オーナー)のみ許可される。 %%DELETEBUOY buoy_foo-1500-0 ##[DELETEBUOY] +OK // オーナーでないプレイヤが削除しようとした場合はエラー %%DELETEBUOY buoy_foo-1500-0 ##[ERROR] you are not allowed to delete a buoy game that you did not set: buoy_foo-1500-0 // 未登録のgamenameを削除しようとした場合はエラー %%DELETEBUOY hoge ##[ERROR] buoy game not found: hoge %%GETBUOYCOUNT gamename [experimental] 指定局面戦gamenameの残数を表示する。 未登録のgamenameに対しては-1が返る。 すべてのプレイヤが実効可能。 %%GETBUOYCOUNT buoy_foo-1500-0 ##[GETBUOYCOUNT] 10 ##[GETBUOYCOUNT] +OK