Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
108 lines (95 sloc) 4.67 KB

Forked by ZenryokuService

元々のリポジトリは上の方にあるリンクを参照して下さい

News or Plans

Create CHaserServer in Java

Image of Implementation

  1. Using JavaFX
  2. now loading ...

How to implement client app

[send data : receive data]
  1. access to CHaserServer
  2. send Team name : “@“
  3. send “gr\r\n” : now position
  4. send send command for control : position
  5. send “#\r\n”
  6. loop from 3 to 5 step

Response sample

  1. get around position data like this "1XXXXXXXXX"
    first data is meaning alive or dead "1" is alive. last 9 byte data is meaning position data. as flow
    "生きています" = 1
    ******************
    | [0] [0] [2] |
    *******************
    | [0] [0] [0]|
    ******************
    | [0] [0] [0] |
    ******************
    this data is meaning player of center and info about around.
    0; none
    1; items
    2; block
    3; another player
command info

"gr": get ready command get position player is
"1002000000"
生きています
******************
| [0] [0] [2] |
******************
| [0] [0] [0] |
******************
| [0] [0] [0] |
******************

"lu": look at upper way response is as flow.
"1002200002"
生きています = 1
******************
| [0] [0] [2] |
******************
| [2] [0] [0] |
******************
| [0] [0] [2] |
******************

"wu": walk command to upper way
"1200002000"
生きています = 1
******************
| [2] [0] [0] |
******************
| [0] [0] [2] |
******************
| [0] [0] [0] |
******************

"sd": search command to under the direction
"1000000202"
生きています = 1
********************************************************
| [0] [0] [0] | [0] [ 0] [0] | [2] [0] [2] |
********************************************************

AsahikawaProcon-Server

*C# client sample
*how to send commands to CHaserServer

北海道旭川市で毎年開催される、U-16旭川プログラミングコンテストで使用されるサーバーです。

ルールや通信仕様の詳細は公式サイトや同梱のdocファイル等を参照してください。

このサーバーはC++とクロスプラットフォームライブラリQtによって開発されています。 現在のサーバーではドキュメント通りの通信仕様であるため、過去に旭川プロコンに使用されたライブラリ・クライアントと互換性を持ちます。

クライアント

このサーバーは通常TCPで接続するクライントを、別の特殊なクライアントで代用することが可能です。

  • TCPユーザー 通常のクライアントです。クライアントとなるPCのAIにより動作します。
  • 自動くん 特に何もしないモードです。デバッグにどうぞ。
  • ManualClient 別ウインドウでコントローラが開かれ、ユーザー直接を操作できます。

サーバー設定

サーバーの動作設定ができます。また、設定は再起動後有効になります。

  • ログ保存場所 ログを保存する場所です。初期設定はカレントディレクトリになっていますが、胡散臭いので絶対パスに変えることを推奨します。
  • ゲーム進行速度 ゲーム中のアニメーションの待ち時間です。初期設定は150[ms](1000ms=1秒)です。少ないほど高速になりますが、処理時間の都合上一定速度以下にはなりません。
  • 通信タイムアウト時間 TCPクライアントにおけるレスポンスの待ち時間です。長ければ長いほどクライアントがタイムアウトしにくくなります。

##開発環境 MacOSX 10.11.3 ElCapitan
Qt Creator 3.3.0
Desktop Qt 5.4.2 clang 64bit

You can’t perform that action at this time.