./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) など)をタイプすることで, プレイヤがサーバへ送信するコマンドを指示できる.これらのコマンドの結果 は,サッカーモニタで確認することができるだろう.