./rcssserver
とタイプするか,PATHが通った場所に実行バイナリがインストールされていれ ば,
rcssserver
とタイプすれば良い.
rcssserverはユーザのホームディレクトリ内に設定ファイルが存在するか同化 を探す:
.rcssserver-server.conf |
.rcssserver-player.conf |
.rcssserver-landmark.xml |
これらのファイルが存在しなければ,rcssserverによってファイルが作成され, デフォルトの値が書き込まれる.
rcssserver の起動オプションに -sfile と -pfile を使用することで,別の場所にある設定ファイルを指定することができる. 指定したファイルが存在しない場合,それらはrcssserverによって作成され, デフォルトの値が書き込まれる.
シミュレータ内で起こっていることを確認するには,rcssserverと同様に,
./rcssmonitor または rcssmonitor
とタイプし,サッカーモニタを実行すればよい.
PATHの通った場所に実行バイナリがインストールされていれば, rcsoccersim スクリプトによって,サーバとモニタの両方を起動できる. この場合,rcsoccersim はPATHの通った場所(rcssserverと同じ場所)に インストールされている.このスクリプトは,サーバとモニタを起動し,ユー ザがモニタを閉じれば自動的にサーバを停止させる.
サッカーサーバにおける試合を実際に開始するために,ユーザは各クライアン
トをサーバへ接続しなければならない(各チーム最大11人のプレイヤ+コーチ).
これらのクライアントの準備が整えば,サッカーモニタのKick Offを押
せば試合が始まる.あなたはまだ自分のクライアントを作成しないかもしれな
い.そのような場合,節を読めば,他のRoboCupperが
寄贈したチームを用いて試合をセットアップする方法の手順を知ることができ
る.
また,シミュレータの配布パッケージにはサンプルクライアント rcssclient が含まれている.rcssclientは,ncursesインターフェ イス,またはncursesが利用できなければコマンドラインのインターフェイス を持っている.-noguiオプションを用いることで,明示的にコマンドラ インインターフェイスを指定することも可能である.
rcssclient を実行すると,デフォルトパラメータ(host=localhost, port=6000)でサーバへの接続を試みる.もちろん,これらのパラメータはプロ グラム引数で変更可能である.クライアントが起動すると,ユーザはサーバへ の接続を初期化しなければならない.これは,手作業でinitコマンドをタイプ し,エンターを押すことでなされる.よって,接続を初期化するには以下のよ うにタイプする:
(init MyTeam (version 9))
一方のチームが,``MyTeam''という名前になり,一体のプレイヤがサイドライ ンの側に現れることに気づくだろう.このプレイヤは,あなたが初期化したク ライアントと一致する.更に,クライアントがターミナルに情報を出力してい ることにも気づくだろう.これは,クライアントがサーバから受信したメッセー ジである.
以下のテキスト(分かり易さのために,適宜改行を加えている)では,最初の11
行は初期化に関するメッセージである.その他のデータはサーバがクライ
アントへ送信したセンサ情報である:
(init MyTeam (version 9)) (init l 2 before_kick_off) (server_param (catch_ban_cycle 5)(clang_advice_win 1) (clang_define_win 1)(clang_del_win 1)(clang_info_win 1) (clang_mess_delay 50)(clang_mess_per_cycle 1) (clang_meta_win 1)(clang_rule_win 1)(clang_win_size 300) (coach_port 6001)(connect_wait 300)(drop_ball_time 0) (freeform_send_period 20)(freeform_wait_period 600) (game_log_compression 0)(game_log_version 3) (game_over_wait 100)(goalie_max_moves 2)(half_time -10) (hear_decay 1)(hear_inc 1)(hear_max 1)(keepaway_start -1) (kick_off_wait 100)(max_goal_kicks 3)(olcoach_port 6002) (point_to_ban 5)(point_to_duration 20)(port 6000) (recv_step 10)(say_coach_cnt_max 128) (say_coach_msg_size 128)(say_msg_size 10) (send_step 150)(send_vi_step 100)(sense_body_step 100) (simulator_step 100)(slow_down_factor 1)(start_goal_l 0) (start_goal_r 0)(synch_micro_sleep 1)(synch_offset 60) (tackle_cycles 10)(text_log_compression 0) (game_log_dir "/home/thoward/data") (game_log_fixed_name "rcssserver")keepaway_log_dir "./") (keepaway_log_fixed_name "rcssserver") (landmark_file "~/.rcssserver-landmark.xml") (log_date_format "%Y%m%d%H%M-")(team_l_start "") (team_r_start "")(text_log_dir "/home/thoward/data") (text_log_fixed_name "rcssserver")(coach 0) (coach_w_referee 1)(old_coach_hear 0)(wind_none 0) (wind_random 0)(auto_mode 0)(back_passes 1) (forbid_kick_off_offside 1)(free_kick_faults 1) (fullstate_l 0)(fullstate_r 0)(game_log_dated 1) (game_log_fixed 1)(game_logging 1)(keepaway 0) (keepaway_log_dated 1)(keepaway_log_fixed 0) (keepaway_logging 1)(log_times 0)(profile 0) (proper_goal_kicks 0)(record_messages 0)(send_comms 0) (synch_mode 0)(team_actuator_noise 0)(text_log_dated 1) (text_log_fixed 1)(text_logging 1)(use_offside 1) (verbose 0)(audio_cut_dist 50)(ball_accel_max 2.7) (ball_decay 0.94)(ball_rand 0.05)(ball_size 0.085) (ball_speed_max 2.7)(ball_weight 0.2)(catch_probability 1) (catchable_area_l 2)(catchable_area_w 1)(ckick_margin 1) (control_radius 2)(dash_power_rate 0.006)(effort_dec 0.005) (effort_dec_thr 0.3)(effort_inc 0.01)(effort_inc_thr 0.6) (effort_init 0)(effort_min 0.6)(goal_width 14.02) (inertia_moment 5)(keepaway_length 20)(keepaway_width 20) (kick_power_rate 0.027)(kick_rand 0)(kick_rand_factor_l 1) (kick_rand_factor_r 1)(kickable_margin 0.7)(maxmoment 180) (maxneckang 90)(maxneckmoment 180)(maxpower 100) (minmoment -180)(minneckang -90)(minneckmoment -180) (minpower -100)(offside_active_area_size 2.5) (offside_kick_margin 9.15)(player_accel_max 1) (player_decay 0.4)(player_rand 0.1)(player_size 0.3) (player_speed_max 1)(player_weight 60)(prand_factor_l 1) (prand_factor_r 1)(quantize_step 0.1)(quantize_step_l 0.01) (recover_dec 0.002)(recover_dec_thr 0.3)(recover_min 0.5) (slowness_on_top_for_left_team 1) (slowness_on_top_for_right_team 1)(stamina_inc_max 45) (stamina_max 4000)(stopped_ball_vel 0.01) (tackle_back_dist 0.5)(tackle_dist 2.5)(tackle_exponent 6) (tackle_power_rate 0.027)(tackle_width 1.25) (visible_angle 90)(visible_distance 3)(wind_ang 0) (wind_dir 0)(wind_force 0)(wind_rand 0)) (player_param (player_types 7)(pt_max 3)(random_seed -1) (subs_max 3)(dash_power_rate_delta_max 0) (dash_power_rate_delta_min 0) (effort_max_delta_factor -0.002) (effort_min_delta_factor -0.002) (extra_stamina_delta_max 100) (extra_stamina_delta_min 0) (inertia_moment_delta_factor 25) (kick_rand_delta_factor 0.5) (kickable_margin_delta_max 0.2) (kickable_margin_delta_min 0) (new_dash_power_rate_delta_max 0.002) (new_dash_power_rate_delta_min 0) (new_stamina_inc_max_delta_factor -10000) (player_decay_delta_max 0.2) (player_decay_delta_min 0) (player_size_delta_factor -100) (player_speed_max_delta_max 0.2) (player_speed_max_delta_min 0) (stamina_inc_max_delta_factor 0)) (player_type (id 0)(player_speed_max 1)(stamina_inc_max 45) (player_decay 0.4)(inertia_moment 5)(dash_power_rate 0.006) (player_size 0.3)(kickable_margin 0.7)(kick_rand 0) (extra_stamina 0)(effort_max 1)(effort_min 0.6)) (player_type (id 1)(player_speed_max 1.1956)(stamina_inc_max 30.06) (player_decay 0.4554)(inertia_moment 6.385)(dash_power_rate 0.007494) (player_size 0.3)(kickable_margin 0.829)(kick_rand 0.0645) (extra_stamina 9.4)(effort_max 0.9812)(effort_min 0.5812)) (player_type (id 2)(player_speed_max 1.135)(stamina_inc_max 33.4) (player_decay 0.4292)(inertia_moment 5.73)(dash_power_rate 0.00716) (player_size 0.3)(kickable_margin 0.8198)(kick_rand 0.0599) (extra_stamina 31.3)(effort_max 0.9374)(effort_min 0.5374)) (player_type (id 3)(player_speed_max 1.1964)(stamina_inc_max 31.24) (player_decay 0.4664)(inertia_moment 6.66)(dash_power_rate 0.007376) (player_size 0.3)(kickable_margin 0.88)(kick_rand 0.09) (extra_stamina 47.1)(effort_max 0.9058)(effort_min 0.5058)) (player_type (id 4)(player_speed_max 1.151)(stamina_inc_max 37.8) (player_decay 0.45)(inertia_moment 6.25)(dash_power_rate 0.00672) (player_size 0.3)(kickable_margin 0.8838)(kick_rand 0.0919) (extra_stamina 44.1)(effort_max 0.9118)(effort_min 0.5118)) (player_type (id 5)(player_speed_max 1.1544)(stamina_inc_max 34.68) (player_decay 0.4352)(inertia_moment 5.88)(dash_power_rate 0.007032) (player_size 0.3)(kickable_margin 0.8052)(kick_rand 0.0526) (extra_stamina 47.1)(effort_max 0.9058)(effort_min 0.5058)) (player_type (id 6)(player_speed_max 1.193)(stamina_inc_max 36.7) (player_decay 0.4738)(inertia_moment 6.845)(dash_power_rate 0.00683) (player_size 0.3)(kickable_margin 0.885)(kick_rand 0.0925) (extra_stamina 92)(effort_max 0.816)(effort_min 0.416)) (sense_body 0 (view_mode high normal) (stamina 4000 1) (speed 0 0) (head_angle 0) (kick 0) (dash 0) (turn 0) (say 0) (turn_neck 0) (catch 0) (move 0) (change_view 0) (arm (movable 0) (expires 0) (target 0 0) (count 0)) (focus (target none) (count 0)) (tackle (expires 0) (count 0))) (see 0 ((f c t) 6.7 27 0 0) ((f r t) 58.6 3) ((f g r b) 73 37) ((g r) 69.4 32) ((f g r t) 66 27) ((f p r c) 55.7 41) ((f p r t) 45.2 22) ((f t 0) 6.3 -18 0 0) ((f t r 10) 16.1 -7 0 0) ((f t r 20) 26 -4 0 0) ((f t r 30) 36.2 -3) ((f t r 40) 46.1 -2) ((f t r 50) 56.3 -2) ((f r 0) 73.7 30) ((f r t 10) 68.7 23) ((f r t 20) 66 15) ((f r t 30) 64.1 6) ((f r b 10) 79 37) ((f r b 20) 85.6 42)) (sense_body 0 (view_mode high normal) (stamina 4000 1) (speed 0 0) (head_angle 0) (kick 0) (dash 0) (turn 0) (say 0) (turn_neck 0) (catch 0) (move 0) (change_view 0) (arm (movable 0) (expires 0) (target 0 0) (count 0)) (focus (target none) (count 0)) (tackle (expires 0) (count 0))) (see 0 ((f c t) 6.7 27 0 0) ((f r t) 58.6 3) ((f g r b) 73 37) ((g r) 69.4 32) ((f g r t) 66 27) ((f p r c) 55.7 41) ((f p r t) 45.2 22) ((f t 0) 6.3 -18 0 0) ((f t r 10) 16.1 -7 0 0) ((f t r 20) 26 -4 0 0) ((f t r 30) 36.2 -3) ((f t r 40) 46.1 -2) ((f t r 50) 56.3 -2) ((f r 0) 73.7 30) ((f r t 10) 68.7 23) ((f r t 20) 66 15) ((f r t 30) 64.1 6) ((f r b 10) 79 37) ((f r b 20) 85.6 42)) ...
コマンド((move 0 0) や (turn 45) など)をタイプすることで, プレイヤがサーバへ送信するコマンドを指示できる.これらのコマンドの結果 は,サッカーモニタで確認することができるだろう.