diff --git a/.gitignore b/.gitignore index 00757b1..60a7a0e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,7 @@ scripts/rcssserver logs/ __pycache__/ utils/__pycache__/ -scripts/binary/ \ No newline at end of file +scripts/binary/ +service_pb2_grpc.py +service_pb2.py +service_pb2.pyi diff --git a/service_pb2.py b/service_pb2.py deleted file mode 100644 index ae983b0..0000000 --- a/service_pb2.py +++ /dev/null @@ -1,352 +0,0 @@ -# -*- coding: utf-8 -*- -# Generated by the protocol buffer compiler. DO NOT EDIT! -# source: service.proto -# Protobuf Python Version: 5.26.1 -"""Generated protocol buffer code.""" -from google.protobuf import descriptor as _descriptor -from google.protobuf import descriptor_pool as _descriptor_pool -from google.protobuf import symbol_database as _symbol_database -from google.protobuf.internal import builder as _builder -# @@protoc_insertion_point(imports) - -_sym_db = _symbol_database.Default() - - - - -DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\rservice.proto\x12\x06protos\"@\n\x0bRpcVector2D\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\x12\x0c\n\x04\x64ist\x18\x03 \x01(\x02\x12\r\n\x05\x61ngle\x18\x04 \x01(\x02\"x\n\x0fRegisterRequest\x12%\n\nagent_type\x18\x01 \x01(\x0e\x32\x11.protos.AgentType\x12\x11\n\tteam_name\x18\x02 \x01(\t\x12\x16\n\x0euniform_number\x18\x03 \x01(\x05\x12\x13\n\x0brpc_version\x18\x04 \x01(\x05\"\xb8\x01\n\x10RegisterResponse\x12\x11\n\tclient_id\x18\x01 \x01(\x05\x12%\n\nagent_type\x18\x02 \x01(\x0e\x32\x11.protos.AgentType\x12\x11\n\tteam_name\x18\x03 \x01(\t\x12\x16\n\x0euniform_number\x18\x04 \x01(\x05\x12?\n\x18rpc_server_language_type\x18\x05 \x01(\x0e\x32\x1d.protos.RpcServerLanguageType\"\x98\x04\n\x04\x42\x61ll\x12%\n\x08position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12.\n\x11relative_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rseen_position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12+\n\x0eheard_position\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12%\n\x08velocity\x18\x05 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rseen_velocity\x18\x06 \x01(\x0b\x32\x13.protos.RpcVector2D\x12+\n\x0eheard_velocity\x18\x07 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x11\n\tpos_count\x18\x08 \x01(\x05\x12\x16\n\x0eseen_pos_count\x18\t \x01(\x05\x12\x17\n\x0fheard_pos_count\x18\n \x01(\x05\x12\x11\n\tvel_count\x18\x0b \x01(\x05\x12\x16\n\x0eseen_vel_count\x18\x0c \x01(\x05\x12\x17\n\x0fheard_vel_count\x18\r \x01(\x05\x12\x12\n\nlost_count\x18\x0e \x01(\x05\x12\x13\n\x0bghost_count\x18\x0f \x01(\x05\x12\x16\n\x0e\x64ist_from_self\x18\x10 \x01(\x02\x12\x17\n\x0f\x61ngle_from_self\x18\x11 \x01(\x02\"\xd8\x01\n\x10PenaltyKickState\x12#\n\ron_field_side\x18\x01 \x01(\x0e\x32\x0c.protos.Side\x12(\n\x12\x63urrent_taker_side\x18\x02 \x01(\x0e\x32\x0c.protos.Side\x12\x19\n\x11our_taker_counter\x18\x03 \x01(\x05\x12\x1b\n\x13their_taker_counter\x18\x04 \x01(\x05\x12\x11\n\tour_score\x18\x05 \x01(\x05\x12\x13\n\x0btheir_score\x18\x06 \x01(\x05\x12\x15\n\ris_kick_taker\x18\x07 \x01(\x08\"\xb0\x06\n\x06Player\x12%\n\x08position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rseen_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12+\n\x0eheard_position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12%\n\x08velocity\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rseen_velocity\x18\x05 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x11\n\tpos_count\x18\x06 \x01(\x05\x12\x16\n\x0eseen_pos_count\x18\x07 \x01(\x05\x12\x17\n\x0fheard_pos_count\x18\x08 \x01(\x05\x12\x11\n\tvel_count\x18\t \x01(\x05\x12\x16\n\x0eseen_vel_count\x18\n \x01(\x05\x12\x13\n\x0bghost_count\x18\x0b \x01(\x05\x12\x16\n\x0e\x64ist_from_self\x18\x0c \x01(\x02\x12\x17\n\x0f\x61ngle_from_self\x18\r \x01(\x02\x12\n\n\x02id\x18\x0e \x01(\x05\x12\x1a\n\x04side\x18\x0f \x01(\x0e\x32\x0c.protos.Side\x12\x16\n\x0euniform_number\x18\x10 \x01(\x05\x12\x1c\n\x14uniform_number_count\x18\x11 \x01(\x05\x12\x11\n\tis_goalie\x18\x12 \x01(\x08\x12\x16\n\x0e\x62ody_direction\x18\x13 \x01(\x02\x12\x1c\n\x14\x62ody_direction_count\x18\x14 \x01(\x05\x12\x16\n\x0e\x66\x61\x63\x65_direction\x18\x15 \x01(\x02\x12\x1c\n\x14\x66\x61\x63\x65_direction_count\x18\x16 \x01(\x05\x12\x1a\n\x12point_to_direction\x18\x17 \x01(\x02\x12 \n\x18point_to_direction_count\x18\x18 \x01(\x05\x12\x12\n\nis_kicking\x18\x19 \x01(\x08\x12\x16\n\x0e\x64ist_from_ball\x18\x1a \x01(\x02\x12\x17\n\x0f\x61ngle_from_ball\x18\x1b \x01(\x02\x12\x18\n\x10\x62\x61ll_reach_steps\x18\x1c \x01(\x05\x12\x13\n\x0bis_tackling\x18\x1d \x01(\x08\x12\x0f\n\x07type_id\x18\x1e \x01(\x05\"\xbf\x08\n\x04Self\x12%\n\x08position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rseen_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12+\n\x0eheard_position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12%\n\x08velocity\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rseen_velocity\x18\x05 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x11\n\tpos_count\x18\x06 \x01(\x05\x12\x16\n\x0eseen_pos_count\x18\x07 \x01(\x05\x12\x17\n\x0fheard_pos_count\x18\x08 \x01(\x05\x12\x11\n\tvel_count\x18\t \x01(\x05\x12\x16\n\x0eseen_vel_count\x18\n \x01(\x05\x12\x13\n\x0bghost_count\x18\x0b \x01(\x05\x12\n\n\x02id\x18\x0c \x01(\x05\x12\x1a\n\x04side\x18\r \x01(\x0e\x32\x0c.protos.Side\x12\x16\n\x0euniform_number\x18\x0e \x01(\x05\x12\x1c\n\x14uniform_number_count\x18\x0f \x01(\x05\x12\x11\n\tis_goalie\x18\x10 \x01(\x08\x12\x16\n\x0e\x62ody_direction\x18\x11 \x01(\x02\x12\x1c\n\x14\x62ody_direction_count\x18\x12 \x01(\x05\x12\x16\n\x0e\x66\x61\x63\x65_direction\x18\x13 \x01(\x02\x12\x1c\n\x14\x66\x61\x63\x65_direction_count\x18\x14 \x01(\x05\x12\x1a\n\x12point_to_direction\x18\x15 \x01(\x02\x12 \n\x18point_to_direction_count\x18\x16 \x01(\x05\x12\x12\n\nis_kicking\x18\x17 \x01(\x08\x12\x16\n\x0e\x64ist_from_ball\x18\x18 \x01(\x02\x12\x17\n\x0f\x61ngle_from_ball\x18\x19 \x01(\x02\x12\x18\n\x10\x62\x61ll_reach_steps\x18\x1a \x01(\x05\x12\x13\n\x0bis_tackling\x18\x1b \x01(\x08\x12\x1f\n\x17relative_neck_direction\x18\x1c \x01(\x02\x12\x0f\n\x07stamina\x18\x1d \x01(\x02\x12\x13\n\x0bis_kickable\x18\x1e \x01(\x08\x12\x19\n\x11\x63\x61tch_probability\x18\x1f \x01(\x02\x12\x1a\n\x12tackle_probability\x18 \x01(\x02\x12\x18\n\x10\x66oul_probability\x18! \x01(\x02\x12%\n\nview_width\x18\" \x01(\x0e\x32\x11.protos.ViewWidth\x12\x0f\n\x07type_id\x18# \x01(\x05\x12\x11\n\tkick_rate\x18$ \x01(\x02\x12\x10\n\x08recovery\x18% \x01(\x02\x12\x18\n\x10stamina_capacity\x18& \x01(\x02\x12\x1e\n\x04\x63\x61rd\x18\' \x01(\x0e\x32\x10.protos.CardType\x12\x12\n\ncatch_time\x18( \x01(\x05\x12\x0e\n\x06\x65\x66\x66ort\x18) \x01(\x02\"\x94\x02\n\rInterceptInfo\x12\x30\n\x0b\x61\x63tion_type\x18\x01 \x01(\x0e\x32\x1b.protos.InterceptActionType\x12\x12\n\nturn_steps\x18\x02 \x01(\x05\x12\x12\n\nturn_angle\x18\x03 \x01(\x02\x12\x12\n\ndash_steps\x18\x04 \x01(\x05\x12\x12\n\ndash_power\x18\x05 \x01(\x02\x12\x10\n\x08\x64\x61sh_dir\x18\x06 \x01(\x02\x12\x30\n\x13\x66inal_self_position\x18\x07 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x17\n\x0f\x66inal_ball_dist\x18\x08 \x01(\x02\x12\x15\n\rfinal_stamina\x18\t \x01(\x02\x12\r\n\x05value\x18\n \x01(\x02\"\xde\x02\n\x0eInterceptTable\x12\x18\n\x10self_reach_steps\x18\x01 \x01(\x05\x12\"\n\x1a\x66irst_teammate_reach_steps\x18\x02 \x01(\x05\x12#\n\x1bsecond_teammate_reach_steps\x18\x03 \x01(\x05\x12\"\n\x1a\x66irst_opponent_reach_steps\x18\x04 \x01(\x05\x12#\n\x1bsecond_opponent_reach_steps\x18\x05 \x01(\x05\x12\x19\n\x11\x66irst_teammate_id\x18\x06 \x01(\x05\x12\x1a\n\x12second_teammate_id\x18\x07 \x01(\x05\x12\x19\n\x11\x66irst_opponent_id\x18\x08 \x01(\x05\x12\x1a\n\x12second_opponent_id\x18\t \x01(\x05\x12\x32\n\x13self_intercept_info\x18\n \x03(\x0b\x32\x15.protos.InterceptInfo\"\xf9\x0c\n\nWorldModel\x12/\n\x0fintercept_table\x18\x01 \x01(\x0b\x32\x16.protos.InterceptTable\x12\x15\n\rour_team_name\x18\x02 \x01(\t\x12\x17\n\x0ftheir_team_name\x18\x03 \x01(\t\x12\x1e\n\x08our_side\x18\x04 \x01(\x0e\x32\x0c.protos.Side\x12 \n\x18last_set_play_start_time\x18\x05 \x01(\x05\x12\x1a\n\x04self\x18\x06 \x01(\x0b\x32\x0c.protos.Self\x12\x1a\n\x04\x62\x61ll\x18\x07 \x01(\x0b\x32\x0c.protos.Ball\x12!\n\tteammates\x18\x08 \x03(\x0b\x32\x0e.protos.Player\x12!\n\topponents\x18\t \x03(\x0b\x32\x0e.protos.Player\x12 \n\x08unknowns\x18\n \x03(\x0b\x32\x0e.protos.Player\x12@\n\x10our_players_dict\x18\x0b \x03(\x0b\x32&.protos.WorldModel.OurPlayersDictEntry\x12\x44\n\x12their_players_dict\x18\x0c \x03(\x0b\x32(.protos.WorldModel.TheirPlayersDictEntry\x12!\n\x19our_goalie_uniform_number\x18\r \x01(\x05\x12#\n\x1btheir_goalie_uniform_number\x18\x0e \x01(\x05\x12\x16\n\x0eoffside_line_x\x18\x0f \x01(\x02\x12\x1b\n\x13ofside_line_x_count\x18\x10 \x01(\x05\x12\x1c\n\x14kickable_teammate_id\x18\x11 \x01(\x05\x12\x1c\n\x14kickable_opponent_id\x18\x12 \x01(\x05\x12$\n\x0elast_kick_side\x18\x13 \x01(\x0e\x32\x0c.protos.Side\x12\"\n\x1alast_kicker_uniform_number\x18\x14 \x01(\x05\x12\r\n\x05\x63ycle\x18\x15 \x01(\x05\x12,\n\x0egame_mode_type\x18\x16 \x01(\x0e\x32\x14.protos.GameModeType\x12\x17\n\x0fleft_team_score\x18\x17 \x01(\x05\x12\x18\n\x10right_team_score\x18\x18 \x01(\x05\x12\x17\n\x0fis_our_set_play\x18\x19 \x01(\x08\x12\x19\n\x11is_their_set_play\x18\x1a \x01(\x08\x12\x14\n\x0cstoped_cycle\x18\x1b \x01(\x05\x12\x16\n\x0eour_team_score\x18\x1c \x01(\x05\x12\x18\n\x10their_team_score\x18\x1d \x01(\x05\x12\x1c\n\x14is_penalty_kick_mode\x18\x1e \x01(\x08\x12J\n\x15helios_home_positions\x18\x1f \x03(\x0b\x32+.protos.WorldModel.HeliosHomePositionsEntry\x12\x1a\n\x12our_defense_line_x\x18 \x01(\x01\x12\x1c\n\x14their_defense_line_x\x18! \x01(\x01\x12!\n\x19our_defense_player_line_x\x18\" \x01(\x01\x12#\n\x1btheir_defense_player_line_x\x18# \x01(\x01\x12#\n\x1bkickable_teammate_existance\x18$ \x01(\x08\x12#\n\x1bkickable_opponent_existance\x18% \x01(\x08\x12\x34\n\x12penalty_kick_state\x18& \x01(\x0b\x32\x18.protos.PenaltyKickState\x12\x10\n\x08see_time\x18\' \x01(\x05\x12\x14\n\x0ctime_stopped\x18( \x01(\x05\x12\x16\n\x0eset_play_count\x18) \x01(\x05\x12$\n\x0egame_mode_side\x18* \x01(\x0e\x32\x0c.protos.Side\x1a\x45\n\x13OurPlayersDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\x1d\n\x05value\x18\x02 \x01(\x0b\x32\x0e.protos.Player:\x02\x38\x01\x1aG\n\x15TheirPlayersDictEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\x1d\n\x05value\x18\x02 \x01(\x0b\x32\x0e.protos.Player:\x02\x38\x01\x1aO\n\x18HeliosHomePositionsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\"\n\x05value\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D:\x02\x38\x01\"\xac\x01\n\x05State\x12\x33\n\x11register_response\x18\x01 \x01(\x0b\x32\x18.protos.RegisterResponse\x12\'\n\x0bworld_model\x18\x02 \x01(\x0b\x32\x12.protos.WorldModel\x12,\n\x10\x66ull_world_model\x18\x03 \x01(\x0b\x32\x12.protos.WorldModel\x12\x17\n\x0fneed_preprocess\x18\x04 \x01(\x08\"V\n\x0bInitMessage\x12\x33\n\x11register_response\x18\x01 \x01(\x0b\x32\x18.protos.RegisterResponse\x12\x12\n\ndebug_mode\x18\x02 \x01(\x08\"1\n\x04\x44\x61sh\x12\r\n\x05power\x18\x01 \x01(\x02\x12\x1a\n\x12relative_direction\x18\x02 \x01(\x02\"\"\n\x04Turn\x12\x1a\n\x12relative_direction\x18\x01 \x01(\x02\"1\n\x04Kick\x12\r\n\x05power\x18\x01 \x01(\x02\x12\x1a\n\x12relative_direction\x18\x02 \x01(\x02\",\n\x06Tackle\x12\x14\n\x0cpower_or_dir\x18\x01 \x01(\x02\x12\x0c\n\x04\x66oul\x18\x02 \x01(\x08\"\x07\n\x05\x43\x61tch\"\x1c\n\x04Move\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\"\x1a\n\x08TurnNeck\x12\x0e\n\x06moment\x18\x01 \x01(\x02\"3\n\nChangeView\x12%\n\nview_width\x18\x01 \x01(\x0e\x32\x11.protos.ViewWidth\"e\n\x0b\x42\x61llMessage\x12*\n\rball_position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rball_velocity\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\"\xb3\x01\n\x0bPassMessage\x12\x1f\n\x17receiver_uniform_number\x18\x01 \x01(\x05\x12+\n\x0ereceiver_point\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rball_position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rball_velocity\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\"F\n\x10InterceptMessage\x12\x0b\n\x03our\x18\x01 \x01(\x08\x12\x16\n\x0euniform_number\x18\x02 \x01(\x05\x12\r\n\x05\x63ycle\x18\x03 \x01(\x05\"{\n\rGoalieMessage\x12\x1d\n\x15goalie_uniform_number\x18\x01 \x01(\x05\x12,\n\x0fgoalie_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1d\n\x15goalie_body_direction\x18\x03 \x01(\x02\"\xd1\x01\n\x16GoalieAndPlayerMessage\x12\x1d\n\x15goalie_uniform_number\x18\x01 \x01(\x05\x12,\n\x0fgoalie_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1d\n\x15goalie_body_direction\x18\x03 \x01(\x02\x12\x1d\n\x15player_uniform_number\x18\x04 \x01(\x05\x12,\n\x0fplayer_position\x18\x05 \x01(\x0b\x32\x13.protos.RpcVector2D\",\n\x12OffsideLineMessage\x12\x16\n\x0eoffside_line_x\x18\x01 \x01(\x02\",\n\x12\x44\x65\x66\x65nseLineMessage\x12\x16\n\x0e\x64\x65\x66\x65nse_line_x\x18\x01 \x01(\x02\"\x14\n\x12WaitRequestMessage\"#\n\x0eSetplayMessage\x12\x11\n\twait_step\x18\x01 \x01(\x05\"?\n\x12PassRequestMessage\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\"!\n\x0eStaminaMessage\x12\x0f\n\x07stamina\x18\x01 \x01(\x02\"#\n\x0fRecoveryMessage\x12\x10\n\x08recovery\x18\x01 \x01(\x02\"2\n\x16StaminaCapacityMessage\x12\x18\n\x10stamina_capacity\x18\x01 \x01(\x02\"P\n\x0e\x44ribbleMessage\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x13\n\x0bqueue_count\x18\x02 \x01(\x05\"\xb8\x01\n\x11\x42\x61llGoalieMessage\x12*\n\rball_position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rball_velocity\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12,\n\x0fgoalie_position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1d\n\x15goalie_body_direction\x18\x04 \x01(\x02\"Q\n\x10OnePlayerMessage\x12\x16\n\x0euniform_number\x18\x01 \x01(\x05\x12%\n\x08position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\"\xaa\x01\n\x10TwoPlayerMessage\x12\x1c\n\x14\x66irst_uniform_number\x18\x01 \x01(\x05\x12+\n\x0e\x66irst_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1d\n\x15second_uniform_number\x18\x03 \x01(\x05\x12,\n\x0fsecond_position\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\"\xf7\x01\n\x12ThreePlayerMessage\x12\x1c\n\x14\x66irst_uniform_number\x18\x01 \x01(\x05\x12+\n\x0e\x66irst_position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1d\n\x15second_uniform_number\x18\x03 \x01(\x05\x12,\n\x0fsecond_position\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1c\n\x14third_uniform_number\x18\x05 \x01(\x05\x12+\n\x0ethird_position\x18\x06 \x01(\x0b\x32\x13.protos.RpcVector2D\"l\n\x0bSelfMessage\x12*\n\rself_position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1b\n\x13self_body_direction\x18\x02 \x01(\x02\x12\x14\n\x0cself_stamina\x18\x03 \x01(\x02\"h\n\x0fTeammateMessage\x12\x16\n\x0euniform_number\x18\x01 \x01(\x05\x12%\n\x08position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x16\n\x0e\x62ody_direction\x18\x03 \x01(\x02\"h\n\x0fOpponentMessage\x12\x16\n\x0euniform_number\x18\x01 \x01(\x05\x12%\n\x08position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x16\n\x0e\x62ody_direction\x18\x03 \x01(\x02\"\xc9\x01\n\x11\x42\x61llPlayerMessage\x12*\n\rball_position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rball_velocity\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x16\n\x0euniform_number\x18\x03 \x01(\x05\x12,\n\x0fplayer_position\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x16\n\x0e\x62ody_direction\x18\x05 \x01(\x02\"\xd0\t\n\x03Say\x12+\n\x0c\x62\x61ll_message\x18\x01 \x01(\x0b\x32\x13.protos.BallMessageH\x00\x12+\n\x0cpass_message\x18\x02 \x01(\x0b\x32\x13.protos.PassMessageH\x00\x12\x35\n\x11intercept_message\x18\x03 \x01(\x0b\x32\x18.protos.InterceptMessageH\x00\x12/\n\x0egoalie_message\x18\x04 \x01(\x0b\x32\x15.protos.GoalieMessageH\x00\x12\x43\n\x19goalie_and_player_message\x18\x05 \x01(\x0b\x32\x1e.protos.GoalieAndPlayerMessageH\x00\x12:\n\x14offside_line_message\x18\x06 \x01(\x0b\x32\x1a.protos.OffsideLineMessageH\x00\x12:\n\x14\x64\x65\x66\x65nse_line_message\x18\x07 \x01(\x0b\x32\x1a.protos.DefenseLineMessageH\x00\x12:\n\x14wait_request_message\x18\x08 \x01(\x0b\x32\x1a.protos.WaitRequestMessageH\x00\x12\x31\n\x0fsetplay_message\x18\t \x01(\x0b\x32\x16.protos.SetplayMessageH\x00\x12:\n\x14pass_request_message\x18\n \x01(\x0b\x32\x1a.protos.PassRequestMessageH\x00\x12\x31\n\x0fstamina_message\x18\x0b \x01(\x0b\x32\x16.protos.StaminaMessageH\x00\x12\x33\n\x10recovery_message\x18\x0c \x01(\x0b\x32\x17.protos.RecoveryMessageH\x00\x12\x42\n\x18stamina_capacity_message\x18\r \x01(\x0b\x32\x1e.protos.StaminaCapacityMessageH\x00\x12\x31\n\x0f\x64ribble_message\x18\x0e \x01(\x0b\x32\x16.protos.DribbleMessageH\x00\x12\x38\n\x13\x62\x61ll_goalie_message\x18\x0f \x01(\x0b\x32\x19.protos.BallGoalieMessageH\x00\x12\x36\n\x12one_player_message\x18\x10 \x01(\x0b\x32\x18.protos.OnePlayerMessageH\x00\x12\x36\n\x12two_player_message\x18\x11 \x01(\x0b\x32\x18.protos.TwoPlayerMessageH\x00\x12:\n\x14three_player_message\x18\x12 \x01(\x0b\x32\x1a.protos.ThreePlayerMessageH\x00\x12+\n\x0cself_message\x18\x13 \x01(\x0b\x32\x13.protos.SelfMessageH\x00\x12\x33\n\x10teammate_message\x18\x14 \x01(\x0b\x32\x17.protos.TeammateMessageH\x00\x12\x33\n\x10opponent_message\x18\x15 \x01(\x0b\x32\x17.protos.OpponentMessageH\x00\x12\x38\n\x13\x62\x61ll_player_message\x18\x16 \x01(\x0b\x32\x19.protos.BallPlayerMessageH\x00\x42\t\n\x07message\"\x1f\n\x07PointTo\x12\t\n\x01x\x18\x01 \x01(\x02\x12\t\n\x01y\x18\x02 \x01(\x02\"\x0b\n\tPointToOf\"7\n\x0b\x41ttentionTo\x12\x1a\n\x04side\x18\x01 \x01(\x0e\x32\x0c.protos.Side\x12\x0c\n\x04unum\x18\x02 \x01(\x05\"\x0f\n\rAttentionToOf\">\n\x07\x41\x64\x64Text\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12\x0f\n\x07message\x18\x02 \x01(\t\"a\n\x08\x41\x64\x64Point\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12\"\n\x05point\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\r\n\x05\x63olor\x18\x03 \x01(\t\"\x82\x01\n\x07\x41\x64\x64Line\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12\"\n\x05start\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12 \n\x03\x65nd\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\r\n\x05\x63olor\x18\x04 \x01(\t\"\x99\x01\n\x06\x41\x64\x64\x41rc\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12#\n\x06\x63\x65nter\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x0e\n\x06radius\x18\x03 \x01(\x02\x12\x13\n\x0bstart_angle\x18\x04 \x01(\x02\x12\x12\n\nspan_angel\x18\x05 \x01(\x02\x12\r\n\x05\x63olor\x18\x06 \x01(\t\"\x81\x01\n\tAddCircle\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12#\n\x06\x63\x65nter\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x0e\n\x06radius\x18\x03 \x01(\x02\x12\r\n\x05\x63olor\x18\x04 \x01(\t\x12\x0c\n\x04\x66ill\x18\x05 \x01(\x08\"\xbd\x01\n\x0b\x41\x64\x64Triangle\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12#\n\x06point1\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12#\n\x06point2\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12#\n\x06point3\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\r\n\x05\x63olor\x18\x05 \x01(\t\x12\x0c\n\x04\x66ill\x18\x06 \x01(\x08\"\x89\x01\n\x0c\x41\x64\x64Rectangle\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12\x0c\n\x04left\x18\x02 \x01(\x02\x12\x0b\n\x03top\x18\x03 \x01(\x02\x12\x0e\n\x06length\x18\x04 \x01(\x02\x12\r\n\x05width\x18\x05 \x01(\x02\x12\r\n\x05\x63olor\x18\x06 \x01(\t\x12\x0c\n\x04\x66ill\x18\x07 \x01(\x08\"\xc2\x01\n\tAddSector\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12#\n\x06\x63\x65nter\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x12\n\nmin_radius\x18\x03 \x01(\x02\x12\x12\n\nmax_radius\x18\x04 \x01(\x02\x12\x13\n\x0bstart_angle\x18\x05 \x01(\x02\x12\x12\n\nspan_angel\x18\x06 \x01(\x02\x12\r\n\x05\x63olor\x18\x07 \x01(\t\x12\x0c\n\x04\x66ill\x18\x08 \x01(\x08\"w\n\nAddMessage\x12\"\n\x05level\x18\x01 \x01(\x0e\x32\x13.protos.LoggerLevel\x12%\n\x08position\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x0f\n\x07message\x18\x03 \x01(\t\x12\r\n\x05\x63olor\x18\x04 \x01(\t\"\xf9\x02\n\x03Log\x12#\n\x08\x61\x64\x64_text\x18\x01 \x01(\x0b\x32\x0f.protos.AddTextH\x00\x12%\n\tadd_point\x18\x02 \x01(\x0b\x32\x10.protos.AddPointH\x00\x12#\n\x08\x61\x64\x64_line\x18\x03 \x01(\x0b\x32\x0f.protos.AddLineH\x00\x12!\n\x07\x61\x64\x64_arc\x18\x04 \x01(\x0b\x32\x0e.protos.AddArcH\x00\x12\'\n\nadd_circle\x18\x05 \x01(\x0b\x32\x11.protos.AddCircleH\x00\x12+\n\x0c\x61\x64\x64_triangle\x18\x06 \x01(\x0b\x32\x13.protos.AddTriangleH\x00\x12-\n\radd_rectangle\x18\x07 \x01(\x0b\x32\x14.protos.AddRectangleH\x00\x12\'\n\nadd_sector\x18\x08 \x01(\x0b\x32\x11.protos.AddSectorH\x00\x12)\n\x0b\x61\x64\x64_message\x18\t \x01(\x0b\x32\x12.protos.AddMessageH\x00\x42\x05\n\x03log\"\x1e\n\x0b\x44\x65\x62ugClient\x12\x0f\n\x07message\x18\x01 \x01(\t\"o\n\x0e\x42ody_GoToPoint\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1a\n\x12\x64istance_threshold\x18\x02 \x01(\x02\x12\x16\n\x0emax_dash_power\x18\x03 \x01(\x02\"\x82\x01\n\x0e\x42ody_SmartKick\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x13\n\x0b\x66irst_speed\x18\x02 \x01(\x02\x12\x1d\n\x15\x66irst_speed_threshold\x18\x03 \x01(\x02\x12\x11\n\tmax_steps\x18\x04 \x01(\x05\"7\n\x11\x42hv_BeforeKickOff\x12\"\n\x05point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\"\x14\n\x12\x42hv_BodyNeckToBall\"9\n\x13\x42hv_BodyNeckToPoint\x12\"\n\x05point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\"\x0f\n\rBhv_Emergency\"v\n\x15\x42hv_GoToPointLookBall\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1a\n\x12\x64istance_threshold\x18\x02 \x01(\x02\x12\x16\n\x0emax_dash_power\x18\x03 \x01(\x02\"\'\n\x12\x42hv_NeckBodyToBall\x12\x11\n\tangle_buf\x18\x01 \x01(\x02\"L\n\x13\x42hv_NeckBodyToPoint\x12\"\n\x05point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x11\n\tangle_buf\x18\x02 \x01(\x02\"\x0f\n\rBhv_ScanField\"\x12\n\x10\x42ody_AdvanceBall\"\x10\n\x0e\x42ody_ClearBall\"\x8c\x01\n\x0c\x42ody_Dribble\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1a\n\x12\x64istance_threshold\x18\x02 \x01(\x02\x12\x12\n\ndash_power\x18\x03 \x01(\x02\x12\x12\n\ndash_count\x18\x04 \x01(\x05\x12\r\n\x05\x64odge\x18\x05 \x01(\x08\"T\n\x13\x42ody_GoToPointDodge\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x12\n\ndash_power\x18\x02 \x01(\x02\"\x80\x01\n\rBody_HoldBall\x12\x0f\n\x07\x64o_turn\x18\x01 \x01(\x08\x12.\n\x11turn_target_point\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\x12.\n\x11kick_target_point\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\"P\n\x0e\x42ody_Intercept\x12\x15\n\rsave_recovery\x18\x01 \x01(\x08\x12\'\n\nface_point\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\"f\n\x10\x42ody_KickOneStep\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x13\n\x0b\x66irst_speed\x18\x02 \x01(\x02\x12\x12\n\nforce_mode\x18\x03 \x01(\x08\"\x0f\n\rBody_StopBall\"&\n\rBody_StopDash\x12\x15\n\rsave_recovery\x18\x01 \x01(\x08\"k\n\x12\x42ody_TackleToPoint\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x17\n\x0fmin_probability\x18\x02 \x01(\x02\x12\x11\n\tmin_speed\x18\x03 \x01(\x02\"!\n\x10\x42ody_TurnToAngle\x12\r\n\x05\x61ngle\x18\x01 \x01(\x02\" \n\x0f\x42ody_TurnToBall\x12\r\n\x05\x63ycle\x18\x01 \x01(\x05\"L\n\x10\x42ody_TurnToPoint\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\r\n\x05\x63ycle\x18\x02 \x01(\x05\">\n\x11\x46ocus_MoveToPoint\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\"\r\n\x0b\x46ocus_Reset\"\x10\n\x0eNeck_ScanField\"\x12\n\x10Neck_ScanPlayers\"g\n\x18Neck_TurnToBallAndPlayer\x12\x1a\n\x04side\x18\x01 \x01(\x0e\x32\x0c.protos.Side\x12\x16\n\x0euniform_number\x18\x02 \x01(\x05\x12\x17\n\x0f\x63ount_threshold\x18\x03 \x01(\x05\"0\n\x15Neck_TurnToBallOrScan\x12\x17\n\x0f\x63ount_threshold\x18\x01 \x01(\x05\"\x11\n\x0fNeck_TurnToBall\"2\n\x17Neck_TurnToGoalieOrScan\x12\x17\n\x0f\x63ount_threshold\x18\x01 \x01(\x05\"\x1c\n\x1aNeck_TurnToLowConfTeammate\"f\n\x17Neck_TurnToPlayerOrScan\x12\x1a\n\x04side\x18\x01 \x01(\x0e\x32\x0c.protos.Side\x12\x16\n\x0euniform_number\x18\x02 \x01(\x05\x12\x17\n\x0f\x63ount_threshold\x18\x03 \x01(\x05\"=\n\x10Neck_TurnToPoint\x12)\n\x0ctarget_point\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\"$\n\x13Neck_TurnToRelative\x12\r\n\x05\x61ngle\x18\x01 \x01(\x02\"\x1d\n\x1bNeck_OffensiveInterceptNeck\"9\n\x10View_ChangeWidth\x12%\n\nview_width\x18\x01 \x01(\x0e\x32\x11.protos.ViewWidth\"\r\n\x0bView_Normal\"\x0c\n\nView_Synch\"\x0b\n\tView_Wide\"\x0e\n\x0cHeliosGoalie\"\x12\n\x10HeliosGoalieMove\"\x12\n\x10HeliosGoalieKick\"\r\n\x0bHeliosShoot\"\xc8\x02\n\x16HeliosOffensivePlanner\x12\x13\n\x0b\x64irect_pass\x18\x01 \x01(\x08\x12\x11\n\tlead_pass\x18\x02 \x01(\x08\x12\x14\n\x0cthrough_pass\x18\x03 \x01(\x08\x12\x15\n\rshort_dribble\x18\x04 \x01(\x08\x12\x14\n\x0clong_dribble\x18\x05 \x01(\x08\x12\r\n\x05\x63ross\x18\x06 \x01(\x08\x12\x13\n\x0bsimple_pass\x18\x07 \x01(\x08\x12\x16\n\x0esimple_dribble\x18\x08 \x01(\x08\x12\x14\n\x0csimple_shoot\x18\t \x01(\x08\x12\x1c\n\x14server_side_decision\x18\n \x01(\x08\x12\x11\n\tmax_depth\x18\x0b \x01(\x05\x12\x11\n\tmax_nodes\x18\x0c \x01(\x05\x12-\n\nevaluation\x18\r \x01(\x0b\x32\x19.protos.PlannerEvaluation\"\xd6\x01\n\x10OpponentEffector\x12#\n\x1bnegetive_effect_by_distance\x18\x01 \x03(\x02\x12\x38\n0negetive_effect_by_distance_based_on_first_layer\x18\x02 \x01(\x08\x12&\n\x1enegetive_effect_by_reach_steps\x18\x03 \x03(\x02\x12;\n3negetive_effect_by_reach_steps_based_on_first_layer\x18\x04 \x01(\x08\"\x9c\x01\n\x12\x41\x63tionTypeEffector\x12\x13\n\x0b\x64irect_pass\x18\x01 \x01(\x02\x12\x11\n\tlead_pass\x18\x02 \x01(\x02\x12\x14\n\x0cthrough_pass\x18\x03 \x01(\x02\x12\x15\n\rshort_dribble\x18\x04 \x01(\x02\x12\x14\n\x0clong_dribble\x18\x05 \x01(\x02\x12\r\n\x05\x63ross\x18\x06 \x01(\x02\x12\x0c\n\x04hold\x18\x07 \x01(\x02\"\xad\x01\n\x10TeammateEffector\x12@\n\x0c\x63oefficients\x18\x01 \x03(\x0b\x32*.protos.TeammateEffector.CoefficientsEntry\x12\"\n\x1a\x61pply_based_on_first_layer\x18\x02 \x01(\x08\x1a\x33\n\x11\x43oefficientsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x02:\x02\x38\x01\"\xbf\x01\n\x19PlannerEvaluationEffector\x12\x33\n\x11opponent_effector\x18\x01 \x01(\x0b\x32\x18.protos.OpponentEffector\x12\x38\n\x14\x61\x63tion_type_effector\x18\x02 \x01(\x0b\x32\x1a.protos.ActionTypeEffector\x12\x33\n\x11teammate_effector\x18\x03 \x01(\x0b\x32\x18.protos.TeammateEffector\"}\n\x14HeliosFieldEvaluator\x12\x15\n\rx_coefficient\x18\x01 \x01(\x02\x12%\n\x1d\x62\x61ll_dist_to_goal_coefficient\x18\x02 \x01(\x02\x12\'\n\x1f\x65\x66\x66\x65\x63tive_max_ball_dist_to_goal\x18\x03 \x01(\x02\"&\n\x15MatrixFieldEvaluatorY\x12\r\n\x05\x65vals\x18\x01 \x03(\x02\"D\n\x14MatrixFieldEvaluator\x12,\n\x05\x65vals\x18\x01 \x03(\x0b\x32\x1d.protos.MatrixFieldEvaluatorY\"\x93\x01\n\x15PlannerFieldEvaluator\x12<\n\x16helios_field_evaluator\x18\x01 \x01(\x0b\x32\x1c.protos.HeliosFieldEvaluator\x12<\n\x16matrix_field_evaluator\x18\x02 \x01(\x0b\x32\x1c.protos.MatrixFieldEvaluator\"\x82\x01\n\x11PlannerEvaluation\x12\x34\n\teffectors\x18\x01 \x01(\x0b\x32!.protos.PlannerEvaluationEffector\x12\x37\n\x10\x66ield_evaluators\x18\x02 \x01(\x0b\x32\x1d.protos.PlannerFieldEvaluator\"\x16\n\x14HeliosBasicOffensive\"\x11\n\x0fHeliosBasicMove\"\x0f\n\rHeliosSetPlay\"\x0f\n\rHeliosPenalty\"\x14\n\x12HeliosCommunicaion\"7\n\x11HeliosBasicTackle\x12\x10\n\x08min_prob\x18\x01 \x01(\x02\x12\x10\n\x08\x62ody_thr\x18\x02 \x01(\x02\"\x11\n\x0f\x62hv_doForceKick\"\x18\n\x16\x62hv_doHeardPassRecieve\"\xf0\x1b\n\x0cPlayerAction\x12\x1c\n\x04\x64\x61sh\x18\x01 \x01(\x0b\x32\x0c.protos.DashH\x00\x12\x1c\n\x04turn\x18\x02 \x01(\x0b\x32\x0c.protos.TurnH\x00\x12\x1c\n\x04kick\x18\x03 \x01(\x0b\x32\x0c.protos.KickH\x00\x12 \n\x06tackle\x18\x04 \x01(\x0b\x32\x0e.protos.TackleH\x00\x12\x1e\n\x05\x63\x61tch\x18\x05 \x01(\x0b\x32\r.protos.CatchH\x00\x12\x1c\n\x04move\x18\x06 \x01(\x0b\x32\x0c.protos.MoveH\x00\x12%\n\tturn_neck\x18\x07 \x01(\x0b\x32\x10.protos.TurnNeckH\x00\x12)\n\x0b\x63hange_view\x18\x08 \x01(\x0b\x32\x12.protos.ChangeViewH\x00\x12\x1a\n\x03say\x18\t \x01(\x0b\x32\x0b.protos.SayH\x00\x12#\n\x08point_to\x18\n \x01(\x0b\x32\x0f.protos.PointToH\x00\x12(\n\x0bpoint_to_of\x18\x0b \x01(\x0b\x32\x11.protos.PointToOfH\x00\x12+\n\x0c\x61ttention_to\x18\x0c \x01(\x0b\x32\x13.protos.AttentionToH\x00\x12\x30\n\x0f\x61ttention_to_of\x18\r \x01(\x0b\x32\x15.protos.AttentionToOfH\x00\x12\x1a\n\x03log\x18\x0e \x01(\x0b\x32\x0b.protos.LogH\x00\x12+\n\x0c\x64\x65\x62ug_client\x18\x0f \x01(\x0b\x32\x13.protos.DebugClientH\x00\x12\x32\n\x10\x62ody_go_to_point\x18\x10 \x01(\x0b\x32\x16.protos.Body_GoToPointH\x00\x12\x31\n\x0f\x62ody_smart_kick\x18\x11 \x01(\x0b\x32\x16.protos.Body_SmartKickH\x00\x12\x38\n\x13\x62hv_before_kick_off\x18\x12 \x01(\x0b\x32\x19.protos.Bhv_BeforeKickOffH\x00\x12;\n\x15\x62hv_body_neck_to_ball\x18\x13 \x01(\x0b\x32\x1a.protos.Bhv_BodyNeckToBallH\x00\x12=\n\x16\x62hv_body_neck_to_point\x18\x14 \x01(\x0b\x32\x1b.protos.Bhv_BodyNeckToPointH\x00\x12.\n\rbhv_emergency\x18\x15 \x01(\x0b\x32\x15.protos.Bhv_EmergencyH\x00\x12\x42\n\x19\x62hv_go_to_point_look_ball\x18\x16 \x01(\x0b\x32\x1d.protos.Bhv_GoToPointLookBallH\x00\x12;\n\x15\x62hv_neck_body_to_ball\x18\x17 \x01(\x0b\x32\x1a.protos.Bhv_NeckBodyToBallH\x00\x12=\n\x16\x62hv_neck_body_to_point\x18\x18 \x01(\x0b\x32\x1b.protos.Bhv_NeckBodyToPointH\x00\x12/\n\x0e\x62hv_scan_field\x18\x19 \x01(\x0b\x32\x15.protos.Bhv_ScanFieldH\x00\x12\x35\n\x11\x62ody_advance_ball\x18\x1a \x01(\x0b\x32\x18.protos.Body_AdvanceBallH\x00\x12\x31\n\x0f\x62ody_clear_ball\x18\x1b \x01(\x0b\x32\x16.protos.Body_ClearBallH\x00\x12,\n\x0c\x62ody_dribble\x18\x1c \x01(\x0b\x32\x14.protos.Body_DribbleH\x00\x12=\n\x16\x62ody_go_to_point_dodge\x18\x1d \x01(\x0b\x32\x1b.protos.Body_GoToPointDodgeH\x00\x12/\n\x0e\x62ody_hold_ball\x18\x1e \x01(\x0b\x32\x15.protos.Body_HoldBallH\x00\x12\x30\n\x0e\x62ody_intercept\x18\x1f \x01(\x0b\x32\x16.protos.Body_InterceptH\x00\x12\x36\n\x12\x62ody_kick_one_step\x18 \x01(\x0b\x32\x18.protos.Body_KickOneStepH\x00\x12/\n\x0e\x62ody_stop_ball\x18! \x01(\x0b\x32\x15.protos.Body_StopBallH\x00\x12/\n\x0e\x62ody_stop_dash\x18\" \x01(\x0b\x32\x15.protos.Body_StopDashH\x00\x12:\n\x14\x62ody_tackle_to_point\x18# \x01(\x0b\x32\x1a.protos.Body_TackleToPointH\x00\x12\x36\n\x12\x62ody_turn_to_angle\x18$ \x01(\x0b\x32\x18.protos.Body_TurnToAngleH\x00\x12\x34\n\x11\x62ody_turn_to_ball\x18% \x01(\x0b\x32\x17.protos.Body_TurnToBallH\x00\x12\x36\n\x12\x62ody_turn_to_point\x18& \x01(\x0b\x32\x18.protos.Body_TurnToPointH\x00\x12\x38\n\x13\x66ocus_move_to_point\x18\' \x01(\x0b\x32\x19.protos.Focus_MoveToPointH\x00\x12*\n\x0b\x66ocus_reset\x18( \x01(\x0b\x32\x13.protos.Focus_ResetH\x00\x12\x31\n\x0fneck_scan_field\x18) \x01(\x0b\x32\x16.protos.Neck_ScanFieldH\x00\x12\x35\n\x11neck_scan_players\x18* \x01(\x0b\x32\x18.protos.Neck_ScanPlayersH\x00\x12H\n\x1cneck_turn_to_ball_and_player\x18+ \x01(\x0b\x32 .protos.Neck_TurnToBallAndPlayerH\x00\x12\x42\n\x19neck_turn_to_ball_or_scan\x18, \x01(\x0b\x32\x1d.protos.Neck_TurnToBallOrScanH\x00\x12\x34\n\x11neck_turn_to_ball\x18- \x01(\x0b\x32\x17.protos.Neck_TurnToBallH\x00\x12\x46\n\x1bneck_turn_to_goalie_or_scan\x18. \x01(\x0b\x32\x1f.protos.Neck_TurnToGoalieOrScanH\x00\x12L\n\x1eneck_turn_to_low_conf_teammate\x18/ \x01(\x0b\x32\".protos.Neck_TurnToLowConfTeammateH\x00\x12\x46\n\x1bneck_turn_to_player_or_scan\x18\x30 \x01(\x0b\x32\x1f.protos.Neck_TurnToPlayerOrScanH\x00\x12\x36\n\x12neck_turn_to_point\x18\x31 \x01(\x0b\x32\x18.protos.Neck_TurnToPointH\x00\x12<\n\x15neck_turn_to_relative\x18\x32 \x01(\x0b\x32\x1b.protos.Neck_TurnToRelativeH\x00\x12\x35\n\x11view_change_width\x18\x33 \x01(\x0b\x32\x18.protos.View_ChangeWidthH\x00\x12*\n\x0bview_normal\x18\x34 \x01(\x0b\x32\x13.protos.View_NormalH\x00\x12(\n\nview_synch\x18\x35 \x01(\x0b\x32\x12.protos.View_SynchH\x00\x12&\n\tview_wide\x18\x36 \x01(\x0b\x32\x11.protos.View_WideH\x00\x12-\n\rhelios_goalie\x18\x37 \x01(\x0b\x32\x14.protos.HeliosGoalieH\x00\x12\x36\n\x12helios_goalie_move\x18\x38 \x01(\x0b\x32\x18.protos.HeliosGoalieMoveH\x00\x12\x36\n\x12helios_goalie_kick\x18\x39 \x01(\x0b\x32\x18.protos.HeliosGoalieKickH\x00\x12+\n\x0chelios_shoot\x18: \x01(\x0b\x32\x13.protos.HeliosShootH\x00\x12\x42\n\x18helios_offensive_planner\x18; \x01(\x0b\x32\x1e.protos.HeliosOffensivePlannerH\x00\x12>\n\x16helios_basic_offensive\x18< \x01(\x0b\x32\x1c.protos.HeliosBasicOffensiveH\x00\x12\x34\n\x11helios_basic_move\x18= \x01(\x0b\x32\x17.protos.HeliosBasicMoveH\x00\x12\x30\n\x0fhelios_set_play\x18> \x01(\x0b\x32\x15.protos.HeliosSetPlayH\x00\x12/\n\x0ehelios_penalty\x18? \x01(\x0b\x32\x15.protos.HeliosPenaltyH\x00\x12:\n\x14helios_communication\x18@ \x01(\x0b\x32\x1a.protos.HeliosCommunicaionH\x00\x12\x34\n\x11\x62hv_do_force_kick\x18\x41 \x01(\x0b\x32\x17.protos.bhv_doForceKickH\x00\x12\x43\n\x19\x62hv_do_heard_pass_recieve\x18\x42 \x01(\x0b\x32\x1e.protos.bhv_doHeardPassRecieveH\x00\x12\x38\n\x13helios_basic_tackle\x18\x43 \x01(\x0b\x32\x19.protos.HeliosBasicTackleH\x00\x12L\n\x1dneck_offensive_intercept_neck\x18\x44 \x01(\x0b\x32#.protos.Neck_OffensiveInterceptNeckH\x00\x42\x08\n\x06\x61\x63tion\"\xce\x01\n\rPlayerActions\x12%\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x14.protos.PlayerAction\x12\x19\n\x11ignore_preprocess\x18\x02 \x01(\x08\x12\x1a\n\x12ignore_doforcekick\x18\x03 \x01(\x08\x12!\n\x19ignore_doHeardPassRecieve\x18\x04 \x01(\x08\x12\x1a\n\x12ignore_doIntention\x18\x05 \x01(\x08\x12 \n\x18ignore_shootInPreprocess\x18\x06 \x01(\x08\"8\n\x10\x43hangePlayerType\x12\x16\n\x0euniform_number\x18\x01 \x01(\x05\x12\x0c\n\x04type\x18\x02 \x01(\x05\"\x14\n\x12\x44oHeliosSubstitute\"\x18\n\x16\x44oHeliosSayPlayerTypes\"\xd2\x01\n\x0b\x43oachAction\x12\x37\n\x13\x63hange_player_types\x18\x01 \x01(\x0b\x32\x18.protos.ChangePlayerTypeH\x00\x12:\n\x14\x64o_helios_substitute\x18\x02 \x01(\x0b\x32\x1a.protos.DoHeliosSubstituteH\x00\x12\x44\n\x1a\x64o_helios_say_player_types\x18\x03 \x01(\x0b\x32\x1e.protos.DoHeliosSayPlayerTypesH\x00\x42\x08\n\x06\x61\x63tion\"4\n\x0c\x43oachActions\x12$\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x13.protos.CoachAction\"\x0b\n\tDoKickOff\"Z\n\nDoMoveBall\x12%\n\x08position\x18\x01 \x01(\x0b\x32\x13.protos.RpcVector2D\x12%\n\x08velocity\x18\x02 \x01(\x0b\x32\x13.protos.RpcVector2D\"w\n\x0c\x44oMovePlayer\x12\x10\n\x08our_side\x18\x01 \x01(\x08\x12\x16\n\x0euniform_number\x18\x02 \x01(\x05\x12%\n\x08position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x16\n\x0e\x62ody_direction\x18\x04 \x01(\x02\"\x0b\n\tDoRecover\"X\n\x0c\x44oChangeMode\x12,\n\x0egame_mode_type\x18\x01 \x01(\x0e\x32\x14.protos.GameModeType\x12\x1a\n\x04side\x18\x02 \x01(\x0e\x32\x0c.protos.Side\"L\n\x12\x44oChangePlayerType\x12\x10\n\x08our_side\x18\x01 \x01(\x08\x12\x16\n\x0euniform_number\x18\x02 \x01(\x05\x12\x0c\n\x04type\x18\x03 \x01(\x05\"\xb5\x02\n\rTrainerAction\x12(\n\x0b\x64o_kick_off\x18\x01 \x01(\x0b\x32\x11.protos.DoKickOffH\x00\x12*\n\x0c\x64o_move_ball\x18\x02 \x01(\x0b\x32\x12.protos.DoMoveBallH\x00\x12.\n\x0e\x64o_move_player\x18\x03 \x01(\x0b\x32\x14.protos.DoMovePlayerH\x00\x12\'\n\ndo_recover\x18\x04 \x01(\x0b\x32\x11.protos.DoRecoverH\x00\x12.\n\x0e\x64o_change_mode\x18\x05 \x01(\x0b\x32\x14.protos.DoChangeModeH\x00\x12;\n\x15\x64o_change_player_type\x18\x06 \x01(\x0b\x32\x1a.protos.DoChangePlayerTypeH\x00\x42\x08\n\x06\x61\x63tion\"8\n\x0eTrainerActions\x12&\n\x07\x61\x63tions\x18\x01 \x03(\x0b\x32\x15.protos.TrainerAction\"\xc7-\n\x0bServerParam\x12\x33\n\x11register_response\x18\x01 \x01(\x0b\x32\x18.protos.RegisterResponse\x12\x16\n\x0einertia_moment\x18\x02 \x01(\x02\x12\x13\n\x0bplayer_size\x18\x03 \x01(\x02\x12\x14\n\x0cplayer_decay\x18\x04 \x01(\x02\x12\x13\n\x0bplayer_rand\x18\x05 \x01(\x02\x12\x15\n\rplayer_weight\x18\x06 \x01(\x02\x12\x18\n\x10player_speed_max\x18\x07 \x01(\x02\x12\x18\n\x10player_accel_max\x18\x08 \x01(\x02\x12\x13\n\x0bstamina_max\x18\t \x01(\x02\x12\x17\n\x0fstamina_inc_max\x18\n \x01(\x02\x12\x14\n\x0crecover_init\x18\x0b \x01(\x02\x12\x17\n\x0frecover_dec_thr\x18\x0c \x01(\x02\x12\x13\n\x0brecover_min\x18\r \x01(\x02\x12\x13\n\x0brecover_dec\x18\x0e \x01(\x02\x12\x13\n\x0b\x65\x66\x66ort_init\x18\x0f \x01(\x02\x12\x16\n\x0e\x65\x66\x66ort_dec_thr\x18\x10 \x01(\x02\x12\x12\n\neffort_min\x18\x11 \x01(\x02\x12\x12\n\neffort_dec\x18\x12 \x01(\x02\x12\x16\n\x0e\x65\x66\x66ort_inc_thr\x18\x13 \x01(\x02\x12\x12\n\neffort_inc\x18\x14 \x01(\x02\x12\x11\n\tkick_rand\x18\x15 \x01(\x02\x12\x1b\n\x13team_actuator_noise\x18\x16 \x01(\x08\x12\x1c\n\x14player_rand_factor_l\x18\x17 \x01(\x02\x12\x1c\n\x14player_rand_factor_r\x18\x18 \x01(\x02\x12\x1a\n\x12kick_rand_factor_l\x18\x19 \x01(\x02\x12\x1a\n\x12kick_rand_factor_r\x18\x1a \x01(\x02\x12\x11\n\tball_size\x18\x1b \x01(\x02\x12\x12\n\nball_decay\x18\x1c \x01(\x02\x12\x11\n\tball_rand\x18\x1d \x01(\x02\x12\x13\n\x0b\x62\x61ll_weight\x18\x1e \x01(\x02\x12\x16\n\x0e\x62\x61ll_speed_max\x18\x1f \x01(\x02\x12\x16\n\x0e\x62\x61ll_accel_max\x18 \x01(\x02\x12\x17\n\x0f\x64\x61sh_power_rate\x18! \x01(\x02\x12\x17\n\x0fkick_power_rate\x18\" \x01(\x02\x12\x17\n\x0fkickable_margin\x18# \x01(\x02\x12\x16\n\x0e\x63ontrol_radius\x18$ \x01(\x02\x12\x1c\n\x14\x63ontrol_radius_width\x18% \x01(\x02\x12\x11\n\tmax_power\x18& \x01(\x02\x12\x11\n\tmin_power\x18\' \x01(\x02\x12\x12\n\nmax_moment\x18( \x01(\x02\x12\x12\n\nmin_moment\x18) \x01(\x02\x12\x17\n\x0fmax_neck_moment\x18* \x01(\x02\x12\x17\n\x0fmin_neck_moment\x18+ \x01(\x02\x12\x16\n\x0emax_neck_angle\x18, \x01(\x02\x12\x16\n\x0emin_neck_angle\x18- \x01(\x02\x12\x15\n\rvisible_angle\x18. \x01(\x02\x12\x18\n\x10visible_distance\x18/ \x01(\x02\x12\x10\n\x08wind_dir\x18\x30 \x01(\x02\x12\x12\n\nwind_force\x18\x31 \x01(\x02\x12\x12\n\nwind_angle\x18\x32 \x01(\x02\x12\x11\n\twind_rand\x18\x33 \x01(\x02\x12\x15\n\rkickable_area\x18\x34 \x01(\x02\x12\x14\n\x0c\x63\x61tch_area_l\x18\x35 \x01(\x02\x12\x14\n\x0c\x63\x61tch_area_w\x18\x36 \x01(\x02\x12\x19\n\x11\x63\x61tch_probability\x18\x37 \x01(\x02\x12\x18\n\x10goalie_max_moves\x18\x38 \x01(\x05\x12\x1a\n\x12\x63orner_kick_margin\x18\x39 \x01(\x02\x12 \n\x18offside_active_area_size\x18: \x01(\x02\x12\x11\n\twind_none\x18; \x01(\x08\x12\x17\n\x0fuse_wind_random\x18< \x01(\x08\x12\x1b\n\x13\x63oach_say_count_max\x18= \x01(\x05\x12\x1a\n\x12\x63oach_say_msg_size\x18> \x01(\x05\x12\x16\n\x0e\x63lang_win_size\x18? \x01(\x05\x12\x18\n\x10\x63lang_define_win\x18@ \x01(\x05\x12\x16\n\x0e\x63lang_meta_win\x18\x41 \x01(\x05\x12\x18\n\x10\x63lang_advice_win\x18\x42 \x01(\x05\x12\x16\n\x0e\x63lang_info_win\x18\x43 \x01(\x05\x12\x18\n\x10\x63lang_mess_delay\x18\x44 \x01(\x05\x12\x1c\n\x14\x63lang_mess_per_cycle\x18\x45 \x01(\x05\x12\x11\n\thalf_time\x18\x46 \x01(\x05\x12\x16\n\x0esimulator_step\x18G \x01(\x05\x12\x11\n\tsend_step\x18H \x01(\x05\x12\x11\n\trecv_step\x18I \x01(\x05\x12\x17\n\x0fsense_body_step\x18J \x01(\x05\x12\x10\n\x08lcm_step\x18K \x01(\x05\x12\x1b\n\x13player_say_msg_size\x18L \x01(\x05\x12\x17\n\x0fplayer_hear_max\x18M \x01(\x05\x12\x17\n\x0fplayer_hear_inc\x18N \x01(\x05\x12\x19\n\x11player_hear_decay\x18O \x01(\x05\x12\x17\n\x0f\x63\x61tch_ban_cycle\x18P \x01(\x05\x12\x18\n\x10slow_down_factor\x18Q \x01(\x05\x12\x13\n\x0buse_offside\x18R \x01(\x08\x12\x17\n\x0fkickoff_offside\x18S \x01(\x08\x12\x1b\n\x13offside_kick_margin\x18T \x01(\x02\x12\x16\n\x0e\x61udio_cut_dist\x18U \x01(\x02\x12\x1a\n\x12\x64ist_quantize_step\x18V \x01(\x02\x12#\n\x1blandmark_dist_quantize_step\x18W \x01(\x02\x12\x19\n\x11\x64ir_quantize_step\x18X \x01(\x02\x12\x1c\n\x14\x64ist_quantize_step_l\x18Y \x01(\x02\x12\x1c\n\x14\x64ist_quantize_step_r\x18Z \x01(\x02\x12%\n\x1dlandmark_dist_quantize_step_l\x18[ \x01(\x02\x12%\n\x1dlandmark_dist_quantize_step_r\x18\\ \x01(\x02\x12\x1b\n\x13\x64ir_quantize_step_l\x18] \x01(\x02\x12\x1b\n\x13\x64ir_quantize_step_r\x18^ \x01(\x02\x12\x12\n\ncoach_mode\x18_ \x01(\x08\x12\x1f\n\x17\x63oach_with_referee_mode\x18` \x01(\x08\x12\x1a\n\x12use_old_coach_hear\x18\x61 \x01(\x08\x12%\n\x1dslowness_on_top_for_left_team\x18\x62 \x01(\x02\x12&\n\x1eslowness_on_top_for_right_team\x18\x63 \x01(\x02\x12\x14\n\x0cstart_goal_l\x18\x64 \x01(\x05\x12\x14\n\x0cstart_goal_r\x18\x65 \x01(\x05\x12\x13\n\x0b\x66ullstate_l\x18\x66 \x01(\x08\x12\x13\n\x0b\x66ullstate_r\x18g \x01(\x08\x12\x16\n\x0e\x64rop_ball_time\x18h \x01(\x05\x12\x12\n\nsynch_mode\x18i \x01(\x08\x12\x14\n\x0csynch_offset\x18j \x01(\x05\x12\x19\n\x11synch_micro_sleep\x18k \x01(\x05\x12\x14\n\x0cpoint_to_ban\x18l \x01(\x05\x12\x19\n\x11point_to_duration\x18m \x01(\x05\x12\x13\n\x0bplayer_port\x18n \x01(\x05\x12\x14\n\x0ctrainer_port\x18o \x01(\x05\x12\x19\n\x11online_coach_port\x18p \x01(\x05\x12\x14\n\x0cverbose_mode\x18q \x01(\x08\x12\x1a\n\x12\x63oach_send_vi_step\x18r \x01(\x05\x12\x13\n\x0breplay_file\x18s \x01(\t\x12\x15\n\rlandmark_file\x18t \x01(\t\x12\x12\n\nsend_comms\x18u \x01(\x08\x12\x14\n\x0ctext_logging\x18v \x01(\x08\x12\x14\n\x0cgame_logging\x18w \x01(\x08\x12\x18\n\x10game_log_version\x18x \x01(\x05\x12\x14\n\x0ctext_log_dir\x18y \x01(\t\x12\x14\n\x0cgame_log_dir\x18z \x01(\t\x12\x1b\n\x13text_log_fixed_name\x18{ \x01(\t\x12\x1b\n\x13game_log_fixed_name\x18| \x01(\t\x12\x1a\n\x12use_text_log_fixed\x18} \x01(\x08\x12\x1a\n\x12use_game_log_fixed\x18~ \x01(\x08\x12\x1a\n\x12use_text_log_dated\x18\x7f \x01(\x08\x12\x1b\n\x12use_game_log_dated\x18\x80\x01 \x01(\x08\x12\x18\n\x0flog_date_format\x18\x81\x01 \x01(\t\x12\x12\n\tlog_times\x18\x82\x01 \x01(\x08\x12\x17\n\x0erecord_message\x18\x83\x01 \x01(\x08\x12\x1d\n\x14text_log_compression\x18\x84\x01 \x01(\x05\x12\x1d\n\x14game_log_compression\x18\x85\x01 \x01(\x05\x12\x14\n\x0buse_profile\x18\x86\x01 \x01(\x08\x12\x14\n\x0btackle_dist\x18\x87\x01 \x01(\x02\x12\x19\n\x10tackle_back_dist\x18\x88\x01 \x01(\x02\x12\x15\n\x0ctackle_width\x18\x89\x01 \x01(\x02\x12\x18\n\x0ftackle_exponent\x18\x8a\x01 \x01(\x02\x12\x16\n\rtackle_cycles\x18\x8b\x01 \x01(\x05\x12\x1a\n\x11tackle_power_rate\x18\x8c\x01 \x01(\x02\x12\x1d\n\x14\x66reeform_wait_period\x18\x8d\x01 \x01(\x05\x12\x1d\n\x14\x66reeform_send_period\x18\x8e\x01 \x01(\x05\x12\x19\n\x10\x66ree_kick_faults\x18\x8f\x01 \x01(\x08\x12\x14\n\x0b\x62\x61\x63k_passes\x18\x90\x01 \x01(\x08\x12\x1a\n\x11proper_goal_kicks\x18\x91\x01 \x01(\x08\x12\x19\n\x10stopped_ball_vel\x18\x92\x01 \x01(\x02\x12\x17\n\x0emax_goal_kicks\x18\x93\x01 \x01(\x05\x12\x16\n\rclang_del_win\x18\x94\x01 \x01(\x05\x12\x17\n\x0e\x63lang_rule_win\x18\x95\x01 \x01(\x05\x12\x12\n\tauto_mode\x18\x96\x01 \x01(\x08\x12\x16\n\rkick_off_wait\x18\x97\x01 \x01(\x05\x12\x15\n\x0c\x63onnect_wait\x18\x98\x01 \x01(\x05\x12\x17\n\x0egame_over_wait\x18\x99\x01 \x01(\x05\x12\x15\n\x0cteam_l_start\x18\x9a\x01 \x01(\t\x12\x15\n\x0cteam_r_start\x18\x9b\x01 \x01(\t\x12\x16\n\rkeepaway_mode\x18\x9c\x01 \x01(\x08\x12\x18\n\x0fkeepaway_length\x18\x9d\x01 \x01(\x02\x12\x17\n\x0ekeepaway_width\x18\x9e\x01 \x01(\x02\x12\x19\n\x10keepaway_logging\x18\x9f\x01 \x01(\x08\x12\x19\n\x10keepaway_log_dir\x18\xa0\x01 \x01(\t\x12 \n\x17keepaway_log_fixed_name\x18\xa1\x01 \x01(\t\x12\x1b\n\x12keepaway_log_fixed\x18\xa2\x01 \x01(\x08\x12\x1b\n\x12keepaway_log_dated\x18\xa3\x01 \x01(\x08\x12\x17\n\x0ekeepaway_start\x18\xa4\x01 \x01(\x05\x12\x18\n\x0fnr_normal_halfs\x18\xa5\x01 \x01(\x05\x12\x17\n\x0enr_extra_halfs\x18\xa6\x01 \x01(\x05\x12\x1b\n\x12penalty_shoot_outs\x18\xa7\x01 \x01(\x08\x12\x1e\n\x15pen_before_setup_wait\x18\xa8\x01 \x01(\x05\x12\x17\n\x0epen_setup_wait\x18\xa9\x01 \x01(\x05\x12\x17\n\x0epen_ready_wait\x18\xaa\x01 \x01(\x05\x12\x17\n\x0epen_taken_wait\x18\xab\x01 \x01(\x05\x12\x15\n\x0cpen_nr_kicks\x18\xac\x01 \x01(\x05\x12\x1c\n\x13pen_max_extra_kicks\x18\xad\x01 \x01(\x05\x12\x13\n\npen_dist_x\x18\xae\x01 \x01(\x02\x12\x1a\n\x11pen_random_winner\x18\xaf\x01 \x01(\x08\x12\x1d\n\x14pen_allow_mult_kicks\x18\xb0\x01 \x01(\x08\x12\x1e\n\x15pen_max_goalie_dist_x\x18\xb1\x01 \x01(\x02\x12 \n\x17pen_coach_moves_players\x18\xb2\x01 \x01(\x08\x12\x13\n\nmodule_dir\x18\xb3\x01 \x01(\t\x12\x18\n\x0f\x62\x61ll_stuck_area\x18\xb4\x01 \x01(\x02\x12\x17\n\x0e\x63oach_msg_file\x18\xb5\x01 \x01(\t\x12\x19\n\x10max_tackle_power\x18\xb6\x01 \x01(\x02\x12\x1e\n\x15max_back_tackle_power\x18\xb7\x01 \x01(\x02\x12\x1d\n\x14player_speed_max_min\x18\xb8\x01 \x01(\x02\x12\x16\n\rextra_stamina\x18\xb9\x01 \x01(\x02\x12\x19\n\x10synch_see_offset\x18\xba\x01 \x01(\x05\x12\x18\n\x0f\x65xtra_half_time\x18\xbb\x01 \x01(\x05\x12\x19\n\x10stamina_capacity\x18\xbc\x01 \x01(\x02\x12\x17\n\x0emax_dash_angle\x18\xbd\x01 \x01(\x02\x12\x17\n\x0emin_dash_angle\x18\xbe\x01 \x01(\x02\x12\x18\n\x0f\x64\x61sh_angle_step\x18\xbf\x01 \x01(\x02\x12\x17\n\x0eside_dash_rate\x18\xc0\x01 \x01(\x02\x12\x17\n\x0e\x62\x61\x63k_dash_rate\x18\xc1\x01 \x01(\x02\x12\x17\n\x0emax_dash_power\x18\xc2\x01 \x01(\x02\x12\x17\n\x0emin_dash_power\x18\xc3\x01 \x01(\x02\x12\x1b\n\x12tackle_rand_factor\x18\xc4\x01 \x01(\x02\x12 \n\x17\x66oul_detect_probability\x18\xc5\x01 \x01(\x02\x12\x16\n\rfoul_exponent\x18\xc6\x01 \x01(\x02\x12\x14\n\x0b\x66oul_cycles\x18\xc7\x01 \x01(\x05\x12\x14\n\x0bgolden_goal\x18\xc8\x01 \x01(\x08\x12\x1d\n\x14red_card_probability\x18\xc9\x01 \x01(\x02\x12!\n\x18illegal_defense_duration\x18\xca\x01 \x01(\x05\x12\x1f\n\x16illegal_defense_number\x18\xcb\x01 \x01(\x05\x12\x1f\n\x16illegal_defense_dist_x\x18\xcc\x01 \x01(\x02\x12\x1e\n\x15illegal_defense_width\x18\xcd\x01 \x01(\x02\x12\x19\n\x10\x66ixed_teamname_l\x18\xce\x01 \x01(\t\x12\x19\n\x10\x66ixed_teamname_r\x18\xcf\x01 \x01(\t\x12\x18\n\x0fmax_catch_angle\x18\xd0\x01 \x01(\x02\x12\x18\n\x0fmin_catch_angle\x18\xd1\x01 \x01(\x02\x12\x14\n\x0brandom_seed\x18\xd2\x01 \x01(\x05\x12\x1f\n\x16long_kick_power_factor\x18\xd3\x01 \x01(\x02\x12\x18\n\x0flong_kick_delay\x18\xd4\x01 \x01(\x05\x12\x15\n\x0cmax_monitors\x18\xd5\x01 \x01(\x05\x12\x17\n\x0e\x63\x61tchable_area\x18\xd6\x01 \x01(\x02\x12\x17\n\x0ereal_speed_max\x18\xd7\x01 \x01(\x02\x12\x1a\n\x11pitch_half_length\x18\xd8\x01 \x01(\x02\x12\x19\n\x10pitch_half_width\x18\xd9\x01 \x01(\x02\x12 \n\x17our_penalty_area_line_x\x18\xda\x01 \x01(\x02\x12\"\n\x19their_penalty_area_line_x\x18\xdb\x01 \x01(\x02\x12 \n\x17penalty_area_half_width\x18\xdc\x01 \x01(\x02\x12\x1c\n\x13penalty_area_length\x18\xdd\x01 \x01(\x02\x12\x13\n\ngoal_width\x18\xde\x01 \x01(\x02\x12\x18\n\x0fgoal_area_width\x18\xdf\x01 \x01(\x02\x12\x19\n\x10goal_area_length\x18\xe0\x01 \x01(\x02\x12\x18\n\x0f\x63\x65nter_circle_r\x18\xe1\x01 \x01(\x02\x12\x19\n\x10goal_post_radius\x18\xe2\x01 \x01(\x02\"\x8d\x08\n\x0bPlayerParam\x12\x33\n\x11register_response\x18\x01 \x01(\x0b\x32\x18.protos.RegisterResponse\x12\x14\n\x0cplayer_types\x18\x02 \x01(\x05\x12\x10\n\x08subs_max\x18\x03 \x01(\x05\x12\x0e\n\x06pt_max\x18\x04 \x01(\x05\x12\x1f\n\x17\x61llow_mult_default_type\x18\x05 \x01(\x08\x12\"\n\x1aplayer_speed_max_delta_min\x18\x06 \x01(\x02\x12\"\n\x1aplayer_speed_max_delta_max\x18\x07 \x01(\x02\x12$\n\x1cstamina_inc_max_delta_factor\x18\x08 \x01(\x02\x12\x1e\n\x16player_decay_delta_min\x18\t \x01(\x02\x12\x1e\n\x16player_decay_delta_max\x18\n \x01(\x02\x12#\n\x1binertia_moment_delta_factor\x18\x0b \x01(\x02\x12!\n\x19\x64\x61sh_power_rate_delta_min\x18\x0c \x01(\x02\x12!\n\x19\x64\x61sh_power_rate_delta_max\x18\r \x01(\x02\x12 \n\x18player_size_delta_factor\x18\x0e \x01(\x02\x12!\n\x19kickable_margin_delta_min\x18\x0f \x01(\x02\x12!\n\x19kickable_margin_delta_max\x18\x10 \x01(\x02\x12\x1e\n\x16kick_rand_delta_factor\x18\x11 \x01(\x02\x12\x1f\n\x17\x65xtra_stamina_delta_min\x18\x12 \x01(\x02\x12\x1f\n\x17\x65xtra_stamina_delta_max\x18\x13 \x01(\x02\x12\x1f\n\x17\x65\x66\x66ort_max_delta_factor\x18\x14 \x01(\x02\x12\x1f\n\x17\x65\x66\x66ort_min_delta_factor\x18\x15 \x01(\x02\x12\x13\n\x0brandom_seed\x18\x16 \x01(\x05\x12%\n\x1dnew_dash_power_rate_delta_min\x18\x17 \x01(\x02\x12%\n\x1dnew_dash_power_rate_delta_max\x18\x18 \x01(\x02\x12(\n new_stamina_inc_max_delta_factor\x18\x19 \x01(\x02\x12!\n\x19kick_power_rate_delta_min\x18\x1a \x01(\x02\x12!\n\x19kick_power_rate_delta_max\x18\x1b \x01(\x02\x12,\n$foul_detect_probability_delta_factor\x18\x1c \x01(\x02\x12$\n\x1c\x63\x61tchable_area_l_stretch_min\x18\x1d \x01(\x02\x12$\n\x1c\x63\x61tchable_area_l_stretch_max\x18\x1e \x01(\x02\"\xbf\x07\n\nPlayerType\x12\x33\n\x11register_response\x18\x01 \x01(\x0b\x32\x18.protos.RegisterResponse\x12\n\n\x02id\x18\x02 \x01(\x05\x12\x17\n\x0fstamina_inc_max\x18\x03 \x01(\x02\x12\x14\n\x0cplayer_decay\x18\x04 \x01(\x02\x12\x16\n\x0einertia_moment\x18\x05 \x01(\x02\x12\x17\n\x0f\x64\x61sh_power_rate\x18\x06 \x01(\x02\x12\x13\n\x0bplayer_size\x18\x07 \x01(\x02\x12\x17\n\x0fkickable_margin\x18\x08 \x01(\x02\x12\x11\n\tkick_rand\x18\t \x01(\x02\x12\x15\n\rextra_stamina\x18\n \x01(\x02\x12\x12\n\neffort_max\x18\x0b \x01(\x02\x12\x12\n\neffort_min\x18\x0c \x01(\x02\x12\x17\n\x0fkick_power_rate\x18\r \x01(\x02\x12\x1f\n\x17\x66oul_detect_probability\x18\x0e \x01(\x02\x12 \n\x18\x63\x61tchable_area_l_stretch\x18\x0f \x01(\x02\x12\x17\n\x0funum_far_length\x18\x10 \x01(\x02\x12\x1b\n\x13unum_too_far_length\x18\x11 \x01(\x02\x12\x17\n\x0fteam_far_length\x18\x12 \x01(\x02\x12\x1b\n\x13team_too_far_length\x18\x13 \x01(\x02\x12%\n\x1dplayer_max_observation_length\x18\x14 \x01(\x02\x12\x1b\n\x13\x62\x61ll_vel_far_length\x18\x15 \x01(\x02\x12\x1f\n\x17\x62\x61ll_vel_too_far_length\x18\x16 \x01(\x02\x12#\n\x1b\x62\x61ll_max_observation_length\x18\x17 \x01(\x02\x12\x1b\n\x13\x66lag_chg_far_length\x18\x18 \x01(\x02\x12\x1f\n\x17\x66lag_chg_too_far_length\x18\x19 \x01(\x02\x12#\n\x1b\x66lag_max_observation_length\x18\x1a \x01(\x02\x12\x15\n\rkickable_area\x18\x1b \x01(\x02\x12\x1f\n\x17reliable_catchable_dist\x18\x1c \x01(\x02\x12\x1a\n\x12max_catchable_dist\x18\x1d \x01(\x02\x12\x16\n\x0ereal_speed_max\x18\x1e \x01(\x02\x12\x19\n\x11player_speed_max2\x18\x1f \x01(\x02\x12\x17\n\x0freal_speed_max2\x18 \x01(\x02\x12!\n\x19\x63ycles_to_reach_max_speed\x18! \x01(\x05\x12\x18\n\x10player_speed_max\x18\" \x01(\x02\"\xad\x03\n\x14RpcCooperativeAction\x12+\n\x08\x63\x61tegory\x18\x01 \x01(\x0e\x32\x19.protos.RpcActionCategory\x12\r\n\x05index\x18\x02 \x01(\x05\x12\x13\n\x0bsender_unum\x18\x03 \x01(\x05\x12\x13\n\x0btarget_unum\x18\x04 \x01(\x05\x12)\n\x0ctarget_point\x18\x05 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x18\n\x10\x66irst_ball_speed\x18\x06 \x01(\x01\x12\x19\n\x11\x66irst_turn_moment\x18\x07 \x01(\x01\x12\x18\n\x10\x66irst_dash_power\x18\x08 \x01(\x01\x12!\n\x19\x66irst_dash_angle_relative\x18\t \x01(\x01\x12\x15\n\rduration_step\x18\n \x01(\x05\x12\x12\n\nkick_count\x18\x0b \x01(\x05\x12\x12\n\nturn_count\x18\x0c \x01(\x05\x12\x12\n\ndash_count\x18\r \x01(\x05\x12\x14\n\x0c\x66inal_action\x18\x0e \x01(\x08\x12\x13\n\x0b\x64\x65scription\x18\x0f \x01(\t\x12\x14\n\x0cparent_index\x18\x10 \x01(\x05\"\xcf\x01\n\x0fRpcPredictState\x12\x12\n\nspend_time\x18\x01 \x01(\x05\x12\x18\n\x10\x62\x61ll_holder_unum\x18\x02 \x01(\x05\x12*\n\rball_position\x18\x03 \x01(\x0b\x32\x13.protos.RpcVector2D\x12*\n\rball_velocity\x18\x04 \x01(\x0b\x32\x13.protos.RpcVector2D\x12\x1a\n\x12our_defense_line_x\x18\x05 \x01(\x01\x12\x1a\n\x12our_offense_line_x\x18\x06 \x01(\x01\"\x82\x01\n\x0eRpcActionState\x12,\n\x06\x61\x63tion\x18\x01 \x01(\x0b\x32\x1c.protos.RpcCooperativeAction\x12.\n\rpredict_state\x18\x02 \x01(\x0b\x32\x17.protos.RpcPredictState\x12\x12\n\nevaluation\x18\x03 \x01(\x01\"\xef\x01\n\x18\x42\x65stPlannerActionRequest\x12\x33\n\x11register_response\x18\x01 \x01(\x0b\x32\x18.protos.RegisterResponse\x12:\n\x05pairs\x18\x02 \x03(\x0b\x32+.protos.BestPlannerActionRequest.PairsEntry\x12\x1c\n\x05state\x18\x03 \x01(\x0b\x32\r.protos.State\x1a\x44\n\nPairsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12%\n\x05value\x18\x02 \x01(\x0b\x32\x16.protos.RpcActionState:\x02\x38\x01\"*\n\x19\x42\x65stPlannerActionResponse\x12\r\n\x05index\x18\x01 \x01(\x05\"\x07\n\x05\x45mpty*-\n\tViewWidth\x12\n\n\x06NARROW\x10\x00\x12\n\n\x06NORMAL\x10\x01\x12\x08\n\x04WIDE\x10\x02*{\n\x15RpcServerLanguageType\x12\x14\n\x10UNKNOWN_LANGUAGE\x10\x00\x12\n\n\x06PYThON\x10\x01\x12\x08\n\x04JAVA\x10\x02\x12\x07\n\x03\x43PP\x10\x03\x12\n\n\x06\x43SHARP\x10\x04\x12\x08\n\x04RUBY\x10\x05\x12\x0f\n\x0bJAVE_SCRIPT\x10\x06\x12\x06\n\x02GO\x10\x07*(\n\x04Side\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x08\n\x04LEFT\x10\x01\x12\t\n\x05RIGHT\x10\x02*\xb2\x02\n\x0bLoggerLevel\x12\r\n\tNoneLevel\x10\x00\x12\n\n\x06SYSTEM\x10\x01\x12\n\n\x06SENSOR\x10\x02\x12\t\n\x05WORLD\x10\x04\x12\n\n\x06\x41\x43TION\x10\x08\x12\r\n\tINTERCEPT\x10\x10\x12\x08\n\x04KICK\x10 \x12\x08\n\x04HOLD\x10@\x12\x0c\n\x07\x44RIBBLE\x10\x80\x01\x12\t\n\x04PASS\x10\x80\x02\x12\n\n\x05\x43ROSS\x10\x80\x04\x12\n\n\x05SHOOT\x10\x80\x08\x12\n\n\x05\x43LEAR\x10\x80\x10\x12\n\n\x05\x42LOCK\x10\x80 \x12\t\n\x04MARK\x10\x80@\x12\x11\n\x0bPOSITIONING\x10\x80\x80\x01\x12\n\n\x04ROLE\x10\x80\x80\x02\x12\n\n\x04TEAM\x10\x80\x80\x04\x12\x13\n\rCOMMUNICATION\x10\x80\x80\x08\x12\x0e\n\x08\x41NALYZER\x10\x80\x80\x10\x12\x12\n\x0c\x41\x43TION_CHAIN\x10\x80\x80 \x12\n\n\x04PLAN\x10\x80\x80@*,\n\x08\x43\x61rdType\x12\x0b\n\x07NO_CARD\x10\x00\x12\n\n\x06YELLOW\x10\x01\x12\x07\n\x03RED\x10\x02*v\n\x13InterceptActionType\x12!\n\x1dUNKNOWN_Intercept_Action_Type\x10\x00\x12\r\n\tOMNI_DASH\x10\x01\x12\x15\n\x11TURN_FORWARD_DASH\x10\x02\x12\x16\n\x12TURN_BACKWARD_DASH\x10\x03*\xbb\x04\n\x0cGameModeType\x12\x11\n\rBeforeKickOff\x10\x00\x12\x0c\n\x08TimeOver\x10\x01\x12\n\n\x06PlayOn\x10\x02\x12\x0c\n\x08KickOff_\x10\x03\x12\x0b\n\x07KickIn_\x10\x04\x12\r\n\tFreeKick_\x10\x05\x12\x0f\n\x0b\x43ornerKick_\x10\x06\x12\r\n\tGoalKick_\x10\x07\x12\x0e\n\nAfterGoal_\x10\x08\x12\x0c\n\x08OffSide_\x10\t\x12\x10\n\x0cPenaltyKick_\x10\n\x12\x11\n\rFirstHalfOver\x10\x0b\x12\t\n\x05Pause\x10\x0c\x12\t\n\x05Human\x10\r\x12\x0f\n\x0b\x46oulCharge_\x10\x0e\x12\r\n\tFoulPush_\x10\x0f\x12\x19\n\x15\x46oulMultipleAttacker_\x10\x10\x12\x10\n\x0c\x46oulBallOut_\x10\x11\x12\r\n\tBackPass_\x10\x12\x12\x12\n\x0e\x46reeKickFault_\x10\x13\x12\x0f\n\x0b\x43\x61tchFault_\x10\x14\x12\x10\n\x0cIndFreeKick_\x10\x15\x12\x11\n\rPenaltySetup_\x10\x16\x12\x11\n\rPenaltyReady_\x10\x17\x12\x11\n\rPenaltyTaken_\x10\x18\x12\x10\n\x0cPenaltyMiss_\x10\x19\x12\x11\n\rPenaltyScore_\x10\x1a\x12\x13\n\x0fIllegalDefense_\x10\x1b\x12\x13\n\x0fPenaltyOnfield_\x10\x1c\x12\x10\n\x0cPenaltyFoul_\x10\x1d\x12\x10\n\x0cGoalieCatch_\x10\x1e\x12\x0e\n\nExtendHalf\x10\x1f\x12\x0c\n\x08MODE_MAX\x10 *2\n\tAgentType\x12\x0b\n\x07PlayerT\x10\x00\x12\n\n\x06\x43oachT\x10\x01\x12\x0c\n\x08TrainerT\x10\x02*w\n\x11RpcActionCategory\x12\x0b\n\x07\x41\x43_Hold\x10\x00\x12\x0e\n\nAC_Dribble\x10\x01\x12\x0b\n\x07\x41\x43_Pass\x10\x02\x12\x0c\n\x08\x41\x43_Shoot\x10\x03\x12\x0c\n\x08\x41\x43_Clear\x10\x04\x12\x0b\n\x07\x41\x43_Move\x10\x05\x12\x0f\n\x0b\x41\x43_NoAction\x10\x06\x32\xfb\x04\n\x04Game\x12:\n\x10GetPlayerActions\x12\r.protos.State\x1a\x15.protos.PlayerActions\"\x00\x12\x38\n\x0fGetCoachActions\x12\r.protos.State\x1a\x14.protos.CoachActions\"\x00\x12<\n\x11GetTrainerActions\x12\r.protos.State\x1a\x16.protos.TrainerActions\"\x00\x12\x37\n\x0fSendInitMessage\x12\x13.protos.InitMessage\x1a\r.protos.Empty\"\x00\x12\x38\n\x10SendServerParams\x12\x13.protos.ServerParam\x1a\r.protos.Empty\"\x00\x12\x38\n\x10SendPlayerParams\x12\x13.protos.PlayerParam\x1a\r.protos.Empty\"\x00\x12\x35\n\x0eSendPlayerType\x12\x12.protos.PlayerType\x1a\r.protos.Empty\"\x00\x12?\n\x08Register\x12\x17.protos.RegisterRequest\x1a\x18.protos.RegisterResponse\"\x00\x12;\n\x0eSendByeCommand\x12\x18.protos.RegisterResponse\x1a\r.protos.Empty\"\x00\x12]\n\x14GetBestPlannerAction\x12 .protos.BestPlannerActionRequest\x1a!.protos.BestPlannerActionResponse\"\x00\x62\x06proto3') - -_globals = globals() -_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals) -_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'service_pb2', _globals) -if not _descriptor._USE_C_DESCRIPTORS: - DESCRIPTOR._loaded_options = None - _globals['_WORLDMODEL_OURPLAYERSDICTENTRY']._loaded_options = None - _globals['_WORLDMODEL_OURPLAYERSDICTENTRY']._serialized_options = b'8\001' - _globals['_WORLDMODEL_THEIRPLAYERSDICTENTRY']._loaded_options = None - _globals['_WORLDMODEL_THEIRPLAYERSDICTENTRY']._serialized_options = b'8\001' - _globals['_WORLDMODEL_HELIOSHOMEPOSITIONSENTRY']._loaded_options = None - _globals['_WORLDMODEL_HELIOSHOMEPOSITIONSENTRY']._serialized_options = b'8\001' - _globals['_TEAMMATEEFFECTOR_COEFFICIENTSENTRY']._loaded_options = None - _globals['_TEAMMATEEFFECTOR_COEFFICIENTSENTRY']._serialized_options = b'8\001' - _globals['_BESTPLANNERACTIONREQUEST_PAIRSENTRY']._loaded_options = None - _globals['_BESTPLANNERACTIONREQUEST_PAIRSENTRY']._serialized_options = b'8\001' - _globals['_VIEWWIDTH']._serialized_start=29231 - _globals['_VIEWWIDTH']._serialized_end=29276 - _globals['_RPCSERVERLANGUAGETYPE']._serialized_start=29278 - _globals['_RPCSERVERLANGUAGETYPE']._serialized_end=29401 - _globals['_SIDE']._serialized_start=29403 - _globals['_SIDE']._serialized_end=29443 - _globals['_LOGGERLEVEL']._serialized_start=29446 - _globals['_LOGGERLEVEL']._serialized_end=29752 - _globals['_CARDTYPE']._serialized_start=29754 - _globals['_CARDTYPE']._serialized_end=29798 - _globals['_INTERCEPTACTIONTYPE']._serialized_start=29800 - _globals['_INTERCEPTACTIONTYPE']._serialized_end=29918 - _globals['_GAMEMODETYPE']._serialized_start=29921 - _globals['_GAMEMODETYPE']._serialized_end=30492 - _globals['_AGENTTYPE']._serialized_start=30494 - _globals['_AGENTTYPE']._serialized_end=30544 - _globals['_RPCACTIONCATEGORY']._serialized_start=30546 - _globals['_RPCACTIONCATEGORY']._serialized_end=30665 - _globals['_RPCVECTOR2D']._serialized_start=25 - _globals['_RPCVECTOR2D']._serialized_end=89 - _globals['_REGISTERREQUEST']._serialized_start=91 - _globals['_REGISTERREQUEST']._serialized_end=211 - _globals['_REGISTERRESPONSE']._serialized_start=214 - _globals['_REGISTERRESPONSE']._serialized_end=398 - _globals['_BALL']._serialized_start=401 - _globals['_BALL']._serialized_end=937 - _globals['_PENALTYKICKSTATE']._serialized_start=940 - _globals['_PENALTYKICKSTATE']._serialized_end=1156 - _globals['_PLAYER']._serialized_start=1159 - _globals['_PLAYER']._serialized_end=1975 - _globals['_SELF']._serialized_start=1978 - _globals['_SELF']._serialized_end=3065 - _globals['_INTERCEPTINFO']._serialized_start=3068 - _globals['_INTERCEPTINFO']._serialized_end=3344 - _globals['_INTERCEPTTABLE']._serialized_start=3347 - _globals['_INTERCEPTTABLE']._serialized_end=3697 - _globals['_WORLDMODEL']._serialized_start=3700 - _globals['_WORLDMODEL']._serialized_end=5357 - _globals['_WORLDMODEL_OURPLAYERSDICTENTRY']._serialized_start=5134 - _globals['_WORLDMODEL_OURPLAYERSDICTENTRY']._serialized_end=5203 - _globals['_WORLDMODEL_THEIRPLAYERSDICTENTRY']._serialized_start=5205 - _globals['_WORLDMODEL_THEIRPLAYERSDICTENTRY']._serialized_end=5276 - _globals['_WORLDMODEL_HELIOSHOMEPOSITIONSENTRY']._serialized_start=5278 - _globals['_WORLDMODEL_HELIOSHOMEPOSITIONSENTRY']._serialized_end=5357 - _globals['_STATE']._serialized_start=5360 - _globals['_STATE']._serialized_end=5532 - _globals['_INITMESSAGE']._serialized_start=5534 - _globals['_INITMESSAGE']._serialized_end=5620 - _globals['_DASH']._serialized_start=5622 - _globals['_DASH']._serialized_end=5671 - _globals['_TURN']._serialized_start=5673 - _globals['_TURN']._serialized_end=5707 - _globals['_KICK']._serialized_start=5709 - _globals['_KICK']._serialized_end=5758 - _globals['_TACKLE']._serialized_start=5760 - _globals['_TACKLE']._serialized_end=5804 - _globals['_CATCH']._serialized_start=5806 - _globals['_CATCH']._serialized_end=5813 - _globals['_MOVE']._serialized_start=5815 - _globals['_MOVE']._serialized_end=5843 - _globals['_TURNNECK']._serialized_start=5845 - _globals['_TURNNECK']._serialized_end=5871 - _globals['_CHANGEVIEW']._serialized_start=5873 - _globals['_CHANGEVIEW']._serialized_end=5924 - _globals['_BALLMESSAGE']._serialized_start=5926 - _globals['_BALLMESSAGE']._serialized_end=6027 - _globals['_PASSMESSAGE']._serialized_start=6030 - _globals['_PASSMESSAGE']._serialized_end=6209 - _globals['_INTERCEPTMESSAGE']._serialized_start=6211 - _globals['_INTERCEPTMESSAGE']._serialized_end=6281 - _globals['_GOALIEMESSAGE']._serialized_start=6283 - _globals['_GOALIEMESSAGE']._serialized_end=6406 - _globals['_GOALIEANDPLAYERMESSAGE']._serialized_start=6409 - _globals['_GOALIEANDPLAYERMESSAGE']._serialized_end=6618 - _globals['_OFFSIDELINEMESSAGE']._serialized_start=6620 - _globals['_OFFSIDELINEMESSAGE']._serialized_end=6664 - _globals['_DEFENSELINEMESSAGE']._serialized_start=6666 - _globals['_DEFENSELINEMESSAGE']._serialized_end=6710 - _globals['_WAITREQUESTMESSAGE']._serialized_start=6712 - _globals['_WAITREQUESTMESSAGE']._serialized_end=6732 - _globals['_SETPLAYMESSAGE']._serialized_start=6734 - _globals['_SETPLAYMESSAGE']._serialized_end=6769 - _globals['_PASSREQUESTMESSAGE']._serialized_start=6771 - _globals['_PASSREQUESTMESSAGE']._serialized_end=6834 - _globals['_STAMINAMESSAGE']._serialized_start=6836 - _globals['_STAMINAMESSAGE']._serialized_end=6869 - _globals['_RECOVERYMESSAGE']._serialized_start=6871 - _globals['_RECOVERYMESSAGE']._serialized_end=6906 - _globals['_STAMINACAPACITYMESSAGE']._serialized_start=6908 - _globals['_STAMINACAPACITYMESSAGE']._serialized_end=6958 - _globals['_DRIBBLEMESSAGE']._serialized_start=6960 - _globals['_DRIBBLEMESSAGE']._serialized_end=7040 - _globals['_BALLGOALIEMESSAGE']._serialized_start=7043 - _globals['_BALLGOALIEMESSAGE']._serialized_end=7227 - _globals['_ONEPLAYERMESSAGE']._serialized_start=7229 - _globals['_ONEPLAYERMESSAGE']._serialized_end=7310 - _globals['_TWOPLAYERMESSAGE']._serialized_start=7313 - _globals['_TWOPLAYERMESSAGE']._serialized_end=7483 - _globals['_THREEPLAYERMESSAGE']._serialized_start=7486 - _globals['_THREEPLAYERMESSAGE']._serialized_end=7733 - _globals['_SELFMESSAGE']._serialized_start=7735 - _globals['_SELFMESSAGE']._serialized_end=7843 - _globals['_TEAMMATEMESSAGE']._serialized_start=7845 - _globals['_TEAMMATEMESSAGE']._serialized_end=7949 - _globals['_OPPONENTMESSAGE']._serialized_start=7951 - _globals['_OPPONENTMESSAGE']._serialized_end=8055 - _globals['_BALLPLAYERMESSAGE']._serialized_start=8058 - _globals['_BALLPLAYERMESSAGE']._serialized_end=8259 - _globals['_SAY']._serialized_start=8262 - _globals['_SAY']._serialized_end=9494 - _globals['_POINTTO']._serialized_start=9496 - _globals['_POINTTO']._serialized_end=9527 - _globals['_POINTTOOF']._serialized_start=9529 - _globals['_POINTTOOF']._serialized_end=9540 - _globals['_ATTENTIONTO']._serialized_start=9542 - _globals['_ATTENTIONTO']._serialized_end=9597 - _globals['_ATTENTIONTOOF']._serialized_start=9599 - _globals['_ATTENTIONTOOF']._serialized_end=9614 - _globals['_ADDTEXT']._serialized_start=9616 - _globals['_ADDTEXT']._serialized_end=9678 - _globals['_ADDPOINT']._serialized_start=9680 - _globals['_ADDPOINT']._serialized_end=9777 - _globals['_ADDLINE']._serialized_start=9780 - _globals['_ADDLINE']._serialized_end=9910 - _globals['_ADDARC']._serialized_start=9913 - _globals['_ADDARC']._serialized_end=10066 - _globals['_ADDCIRCLE']._serialized_start=10069 - _globals['_ADDCIRCLE']._serialized_end=10198 - _globals['_ADDTRIANGLE']._serialized_start=10201 - _globals['_ADDTRIANGLE']._serialized_end=10390 - _globals['_ADDRECTANGLE']._serialized_start=10393 - _globals['_ADDRECTANGLE']._serialized_end=10530 - _globals['_ADDSECTOR']._serialized_start=10533 - _globals['_ADDSECTOR']._serialized_end=10727 - _globals['_ADDMESSAGE']._serialized_start=10729 - _globals['_ADDMESSAGE']._serialized_end=10848 - _globals['_LOG']._serialized_start=10851 - _globals['_LOG']._serialized_end=11228 - _globals['_DEBUGCLIENT']._serialized_start=11230 - _globals['_DEBUGCLIENT']._serialized_end=11260 - _globals['_BODY_GOTOPOINT']._serialized_start=11262 - _globals['_BODY_GOTOPOINT']._serialized_end=11373 - _globals['_BODY_SMARTKICK']._serialized_start=11376 - _globals['_BODY_SMARTKICK']._serialized_end=11506 - _globals['_BHV_BEFOREKICKOFF']._serialized_start=11508 - _globals['_BHV_BEFOREKICKOFF']._serialized_end=11563 - _globals['_BHV_BODYNECKTOBALL']._serialized_start=11565 - _globals['_BHV_BODYNECKTOBALL']._serialized_end=11585 - _globals['_BHV_BODYNECKTOPOINT']._serialized_start=11587 - _globals['_BHV_BODYNECKTOPOINT']._serialized_end=11644 - _globals['_BHV_EMERGENCY']._serialized_start=11646 - _globals['_BHV_EMERGENCY']._serialized_end=11661 - _globals['_BHV_GOTOPOINTLOOKBALL']._serialized_start=11663 - _globals['_BHV_GOTOPOINTLOOKBALL']._serialized_end=11781 - _globals['_BHV_NECKBODYTOBALL']._serialized_start=11783 - _globals['_BHV_NECKBODYTOBALL']._serialized_end=11822 - _globals['_BHV_NECKBODYTOPOINT']._serialized_start=11824 - _globals['_BHV_NECKBODYTOPOINT']._serialized_end=11900 - _globals['_BHV_SCANFIELD']._serialized_start=11902 - _globals['_BHV_SCANFIELD']._serialized_end=11917 - _globals['_BODY_ADVANCEBALL']._serialized_start=11919 - _globals['_BODY_ADVANCEBALL']._serialized_end=11937 - _globals['_BODY_CLEARBALL']._serialized_start=11939 - _globals['_BODY_CLEARBALL']._serialized_end=11955 - _globals['_BODY_DRIBBLE']._serialized_start=11958 - _globals['_BODY_DRIBBLE']._serialized_end=12098 - _globals['_BODY_GOTOPOINTDODGE']._serialized_start=12100 - _globals['_BODY_GOTOPOINTDODGE']._serialized_end=12184 - _globals['_BODY_HOLDBALL']._serialized_start=12187 - _globals['_BODY_HOLDBALL']._serialized_end=12315 - _globals['_BODY_INTERCEPT']._serialized_start=12317 - _globals['_BODY_INTERCEPT']._serialized_end=12397 - _globals['_BODY_KICKONESTEP']._serialized_start=12399 - _globals['_BODY_KICKONESTEP']._serialized_end=12501 - _globals['_BODY_STOPBALL']._serialized_start=12503 - _globals['_BODY_STOPBALL']._serialized_end=12518 - _globals['_BODY_STOPDASH']._serialized_start=12520 - _globals['_BODY_STOPDASH']._serialized_end=12558 - _globals['_BODY_TACKLETOPOINT']._serialized_start=12560 - _globals['_BODY_TACKLETOPOINT']._serialized_end=12667 - _globals['_BODY_TURNTOANGLE']._serialized_start=12669 - _globals['_BODY_TURNTOANGLE']._serialized_end=12702 - _globals['_BODY_TURNTOBALL']._serialized_start=12704 - _globals['_BODY_TURNTOBALL']._serialized_end=12736 - _globals['_BODY_TURNTOPOINT']._serialized_start=12738 - _globals['_BODY_TURNTOPOINT']._serialized_end=12814 - _globals['_FOCUS_MOVETOPOINT']._serialized_start=12816 - _globals['_FOCUS_MOVETOPOINT']._serialized_end=12878 - _globals['_FOCUS_RESET']._serialized_start=12880 - _globals['_FOCUS_RESET']._serialized_end=12893 - _globals['_NECK_SCANFIELD']._serialized_start=12895 - _globals['_NECK_SCANFIELD']._serialized_end=12911 - _globals['_NECK_SCANPLAYERS']._serialized_start=12913 - _globals['_NECK_SCANPLAYERS']._serialized_end=12931 - _globals['_NECK_TURNTOBALLANDPLAYER']._serialized_start=12933 - _globals['_NECK_TURNTOBALLANDPLAYER']._serialized_end=13036 - _globals['_NECK_TURNTOBALLORSCAN']._serialized_start=13038 - _globals['_NECK_TURNTOBALLORSCAN']._serialized_end=13086 - _globals['_NECK_TURNTOBALL']._serialized_start=13088 - _globals['_NECK_TURNTOBALL']._serialized_end=13105 - _globals['_NECK_TURNTOGOALIEORSCAN']._serialized_start=13107 - _globals['_NECK_TURNTOGOALIEORSCAN']._serialized_end=13157 - _globals['_NECK_TURNTOLOWCONFTEAMMATE']._serialized_start=13159 - _globals['_NECK_TURNTOLOWCONFTEAMMATE']._serialized_end=13187 - _globals['_NECK_TURNTOPLAYERORSCAN']._serialized_start=13189 - _globals['_NECK_TURNTOPLAYERORSCAN']._serialized_end=13291 - _globals['_NECK_TURNTOPOINT']._serialized_start=13293 - _globals['_NECK_TURNTOPOINT']._serialized_end=13354 - _globals['_NECK_TURNTORELATIVE']._serialized_start=13356 - _globals['_NECK_TURNTORELATIVE']._serialized_end=13392 - _globals['_NECK_OFFENSIVEINTERCEPTNECK']._serialized_start=13394 - _globals['_NECK_OFFENSIVEINTERCEPTNECK']._serialized_end=13423 - _globals['_VIEW_CHANGEWIDTH']._serialized_start=13425 - _globals['_VIEW_CHANGEWIDTH']._serialized_end=13482 - _globals['_VIEW_NORMAL']._serialized_start=13484 - _globals['_VIEW_NORMAL']._serialized_end=13497 - _globals['_VIEW_SYNCH']._serialized_start=13499 - _globals['_VIEW_SYNCH']._serialized_end=13511 - _globals['_VIEW_WIDE']._serialized_start=13513 - _globals['_VIEW_WIDE']._serialized_end=13524 - _globals['_HELIOSGOALIE']._serialized_start=13526 - _globals['_HELIOSGOALIE']._serialized_end=13540 - _globals['_HELIOSGOALIEMOVE']._serialized_start=13542 - _globals['_HELIOSGOALIEMOVE']._serialized_end=13560 - _globals['_HELIOSGOALIEKICK']._serialized_start=13562 - _globals['_HELIOSGOALIEKICK']._serialized_end=13580 - _globals['_HELIOSSHOOT']._serialized_start=13582 - _globals['_HELIOSSHOOT']._serialized_end=13595 - _globals['_HELIOSOFFENSIVEPLANNER']._serialized_start=13598 - _globals['_HELIOSOFFENSIVEPLANNER']._serialized_end=13926 - _globals['_OPPONENTEFFECTOR']._serialized_start=13929 - _globals['_OPPONENTEFFECTOR']._serialized_end=14143 - _globals['_ACTIONTYPEEFFECTOR']._serialized_start=14146 - _globals['_ACTIONTYPEEFFECTOR']._serialized_end=14302 - _globals['_TEAMMATEEFFECTOR']._serialized_start=14305 - _globals['_TEAMMATEEFFECTOR']._serialized_end=14478 - _globals['_TEAMMATEEFFECTOR_COEFFICIENTSENTRY']._serialized_start=14427 - _globals['_TEAMMATEEFFECTOR_COEFFICIENTSENTRY']._serialized_end=14478 - _globals['_PLANNEREVALUATIONEFFECTOR']._serialized_start=14481 - _globals['_PLANNEREVALUATIONEFFECTOR']._serialized_end=14672 - _globals['_HELIOSFIELDEVALUATOR']._serialized_start=14674 - _globals['_HELIOSFIELDEVALUATOR']._serialized_end=14799 - _globals['_MATRIXFIELDEVALUATORY']._serialized_start=14801 - _globals['_MATRIXFIELDEVALUATORY']._serialized_end=14839 - _globals['_MATRIXFIELDEVALUATOR']._serialized_start=14841 - _globals['_MATRIXFIELDEVALUATOR']._serialized_end=14909 - _globals['_PLANNERFIELDEVALUATOR']._serialized_start=14912 - _globals['_PLANNERFIELDEVALUATOR']._serialized_end=15059 - _globals['_PLANNEREVALUATION']._serialized_start=15062 - _globals['_PLANNEREVALUATION']._serialized_end=15192 - _globals['_HELIOSBASICOFFENSIVE']._serialized_start=15194 - _globals['_HELIOSBASICOFFENSIVE']._serialized_end=15216 - _globals['_HELIOSBASICMOVE']._serialized_start=15218 - _globals['_HELIOSBASICMOVE']._serialized_end=15235 - _globals['_HELIOSSETPLAY']._serialized_start=15237 - _globals['_HELIOSSETPLAY']._serialized_end=15252 - _globals['_HELIOSPENALTY']._serialized_start=15254 - _globals['_HELIOSPENALTY']._serialized_end=15269 - _globals['_HELIOSCOMMUNICAION']._serialized_start=15271 - _globals['_HELIOSCOMMUNICAION']._serialized_end=15291 - _globals['_HELIOSBASICTACKLE']._serialized_start=15293 - _globals['_HELIOSBASICTACKLE']._serialized_end=15348 - _globals['_BHV_DOFORCEKICK']._serialized_start=15350 - _globals['_BHV_DOFORCEKICK']._serialized_end=15367 - _globals['_BHV_DOHEARDPASSRECIEVE']._serialized_start=15369 - _globals['_BHV_DOHEARDPASSRECIEVE']._serialized_end=15393 - _globals['_PLAYERACTION']._serialized_start=15396 - _globals['_PLAYERACTION']._serialized_end=18964 - _globals['_PLAYERACTIONS']._serialized_start=18967 - _globals['_PLAYERACTIONS']._serialized_end=19173 - _globals['_CHANGEPLAYERTYPE']._serialized_start=19175 - _globals['_CHANGEPLAYERTYPE']._serialized_end=19231 - _globals['_DOHELIOSSUBSTITUTE']._serialized_start=19233 - _globals['_DOHELIOSSUBSTITUTE']._serialized_end=19253 - _globals['_DOHELIOSSAYPLAYERTYPES']._serialized_start=19255 - _globals['_DOHELIOSSAYPLAYERTYPES']._serialized_end=19279 - _globals['_COACHACTION']._serialized_start=19282 - _globals['_COACHACTION']._serialized_end=19492 - _globals['_COACHACTIONS']._serialized_start=19494 - _globals['_COACHACTIONS']._serialized_end=19546 - _globals['_DOKICKOFF']._serialized_start=19548 - _globals['_DOKICKOFF']._serialized_end=19559 - _globals['_DOMOVEBALL']._serialized_start=19561 - _globals['_DOMOVEBALL']._serialized_end=19651 - _globals['_DOMOVEPLAYER']._serialized_start=19653 - _globals['_DOMOVEPLAYER']._serialized_end=19772 - _globals['_DORECOVER']._serialized_start=19774 - _globals['_DORECOVER']._serialized_end=19785 - _globals['_DOCHANGEMODE']._serialized_start=19787 - _globals['_DOCHANGEMODE']._serialized_end=19875 - _globals['_DOCHANGEPLAYERTYPE']._serialized_start=19877 - _globals['_DOCHANGEPLAYERTYPE']._serialized_end=19953 - _globals['_TRAINERACTION']._serialized_start=19956 - _globals['_TRAINERACTION']._serialized_end=20265 - _globals['_TRAINERACTIONS']._serialized_start=20267 - _globals['_TRAINERACTIONS']._serialized_end=20323 - _globals['_SERVERPARAM']._serialized_start=20326 - _globals['_SERVERPARAM']._serialized_end=26157 - _globals['_PLAYERPARAM']._serialized_start=26160 - _globals['_PLAYERPARAM']._serialized_end=27197 - _globals['_PLAYERTYPE']._serialized_start=27200 - _globals['_PLAYERTYPE']._serialized_end=28159 - _globals['_RPCCOOPERATIVEACTION']._serialized_start=28162 - _globals['_RPCCOOPERATIVEACTION']._serialized_end=28591 - _globals['_RPCPREDICTSTATE']._serialized_start=28594 - _globals['_RPCPREDICTSTATE']._serialized_end=28801 - _globals['_RPCACTIONSTATE']._serialized_start=28804 - _globals['_RPCACTIONSTATE']._serialized_end=28934 - _globals['_BESTPLANNERACTIONREQUEST']._serialized_start=28937 - _globals['_BESTPLANNERACTIONREQUEST']._serialized_end=29176 - _globals['_BESTPLANNERACTIONREQUEST_PAIRSENTRY']._serialized_start=29108 - _globals['_BESTPLANNERACTIONREQUEST_PAIRSENTRY']._serialized_end=29176 - _globals['_BESTPLANNERACTIONRESPONSE']._serialized_start=29178 - _globals['_BESTPLANNERACTIONRESPONSE']._serialized_end=29220 - _globals['_EMPTY']._serialized_start=29222 - _globals['_EMPTY']._serialized_end=29229 - _globals['_GAME']._serialized_start=30668 - _globals['_GAME']._serialized_end=31303 -# @@protoc_insertion_point(module_scope) diff --git a/service_pb2.pyi b/service_pb2.pyi deleted file mode 100644 index 5109e04..0000000 --- a/service_pb2.pyi +++ /dev/null @@ -1,2479 +0,0 @@ -from google.protobuf.internal import containers as _containers -from google.protobuf.internal import enum_type_wrapper as _enum_type_wrapper -from google.protobuf import descriptor as _descriptor -from google.protobuf import message as _message -from typing import ClassVar as _ClassVar, Iterable as _Iterable, Mapping as _Mapping, Optional as _Optional, Union as _Union - -DESCRIPTOR: _descriptor.FileDescriptor - -class ViewWidth(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - NARROW: _ClassVar[ViewWidth] - NORMAL: _ClassVar[ViewWidth] - WIDE: _ClassVar[ViewWidth] - -class RpcServerLanguageType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - UNKNOWN_LANGUAGE: _ClassVar[RpcServerLanguageType] - PYThON: _ClassVar[RpcServerLanguageType] - JAVA: _ClassVar[RpcServerLanguageType] - CPP: _ClassVar[RpcServerLanguageType] - CSHARP: _ClassVar[RpcServerLanguageType] - RUBY: _ClassVar[RpcServerLanguageType] - JAVE_SCRIPT: _ClassVar[RpcServerLanguageType] - GO: _ClassVar[RpcServerLanguageType] - -class Side(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - UNKNOWN: _ClassVar[Side] - LEFT: _ClassVar[Side] - RIGHT: _ClassVar[Side] - -class LoggerLevel(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - NoneLevel: _ClassVar[LoggerLevel] - SYSTEM: _ClassVar[LoggerLevel] - SENSOR: _ClassVar[LoggerLevel] - WORLD: _ClassVar[LoggerLevel] - ACTION: _ClassVar[LoggerLevel] - INTERCEPT: _ClassVar[LoggerLevel] - KICK: _ClassVar[LoggerLevel] - HOLD: _ClassVar[LoggerLevel] - DRIBBLE: _ClassVar[LoggerLevel] - PASS: _ClassVar[LoggerLevel] - CROSS: _ClassVar[LoggerLevel] - SHOOT: _ClassVar[LoggerLevel] - CLEAR: _ClassVar[LoggerLevel] - BLOCK: _ClassVar[LoggerLevel] - MARK: _ClassVar[LoggerLevel] - POSITIONING: _ClassVar[LoggerLevel] - ROLE: _ClassVar[LoggerLevel] - TEAM: _ClassVar[LoggerLevel] - COMMUNICATION: _ClassVar[LoggerLevel] - ANALYZER: _ClassVar[LoggerLevel] - ACTION_CHAIN: _ClassVar[LoggerLevel] - PLAN: _ClassVar[LoggerLevel] - -class CardType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - NO_CARD: _ClassVar[CardType] - YELLOW: _ClassVar[CardType] - RED: _ClassVar[CardType] - -class InterceptActionType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - UNKNOWN_Intercept_Action_Type: _ClassVar[InterceptActionType] - OMNI_DASH: _ClassVar[InterceptActionType] - TURN_FORWARD_DASH: _ClassVar[InterceptActionType] - TURN_BACKWARD_DASH: _ClassVar[InterceptActionType] - -class GameModeType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - BeforeKickOff: _ClassVar[GameModeType] - TimeOver: _ClassVar[GameModeType] - PlayOn: _ClassVar[GameModeType] - KickOff_: _ClassVar[GameModeType] - KickIn_: _ClassVar[GameModeType] - FreeKick_: _ClassVar[GameModeType] - CornerKick_: _ClassVar[GameModeType] - GoalKick_: _ClassVar[GameModeType] - AfterGoal_: _ClassVar[GameModeType] - OffSide_: _ClassVar[GameModeType] - PenaltyKick_: _ClassVar[GameModeType] - FirstHalfOver: _ClassVar[GameModeType] - Pause: _ClassVar[GameModeType] - Human: _ClassVar[GameModeType] - FoulCharge_: _ClassVar[GameModeType] - FoulPush_: _ClassVar[GameModeType] - FoulMultipleAttacker_: _ClassVar[GameModeType] - FoulBallOut_: _ClassVar[GameModeType] - BackPass_: _ClassVar[GameModeType] - FreeKickFault_: _ClassVar[GameModeType] - CatchFault_: _ClassVar[GameModeType] - IndFreeKick_: _ClassVar[GameModeType] - PenaltySetup_: _ClassVar[GameModeType] - PenaltyReady_: _ClassVar[GameModeType] - PenaltyTaken_: _ClassVar[GameModeType] - PenaltyMiss_: _ClassVar[GameModeType] - PenaltyScore_: _ClassVar[GameModeType] - IllegalDefense_: _ClassVar[GameModeType] - PenaltyOnfield_: _ClassVar[GameModeType] - PenaltyFoul_: _ClassVar[GameModeType] - GoalieCatch_: _ClassVar[GameModeType] - ExtendHalf: _ClassVar[GameModeType] - MODE_MAX: _ClassVar[GameModeType] - -class AgentType(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - PlayerT: _ClassVar[AgentType] - CoachT: _ClassVar[AgentType] - TrainerT: _ClassVar[AgentType] - -class RpcActionCategory(int, metaclass=_enum_type_wrapper.EnumTypeWrapper): - __slots__ = () - AC_Hold: _ClassVar[RpcActionCategory] - AC_Dribble: _ClassVar[RpcActionCategory] - AC_Pass: _ClassVar[RpcActionCategory] - AC_Shoot: _ClassVar[RpcActionCategory] - AC_Clear: _ClassVar[RpcActionCategory] - AC_Move: _ClassVar[RpcActionCategory] - AC_NoAction: _ClassVar[RpcActionCategory] -NARROW: ViewWidth -NORMAL: ViewWidth -WIDE: ViewWidth -UNKNOWN_LANGUAGE: RpcServerLanguageType -PYThON: RpcServerLanguageType -JAVA: RpcServerLanguageType -CPP: RpcServerLanguageType -CSHARP: RpcServerLanguageType -RUBY: RpcServerLanguageType -JAVE_SCRIPT: RpcServerLanguageType -GO: RpcServerLanguageType -UNKNOWN: Side -LEFT: Side -RIGHT: Side -NoneLevel: LoggerLevel -SYSTEM: LoggerLevel -SENSOR: LoggerLevel -WORLD: LoggerLevel -ACTION: LoggerLevel -INTERCEPT: LoggerLevel -KICK: LoggerLevel -HOLD: LoggerLevel -DRIBBLE: LoggerLevel -PASS: LoggerLevel -CROSS: LoggerLevel -SHOOT: LoggerLevel -CLEAR: LoggerLevel -BLOCK: LoggerLevel -MARK: LoggerLevel -POSITIONING: LoggerLevel -ROLE: LoggerLevel -TEAM: LoggerLevel -COMMUNICATION: LoggerLevel -ANALYZER: LoggerLevel -ACTION_CHAIN: LoggerLevel -PLAN: LoggerLevel -NO_CARD: CardType -YELLOW: CardType -RED: CardType -UNKNOWN_Intercept_Action_Type: InterceptActionType -OMNI_DASH: InterceptActionType -TURN_FORWARD_DASH: InterceptActionType -TURN_BACKWARD_DASH: InterceptActionType -BeforeKickOff: GameModeType -TimeOver: GameModeType -PlayOn: GameModeType -KickOff_: GameModeType -KickIn_: GameModeType -FreeKick_: GameModeType -CornerKick_: GameModeType -GoalKick_: GameModeType -AfterGoal_: GameModeType -OffSide_: GameModeType -PenaltyKick_: GameModeType -FirstHalfOver: GameModeType -Pause: GameModeType -Human: GameModeType -FoulCharge_: GameModeType -FoulPush_: GameModeType -FoulMultipleAttacker_: GameModeType -FoulBallOut_: GameModeType -BackPass_: GameModeType -FreeKickFault_: GameModeType -CatchFault_: GameModeType -IndFreeKick_: GameModeType -PenaltySetup_: GameModeType -PenaltyReady_: GameModeType -PenaltyTaken_: GameModeType -PenaltyMiss_: GameModeType -PenaltyScore_: GameModeType -IllegalDefense_: GameModeType -PenaltyOnfield_: GameModeType -PenaltyFoul_: GameModeType -GoalieCatch_: GameModeType -ExtendHalf: GameModeType -MODE_MAX: GameModeType -PlayerT: AgentType -CoachT: AgentType -TrainerT: AgentType -AC_Hold: RpcActionCategory -AC_Dribble: RpcActionCategory -AC_Pass: RpcActionCategory -AC_Shoot: RpcActionCategory -AC_Clear: RpcActionCategory -AC_Move: RpcActionCategory -AC_NoAction: RpcActionCategory - -class RpcVector2D(_message.Message): - __slots__ = ("x", "y", "dist", "angle") - X_FIELD_NUMBER: _ClassVar[int] - Y_FIELD_NUMBER: _ClassVar[int] - DIST_FIELD_NUMBER: _ClassVar[int] - ANGLE_FIELD_NUMBER: _ClassVar[int] - x: float - y: float - dist: float - angle: float - def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ..., dist: _Optional[float] = ..., angle: _Optional[float] = ...) -> None: ... - -class RegisterRequest(_message.Message): - __slots__ = ("agent_type", "team_name", "uniform_number", "rpc_version") - AGENT_TYPE_FIELD_NUMBER: _ClassVar[int] - TEAM_NAME_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - RPC_VERSION_FIELD_NUMBER: _ClassVar[int] - agent_type: AgentType - team_name: str - uniform_number: int - rpc_version: int - def __init__(self, agent_type: _Optional[_Union[AgentType, str]] = ..., team_name: _Optional[str] = ..., uniform_number: _Optional[int] = ..., rpc_version: _Optional[int] = ...) -> None: ... - -class RegisterResponse(_message.Message): - __slots__ = ("client_id", "agent_type", "team_name", "uniform_number", "rpc_server_language_type") - CLIENT_ID_FIELD_NUMBER: _ClassVar[int] - AGENT_TYPE_FIELD_NUMBER: _ClassVar[int] - TEAM_NAME_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - RPC_SERVER_LANGUAGE_TYPE_FIELD_NUMBER: _ClassVar[int] - client_id: int - agent_type: AgentType - team_name: str - uniform_number: int - rpc_server_language_type: RpcServerLanguageType - def __init__(self, client_id: _Optional[int] = ..., agent_type: _Optional[_Union[AgentType, str]] = ..., team_name: _Optional[str] = ..., uniform_number: _Optional[int] = ..., rpc_server_language_type: _Optional[_Union[RpcServerLanguageType, str]] = ...) -> None: ... - -class Ball(_message.Message): - __slots__ = ("position", "relative_position", "seen_position", "heard_position", "velocity", "seen_velocity", "heard_velocity", "pos_count", "seen_pos_count", "heard_pos_count", "vel_count", "seen_vel_count", "heard_vel_count", "lost_count", "ghost_count", "dist_from_self", "angle_from_self") - POSITION_FIELD_NUMBER: _ClassVar[int] - RELATIVE_POSITION_FIELD_NUMBER: _ClassVar[int] - SEEN_POSITION_FIELD_NUMBER: _ClassVar[int] - HEARD_POSITION_FIELD_NUMBER: _ClassVar[int] - VELOCITY_FIELD_NUMBER: _ClassVar[int] - SEEN_VELOCITY_FIELD_NUMBER: _ClassVar[int] - HEARD_VELOCITY_FIELD_NUMBER: _ClassVar[int] - POS_COUNT_FIELD_NUMBER: _ClassVar[int] - SEEN_POS_COUNT_FIELD_NUMBER: _ClassVar[int] - HEARD_POS_COUNT_FIELD_NUMBER: _ClassVar[int] - VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - SEEN_VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - HEARD_VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - LOST_COUNT_FIELD_NUMBER: _ClassVar[int] - GHOST_COUNT_FIELD_NUMBER: _ClassVar[int] - DIST_FROM_SELF_FIELD_NUMBER: _ClassVar[int] - ANGLE_FROM_SELF_FIELD_NUMBER: _ClassVar[int] - position: RpcVector2D - relative_position: RpcVector2D - seen_position: RpcVector2D - heard_position: RpcVector2D - velocity: RpcVector2D - seen_velocity: RpcVector2D - heard_velocity: RpcVector2D - pos_count: int - seen_pos_count: int - heard_pos_count: int - vel_count: int - seen_vel_count: int - heard_vel_count: int - lost_count: int - ghost_count: int - dist_from_self: float - angle_from_self: float - def __init__(self, position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., relative_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., seen_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., heard_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., seen_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., heard_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., pos_count: _Optional[int] = ..., seen_pos_count: _Optional[int] = ..., heard_pos_count: _Optional[int] = ..., vel_count: _Optional[int] = ..., seen_vel_count: _Optional[int] = ..., heard_vel_count: _Optional[int] = ..., lost_count: _Optional[int] = ..., ghost_count: _Optional[int] = ..., dist_from_self: _Optional[float] = ..., angle_from_self: _Optional[float] = ...) -> None: ... - -class PenaltyKickState(_message.Message): - __slots__ = ("on_field_side", "current_taker_side", "our_taker_counter", "their_taker_counter", "our_score", "their_score", "is_kick_taker") - ON_FIELD_SIDE_FIELD_NUMBER: _ClassVar[int] - CURRENT_TAKER_SIDE_FIELD_NUMBER: _ClassVar[int] - OUR_TAKER_COUNTER_FIELD_NUMBER: _ClassVar[int] - THEIR_TAKER_COUNTER_FIELD_NUMBER: _ClassVar[int] - OUR_SCORE_FIELD_NUMBER: _ClassVar[int] - THEIR_SCORE_FIELD_NUMBER: _ClassVar[int] - IS_KICK_TAKER_FIELD_NUMBER: _ClassVar[int] - on_field_side: Side - current_taker_side: Side - our_taker_counter: int - their_taker_counter: int - our_score: int - their_score: int - is_kick_taker: bool - def __init__(self, on_field_side: _Optional[_Union[Side, str]] = ..., current_taker_side: _Optional[_Union[Side, str]] = ..., our_taker_counter: _Optional[int] = ..., their_taker_counter: _Optional[int] = ..., our_score: _Optional[int] = ..., their_score: _Optional[int] = ..., is_kick_taker: bool = ...) -> None: ... - -class Player(_message.Message): - __slots__ = ("position", "seen_position", "heard_position", "velocity", "seen_velocity", "pos_count", "seen_pos_count", "heard_pos_count", "vel_count", "seen_vel_count", "ghost_count", "dist_from_self", "angle_from_self", "id", "side", "uniform_number", "uniform_number_count", "is_goalie", "body_direction", "body_direction_count", "face_direction", "face_direction_count", "point_to_direction", "point_to_direction_count", "is_kicking", "dist_from_ball", "angle_from_ball", "ball_reach_steps", "is_tackling", "type_id") - POSITION_FIELD_NUMBER: _ClassVar[int] - SEEN_POSITION_FIELD_NUMBER: _ClassVar[int] - HEARD_POSITION_FIELD_NUMBER: _ClassVar[int] - VELOCITY_FIELD_NUMBER: _ClassVar[int] - SEEN_VELOCITY_FIELD_NUMBER: _ClassVar[int] - POS_COUNT_FIELD_NUMBER: _ClassVar[int] - SEEN_POS_COUNT_FIELD_NUMBER: _ClassVar[int] - HEARD_POS_COUNT_FIELD_NUMBER: _ClassVar[int] - VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - SEEN_VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - GHOST_COUNT_FIELD_NUMBER: _ClassVar[int] - DIST_FROM_SELF_FIELD_NUMBER: _ClassVar[int] - ANGLE_FROM_SELF_FIELD_NUMBER: _ClassVar[int] - ID_FIELD_NUMBER: _ClassVar[int] - SIDE_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_COUNT_FIELD_NUMBER: _ClassVar[int] - IS_GOALIE_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_COUNT_FIELD_NUMBER: _ClassVar[int] - FACE_DIRECTION_FIELD_NUMBER: _ClassVar[int] - FACE_DIRECTION_COUNT_FIELD_NUMBER: _ClassVar[int] - POINT_TO_DIRECTION_FIELD_NUMBER: _ClassVar[int] - POINT_TO_DIRECTION_COUNT_FIELD_NUMBER: _ClassVar[int] - IS_KICKING_FIELD_NUMBER: _ClassVar[int] - DIST_FROM_BALL_FIELD_NUMBER: _ClassVar[int] - ANGLE_FROM_BALL_FIELD_NUMBER: _ClassVar[int] - BALL_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - IS_TACKLING_FIELD_NUMBER: _ClassVar[int] - TYPE_ID_FIELD_NUMBER: _ClassVar[int] - position: RpcVector2D - seen_position: RpcVector2D - heard_position: RpcVector2D - velocity: RpcVector2D - seen_velocity: RpcVector2D - pos_count: int - seen_pos_count: int - heard_pos_count: int - vel_count: int - seen_vel_count: int - ghost_count: int - dist_from_self: float - angle_from_self: float - id: int - side: Side - uniform_number: int - uniform_number_count: int - is_goalie: bool - body_direction: float - body_direction_count: int - face_direction: float - face_direction_count: int - point_to_direction: float - point_to_direction_count: int - is_kicking: bool - dist_from_ball: float - angle_from_ball: float - ball_reach_steps: int - is_tackling: bool - type_id: int - def __init__(self, position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., seen_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., heard_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., seen_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., pos_count: _Optional[int] = ..., seen_pos_count: _Optional[int] = ..., heard_pos_count: _Optional[int] = ..., vel_count: _Optional[int] = ..., seen_vel_count: _Optional[int] = ..., ghost_count: _Optional[int] = ..., dist_from_self: _Optional[float] = ..., angle_from_self: _Optional[float] = ..., id: _Optional[int] = ..., side: _Optional[_Union[Side, str]] = ..., uniform_number: _Optional[int] = ..., uniform_number_count: _Optional[int] = ..., is_goalie: bool = ..., body_direction: _Optional[float] = ..., body_direction_count: _Optional[int] = ..., face_direction: _Optional[float] = ..., face_direction_count: _Optional[int] = ..., point_to_direction: _Optional[float] = ..., point_to_direction_count: _Optional[int] = ..., is_kicking: bool = ..., dist_from_ball: _Optional[float] = ..., angle_from_ball: _Optional[float] = ..., ball_reach_steps: _Optional[int] = ..., is_tackling: bool = ..., type_id: _Optional[int] = ...) -> None: ... - -class Self(_message.Message): - __slots__ = ("position", "seen_position", "heard_position", "velocity", "seen_velocity", "pos_count", "seen_pos_count", "heard_pos_count", "vel_count", "seen_vel_count", "ghost_count", "id", "side", "uniform_number", "uniform_number_count", "is_goalie", "body_direction", "body_direction_count", "face_direction", "face_direction_count", "point_to_direction", "point_to_direction_count", "is_kicking", "dist_from_ball", "angle_from_ball", "ball_reach_steps", "is_tackling", "relative_neck_direction", "stamina", "is_kickable", "catch_probability", "tackle_probability", "foul_probability", "view_width", "type_id", "kick_rate", "recovery", "stamina_capacity", "card", "catch_time", "effort") - POSITION_FIELD_NUMBER: _ClassVar[int] - SEEN_POSITION_FIELD_NUMBER: _ClassVar[int] - HEARD_POSITION_FIELD_NUMBER: _ClassVar[int] - VELOCITY_FIELD_NUMBER: _ClassVar[int] - SEEN_VELOCITY_FIELD_NUMBER: _ClassVar[int] - POS_COUNT_FIELD_NUMBER: _ClassVar[int] - SEEN_POS_COUNT_FIELD_NUMBER: _ClassVar[int] - HEARD_POS_COUNT_FIELD_NUMBER: _ClassVar[int] - VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - SEEN_VEL_COUNT_FIELD_NUMBER: _ClassVar[int] - GHOST_COUNT_FIELD_NUMBER: _ClassVar[int] - ID_FIELD_NUMBER: _ClassVar[int] - SIDE_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_COUNT_FIELD_NUMBER: _ClassVar[int] - IS_GOALIE_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_COUNT_FIELD_NUMBER: _ClassVar[int] - FACE_DIRECTION_FIELD_NUMBER: _ClassVar[int] - FACE_DIRECTION_COUNT_FIELD_NUMBER: _ClassVar[int] - POINT_TO_DIRECTION_FIELD_NUMBER: _ClassVar[int] - POINT_TO_DIRECTION_COUNT_FIELD_NUMBER: _ClassVar[int] - IS_KICKING_FIELD_NUMBER: _ClassVar[int] - DIST_FROM_BALL_FIELD_NUMBER: _ClassVar[int] - ANGLE_FROM_BALL_FIELD_NUMBER: _ClassVar[int] - BALL_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - IS_TACKLING_FIELD_NUMBER: _ClassVar[int] - RELATIVE_NECK_DIRECTION_FIELD_NUMBER: _ClassVar[int] - STAMINA_FIELD_NUMBER: _ClassVar[int] - IS_KICKABLE_FIELD_NUMBER: _ClassVar[int] - CATCH_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - TACKLE_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - FOUL_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - VIEW_WIDTH_FIELD_NUMBER: _ClassVar[int] - TYPE_ID_FIELD_NUMBER: _ClassVar[int] - KICK_RATE_FIELD_NUMBER: _ClassVar[int] - RECOVERY_FIELD_NUMBER: _ClassVar[int] - STAMINA_CAPACITY_FIELD_NUMBER: _ClassVar[int] - CARD_FIELD_NUMBER: _ClassVar[int] - CATCH_TIME_FIELD_NUMBER: _ClassVar[int] - EFFORT_FIELD_NUMBER: _ClassVar[int] - position: RpcVector2D - seen_position: RpcVector2D - heard_position: RpcVector2D - velocity: RpcVector2D - seen_velocity: RpcVector2D - pos_count: int - seen_pos_count: int - heard_pos_count: int - vel_count: int - seen_vel_count: int - ghost_count: int - id: int - side: Side - uniform_number: int - uniform_number_count: int - is_goalie: bool - body_direction: float - body_direction_count: int - face_direction: float - face_direction_count: int - point_to_direction: float - point_to_direction_count: int - is_kicking: bool - dist_from_ball: float - angle_from_ball: float - ball_reach_steps: int - is_tackling: bool - relative_neck_direction: float - stamina: float - is_kickable: bool - catch_probability: float - tackle_probability: float - foul_probability: float - view_width: ViewWidth - type_id: int - kick_rate: float - recovery: float - stamina_capacity: float - card: CardType - catch_time: int - effort: float - def __init__(self, position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., seen_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., heard_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., seen_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., pos_count: _Optional[int] = ..., seen_pos_count: _Optional[int] = ..., heard_pos_count: _Optional[int] = ..., vel_count: _Optional[int] = ..., seen_vel_count: _Optional[int] = ..., ghost_count: _Optional[int] = ..., id: _Optional[int] = ..., side: _Optional[_Union[Side, str]] = ..., uniform_number: _Optional[int] = ..., uniform_number_count: _Optional[int] = ..., is_goalie: bool = ..., body_direction: _Optional[float] = ..., body_direction_count: _Optional[int] = ..., face_direction: _Optional[float] = ..., face_direction_count: _Optional[int] = ..., point_to_direction: _Optional[float] = ..., point_to_direction_count: _Optional[int] = ..., is_kicking: bool = ..., dist_from_ball: _Optional[float] = ..., angle_from_ball: _Optional[float] = ..., ball_reach_steps: _Optional[int] = ..., is_tackling: bool = ..., relative_neck_direction: _Optional[float] = ..., stamina: _Optional[float] = ..., is_kickable: bool = ..., catch_probability: _Optional[float] = ..., tackle_probability: _Optional[float] = ..., foul_probability: _Optional[float] = ..., view_width: _Optional[_Union[ViewWidth, str]] = ..., type_id: _Optional[int] = ..., kick_rate: _Optional[float] = ..., recovery: _Optional[float] = ..., stamina_capacity: _Optional[float] = ..., card: _Optional[_Union[CardType, str]] = ..., catch_time: _Optional[int] = ..., effort: _Optional[float] = ...) -> None: ... - -class InterceptInfo(_message.Message): - __slots__ = ("action_type", "turn_steps", "turn_angle", "dash_steps", "dash_power", "dash_dir", "final_self_position", "final_ball_dist", "final_stamina", "value") - ACTION_TYPE_FIELD_NUMBER: _ClassVar[int] - TURN_STEPS_FIELD_NUMBER: _ClassVar[int] - TURN_ANGLE_FIELD_NUMBER: _ClassVar[int] - DASH_STEPS_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_FIELD_NUMBER: _ClassVar[int] - DASH_DIR_FIELD_NUMBER: _ClassVar[int] - FINAL_SELF_POSITION_FIELD_NUMBER: _ClassVar[int] - FINAL_BALL_DIST_FIELD_NUMBER: _ClassVar[int] - FINAL_STAMINA_FIELD_NUMBER: _ClassVar[int] - VALUE_FIELD_NUMBER: _ClassVar[int] - action_type: InterceptActionType - turn_steps: int - turn_angle: float - dash_steps: int - dash_power: float - dash_dir: float - final_self_position: RpcVector2D - final_ball_dist: float - final_stamina: float - value: float - def __init__(self, action_type: _Optional[_Union[InterceptActionType, str]] = ..., turn_steps: _Optional[int] = ..., turn_angle: _Optional[float] = ..., dash_steps: _Optional[int] = ..., dash_power: _Optional[float] = ..., dash_dir: _Optional[float] = ..., final_self_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., final_ball_dist: _Optional[float] = ..., final_stamina: _Optional[float] = ..., value: _Optional[float] = ...) -> None: ... - -class InterceptTable(_message.Message): - __slots__ = ("self_reach_steps", "first_teammate_reach_steps", "second_teammate_reach_steps", "first_opponent_reach_steps", "second_opponent_reach_steps", "first_teammate_id", "second_teammate_id", "first_opponent_id", "second_opponent_id", "self_intercept_info") - SELF_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - FIRST_TEAMMATE_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - SECOND_TEAMMATE_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - FIRST_OPPONENT_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - SECOND_OPPONENT_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - FIRST_TEAMMATE_ID_FIELD_NUMBER: _ClassVar[int] - SECOND_TEAMMATE_ID_FIELD_NUMBER: _ClassVar[int] - FIRST_OPPONENT_ID_FIELD_NUMBER: _ClassVar[int] - SECOND_OPPONENT_ID_FIELD_NUMBER: _ClassVar[int] - SELF_INTERCEPT_INFO_FIELD_NUMBER: _ClassVar[int] - self_reach_steps: int - first_teammate_reach_steps: int - second_teammate_reach_steps: int - first_opponent_reach_steps: int - second_opponent_reach_steps: int - first_teammate_id: int - second_teammate_id: int - first_opponent_id: int - second_opponent_id: int - self_intercept_info: _containers.RepeatedCompositeFieldContainer[InterceptInfo] - def __init__(self, self_reach_steps: _Optional[int] = ..., first_teammate_reach_steps: _Optional[int] = ..., second_teammate_reach_steps: _Optional[int] = ..., first_opponent_reach_steps: _Optional[int] = ..., second_opponent_reach_steps: _Optional[int] = ..., first_teammate_id: _Optional[int] = ..., second_teammate_id: _Optional[int] = ..., first_opponent_id: _Optional[int] = ..., second_opponent_id: _Optional[int] = ..., self_intercept_info: _Optional[_Iterable[_Union[InterceptInfo, _Mapping]]] = ...) -> None: ... - -class WorldModel(_message.Message): - __slots__ = ("intercept_table", "our_team_name", "their_team_name", "our_side", "last_set_play_start_time", "self", "ball", "teammates", "opponents", "unknowns", "our_players_dict", "their_players_dict", "our_goalie_uniform_number", "their_goalie_uniform_number", "offside_line_x", "ofside_line_x_count", "kickable_teammate_id", "kickable_opponent_id", "last_kick_side", "last_kicker_uniform_number", "cycle", "game_mode_type", "left_team_score", "right_team_score", "is_our_set_play", "is_their_set_play", "stoped_cycle", "our_team_score", "their_team_score", "is_penalty_kick_mode", "helios_home_positions", "our_defense_line_x", "their_defense_line_x", "our_defense_player_line_x", "their_defense_player_line_x", "kickable_teammate_existance", "kickable_opponent_existance", "penalty_kick_state", "see_time", "time_stopped", "set_play_count", "game_mode_side") - class OurPlayersDictEntry(_message.Message): - __slots__ = ("key", "value") - KEY_FIELD_NUMBER: _ClassVar[int] - VALUE_FIELD_NUMBER: _ClassVar[int] - key: int - value: Player - def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[Player, _Mapping]] = ...) -> None: ... - class TheirPlayersDictEntry(_message.Message): - __slots__ = ("key", "value") - KEY_FIELD_NUMBER: _ClassVar[int] - VALUE_FIELD_NUMBER: _ClassVar[int] - key: int - value: Player - def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[Player, _Mapping]] = ...) -> None: ... - class HeliosHomePositionsEntry(_message.Message): - __slots__ = ("key", "value") - KEY_FIELD_NUMBER: _ClassVar[int] - VALUE_FIELD_NUMBER: _ClassVar[int] - key: int - value: RpcVector2D - def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - INTERCEPT_TABLE_FIELD_NUMBER: _ClassVar[int] - OUR_TEAM_NAME_FIELD_NUMBER: _ClassVar[int] - THEIR_TEAM_NAME_FIELD_NUMBER: _ClassVar[int] - OUR_SIDE_FIELD_NUMBER: _ClassVar[int] - LAST_SET_PLAY_START_TIME_FIELD_NUMBER: _ClassVar[int] - SELF_FIELD_NUMBER: _ClassVar[int] - BALL_FIELD_NUMBER: _ClassVar[int] - TEAMMATES_FIELD_NUMBER: _ClassVar[int] - OPPONENTS_FIELD_NUMBER: _ClassVar[int] - UNKNOWNS_FIELD_NUMBER: _ClassVar[int] - OUR_PLAYERS_DICT_FIELD_NUMBER: _ClassVar[int] - THEIR_PLAYERS_DICT_FIELD_NUMBER: _ClassVar[int] - OUR_GOALIE_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - THEIR_GOALIE_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - OFFSIDE_LINE_X_FIELD_NUMBER: _ClassVar[int] - OFSIDE_LINE_X_COUNT_FIELD_NUMBER: _ClassVar[int] - KICKABLE_TEAMMATE_ID_FIELD_NUMBER: _ClassVar[int] - KICKABLE_OPPONENT_ID_FIELD_NUMBER: _ClassVar[int] - LAST_KICK_SIDE_FIELD_NUMBER: _ClassVar[int] - LAST_KICKER_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - CYCLE_FIELD_NUMBER: _ClassVar[int] - GAME_MODE_TYPE_FIELD_NUMBER: _ClassVar[int] - LEFT_TEAM_SCORE_FIELD_NUMBER: _ClassVar[int] - RIGHT_TEAM_SCORE_FIELD_NUMBER: _ClassVar[int] - IS_OUR_SET_PLAY_FIELD_NUMBER: _ClassVar[int] - IS_THEIR_SET_PLAY_FIELD_NUMBER: _ClassVar[int] - STOPED_CYCLE_FIELD_NUMBER: _ClassVar[int] - OUR_TEAM_SCORE_FIELD_NUMBER: _ClassVar[int] - THEIR_TEAM_SCORE_FIELD_NUMBER: _ClassVar[int] - IS_PENALTY_KICK_MODE_FIELD_NUMBER: _ClassVar[int] - HELIOS_HOME_POSITIONS_FIELD_NUMBER: _ClassVar[int] - OUR_DEFENSE_LINE_X_FIELD_NUMBER: _ClassVar[int] - THEIR_DEFENSE_LINE_X_FIELD_NUMBER: _ClassVar[int] - OUR_DEFENSE_PLAYER_LINE_X_FIELD_NUMBER: _ClassVar[int] - THEIR_DEFENSE_PLAYER_LINE_X_FIELD_NUMBER: _ClassVar[int] - KICKABLE_TEAMMATE_EXISTANCE_FIELD_NUMBER: _ClassVar[int] - KICKABLE_OPPONENT_EXISTANCE_FIELD_NUMBER: _ClassVar[int] - PENALTY_KICK_STATE_FIELD_NUMBER: _ClassVar[int] - SEE_TIME_FIELD_NUMBER: _ClassVar[int] - TIME_STOPPED_FIELD_NUMBER: _ClassVar[int] - SET_PLAY_COUNT_FIELD_NUMBER: _ClassVar[int] - GAME_MODE_SIDE_FIELD_NUMBER: _ClassVar[int] - intercept_table: InterceptTable - our_team_name: str - their_team_name: str - our_side: Side - last_set_play_start_time: int - self: Self - ball: Ball - teammates: _containers.RepeatedCompositeFieldContainer[Player] - opponents: _containers.RepeatedCompositeFieldContainer[Player] - unknowns: _containers.RepeatedCompositeFieldContainer[Player] - our_players_dict: _containers.MessageMap[int, Player] - their_players_dict: _containers.MessageMap[int, Player] - our_goalie_uniform_number: int - their_goalie_uniform_number: int - offside_line_x: float - ofside_line_x_count: int - kickable_teammate_id: int - kickable_opponent_id: int - last_kick_side: Side - last_kicker_uniform_number: int - cycle: int - game_mode_type: GameModeType - left_team_score: int - right_team_score: int - is_our_set_play: bool - is_their_set_play: bool - stoped_cycle: int - our_team_score: int - their_team_score: int - is_penalty_kick_mode: bool - helios_home_positions: _containers.MessageMap[int, RpcVector2D] - our_defense_line_x: float - their_defense_line_x: float - our_defense_player_line_x: float - their_defense_player_line_x: float - kickable_teammate_existance: bool - kickable_opponent_existance: bool - penalty_kick_state: PenaltyKickState - see_time: int - time_stopped: int - set_play_count: int - game_mode_side: Side - def __init__(self, intercept_table: _Optional[_Union[InterceptTable, _Mapping]] = ..., our_team_name: _Optional[str] = ..., their_team_name: _Optional[str] = ..., our_side: _Optional[_Union[Side, str]] = ..., last_set_play_start_time: _Optional[int] = ..., self: _Optional[_Union[Self, _Mapping]] = ..., ball: _Optional[_Union[Ball, _Mapping]] = ..., teammates: _Optional[_Iterable[_Union[Player, _Mapping]]] = ..., opponents: _Optional[_Iterable[_Union[Player, _Mapping]]] = ..., unknowns: _Optional[_Iterable[_Union[Player, _Mapping]]] = ..., our_players_dict: _Optional[_Mapping[int, Player]] = ..., their_players_dict: _Optional[_Mapping[int, Player]] = ..., our_goalie_uniform_number: _Optional[int] = ..., their_goalie_uniform_number: _Optional[int] = ..., offside_line_x: _Optional[float] = ..., ofside_line_x_count: _Optional[int] = ..., kickable_teammate_id: _Optional[int] = ..., kickable_opponent_id: _Optional[int] = ..., last_kick_side: _Optional[_Union[Side, str]] = ..., last_kicker_uniform_number: _Optional[int] = ..., cycle: _Optional[int] = ..., game_mode_type: _Optional[_Union[GameModeType, str]] = ..., left_team_score: _Optional[int] = ..., right_team_score: _Optional[int] = ..., is_our_set_play: bool = ..., is_their_set_play: bool = ..., stoped_cycle: _Optional[int] = ..., our_team_score: _Optional[int] = ..., their_team_score: _Optional[int] = ..., is_penalty_kick_mode: bool = ..., helios_home_positions: _Optional[_Mapping[int, RpcVector2D]] = ..., our_defense_line_x: _Optional[float] = ..., their_defense_line_x: _Optional[float] = ..., our_defense_player_line_x: _Optional[float] = ..., their_defense_player_line_x: _Optional[float] = ..., kickable_teammate_existance: bool = ..., kickable_opponent_existance: bool = ..., penalty_kick_state: _Optional[_Union[PenaltyKickState, _Mapping]] = ..., see_time: _Optional[int] = ..., time_stopped: _Optional[int] = ..., set_play_count: _Optional[int] = ..., game_mode_side: _Optional[_Union[Side, str]] = ...) -> None: ... - -class State(_message.Message): - __slots__ = ("register_response", "world_model", "full_world_model", "need_preprocess") - REGISTER_RESPONSE_FIELD_NUMBER: _ClassVar[int] - WORLD_MODEL_FIELD_NUMBER: _ClassVar[int] - FULL_WORLD_MODEL_FIELD_NUMBER: _ClassVar[int] - NEED_PREPROCESS_FIELD_NUMBER: _ClassVar[int] - register_response: RegisterResponse - world_model: WorldModel - full_world_model: WorldModel - need_preprocess: bool - def __init__(self, register_response: _Optional[_Union[RegisterResponse, _Mapping]] = ..., world_model: _Optional[_Union[WorldModel, _Mapping]] = ..., full_world_model: _Optional[_Union[WorldModel, _Mapping]] = ..., need_preprocess: bool = ...) -> None: ... - -class InitMessage(_message.Message): - __slots__ = ("register_response", "debug_mode") - REGISTER_RESPONSE_FIELD_NUMBER: _ClassVar[int] - DEBUG_MODE_FIELD_NUMBER: _ClassVar[int] - register_response: RegisterResponse - debug_mode: bool - def __init__(self, register_response: _Optional[_Union[RegisterResponse, _Mapping]] = ..., debug_mode: bool = ...) -> None: ... - -class Dash(_message.Message): - __slots__ = ("power", "relative_direction") - POWER_FIELD_NUMBER: _ClassVar[int] - RELATIVE_DIRECTION_FIELD_NUMBER: _ClassVar[int] - power: float - relative_direction: float - def __init__(self, power: _Optional[float] = ..., relative_direction: _Optional[float] = ...) -> None: ... - -class Turn(_message.Message): - __slots__ = ("relative_direction",) - RELATIVE_DIRECTION_FIELD_NUMBER: _ClassVar[int] - relative_direction: float - def __init__(self, relative_direction: _Optional[float] = ...) -> None: ... - -class Kick(_message.Message): - __slots__ = ("power", "relative_direction") - POWER_FIELD_NUMBER: _ClassVar[int] - RELATIVE_DIRECTION_FIELD_NUMBER: _ClassVar[int] - power: float - relative_direction: float - def __init__(self, power: _Optional[float] = ..., relative_direction: _Optional[float] = ...) -> None: ... - -class Tackle(_message.Message): - __slots__ = ("power_or_dir", "foul") - POWER_OR_DIR_FIELD_NUMBER: _ClassVar[int] - FOUL_FIELD_NUMBER: _ClassVar[int] - power_or_dir: float - foul: bool - def __init__(self, power_or_dir: _Optional[float] = ..., foul: bool = ...) -> None: ... - -class Catch(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Move(_message.Message): - __slots__ = ("x", "y") - X_FIELD_NUMBER: _ClassVar[int] - Y_FIELD_NUMBER: _ClassVar[int] - x: float - y: float - def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ...) -> None: ... - -class TurnNeck(_message.Message): - __slots__ = ("moment",) - MOMENT_FIELD_NUMBER: _ClassVar[int] - moment: float - def __init__(self, moment: _Optional[float] = ...) -> None: ... - -class ChangeView(_message.Message): - __slots__ = ("view_width",) - VIEW_WIDTH_FIELD_NUMBER: _ClassVar[int] - view_width: ViewWidth - def __init__(self, view_width: _Optional[_Union[ViewWidth, str]] = ...) -> None: ... - -class BallMessage(_message.Message): - __slots__ = ("ball_position", "ball_velocity") - BALL_POSITION_FIELD_NUMBER: _ClassVar[int] - BALL_VELOCITY_FIELD_NUMBER: _ClassVar[int] - ball_position: RpcVector2D - ball_velocity: RpcVector2D - def __init__(self, ball_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., ball_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class PassMessage(_message.Message): - __slots__ = ("receiver_uniform_number", "receiver_point", "ball_position", "ball_velocity") - RECEIVER_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - RECEIVER_POINT_FIELD_NUMBER: _ClassVar[int] - BALL_POSITION_FIELD_NUMBER: _ClassVar[int] - BALL_VELOCITY_FIELD_NUMBER: _ClassVar[int] - receiver_uniform_number: int - receiver_point: RpcVector2D - ball_position: RpcVector2D - ball_velocity: RpcVector2D - def __init__(self, receiver_uniform_number: _Optional[int] = ..., receiver_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., ball_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., ball_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class InterceptMessage(_message.Message): - __slots__ = ("our", "uniform_number", "cycle") - OUR_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - CYCLE_FIELD_NUMBER: _ClassVar[int] - our: bool - uniform_number: int - cycle: int - def __init__(self, our: bool = ..., uniform_number: _Optional[int] = ..., cycle: _Optional[int] = ...) -> None: ... - -class GoalieMessage(_message.Message): - __slots__ = ("goalie_uniform_number", "goalie_position", "goalie_body_direction") - GOALIE_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - GOALIE_POSITION_FIELD_NUMBER: _ClassVar[int] - GOALIE_BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - goalie_uniform_number: int - goalie_position: RpcVector2D - goalie_body_direction: float - def __init__(self, goalie_uniform_number: _Optional[int] = ..., goalie_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., goalie_body_direction: _Optional[float] = ...) -> None: ... - -class GoalieAndPlayerMessage(_message.Message): - __slots__ = ("goalie_uniform_number", "goalie_position", "goalie_body_direction", "player_uniform_number", "player_position") - GOALIE_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - GOALIE_POSITION_FIELD_NUMBER: _ClassVar[int] - GOALIE_BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - PLAYER_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - PLAYER_POSITION_FIELD_NUMBER: _ClassVar[int] - goalie_uniform_number: int - goalie_position: RpcVector2D - goalie_body_direction: float - player_uniform_number: int - player_position: RpcVector2D - def __init__(self, goalie_uniform_number: _Optional[int] = ..., goalie_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., goalie_body_direction: _Optional[float] = ..., player_uniform_number: _Optional[int] = ..., player_position: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class OffsideLineMessage(_message.Message): - __slots__ = ("offside_line_x",) - OFFSIDE_LINE_X_FIELD_NUMBER: _ClassVar[int] - offside_line_x: float - def __init__(self, offside_line_x: _Optional[float] = ...) -> None: ... - -class DefenseLineMessage(_message.Message): - __slots__ = ("defense_line_x",) - DEFENSE_LINE_X_FIELD_NUMBER: _ClassVar[int] - defense_line_x: float - def __init__(self, defense_line_x: _Optional[float] = ...) -> None: ... - -class WaitRequestMessage(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class SetplayMessage(_message.Message): - __slots__ = ("wait_step",) - WAIT_STEP_FIELD_NUMBER: _ClassVar[int] - wait_step: int - def __init__(self, wait_step: _Optional[int] = ...) -> None: ... - -class PassRequestMessage(_message.Message): - __slots__ = ("target_point",) - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class StaminaMessage(_message.Message): - __slots__ = ("stamina",) - STAMINA_FIELD_NUMBER: _ClassVar[int] - stamina: float - def __init__(self, stamina: _Optional[float] = ...) -> None: ... - -class RecoveryMessage(_message.Message): - __slots__ = ("recovery",) - RECOVERY_FIELD_NUMBER: _ClassVar[int] - recovery: float - def __init__(self, recovery: _Optional[float] = ...) -> None: ... - -class StaminaCapacityMessage(_message.Message): - __slots__ = ("stamina_capacity",) - STAMINA_CAPACITY_FIELD_NUMBER: _ClassVar[int] - stamina_capacity: float - def __init__(self, stamina_capacity: _Optional[float] = ...) -> None: ... - -class DribbleMessage(_message.Message): - __slots__ = ("target_point", "queue_count") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - QUEUE_COUNT_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - queue_count: int - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., queue_count: _Optional[int] = ...) -> None: ... - -class BallGoalieMessage(_message.Message): - __slots__ = ("ball_position", "ball_velocity", "goalie_position", "goalie_body_direction") - BALL_POSITION_FIELD_NUMBER: _ClassVar[int] - BALL_VELOCITY_FIELD_NUMBER: _ClassVar[int] - GOALIE_POSITION_FIELD_NUMBER: _ClassVar[int] - GOALIE_BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - ball_position: RpcVector2D - ball_velocity: RpcVector2D - goalie_position: RpcVector2D - goalie_body_direction: float - def __init__(self, ball_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., ball_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., goalie_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., goalie_body_direction: _Optional[float] = ...) -> None: ... - -class OnePlayerMessage(_message.Message): - __slots__ = ("uniform_number", "position") - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - POSITION_FIELD_NUMBER: _ClassVar[int] - uniform_number: int - position: RpcVector2D - def __init__(self, uniform_number: _Optional[int] = ..., position: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class TwoPlayerMessage(_message.Message): - __slots__ = ("first_uniform_number", "first_position", "second_uniform_number", "second_position") - FIRST_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - FIRST_POSITION_FIELD_NUMBER: _ClassVar[int] - SECOND_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - SECOND_POSITION_FIELD_NUMBER: _ClassVar[int] - first_uniform_number: int - first_position: RpcVector2D - second_uniform_number: int - second_position: RpcVector2D - def __init__(self, first_uniform_number: _Optional[int] = ..., first_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., second_uniform_number: _Optional[int] = ..., second_position: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class ThreePlayerMessage(_message.Message): - __slots__ = ("first_uniform_number", "first_position", "second_uniform_number", "second_position", "third_uniform_number", "third_position") - FIRST_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - FIRST_POSITION_FIELD_NUMBER: _ClassVar[int] - SECOND_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - SECOND_POSITION_FIELD_NUMBER: _ClassVar[int] - THIRD_UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - THIRD_POSITION_FIELD_NUMBER: _ClassVar[int] - first_uniform_number: int - first_position: RpcVector2D - second_uniform_number: int - second_position: RpcVector2D - third_uniform_number: int - third_position: RpcVector2D - def __init__(self, first_uniform_number: _Optional[int] = ..., first_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., second_uniform_number: _Optional[int] = ..., second_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., third_uniform_number: _Optional[int] = ..., third_position: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class SelfMessage(_message.Message): - __slots__ = ("self_position", "self_body_direction", "self_stamina") - SELF_POSITION_FIELD_NUMBER: _ClassVar[int] - SELF_BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - SELF_STAMINA_FIELD_NUMBER: _ClassVar[int] - self_position: RpcVector2D - self_body_direction: float - self_stamina: float - def __init__(self, self_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., self_body_direction: _Optional[float] = ..., self_stamina: _Optional[float] = ...) -> None: ... - -class TeammateMessage(_message.Message): - __slots__ = ("uniform_number", "position", "body_direction") - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - POSITION_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - uniform_number: int - position: RpcVector2D - body_direction: float - def __init__(self, uniform_number: _Optional[int] = ..., position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., body_direction: _Optional[float] = ...) -> None: ... - -class OpponentMessage(_message.Message): - __slots__ = ("uniform_number", "position", "body_direction") - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - POSITION_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - uniform_number: int - position: RpcVector2D - body_direction: float - def __init__(self, uniform_number: _Optional[int] = ..., position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., body_direction: _Optional[float] = ...) -> None: ... - -class BallPlayerMessage(_message.Message): - __slots__ = ("ball_position", "ball_velocity", "uniform_number", "player_position", "body_direction") - BALL_POSITION_FIELD_NUMBER: _ClassVar[int] - BALL_VELOCITY_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - PLAYER_POSITION_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - ball_position: RpcVector2D - ball_velocity: RpcVector2D - uniform_number: int - player_position: RpcVector2D - body_direction: float - def __init__(self, ball_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., ball_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., uniform_number: _Optional[int] = ..., player_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., body_direction: _Optional[float] = ...) -> None: ... - -class Say(_message.Message): - __slots__ = ("ball_message", "pass_message", "intercept_message", "goalie_message", "goalie_and_player_message", "offside_line_message", "defense_line_message", "wait_request_message", "setplay_message", "pass_request_message", "stamina_message", "recovery_message", "stamina_capacity_message", "dribble_message", "ball_goalie_message", "one_player_message", "two_player_message", "three_player_message", "self_message", "teammate_message", "opponent_message", "ball_player_message") - BALL_MESSAGE_FIELD_NUMBER: _ClassVar[int] - PASS_MESSAGE_FIELD_NUMBER: _ClassVar[int] - INTERCEPT_MESSAGE_FIELD_NUMBER: _ClassVar[int] - GOALIE_MESSAGE_FIELD_NUMBER: _ClassVar[int] - GOALIE_AND_PLAYER_MESSAGE_FIELD_NUMBER: _ClassVar[int] - OFFSIDE_LINE_MESSAGE_FIELD_NUMBER: _ClassVar[int] - DEFENSE_LINE_MESSAGE_FIELD_NUMBER: _ClassVar[int] - WAIT_REQUEST_MESSAGE_FIELD_NUMBER: _ClassVar[int] - SETPLAY_MESSAGE_FIELD_NUMBER: _ClassVar[int] - PASS_REQUEST_MESSAGE_FIELD_NUMBER: _ClassVar[int] - STAMINA_MESSAGE_FIELD_NUMBER: _ClassVar[int] - RECOVERY_MESSAGE_FIELD_NUMBER: _ClassVar[int] - STAMINA_CAPACITY_MESSAGE_FIELD_NUMBER: _ClassVar[int] - DRIBBLE_MESSAGE_FIELD_NUMBER: _ClassVar[int] - BALL_GOALIE_MESSAGE_FIELD_NUMBER: _ClassVar[int] - ONE_PLAYER_MESSAGE_FIELD_NUMBER: _ClassVar[int] - TWO_PLAYER_MESSAGE_FIELD_NUMBER: _ClassVar[int] - THREE_PLAYER_MESSAGE_FIELD_NUMBER: _ClassVar[int] - SELF_MESSAGE_FIELD_NUMBER: _ClassVar[int] - TEAMMATE_MESSAGE_FIELD_NUMBER: _ClassVar[int] - OPPONENT_MESSAGE_FIELD_NUMBER: _ClassVar[int] - BALL_PLAYER_MESSAGE_FIELD_NUMBER: _ClassVar[int] - ball_message: BallMessage - pass_message: PassMessage - intercept_message: InterceptMessage - goalie_message: GoalieMessage - goalie_and_player_message: GoalieAndPlayerMessage - offside_line_message: OffsideLineMessage - defense_line_message: DefenseLineMessage - wait_request_message: WaitRequestMessage - setplay_message: SetplayMessage - pass_request_message: PassRequestMessage - stamina_message: StaminaMessage - recovery_message: RecoveryMessage - stamina_capacity_message: StaminaCapacityMessage - dribble_message: DribbleMessage - ball_goalie_message: BallGoalieMessage - one_player_message: OnePlayerMessage - two_player_message: TwoPlayerMessage - three_player_message: ThreePlayerMessage - self_message: SelfMessage - teammate_message: TeammateMessage - opponent_message: OpponentMessage - ball_player_message: BallPlayerMessage - def __init__(self, ball_message: _Optional[_Union[BallMessage, _Mapping]] = ..., pass_message: _Optional[_Union[PassMessage, _Mapping]] = ..., intercept_message: _Optional[_Union[InterceptMessage, _Mapping]] = ..., goalie_message: _Optional[_Union[GoalieMessage, _Mapping]] = ..., goalie_and_player_message: _Optional[_Union[GoalieAndPlayerMessage, _Mapping]] = ..., offside_line_message: _Optional[_Union[OffsideLineMessage, _Mapping]] = ..., defense_line_message: _Optional[_Union[DefenseLineMessage, _Mapping]] = ..., wait_request_message: _Optional[_Union[WaitRequestMessage, _Mapping]] = ..., setplay_message: _Optional[_Union[SetplayMessage, _Mapping]] = ..., pass_request_message: _Optional[_Union[PassRequestMessage, _Mapping]] = ..., stamina_message: _Optional[_Union[StaminaMessage, _Mapping]] = ..., recovery_message: _Optional[_Union[RecoveryMessage, _Mapping]] = ..., stamina_capacity_message: _Optional[_Union[StaminaCapacityMessage, _Mapping]] = ..., dribble_message: _Optional[_Union[DribbleMessage, _Mapping]] = ..., ball_goalie_message: _Optional[_Union[BallGoalieMessage, _Mapping]] = ..., one_player_message: _Optional[_Union[OnePlayerMessage, _Mapping]] = ..., two_player_message: _Optional[_Union[TwoPlayerMessage, _Mapping]] = ..., three_player_message: _Optional[_Union[ThreePlayerMessage, _Mapping]] = ..., self_message: _Optional[_Union[SelfMessage, _Mapping]] = ..., teammate_message: _Optional[_Union[TeammateMessage, _Mapping]] = ..., opponent_message: _Optional[_Union[OpponentMessage, _Mapping]] = ..., ball_player_message: _Optional[_Union[BallPlayerMessage, _Mapping]] = ...) -> None: ... - -class PointTo(_message.Message): - __slots__ = ("x", "y") - X_FIELD_NUMBER: _ClassVar[int] - Y_FIELD_NUMBER: _ClassVar[int] - x: float - y: float - def __init__(self, x: _Optional[float] = ..., y: _Optional[float] = ...) -> None: ... - -class PointToOf(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class AttentionTo(_message.Message): - __slots__ = ("side", "unum") - SIDE_FIELD_NUMBER: _ClassVar[int] - UNUM_FIELD_NUMBER: _ClassVar[int] - side: Side - unum: int - def __init__(self, side: _Optional[_Union[Side, str]] = ..., unum: _Optional[int] = ...) -> None: ... - -class AttentionToOf(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class AddText(_message.Message): - __slots__ = ("level", "message") - LEVEL_FIELD_NUMBER: _ClassVar[int] - MESSAGE_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - message: str - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., message: _Optional[str] = ...) -> None: ... - -class AddPoint(_message.Message): - __slots__ = ("level", "point", "color") - LEVEL_FIELD_NUMBER: _ClassVar[int] - POINT_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - point: RpcVector2D - color: str - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., color: _Optional[str] = ...) -> None: ... - -class AddLine(_message.Message): - __slots__ = ("level", "start", "end", "color") - LEVEL_FIELD_NUMBER: _ClassVar[int] - START_FIELD_NUMBER: _ClassVar[int] - END_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - start: RpcVector2D - end: RpcVector2D - color: str - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., start: _Optional[_Union[RpcVector2D, _Mapping]] = ..., end: _Optional[_Union[RpcVector2D, _Mapping]] = ..., color: _Optional[str] = ...) -> None: ... - -class AddArc(_message.Message): - __slots__ = ("level", "center", "radius", "start_angle", "span_angel", "color") - LEVEL_FIELD_NUMBER: _ClassVar[int] - CENTER_FIELD_NUMBER: _ClassVar[int] - RADIUS_FIELD_NUMBER: _ClassVar[int] - START_ANGLE_FIELD_NUMBER: _ClassVar[int] - SPAN_ANGEL_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - center: RpcVector2D - radius: float - start_angle: float - span_angel: float - color: str - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., center: _Optional[_Union[RpcVector2D, _Mapping]] = ..., radius: _Optional[float] = ..., start_angle: _Optional[float] = ..., span_angel: _Optional[float] = ..., color: _Optional[str] = ...) -> None: ... - -class AddCircle(_message.Message): - __slots__ = ("level", "center", "radius", "color", "fill") - LEVEL_FIELD_NUMBER: _ClassVar[int] - CENTER_FIELD_NUMBER: _ClassVar[int] - RADIUS_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - FILL_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - center: RpcVector2D - radius: float - color: str - fill: bool - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., center: _Optional[_Union[RpcVector2D, _Mapping]] = ..., radius: _Optional[float] = ..., color: _Optional[str] = ..., fill: bool = ...) -> None: ... - -class AddTriangle(_message.Message): - __slots__ = ("level", "point1", "point2", "point3", "color", "fill") - LEVEL_FIELD_NUMBER: _ClassVar[int] - POINT1_FIELD_NUMBER: _ClassVar[int] - POINT2_FIELD_NUMBER: _ClassVar[int] - POINT3_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - FILL_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - point1: RpcVector2D - point2: RpcVector2D - point3: RpcVector2D - color: str - fill: bool - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., point1: _Optional[_Union[RpcVector2D, _Mapping]] = ..., point2: _Optional[_Union[RpcVector2D, _Mapping]] = ..., point3: _Optional[_Union[RpcVector2D, _Mapping]] = ..., color: _Optional[str] = ..., fill: bool = ...) -> None: ... - -class AddRectangle(_message.Message): - __slots__ = ("level", "left", "top", "length", "width", "color", "fill") - LEVEL_FIELD_NUMBER: _ClassVar[int] - LEFT_FIELD_NUMBER: _ClassVar[int] - TOP_FIELD_NUMBER: _ClassVar[int] - LENGTH_FIELD_NUMBER: _ClassVar[int] - WIDTH_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - FILL_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - left: float - top: float - length: float - width: float - color: str - fill: bool - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., left: _Optional[float] = ..., top: _Optional[float] = ..., length: _Optional[float] = ..., width: _Optional[float] = ..., color: _Optional[str] = ..., fill: bool = ...) -> None: ... - -class AddSector(_message.Message): - __slots__ = ("level", "center", "min_radius", "max_radius", "start_angle", "span_angel", "color", "fill") - LEVEL_FIELD_NUMBER: _ClassVar[int] - CENTER_FIELD_NUMBER: _ClassVar[int] - MIN_RADIUS_FIELD_NUMBER: _ClassVar[int] - MAX_RADIUS_FIELD_NUMBER: _ClassVar[int] - START_ANGLE_FIELD_NUMBER: _ClassVar[int] - SPAN_ANGEL_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - FILL_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - center: RpcVector2D - min_radius: float - max_radius: float - start_angle: float - span_angel: float - color: str - fill: bool - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., center: _Optional[_Union[RpcVector2D, _Mapping]] = ..., min_radius: _Optional[float] = ..., max_radius: _Optional[float] = ..., start_angle: _Optional[float] = ..., span_angel: _Optional[float] = ..., color: _Optional[str] = ..., fill: bool = ...) -> None: ... - -class AddMessage(_message.Message): - __slots__ = ("level", "position", "message", "color") - LEVEL_FIELD_NUMBER: _ClassVar[int] - POSITION_FIELD_NUMBER: _ClassVar[int] - MESSAGE_FIELD_NUMBER: _ClassVar[int] - COLOR_FIELD_NUMBER: _ClassVar[int] - level: LoggerLevel - position: RpcVector2D - message: str - color: str - def __init__(self, level: _Optional[_Union[LoggerLevel, str]] = ..., position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., message: _Optional[str] = ..., color: _Optional[str] = ...) -> None: ... - -class Log(_message.Message): - __slots__ = ("add_text", "add_point", "add_line", "add_arc", "add_circle", "add_triangle", "add_rectangle", "add_sector", "add_message") - ADD_TEXT_FIELD_NUMBER: _ClassVar[int] - ADD_POINT_FIELD_NUMBER: _ClassVar[int] - ADD_LINE_FIELD_NUMBER: _ClassVar[int] - ADD_ARC_FIELD_NUMBER: _ClassVar[int] - ADD_CIRCLE_FIELD_NUMBER: _ClassVar[int] - ADD_TRIANGLE_FIELD_NUMBER: _ClassVar[int] - ADD_RECTANGLE_FIELD_NUMBER: _ClassVar[int] - ADD_SECTOR_FIELD_NUMBER: _ClassVar[int] - ADD_MESSAGE_FIELD_NUMBER: _ClassVar[int] - add_text: AddText - add_point: AddPoint - add_line: AddLine - add_arc: AddArc - add_circle: AddCircle - add_triangle: AddTriangle - add_rectangle: AddRectangle - add_sector: AddSector - add_message: AddMessage - def __init__(self, add_text: _Optional[_Union[AddText, _Mapping]] = ..., add_point: _Optional[_Union[AddPoint, _Mapping]] = ..., add_line: _Optional[_Union[AddLine, _Mapping]] = ..., add_arc: _Optional[_Union[AddArc, _Mapping]] = ..., add_circle: _Optional[_Union[AddCircle, _Mapping]] = ..., add_triangle: _Optional[_Union[AddTriangle, _Mapping]] = ..., add_rectangle: _Optional[_Union[AddRectangle, _Mapping]] = ..., add_sector: _Optional[_Union[AddSector, _Mapping]] = ..., add_message: _Optional[_Union[AddMessage, _Mapping]] = ...) -> None: ... - -class DebugClient(_message.Message): - __slots__ = ("message",) - MESSAGE_FIELD_NUMBER: _ClassVar[int] - message: str - def __init__(self, message: _Optional[str] = ...) -> None: ... - -class Body_GoToPoint(_message.Message): - __slots__ = ("target_point", "distance_threshold", "max_dash_power") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - DISTANCE_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - MAX_DASH_POWER_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - distance_threshold: float - max_dash_power: float - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., distance_threshold: _Optional[float] = ..., max_dash_power: _Optional[float] = ...) -> None: ... - -class Body_SmartKick(_message.Message): - __slots__ = ("target_point", "first_speed", "first_speed_threshold", "max_steps") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - FIRST_SPEED_FIELD_NUMBER: _ClassVar[int] - FIRST_SPEED_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - MAX_STEPS_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - first_speed: float - first_speed_threshold: float - max_steps: int - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., first_speed: _Optional[float] = ..., first_speed_threshold: _Optional[float] = ..., max_steps: _Optional[int] = ...) -> None: ... - -class Bhv_BeforeKickOff(_message.Message): - __slots__ = ("point",) - POINT_FIELD_NUMBER: _ClassVar[int] - point: RpcVector2D - def __init__(self, point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class Bhv_BodyNeckToBall(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Bhv_BodyNeckToPoint(_message.Message): - __slots__ = ("point",) - POINT_FIELD_NUMBER: _ClassVar[int] - point: RpcVector2D - def __init__(self, point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class Bhv_Emergency(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Bhv_GoToPointLookBall(_message.Message): - __slots__ = ("target_point", "distance_threshold", "max_dash_power") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - DISTANCE_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - MAX_DASH_POWER_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - distance_threshold: float - max_dash_power: float - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., distance_threshold: _Optional[float] = ..., max_dash_power: _Optional[float] = ...) -> None: ... - -class Bhv_NeckBodyToBall(_message.Message): - __slots__ = ("angle_buf",) - ANGLE_BUF_FIELD_NUMBER: _ClassVar[int] - angle_buf: float - def __init__(self, angle_buf: _Optional[float] = ...) -> None: ... - -class Bhv_NeckBodyToPoint(_message.Message): - __slots__ = ("point", "angle_buf") - POINT_FIELD_NUMBER: _ClassVar[int] - ANGLE_BUF_FIELD_NUMBER: _ClassVar[int] - point: RpcVector2D - angle_buf: float - def __init__(self, point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., angle_buf: _Optional[float] = ...) -> None: ... - -class Bhv_ScanField(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Body_AdvanceBall(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Body_ClearBall(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Body_Dribble(_message.Message): - __slots__ = ("target_point", "distance_threshold", "dash_power", "dash_count", "dodge") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - DISTANCE_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_FIELD_NUMBER: _ClassVar[int] - DASH_COUNT_FIELD_NUMBER: _ClassVar[int] - DODGE_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - distance_threshold: float - dash_power: float - dash_count: int - dodge: bool - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., distance_threshold: _Optional[float] = ..., dash_power: _Optional[float] = ..., dash_count: _Optional[int] = ..., dodge: bool = ...) -> None: ... - -class Body_GoToPointDodge(_message.Message): - __slots__ = ("target_point", "dash_power") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - dash_power: float - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., dash_power: _Optional[float] = ...) -> None: ... - -class Body_HoldBall(_message.Message): - __slots__ = ("do_turn", "turn_target_point", "kick_target_point") - DO_TURN_FIELD_NUMBER: _ClassVar[int] - TURN_TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - KICK_TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - do_turn: bool - turn_target_point: RpcVector2D - kick_target_point: RpcVector2D - def __init__(self, do_turn: bool = ..., turn_target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., kick_target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class Body_Intercept(_message.Message): - __slots__ = ("save_recovery", "face_point") - SAVE_RECOVERY_FIELD_NUMBER: _ClassVar[int] - FACE_POINT_FIELD_NUMBER: _ClassVar[int] - save_recovery: bool - face_point: RpcVector2D - def __init__(self, save_recovery: bool = ..., face_point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class Body_KickOneStep(_message.Message): - __slots__ = ("target_point", "first_speed", "force_mode") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - FIRST_SPEED_FIELD_NUMBER: _ClassVar[int] - FORCE_MODE_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - first_speed: float - force_mode: bool - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., first_speed: _Optional[float] = ..., force_mode: bool = ...) -> None: ... - -class Body_StopBall(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Body_StopDash(_message.Message): - __slots__ = ("save_recovery",) - SAVE_RECOVERY_FIELD_NUMBER: _ClassVar[int] - save_recovery: bool - def __init__(self, save_recovery: bool = ...) -> None: ... - -class Body_TackleToPoint(_message.Message): - __slots__ = ("target_point", "min_probability", "min_speed") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - MIN_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - MIN_SPEED_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - min_probability: float - min_speed: float - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., min_probability: _Optional[float] = ..., min_speed: _Optional[float] = ...) -> None: ... - -class Body_TurnToAngle(_message.Message): - __slots__ = ("angle",) - ANGLE_FIELD_NUMBER: _ClassVar[int] - angle: float - def __init__(self, angle: _Optional[float] = ...) -> None: ... - -class Body_TurnToBall(_message.Message): - __slots__ = ("cycle",) - CYCLE_FIELD_NUMBER: _ClassVar[int] - cycle: int - def __init__(self, cycle: _Optional[int] = ...) -> None: ... - -class Body_TurnToPoint(_message.Message): - __slots__ = ("target_point", "cycle") - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - CYCLE_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - cycle: int - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., cycle: _Optional[int] = ...) -> None: ... - -class Focus_MoveToPoint(_message.Message): - __slots__ = ("target_point",) - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class Focus_Reset(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Neck_ScanField(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Neck_ScanPlayers(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Neck_TurnToBallAndPlayer(_message.Message): - __slots__ = ("side", "uniform_number", "count_threshold") - SIDE_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - COUNT_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - side: Side - uniform_number: int - count_threshold: int - def __init__(self, side: _Optional[_Union[Side, str]] = ..., uniform_number: _Optional[int] = ..., count_threshold: _Optional[int] = ...) -> None: ... - -class Neck_TurnToBallOrScan(_message.Message): - __slots__ = ("count_threshold",) - COUNT_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - count_threshold: int - def __init__(self, count_threshold: _Optional[int] = ...) -> None: ... - -class Neck_TurnToBall(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Neck_TurnToGoalieOrScan(_message.Message): - __slots__ = ("count_threshold",) - COUNT_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - count_threshold: int - def __init__(self, count_threshold: _Optional[int] = ...) -> None: ... - -class Neck_TurnToLowConfTeammate(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class Neck_TurnToPlayerOrScan(_message.Message): - __slots__ = ("side", "uniform_number", "count_threshold") - SIDE_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - COUNT_THRESHOLD_FIELD_NUMBER: _ClassVar[int] - side: Side - uniform_number: int - count_threshold: int - def __init__(self, side: _Optional[_Union[Side, str]] = ..., uniform_number: _Optional[int] = ..., count_threshold: _Optional[int] = ...) -> None: ... - -class Neck_TurnToPoint(_message.Message): - __slots__ = ("target_point",) - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - target_point: RpcVector2D - def __init__(self, target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class Neck_TurnToRelative(_message.Message): - __slots__ = ("angle",) - ANGLE_FIELD_NUMBER: _ClassVar[int] - angle: float - def __init__(self, angle: _Optional[float] = ...) -> None: ... - -class Neck_OffensiveInterceptNeck(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class View_ChangeWidth(_message.Message): - __slots__ = ("view_width",) - VIEW_WIDTH_FIELD_NUMBER: _ClassVar[int] - view_width: ViewWidth - def __init__(self, view_width: _Optional[_Union[ViewWidth, str]] = ...) -> None: ... - -class View_Normal(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class View_Synch(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class View_Wide(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosGoalie(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosGoalieMove(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosGoalieKick(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosShoot(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosOffensivePlanner(_message.Message): - __slots__ = ("direct_pass", "lead_pass", "through_pass", "short_dribble", "long_dribble", "cross", "simple_pass", "simple_dribble", "simple_shoot", "server_side_decision", "max_depth", "max_nodes", "evaluation") - DIRECT_PASS_FIELD_NUMBER: _ClassVar[int] - LEAD_PASS_FIELD_NUMBER: _ClassVar[int] - THROUGH_PASS_FIELD_NUMBER: _ClassVar[int] - SHORT_DRIBBLE_FIELD_NUMBER: _ClassVar[int] - LONG_DRIBBLE_FIELD_NUMBER: _ClassVar[int] - CROSS_FIELD_NUMBER: _ClassVar[int] - SIMPLE_PASS_FIELD_NUMBER: _ClassVar[int] - SIMPLE_DRIBBLE_FIELD_NUMBER: _ClassVar[int] - SIMPLE_SHOOT_FIELD_NUMBER: _ClassVar[int] - SERVER_SIDE_DECISION_FIELD_NUMBER: _ClassVar[int] - MAX_DEPTH_FIELD_NUMBER: _ClassVar[int] - MAX_NODES_FIELD_NUMBER: _ClassVar[int] - EVALUATION_FIELD_NUMBER: _ClassVar[int] - direct_pass: bool - lead_pass: bool - through_pass: bool - short_dribble: bool - long_dribble: bool - cross: bool - simple_pass: bool - simple_dribble: bool - simple_shoot: bool - server_side_decision: bool - max_depth: int - max_nodes: int - evaluation: PlannerEvaluation - def __init__(self, direct_pass: bool = ..., lead_pass: bool = ..., through_pass: bool = ..., short_dribble: bool = ..., long_dribble: bool = ..., cross: bool = ..., simple_pass: bool = ..., simple_dribble: bool = ..., simple_shoot: bool = ..., server_side_decision: bool = ..., max_depth: _Optional[int] = ..., max_nodes: _Optional[int] = ..., evaluation: _Optional[_Union[PlannerEvaluation, _Mapping]] = ...) -> None: ... - -class OpponentEffector(_message.Message): - __slots__ = ("negetive_effect_by_distance", "negetive_effect_by_distance_based_on_first_layer", "negetive_effect_by_reach_steps", "negetive_effect_by_reach_steps_based_on_first_layer") - NEGETIVE_EFFECT_BY_DISTANCE_FIELD_NUMBER: _ClassVar[int] - NEGETIVE_EFFECT_BY_DISTANCE_BASED_ON_FIRST_LAYER_FIELD_NUMBER: _ClassVar[int] - NEGETIVE_EFFECT_BY_REACH_STEPS_FIELD_NUMBER: _ClassVar[int] - NEGETIVE_EFFECT_BY_REACH_STEPS_BASED_ON_FIRST_LAYER_FIELD_NUMBER: _ClassVar[int] - negetive_effect_by_distance: _containers.RepeatedScalarFieldContainer[float] - negetive_effect_by_distance_based_on_first_layer: bool - negetive_effect_by_reach_steps: _containers.RepeatedScalarFieldContainer[float] - negetive_effect_by_reach_steps_based_on_first_layer: bool - def __init__(self, negetive_effect_by_distance: _Optional[_Iterable[float]] = ..., negetive_effect_by_distance_based_on_first_layer: bool = ..., negetive_effect_by_reach_steps: _Optional[_Iterable[float]] = ..., negetive_effect_by_reach_steps_based_on_first_layer: bool = ...) -> None: ... - -class ActionTypeEffector(_message.Message): - __slots__ = ("direct_pass", "lead_pass", "through_pass", "short_dribble", "long_dribble", "cross", "hold") - DIRECT_PASS_FIELD_NUMBER: _ClassVar[int] - LEAD_PASS_FIELD_NUMBER: _ClassVar[int] - THROUGH_PASS_FIELD_NUMBER: _ClassVar[int] - SHORT_DRIBBLE_FIELD_NUMBER: _ClassVar[int] - LONG_DRIBBLE_FIELD_NUMBER: _ClassVar[int] - CROSS_FIELD_NUMBER: _ClassVar[int] - HOLD_FIELD_NUMBER: _ClassVar[int] - direct_pass: float - lead_pass: float - through_pass: float - short_dribble: float - long_dribble: float - cross: float - hold: float - def __init__(self, direct_pass: _Optional[float] = ..., lead_pass: _Optional[float] = ..., through_pass: _Optional[float] = ..., short_dribble: _Optional[float] = ..., long_dribble: _Optional[float] = ..., cross: _Optional[float] = ..., hold: _Optional[float] = ...) -> None: ... - -class TeammateEffector(_message.Message): - __slots__ = ("coefficients", "apply_based_on_first_layer") - class CoefficientsEntry(_message.Message): - __slots__ = ("key", "value") - KEY_FIELD_NUMBER: _ClassVar[int] - VALUE_FIELD_NUMBER: _ClassVar[int] - key: int - value: float - def __init__(self, key: _Optional[int] = ..., value: _Optional[float] = ...) -> None: ... - COEFFICIENTS_FIELD_NUMBER: _ClassVar[int] - APPLY_BASED_ON_FIRST_LAYER_FIELD_NUMBER: _ClassVar[int] - coefficients: _containers.ScalarMap[int, float] - apply_based_on_first_layer: bool - def __init__(self, coefficients: _Optional[_Mapping[int, float]] = ..., apply_based_on_first_layer: bool = ...) -> None: ... - -class PlannerEvaluationEffector(_message.Message): - __slots__ = ("opponent_effector", "action_type_effector", "teammate_effector") - OPPONENT_EFFECTOR_FIELD_NUMBER: _ClassVar[int] - ACTION_TYPE_EFFECTOR_FIELD_NUMBER: _ClassVar[int] - TEAMMATE_EFFECTOR_FIELD_NUMBER: _ClassVar[int] - opponent_effector: OpponentEffector - action_type_effector: ActionTypeEffector - teammate_effector: TeammateEffector - def __init__(self, opponent_effector: _Optional[_Union[OpponentEffector, _Mapping]] = ..., action_type_effector: _Optional[_Union[ActionTypeEffector, _Mapping]] = ..., teammate_effector: _Optional[_Union[TeammateEffector, _Mapping]] = ...) -> None: ... - -class HeliosFieldEvaluator(_message.Message): - __slots__ = ("x_coefficient", "ball_dist_to_goal_coefficient", "effective_max_ball_dist_to_goal") - X_COEFFICIENT_FIELD_NUMBER: _ClassVar[int] - BALL_DIST_TO_GOAL_COEFFICIENT_FIELD_NUMBER: _ClassVar[int] - EFFECTIVE_MAX_BALL_DIST_TO_GOAL_FIELD_NUMBER: _ClassVar[int] - x_coefficient: float - ball_dist_to_goal_coefficient: float - effective_max_ball_dist_to_goal: float - def __init__(self, x_coefficient: _Optional[float] = ..., ball_dist_to_goal_coefficient: _Optional[float] = ..., effective_max_ball_dist_to_goal: _Optional[float] = ...) -> None: ... - -class MatrixFieldEvaluatorY(_message.Message): - __slots__ = ("evals",) - EVALS_FIELD_NUMBER: _ClassVar[int] - evals: _containers.RepeatedScalarFieldContainer[float] - def __init__(self, evals: _Optional[_Iterable[float]] = ...) -> None: ... - -class MatrixFieldEvaluator(_message.Message): - __slots__ = ("evals",) - EVALS_FIELD_NUMBER: _ClassVar[int] - evals: _containers.RepeatedCompositeFieldContainer[MatrixFieldEvaluatorY] - def __init__(self, evals: _Optional[_Iterable[_Union[MatrixFieldEvaluatorY, _Mapping]]] = ...) -> None: ... - -class PlannerFieldEvaluator(_message.Message): - __slots__ = ("helios_field_evaluator", "matrix_field_evaluator") - HELIOS_FIELD_EVALUATOR_FIELD_NUMBER: _ClassVar[int] - MATRIX_FIELD_EVALUATOR_FIELD_NUMBER: _ClassVar[int] - helios_field_evaluator: HeliosFieldEvaluator - matrix_field_evaluator: MatrixFieldEvaluator - def __init__(self, helios_field_evaluator: _Optional[_Union[HeliosFieldEvaluator, _Mapping]] = ..., matrix_field_evaluator: _Optional[_Union[MatrixFieldEvaluator, _Mapping]] = ...) -> None: ... - -class PlannerEvaluation(_message.Message): - __slots__ = ("effectors", "field_evaluators") - EFFECTORS_FIELD_NUMBER: _ClassVar[int] - FIELD_EVALUATORS_FIELD_NUMBER: _ClassVar[int] - effectors: PlannerEvaluationEffector - field_evaluators: PlannerFieldEvaluator - def __init__(self, effectors: _Optional[_Union[PlannerEvaluationEffector, _Mapping]] = ..., field_evaluators: _Optional[_Union[PlannerFieldEvaluator, _Mapping]] = ...) -> None: ... - -class HeliosBasicOffensive(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosBasicMove(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosSetPlay(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosPenalty(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosCommunicaion(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class HeliosBasicTackle(_message.Message): - __slots__ = ("min_prob", "body_thr") - MIN_PROB_FIELD_NUMBER: _ClassVar[int] - BODY_THR_FIELD_NUMBER: _ClassVar[int] - min_prob: float - body_thr: float - def __init__(self, min_prob: _Optional[float] = ..., body_thr: _Optional[float] = ...) -> None: ... - -class bhv_doForceKick(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class bhv_doHeardPassRecieve(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class PlayerAction(_message.Message): - __slots__ = ("dash", "turn", "kick", "tackle", "catch", "move", "turn_neck", "change_view", "say", "point_to", "point_to_of", "attention_to", "attention_to_of", "log", "debug_client", "body_go_to_point", "body_smart_kick", "bhv_before_kick_off", "bhv_body_neck_to_ball", "bhv_body_neck_to_point", "bhv_emergency", "bhv_go_to_point_look_ball", "bhv_neck_body_to_ball", "bhv_neck_body_to_point", "bhv_scan_field", "body_advance_ball", "body_clear_ball", "body_dribble", "body_go_to_point_dodge", "body_hold_ball", "body_intercept", "body_kick_one_step", "body_stop_ball", "body_stop_dash", "body_tackle_to_point", "body_turn_to_angle", "body_turn_to_ball", "body_turn_to_point", "focus_move_to_point", "focus_reset", "neck_scan_field", "neck_scan_players", "neck_turn_to_ball_and_player", "neck_turn_to_ball_or_scan", "neck_turn_to_ball", "neck_turn_to_goalie_or_scan", "neck_turn_to_low_conf_teammate", "neck_turn_to_player_or_scan", "neck_turn_to_point", "neck_turn_to_relative", "view_change_width", "view_normal", "view_synch", "view_wide", "helios_goalie", "helios_goalie_move", "helios_goalie_kick", "helios_shoot", "helios_offensive_planner", "helios_basic_offensive", "helios_basic_move", "helios_set_play", "helios_penalty", "helios_communication", "bhv_do_force_kick", "bhv_do_heard_pass_recieve", "helios_basic_tackle", "neck_offensive_intercept_neck") - DASH_FIELD_NUMBER: _ClassVar[int] - TURN_FIELD_NUMBER: _ClassVar[int] - KICK_FIELD_NUMBER: _ClassVar[int] - TACKLE_FIELD_NUMBER: _ClassVar[int] - CATCH_FIELD_NUMBER: _ClassVar[int] - MOVE_FIELD_NUMBER: _ClassVar[int] - TURN_NECK_FIELD_NUMBER: _ClassVar[int] - CHANGE_VIEW_FIELD_NUMBER: _ClassVar[int] - SAY_FIELD_NUMBER: _ClassVar[int] - POINT_TO_FIELD_NUMBER: _ClassVar[int] - POINT_TO_OF_FIELD_NUMBER: _ClassVar[int] - ATTENTION_TO_FIELD_NUMBER: _ClassVar[int] - ATTENTION_TO_OF_FIELD_NUMBER: _ClassVar[int] - LOG_FIELD_NUMBER: _ClassVar[int] - DEBUG_CLIENT_FIELD_NUMBER: _ClassVar[int] - BODY_GO_TO_POINT_FIELD_NUMBER: _ClassVar[int] - BODY_SMART_KICK_FIELD_NUMBER: _ClassVar[int] - BHV_BEFORE_KICK_OFF_FIELD_NUMBER: _ClassVar[int] - BHV_BODY_NECK_TO_BALL_FIELD_NUMBER: _ClassVar[int] - BHV_BODY_NECK_TO_POINT_FIELD_NUMBER: _ClassVar[int] - BHV_EMERGENCY_FIELD_NUMBER: _ClassVar[int] - BHV_GO_TO_POINT_LOOK_BALL_FIELD_NUMBER: _ClassVar[int] - BHV_NECK_BODY_TO_BALL_FIELD_NUMBER: _ClassVar[int] - BHV_NECK_BODY_TO_POINT_FIELD_NUMBER: _ClassVar[int] - BHV_SCAN_FIELD_FIELD_NUMBER: _ClassVar[int] - BODY_ADVANCE_BALL_FIELD_NUMBER: _ClassVar[int] - BODY_CLEAR_BALL_FIELD_NUMBER: _ClassVar[int] - BODY_DRIBBLE_FIELD_NUMBER: _ClassVar[int] - BODY_GO_TO_POINT_DODGE_FIELD_NUMBER: _ClassVar[int] - BODY_HOLD_BALL_FIELD_NUMBER: _ClassVar[int] - BODY_INTERCEPT_FIELD_NUMBER: _ClassVar[int] - BODY_KICK_ONE_STEP_FIELD_NUMBER: _ClassVar[int] - BODY_STOP_BALL_FIELD_NUMBER: _ClassVar[int] - BODY_STOP_DASH_FIELD_NUMBER: _ClassVar[int] - BODY_TACKLE_TO_POINT_FIELD_NUMBER: _ClassVar[int] - BODY_TURN_TO_ANGLE_FIELD_NUMBER: _ClassVar[int] - BODY_TURN_TO_BALL_FIELD_NUMBER: _ClassVar[int] - BODY_TURN_TO_POINT_FIELD_NUMBER: _ClassVar[int] - FOCUS_MOVE_TO_POINT_FIELD_NUMBER: _ClassVar[int] - FOCUS_RESET_FIELD_NUMBER: _ClassVar[int] - NECK_SCAN_FIELD_FIELD_NUMBER: _ClassVar[int] - NECK_SCAN_PLAYERS_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_BALL_AND_PLAYER_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_BALL_OR_SCAN_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_BALL_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_GOALIE_OR_SCAN_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_LOW_CONF_TEAMMATE_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_PLAYER_OR_SCAN_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_POINT_FIELD_NUMBER: _ClassVar[int] - NECK_TURN_TO_RELATIVE_FIELD_NUMBER: _ClassVar[int] - VIEW_CHANGE_WIDTH_FIELD_NUMBER: _ClassVar[int] - VIEW_NORMAL_FIELD_NUMBER: _ClassVar[int] - VIEW_SYNCH_FIELD_NUMBER: _ClassVar[int] - VIEW_WIDE_FIELD_NUMBER: _ClassVar[int] - HELIOS_GOALIE_FIELD_NUMBER: _ClassVar[int] - HELIOS_GOALIE_MOVE_FIELD_NUMBER: _ClassVar[int] - HELIOS_GOALIE_KICK_FIELD_NUMBER: _ClassVar[int] - HELIOS_SHOOT_FIELD_NUMBER: _ClassVar[int] - HELIOS_OFFENSIVE_PLANNER_FIELD_NUMBER: _ClassVar[int] - HELIOS_BASIC_OFFENSIVE_FIELD_NUMBER: _ClassVar[int] - HELIOS_BASIC_MOVE_FIELD_NUMBER: _ClassVar[int] - HELIOS_SET_PLAY_FIELD_NUMBER: _ClassVar[int] - HELIOS_PENALTY_FIELD_NUMBER: _ClassVar[int] - HELIOS_COMMUNICATION_FIELD_NUMBER: _ClassVar[int] - BHV_DO_FORCE_KICK_FIELD_NUMBER: _ClassVar[int] - BHV_DO_HEARD_PASS_RECIEVE_FIELD_NUMBER: _ClassVar[int] - HELIOS_BASIC_TACKLE_FIELD_NUMBER: _ClassVar[int] - NECK_OFFENSIVE_INTERCEPT_NECK_FIELD_NUMBER: _ClassVar[int] - dash: Dash - turn: Turn - kick: Kick - tackle: Tackle - catch: Catch - move: Move - turn_neck: TurnNeck - change_view: ChangeView - say: Say - point_to: PointTo - point_to_of: PointToOf - attention_to: AttentionTo - attention_to_of: AttentionToOf - log: Log - debug_client: DebugClient - body_go_to_point: Body_GoToPoint - body_smart_kick: Body_SmartKick - bhv_before_kick_off: Bhv_BeforeKickOff - bhv_body_neck_to_ball: Bhv_BodyNeckToBall - bhv_body_neck_to_point: Bhv_BodyNeckToPoint - bhv_emergency: Bhv_Emergency - bhv_go_to_point_look_ball: Bhv_GoToPointLookBall - bhv_neck_body_to_ball: Bhv_NeckBodyToBall - bhv_neck_body_to_point: Bhv_NeckBodyToPoint - bhv_scan_field: Bhv_ScanField - body_advance_ball: Body_AdvanceBall - body_clear_ball: Body_ClearBall - body_dribble: Body_Dribble - body_go_to_point_dodge: Body_GoToPointDodge - body_hold_ball: Body_HoldBall - body_intercept: Body_Intercept - body_kick_one_step: Body_KickOneStep - body_stop_ball: Body_StopBall - body_stop_dash: Body_StopDash - body_tackle_to_point: Body_TackleToPoint - body_turn_to_angle: Body_TurnToAngle - body_turn_to_ball: Body_TurnToBall - body_turn_to_point: Body_TurnToPoint - focus_move_to_point: Focus_MoveToPoint - focus_reset: Focus_Reset - neck_scan_field: Neck_ScanField - neck_scan_players: Neck_ScanPlayers - neck_turn_to_ball_and_player: Neck_TurnToBallAndPlayer - neck_turn_to_ball_or_scan: Neck_TurnToBallOrScan - neck_turn_to_ball: Neck_TurnToBall - neck_turn_to_goalie_or_scan: Neck_TurnToGoalieOrScan - neck_turn_to_low_conf_teammate: Neck_TurnToLowConfTeammate - neck_turn_to_player_or_scan: Neck_TurnToPlayerOrScan - neck_turn_to_point: Neck_TurnToPoint - neck_turn_to_relative: Neck_TurnToRelative - view_change_width: View_ChangeWidth - view_normal: View_Normal - view_synch: View_Synch - view_wide: View_Wide - helios_goalie: HeliosGoalie - helios_goalie_move: HeliosGoalieMove - helios_goalie_kick: HeliosGoalieKick - helios_shoot: HeliosShoot - helios_offensive_planner: HeliosOffensivePlanner - helios_basic_offensive: HeliosBasicOffensive - helios_basic_move: HeliosBasicMove - helios_set_play: HeliosSetPlay - helios_penalty: HeliosPenalty - helios_communication: HeliosCommunicaion - bhv_do_force_kick: bhv_doForceKick - bhv_do_heard_pass_recieve: bhv_doHeardPassRecieve - helios_basic_tackle: HeliosBasicTackle - neck_offensive_intercept_neck: Neck_OffensiveInterceptNeck - def __init__(self, dash: _Optional[_Union[Dash, _Mapping]] = ..., turn: _Optional[_Union[Turn, _Mapping]] = ..., kick: _Optional[_Union[Kick, _Mapping]] = ..., tackle: _Optional[_Union[Tackle, _Mapping]] = ..., catch: _Optional[_Union[Catch, _Mapping]] = ..., move: _Optional[_Union[Move, _Mapping]] = ..., turn_neck: _Optional[_Union[TurnNeck, _Mapping]] = ..., change_view: _Optional[_Union[ChangeView, _Mapping]] = ..., say: _Optional[_Union[Say, _Mapping]] = ..., point_to: _Optional[_Union[PointTo, _Mapping]] = ..., point_to_of: _Optional[_Union[PointToOf, _Mapping]] = ..., attention_to: _Optional[_Union[AttentionTo, _Mapping]] = ..., attention_to_of: _Optional[_Union[AttentionToOf, _Mapping]] = ..., log: _Optional[_Union[Log, _Mapping]] = ..., debug_client: _Optional[_Union[DebugClient, _Mapping]] = ..., body_go_to_point: _Optional[_Union[Body_GoToPoint, _Mapping]] = ..., body_smart_kick: _Optional[_Union[Body_SmartKick, _Mapping]] = ..., bhv_before_kick_off: _Optional[_Union[Bhv_BeforeKickOff, _Mapping]] = ..., bhv_body_neck_to_ball: _Optional[_Union[Bhv_BodyNeckToBall, _Mapping]] = ..., bhv_body_neck_to_point: _Optional[_Union[Bhv_BodyNeckToPoint, _Mapping]] = ..., bhv_emergency: _Optional[_Union[Bhv_Emergency, _Mapping]] = ..., bhv_go_to_point_look_ball: _Optional[_Union[Bhv_GoToPointLookBall, _Mapping]] = ..., bhv_neck_body_to_ball: _Optional[_Union[Bhv_NeckBodyToBall, _Mapping]] = ..., bhv_neck_body_to_point: _Optional[_Union[Bhv_NeckBodyToPoint, _Mapping]] = ..., bhv_scan_field: _Optional[_Union[Bhv_ScanField, _Mapping]] = ..., body_advance_ball: _Optional[_Union[Body_AdvanceBall, _Mapping]] = ..., body_clear_ball: _Optional[_Union[Body_ClearBall, _Mapping]] = ..., body_dribble: _Optional[_Union[Body_Dribble, _Mapping]] = ..., body_go_to_point_dodge: _Optional[_Union[Body_GoToPointDodge, _Mapping]] = ..., body_hold_ball: _Optional[_Union[Body_HoldBall, _Mapping]] = ..., body_intercept: _Optional[_Union[Body_Intercept, _Mapping]] = ..., body_kick_one_step: _Optional[_Union[Body_KickOneStep, _Mapping]] = ..., body_stop_ball: _Optional[_Union[Body_StopBall, _Mapping]] = ..., body_stop_dash: _Optional[_Union[Body_StopDash, _Mapping]] = ..., body_tackle_to_point: _Optional[_Union[Body_TackleToPoint, _Mapping]] = ..., body_turn_to_angle: _Optional[_Union[Body_TurnToAngle, _Mapping]] = ..., body_turn_to_ball: _Optional[_Union[Body_TurnToBall, _Mapping]] = ..., body_turn_to_point: _Optional[_Union[Body_TurnToPoint, _Mapping]] = ..., focus_move_to_point: _Optional[_Union[Focus_MoveToPoint, _Mapping]] = ..., focus_reset: _Optional[_Union[Focus_Reset, _Mapping]] = ..., neck_scan_field: _Optional[_Union[Neck_ScanField, _Mapping]] = ..., neck_scan_players: _Optional[_Union[Neck_ScanPlayers, _Mapping]] = ..., neck_turn_to_ball_and_player: _Optional[_Union[Neck_TurnToBallAndPlayer, _Mapping]] = ..., neck_turn_to_ball_or_scan: _Optional[_Union[Neck_TurnToBallOrScan, _Mapping]] = ..., neck_turn_to_ball: _Optional[_Union[Neck_TurnToBall, _Mapping]] = ..., neck_turn_to_goalie_or_scan: _Optional[_Union[Neck_TurnToGoalieOrScan, _Mapping]] = ..., neck_turn_to_low_conf_teammate: _Optional[_Union[Neck_TurnToLowConfTeammate, _Mapping]] = ..., neck_turn_to_player_or_scan: _Optional[_Union[Neck_TurnToPlayerOrScan, _Mapping]] = ..., neck_turn_to_point: _Optional[_Union[Neck_TurnToPoint, _Mapping]] = ..., neck_turn_to_relative: _Optional[_Union[Neck_TurnToRelative, _Mapping]] = ..., view_change_width: _Optional[_Union[View_ChangeWidth, _Mapping]] = ..., view_normal: _Optional[_Union[View_Normal, _Mapping]] = ..., view_synch: _Optional[_Union[View_Synch, _Mapping]] = ..., view_wide: _Optional[_Union[View_Wide, _Mapping]] = ..., helios_goalie: _Optional[_Union[HeliosGoalie, _Mapping]] = ..., helios_goalie_move: _Optional[_Union[HeliosGoalieMove, _Mapping]] = ..., helios_goalie_kick: _Optional[_Union[HeliosGoalieKick, _Mapping]] = ..., helios_shoot: _Optional[_Union[HeliosShoot, _Mapping]] = ..., helios_offensive_planner: _Optional[_Union[HeliosOffensivePlanner, _Mapping]] = ..., helios_basic_offensive: _Optional[_Union[HeliosBasicOffensive, _Mapping]] = ..., helios_basic_move: _Optional[_Union[HeliosBasicMove, _Mapping]] = ..., helios_set_play: _Optional[_Union[HeliosSetPlay, _Mapping]] = ..., helios_penalty: _Optional[_Union[HeliosPenalty, _Mapping]] = ..., helios_communication: _Optional[_Union[HeliosCommunicaion, _Mapping]] = ..., bhv_do_force_kick: _Optional[_Union[bhv_doForceKick, _Mapping]] = ..., bhv_do_heard_pass_recieve: _Optional[_Union[bhv_doHeardPassRecieve, _Mapping]] = ..., helios_basic_tackle: _Optional[_Union[HeliosBasicTackle, _Mapping]] = ..., neck_offensive_intercept_neck: _Optional[_Union[Neck_OffensiveInterceptNeck, _Mapping]] = ...) -> None: ... - -class PlayerActions(_message.Message): - __slots__ = ("actions", "ignore_preprocess", "ignore_doforcekick", "ignore_doHeardPassRecieve", "ignore_doIntention", "ignore_shootInPreprocess") - ACTIONS_FIELD_NUMBER: _ClassVar[int] - IGNORE_PREPROCESS_FIELD_NUMBER: _ClassVar[int] - IGNORE_DOFORCEKICK_FIELD_NUMBER: _ClassVar[int] - IGNORE_DOHEARDPASSRECIEVE_FIELD_NUMBER: _ClassVar[int] - IGNORE_DOINTENTION_FIELD_NUMBER: _ClassVar[int] - IGNORE_SHOOTINPREPROCESS_FIELD_NUMBER: _ClassVar[int] - actions: _containers.RepeatedCompositeFieldContainer[PlayerAction] - ignore_preprocess: bool - ignore_doforcekick: bool - ignore_doHeardPassRecieve: bool - ignore_doIntention: bool - ignore_shootInPreprocess: bool - def __init__(self, actions: _Optional[_Iterable[_Union[PlayerAction, _Mapping]]] = ..., ignore_preprocess: bool = ..., ignore_doforcekick: bool = ..., ignore_doHeardPassRecieve: bool = ..., ignore_doIntention: bool = ..., ignore_shootInPreprocess: bool = ...) -> None: ... - -class ChangePlayerType(_message.Message): - __slots__ = ("uniform_number", "type") - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - TYPE_FIELD_NUMBER: _ClassVar[int] - uniform_number: int - type: int - def __init__(self, uniform_number: _Optional[int] = ..., type: _Optional[int] = ...) -> None: ... - -class DoHeliosSubstitute(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class DoHeliosSayPlayerTypes(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class CoachAction(_message.Message): - __slots__ = ("change_player_types", "do_helios_substitute", "do_helios_say_player_types") - CHANGE_PLAYER_TYPES_FIELD_NUMBER: _ClassVar[int] - DO_HELIOS_SUBSTITUTE_FIELD_NUMBER: _ClassVar[int] - DO_HELIOS_SAY_PLAYER_TYPES_FIELD_NUMBER: _ClassVar[int] - change_player_types: ChangePlayerType - do_helios_substitute: DoHeliosSubstitute - do_helios_say_player_types: DoHeliosSayPlayerTypes - def __init__(self, change_player_types: _Optional[_Union[ChangePlayerType, _Mapping]] = ..., do_helios_substitute: _Optional[_Union[DoHeliosSubstitute, _Mapping]] = ..., do_helios_say_player_types: _Optional[_Union[DoHeliosSayPlayerTypes, _Mapping]] = ...) -> None: ... - -class CoachActions(_message.Message): - __slots__ = ("actions",) - ACTIONS_FIELD_NUMBER: _ClassVar[int] - actions: _containers.RepeatedCompositeFieldContainer[CoachAction] - def __init__(self, actions: _Optional[_Iterable[_Union[CoachAction, _Mapping]]] = ...) -> None: ... - -class DoKickOff(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class DoMoveBall(_message.Message): - __slots__ = ("position", "velocity") - POSITION_FIELD_NUMBER: _ClassVar[int] - VELOCITY_FIELD_NUMBER: _ClassVar[int] - position: RpcVector2D - velocity: RpcVector2D - def __init__(self, position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ...) -> None: ... - -class DoMovePlayer(_message.Message): - __slots__ = ("our_side", "uniform_number", "position", "body_direction") - OUR_SIDE_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - POSITION_FIELD_NUMBER: _ClassVar[int] - BODY_DIRECTION_FIELD_NUMBER: _ClassVar[int] - our_side: bool - uniform_number: int - position: RpcVector2D - body_direction: float - def __init__(self, our_side: bool = ..., uniform_number: _Optional[int] = ..., position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., body_direction: _Optional[float] = ...) -> None: ... - -class DoRecover(_message.Message): - __slots__ = () - def __init__(self) -> None: ... - -class DoChangeMode(_message.Message): - __slots__ = ("game_mode_type", "side") - GAME_MODE_TYPE_FIELD_NUMBER: _ClassVar[int] - SIDE_FIELD_NUMBER: _ClassVar[int] - game_mode_type: GameModeType - side: Side - def __init__(self, game_mode_type: _Optional[_Union[GameModeType, str]] = ..., side: _Optional[_Union[Side, str]] = ...) -> None: ... - -class DoChangePlayerType(_message.Message): - __slots__ = ("our_side", "uniform_number", "type") - OUR_SIDE_FIELD_NUMBER: _ClassVar[int] - UNIFORM_NUMBER_FIELD_NUMBER: _ClassVar[int] - TYPE_FIELD_NUMBER: _ClassVar[int] - our_side: bool - uniform_number: int - type: int - def __init__(self, our_side: bool = ..., uniform_number: _Optional[int] = ..., type: _Optional[int] = ...) -> None: ... - -class TrainerAction(_message.Message): - __slots__ = ("do_kick_off", "do_move_ball", "do_move_player", "do_recover", "do_change_mode", "do_change_player_type") - DO_KICK_OFF_FIELD_NUMBER: _ClassVar[int] - DO_MOVE_BALL_FIELD_NUMBER: _ClassVar[int] - DO_MOVE_PLAYER_FIELD_NUMBER: _ClassVar[int] - DO_RECOVER_FIELD_NUMBER: _ClassVar[int] - DO_CHANGE_MODE_FIELD_NUMBER: _ClassVar[int] - DO_CHANGE_PLAYER_TYPE_FIELD_NUMBER: _ClassVar[int] - do_kick_off: DoKickOff - do_move_ball: DoMoveBall - do_move_player: DoMovePlayer - do_recover: DoRecover - do_change_mode: DoChangeMode - do_change_player_type: DoChangePlayerType - def __init__(self, do_kick_off: _Optional[_Union[DoKickOff, _Mapping]] = ..., do_move_ball: _Optional[_Union[DoMoveBall, _Mapping]] = ..., do_move_player: _Optional[_Union[DoMovePlayer, _Mapping]] = ..., do_recover: _Optional[_Union[DoRecover, _Mapping]] = ..., do_change_mode: _Optional[_Union[DoChangeMode, _Mapping]] = ..., do_change_player_type: _Optional[_Union[DoChangePlayerType, _Mapping]] = ...) -> None: ... - -class TrainerActions(_message.Message): - __slots__ = ("actions",) - ACTIONS_FIELD_NUMBER: _ClassVar[int] - actions: _containers.RepeatedCompositeFieldContainer[TrainerAction] - def __init__(self, actions: _Optional[_Iterable[_Union[TrainerAction, _Mapping]]] = ...) -> None: ... - -class ServerParam(_message.Message): - __slots__ = ("register_response", "inertia_moment", "player_size", "player_decay", "player_rand", "player_weight", "player_speed_max", "player_accel_max", "stamina_max", "stamina_inc_max", "recover_init", "recover_dec_thr", "recover_min", "recover_dec", "effort_init", "effort_dec_thr", "effort_min", "effort_dec", "effort_inc_thr", "effort_inc", "kick_rand", "team_actuator_noise", "player_rand_factor_l", "player_rand_factor_r", "kick_rand_factor_l", "kick_rand_factor_r", "ball_size", "ball_decay", "ball_rand", "ball_weight", "ball_speed_max", "ball_accel_max", "dash_power_rate", "kick_power_rate", "kickable_margin", "control_radius", "control_radius_width", "max_power", "min_power", "max_moment", "min_moment", "max_neck_moment", "min_neck_moment", "max_neck_angle", "min_neck_angle", "visible_angle", "visible_distance", "wind_dir", "wind_force", "wind_angle", "wind_rand", "kickable_area", "catch_area_l", "catch_area_w", "catch_probability", "goalie_max_moves", "corner_kick_margin", "offside_active_area_size", "wind_none", "use_wind_random", "coach_say_count_max", "coach_say_msg_size", "clang_win_size", "clang_define_win", "clang_meta_win", "clang_advice_win", "clang_info_win", "clang_mess_delay", "clang_mess_per_cycle", "half_time", "simulator_step", "send_step", "recv_step", "sense_body_step", "lcm_step", "player_say_msg_size", "player_hear_max", "player_hear_inc", "player_hear_decay", "catch_ban_cycle", "slow_down_factor", "use_offside", "kickoff_offside", "offside_kick_margin", "audio_cut_dist", "dist_quantize_step", "landmark_dist_quantize_step", "dir_quantize_step", "dist_quantize_step_l", "dist_quantize_step_r", "landmark_dist_quantize_step_l", "landmark_dist_quantize_step_r", "dir_quantize_step_l", "dir_quantize_step_r", "coach_mode", "coach_with_referee_mode", "use_old_coach_hear", "slowness_on_top_for_left_team", "slowness_on_top_for_right_team", "start_goal_l", "start_goal_r", "fullstate_l", "fullstate_r", "drop_ball_time", "synch_mode", "synch_offset", "synch_micro_sleep", "point_to_ban", "point_to_duration", "player_port", "trainer_port", "online_coach_port", "verbose_mode", "coach_send_vi_step", "replay_file", "landmark_file", "send_comms", "text_logging", "game_logging", "game_log_version", "text_log_dir", "game_log_dir", "text_log_fixed_name", "game_log_fixed_name", "use_text_log_fixed", "use_game_log_fixed", "use_text_log_dated", "use_game_log_dated", "log_date_format", "log_times", "record_message", "text_log_compression", "game_log_compression", "use_profile", "tackle_dist", "tackle_back_dist", "tackle_width", "tackle_exponent", "tackle_cycles", "tackle_power_rate", "freeform_wait_period", "freeform_send_period", "free_kick_faults", "back_passes", "proper_goal_kicks", "stopped_ball_vel", "max_goal_kicks", "clang_del_win", "clang_rule_win", "auto_mode", "kick_off_wait", "connect_wait", "game_over_wait", "team_l_start", "team_r_start", "keepaway_mode", "keepaway_length", "keepaway_width", "keepaway_logging", "keepaway_log_dir", "keepaway_log_fixed_name", "keepaway_log_fixed", "keepaway_log_dated", "keepaway_start", "nr_normal_halfs", "nr_extra_halfs", "penalty_shoot_outs", "pen_before_setup_wait", "pen_setup_wait", "pen_ready_wait", "pen_taken_wait", "pen_nr_kicks", "pen_max_extra_kicks", "pen_dist_x", "pen_random_winner", "pen_allow_mult_kicks", "pen_max_goalie_dist_x", "pen_coach_moves_players", "module_dir", "ball_stuck_area", "coach_msg_file", "max_tackle_power", "max_back_tackle_power", "player_speed_max_min", "extra_stamina", "synch_see_offset", "extra_half_time", "stamina_capacity", "max_dash_angle", "min_dash_angle", "dash_angle_step", "side_dash_rate", "back_dash_rate", "max_dash_power", "min_dash_power", "tackle_rand_factor", "foul_detect_probability", "foul_exponent", "foul_cycles", "golden_goal", "red_card_probability", "illegal_defense_duration", "illegal_defense_number", "illegal_defense_dist_x", "illegal_defense_width", "fixed_teamname_l", "fixed_teamname_r", "max_catch_angle", "min_catch_angle", "random_seed", "long_kick_power_factor", "long_kick_delay", "max_monitors", "catchable_area", "real_speed_max", "pitch_half_length", "pitch_half_width", "our_penalty_area_line_x", "their_penalty_area_line_x", "penalty_area_half_width", "penalty_area_length", "goal_width", "goal_area_width", "goal_area_length", "center_circle_r", "goal_post_radius") - REGISTER_RESPONSE_FIELD_NUMBER: _ClassVar[int] - INERTIA_MOMENT_FIELD_NUMBER: _ClassVar[int] - PLAYER_SIZE_FIELD_NUMBER: _ClassVar[int] - PLAYER_DECAY_FIELD_NUMBER: _ClassVar[int] - PLAYER_RAND_FIELD_NUMBER: _ClassVar[int] - PLAYER_WEIGHT_FIELD_NUMBER: _ClassVar[int] - PLAYER_SPEED_MAX_FIELD_NUMBER: _ClassVar[int] - PLAYER_ACCEL_MAX_FIELD_NUMBER: _ClassVar[int] - STAMINA_MAX_FIELD_NUMBER: _ClassVar[int] - STAMINA_INC_MAX_FIELD_NUMBER: _ClassVar[int] - RECOVER_INIT_FIELD_NUMBER: _ClassVar[int] - RECOVER_DEC_THR_FIELD_NUMBER: _ClassVar[int] - RECOVER_MIN_FIELD_NUMBER: _ClassVar[int] - RECOVER_DEC_FIELD_NUMBER: _ClassVar[int] - EFFORT_INIT_FIELD_NUMBER: _ClassVar[int] - EFFORT_DEC_THR_FIELD_NUMBER: _ClassVar[int] - EFFORT_MIN_FIELD_NUMBER: _ClassVar[int] - EFFORT_DEC_FIELD_NUMBER: _ClassVar[int] - EFFORT_INC_THR_FIELD_NUMBER: _ClassVar[int] - EFFORT_INC_FIELD_NUMBER: _ClassVar[int] - KICK_RAND_FIELD_NUMBER: _ClassVar[int] - TEAM_ACTUATOR_NOISE_FIELD_NUMBER: _ClassVar[int] - PLAYER_RAND_FACTOR_L_FIELD_NUMBER: _ClassVar[int] - PLAYER_RAND_FACTOR_R_FIELD_NUMBER: _ClassVar[int] - KICK_RAND_FACTOR_L_FIELD_NUMBER: _ClassVar[int] - KICK_RAND_FACTOR_R_FIELD_NUMBER: _ClassVar[int] - BALL_SIZE_FIELD_NUMBER: _ClassVar[int] - BALL_DECAY_FIELD_NUMBER: _ClassVar[int] - BALL_RAND_FIELD_NUMBER: _ClassVar[int] - BALL_WEIGHT_FIELD_NUMBER: _ClassVar[int] - BALL_SPEED_MAX_FIELD_NUMBER: _ClassVar[int] - BALL_ACCEL_MAX_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_RATE_FIELD_NUMBER: _ClassVar[int] - KICK_POWER_RATE_FIELD_NUMBER: _ClassVar[int] - KICKABLE_MARGIN_FIELD_NUMBER: _ClassVar[int] - CONTROL_RADIUS_FIELD_NUMBER: _ClassVar[int] - CONTROL_RADIUS_WIDTH_FIELD_NUMBER: _ClassVar[int] - MAX_POWER_FIELD_NUMBER: _ClassVar[int] - MIN_POWER_FIELD_NUMBER: _ClassVar[int] - MAX_MOMENT_FIELD_NUMBER: _ClassVar[int] - MIN_MOMENT_FIELD_NUMBER: _ClassVar[int] - MAX_NECK_MOMENT_FIELD_NUMBER: _ClassVar[int] - MIN_NECK_MOMENT_FIELD_NUMBER: _ClassVar[int] - MAX_NECK_ANGLE_FIELD_NUMBER: _ClassVar[int] - MIN_NECK_ANGLE_FIELD_NUMBER: _ClassVar[int] - VISIBLE_ANGLE_FIELD_NUMBER: _ClassVar[int] - VISIBLE_DISTANCE_FIELD_NUMBER: _ClassVar[int] - WIND_DIR_FIELD_NUMBER: _ClassVar[int] - WIND_FORCE_FIELD_NUMBER: _ClassVar[int] - WIND_ANGLE_FIELD_NUMBER: _ClassVar[int] - WIND_RAND_FIELD_NUMBER: _ClassVar[int] - KICKABLE_AREA_FIELD_NUMBER: _ClassVar[int] - CATCH_AREA_L_FIELD_NUMBER: _ClassVar[int] - CATCH_AREA_W_FIELD_NUMBER: _ClassVar[int] - CATCH_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - GOALIE_MAX_MOVES_FIELD_NUMBER: _ClassVar[int] - CORNER_KICK_MARGIN_FIELD_NUMBER: _ClassVar[int] - OFFSIDE_ACTIVE_AREA_SIZE_FIELD_NUMBER: _ClassVar[int] - WIND_NONE_FIELD_NUMBER: _ClassVar[int] - USE_WIND_RANDOM_FIELD_NUMBER: _ClassVar[int] - COACH_SAY_COUNT_MAX_FIELD_NUMBER: _ClassVar[int] - COACH_SAY_MSG_SIZE_FIELD_NUMBER: _ClassVar[int] - CLANG_WIN_SIZE_FIELD_NUMBER: _ClassVar[int] - CLANG_DEFINE_WIN_FIELD_NUMBER: _ClassVar[int] - CLANG_META_WIN_FIELD_NUMBER: _ClassVar[int] - CLANG_ADVICE_WIN_FIELD_NUMBER: _ClassVar[int] - CLANG_INFO_WIN_FIELD_NUMBER: _ClassVar[int] - CLANG_MESS_DELAY_FIELD_NUMBER: _ClassVar[int] - CLANG_MESS_PER_CYCLE_FIELD_NUMBER: _ClassVar[int] - HALF_TIME_FIELD_NUMBER: _ClassVar[int] - SIMULATOR_STEP_FIELD_NUMBER: _ClassVar[int] - SEND_STEP_FIELD_NUMBER: _ClassVar[int] - RECV_STEP_FIELD_NUMBER: _ClassVar[int] - SENSE_BODY_STEP_FIELD_NUMBER: _ClassVar[int] - LCM_STEP_FIELD_NUMBER: _ClassVar[int] - PLAYER_SAY_MSG_SIZE_FIELD_NUMBER: _ClassVar[int] - PLAYER_HEAR_MAX_FIELD_NUMBER: _ClassVar[int] - PLAYER_HEAR_INC_FIELD_NUMBER: _ClassVar[int] - PLAYER_HEAR_DECAY_FIELD_NUMBER: _ClassVar[int] - CATCH_BAN_CYCLE_FIELD_NUMBER: _ClassVar[int] - SLOW_DOWN_FACTOR_FIELD_NUMBER: _ClassVar[int] - USE_OFFSIDE_FIELD_NUMBER: _ClassVar[int] - KICKOFF_OFFSIDE_FIELD_NUMBER: _ClassVar[int] - OFFSIDE_KICK_MARGIN_FIELD_NUMBER: _ClassVar[int] - AUDIO_CUT_DIST_FIELD_NUMBER: _ClassVar[int] - DIST_QUANTIZE_STEP_FIELD_NUMBER: _ClassVar[int] - LANDMARK_DIST_QUANTIZE_STEP_FIELD_NUMBER: _ClassVar[int] - DIR_QUANTIZE_STEP_FIELD_NUMBER: _ClassVar[int] - DIST_QUANTIZE_STEP_L_FIELD_NUMBER: _ClassVar[int] - DIST_QUANTIZE_STEP_R_FIELD_NUMBER: _ClassVar[int] - LANDMARK_DIST_QUANTIZE_STEP_L_FIELD_NUMBER: _ClassVar[int] - LANDMARK_DIST_QUANTIZE_STEP_R_FIELD_NUMBER: _ClassVar[int] - DIR_QUANTIZE_STEP_L_FIELD_NUMBER: _ClassVar[int] - DIR_QUANTIZE_STEP_R_FIELD_NUMBER: _ClassVar[int] - COACH_MODE_FIELD_NUMBER: _ClassVar[int] - COACH_WITH_REFEREE_MODE_FIELD_NUMBER: _ClassVar[int] - USE_OLD_COACH_HEAR_FIELD_NUMBER: _ClassVar[int] - SLOWNESS_ON_TOP_FOR_LEFT_TEAM_FIELD_NUMBER: _ClassVar[int] - SLOWNESS_ON_TOP_FOR_RIGHT_TEAM_FIELD_NUMBER: _ClassVar[int] - START_GOAL_L_FIELD_NUMBER: _ClassVar[int] - START_GOAL_R_FIELD_NUMBER: _ClassVar[int] - FULLSTATE_L_FIELD_NUMBER: _ClassVar[int] - FULLSTATE_R_FIELD_NUMBER: _ClassVar[int] - DROP_BALL_TIME_FIELD_NUMBER: _ClassVar[int] - SYNCH_MODE_FIELD_NUMBER: _ClassVar[int] - SYNCH_OFFSET_FIELD_NUMBER: _ClassVar[int] - SYNCH_MICRO_SLEEP_FIELD_NUMBER: _ClassVar[int] - POINT_TO_BAN_FIELD_NUMBER: _ClassVar[int] - POINT_TO_DURATION_FIELD_NUMBER: _ClassVar[int] - PLAYER_PORT_FIELD_NUMBER: _ClassVar[int] - TRAINER_PORT_FIELD_NUMBER: _ClassVar[int] - ONLINE_COACH_PORT_FIELD_NUMBER: _ClassVar[int] - VERBOSE_MODE_FIELD_NUMBER: _ClassVar[int] - COACH_SEND_VI_STEP_FIELD_NUMBER: _ClassVar[int] - REPLAY_FILE_FIELD_NUMBER: _ClassVar[int] - LANDMARK_FILE_FIELD_NUMBER: _ClassVar[int] - SEND_COMMS_FIELD_NUMBER: _ClassVar[int] - TEXT_LOGGING_FIELD_NUMBER: _ClassVar[int] - GAME_LOGGING_FIELD_NUMBER: _ClassVar[int] - GAME_LOG_VERSION_FIELD_NUMBER: _ClassVar[int] - TEXT_LOG_DIR_FIELD_NUMBER: _ClassVar[int] - GAME_LOG_DIR_FIELD_NUMBER: _ClassVar[int] - TEXT_LOG_FIXED_NAME_FIELD_NUMBER: _ClassVar[int] - GAME_LOG_FIXED_NAME_FIELD_NUMBER: _ClassVar[int] - USE_TEXT_LOG_FIXED_FIELD_NUMBER: _ClassVar[int] - USE_GAME_LOG_FIXED_FIELD_NUMBER: _ClassVar[int] - USE_TEXT_LOG_DATED_FIELD_NUMBER: _ClassVar[int] - USE_GAME_LOG_DATED_FIELD_NUMBER: _ClassVar[int] - LOG_DATE_FORMAT_FIELD_NUMBER: _ClassVar[int] - LOG_TIMES_FIELD_NUMBER: _ClassVar[int] - RECORD_MESSAGE_FIELD_NUMBER: _ClassVar[int] - TEXT_LOG_COMPRESSION_FIELD_NUMBER: _ClassVar[int] - GAME_LOG_COMPRESSION_FIELD_NUMBER: _ClassVar[int] - USE_PROFILE_FIELD_NUMBER: _ClassVar[int] - TACKLE_DIST_FIELD_NUMBER: _ClassVar[int] - TACKLE_BACK_DIST_FIELD_NUMBER: _ClassVar[int] - TACKLE_WIDTH_FIELD_NUMBER: _ClassVar[int] - TACKLE_EXPONENT_FIELD_NUMBER: _ClassVar[int] - TACKLE_CYCLES_FIELD_NUMBER: _ClassVar[int] - TACKLE_POWER_RATE_FIELD_NUMBER: _ClassVar[int] - FREEFORM_WAIT_PERIOD_FIELD_NUMBER: _ClassVar[int] - FREEFORM_SEND_PERIOD_FIELD_NUMBER: _ClassVar[int] - FREE_KICK_FAULTS_FIELD_NUMBER: _ClassVar[int] - BACK_PASSES_FIELD_NUMBER: _ClassVar[int] - PROPER_GOAL_KICKS_FIELD_NUMBER: _ClassVar[int] - STOPPED_BALL_VEL_FIELD_NUMBER: _ClassVar[int] - MAX_GOAL_KICKS_FIELD_NUMBER: _ClassVar[int] - CLANG_DEL_WIN_FIELD_NUMBER: _ClassVar[int] - CLANG_RULE_WIN_FIELD_NUMBER: _ClassVar[int] - AUTO_MODE_FIELD_NUMBER: _ClassVar[int] - KICK_OFF_WAIT_FIELD_NUMBER: _ClassVar[int] - CONNECT_WAIT_FIELD_NUMBER: _ClassVar[int] - GAME_OVER_WAIT_FIELD_NUMBER: _ClassVar[int] - TEAM_L_START_FIELD_NUMBER: _ClassVar[int] - TEAM_R_START_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_MODE_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_LENGTH_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_WIDTH_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_LOGGING_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_LOG_DIR_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_LOG_FIXED_NAME_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_LOG_FIXED_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_LOG_DATED_FIELD_NUMBER: _ClassVar[int] - KEEPAWAY_START_FIELD_NUMBER: _ClassVar[int] - NR_NORMAL_HALFS_FIELD_NUMBER: _ClassVar[int] - NR_EXTRA_HALFS_FIELD_NUMBER: _ClassVar[int] - PENALTY_SHOOT_OUTS_FIELD_NUMBER: _ClassVar[int] - PEN_BEFORE_SETUP_WAIT_FIELD_NUMBER: _ClassVar[int] - PEN_SETUP_WAIT_FIELD_NUMBER: _ClassVar[int] - PEN_READY_WAIT_FIELD_NUMBER: _ClassVar[int] - PEN_TAKEN_WAIT_FIELD_NUMBER: _ClassVar[int] - PEN_NR_KICKS_FIELD_NUMBER: _ClassVar[int] - PEN_MAX_EXTRA_KICKS_FIELD_NUMBER: _ClassVar[int] - PEN_DIST_X_FIELD_NUMBER: _ClassVar[int] - PEN_RANDOM_WINNER_FIELD_NUMBER: _ClassVar[int] - PEN_ALLOW_MULT_KICKS_FIELD_NUMBER: _ClassVar[int] - PEN_MAX_GOALIE_DIST_X_FIELD_NUMBER: _ClassVar[int] - PEN_COACH_MOVES_PLAYERS_FIELD_NUMBER: _ClassVar[int] - MODULE_DIR_FIELD_NUMBER: _ClassVar[int] - BALL_STUCK_AREA_FIELD_NUMBER: _ClassVar[int] - COACH_MSG_FILE_FIELD_NUMBER: _ClassVar[int] - MAX_TACKLE_POWER_FIELD_NUMBER: _ClassVar[int] - MAX_BACK_TACKLE_POWER_FIELD_NUMBER: _ClassVar[int] - PLAYER_SPEED_MAX_MIN_FIELD_NUMBER: _ClassVar[int] - EXTRA_STAMINA_FIELD_NUMBER: _ClassVar[int] - SYNCH_SEE_OFFSET_FIELD_NUMBER: _ClassVar[int] - EXTRA_HALF_TIME_FIELD_NUMBER: _ClassVar[int] - STAMINA_CAPACITY_FIELD_NUMBER: _ClassVar[int] - MAX_DASH_ANGLE_FIELD_NUMBER: _ClassVar[int] - MIN_DASH_ANGLE_FIELD_NUMBER: _ClassVar[int] - DASH_ANGLE_STEP_FIELD_NUMBER: _ClassVar[int] - SIDE_DASH_RATE_FIELD_NUMBER: _ClassVar[int] - BACK_DASH_RATE_FIELD_NUMBER: _ClassVar[int] - MAX_DASH_POWER_FIELD_NUMBER: _ClassVar[int] - MIN_DASH_POWER_FIELD_NUMBER: _ClassVar[int] - TACKLE_RAND_FACTOR_FIELD_NUMBER: _ClassVar[int] - FOUL_DETECT_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - FOUL_EXPONENT_FIELD_NUMBER: _ClassVar[int] - FOUL_CYCLES_FIELD_NUMBER: _ClassVar[int] - GOLDEN_GOAL_FIELD_NUMBER: _ClassVar[int] - RED_CARD_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - ILLEGAL_DEFENSE_DURATION_FIELD_NUMBER: _ClassVar[int] - ILLEGAL_DEFENSE_NUMBER_FIELD_NUMBER: _ClassVar[int] - ILLEGAL_DEFENSE_DIST_X_FIELD_NUMBER: _ClassVar[int] - ILLEGAL_DEFENSE_WIDTH_FIELD_NUMBER: _ClassVar[int] - FIXED_TEAMNAME_L_FIELD_NUMBER: _ClassVar[int] - FIXED_TEAMNAME_R_FIELD_NUMBER: _ClassVar[int] - MAX_CATCH_ANGLE_FIELD_NUMBER: _ClassVar[int] - MIN_CATCH_ANGLE_FIELD_NUMBER: _ClassVar[int] - RANDOM_SEED_FIELD_NUMBER: _ClassVar[int] - LONG_KICK_POWER_FACTOR_FIELD_NUMBER: _ClassVar[int] - LONG_KICK_DELAY_FIELD_NUMBER: _ClassVar[int] - MAX_MONITORS_FIELD_NUMBER: _ClassVar[int] - CATCHABLE_AREA_FIELD_NUMBER: _ClassVar[int] - REAL_SPEED_MAX_FIELD_NUMBER: _ClassVar[int] - PITCH_HALF_LENGTH_FIELD_NUMBER: _ClassVar[int] - PITCH_HALF_WIDTH_FIELD_NUMBER: _ClassVar[int] - OUR_PENALTY_AREA_LINE_X_FIELD_NUMBER: _ClassVar[int] - THEIR_PENALTY_AREA_LINE_X_FIELD_NUMBER: _ClassVar[int] - PENALTY_AREA_HALF_WIDTH_FIELD_NUMBER: _ClassVar[int] - PENALTY_AREA_LENGTH_FIELD_NUMBER: _ClassVar[int] - GOAL_WIDTH_FIELD_NUMBER: _ClassVar[int] - GOAL_AREA_WIDTH_FIELD_NUMBER: _ClassVar[int] - GOAL_AREA_LENGTH_FIELD_NUMBER: _ClassVar[int] - CENTER_CIRCLE_R_FIELD_NUMBER: _ClassVar[int] - GOAL_POST_RADIUS_FIELD_NUMBER: _ClassVar[int] - register_response: RegisterResponse - inertia_moment: float - player_size: float - player_decay: float - player_rand: float - player_weight: float - player_speed_max: float - player_accel_max: float - stamina_max: float - stamina_inc_max: float - recover_init: float - recover_dec_thr: float - recover_min: float - recover_dec: float - effort_init: float - effort_dec_thr: float - effort_min: float - effort_dec: float - effort_inc_thr: float - effort_inc: float - kick_rand: float - team_actuator_noise: bool - player_rand_factor_l: float - player_rand_factor_r: float - kick_rand_factor_l: float - kick_rand_factor_r: float - ball_size: float - ball_decay: float - ball_rand: float - ball_weight: float - ball_speed_max: float - ball_accel_max: float - dash_power_rate: float - kick_power_rate: float - kickable_margin: float - control_radius: float - control_radius_width: float - max_power: float - min_power: float - max_moment: float - min_moment: float - max_neck_moment: float - min_neck_moment: float - max_neck_angle: float - min_neck_angle: float - visible_angle: float - visible_distance: float - wind_dir: float - wind_force: float - wind_angle: float - wind_rand: float - kickable_area: float - catch_area_l: float - catch_area_w: float - catch_probability: float - goalie_max_moves: int - corner_kick_margin: float - offside_active_area_size: float - wind_none: bool - use_wind_random: bool - coach_say_count_max: int - coach_say_msg_size: int - clang_win_size: int - clang_define_win: int - clang_meta_win: int - clang_advice_win: int - clang_info_win: int - clang_mess_delay: int - clang_mess_per_cycle: int - half_time: int - simulator_step: int - send_step: int - recv_step: int - sense_body_step: int - lcm_step: int - player_say_msg_size: int - player_hear_max: int - player_hear_inc: int - player_hear_decay: int - catch_ban_cycle: int - slow_down_factor: int - use_offside: bool - kickoff_offside: bool - offside_kick_margin: float - audio_cut_dist: float - dist_quantize_step: float - landmark_dist_quantize_step: float - dir_quantize_step: float - dist_quantize_step_l: float - dist_quantize_step_r: float - landmark_dist_quantize_step_l: float - landmark_dist_quantize_step_r: float - dir_quantize_step_l: float - dir_quantize_step_r: float - coach_mode: bool - coach_with_referee_mode: bool - use_old_coach_hear: bool - slowness_on_top_for_left_team: float - slowness_on_top_for_right_team: float - start_goal_l: int - start_goal_r: int - fullstate_l: bool - fullstate_r: bool - drop_ball_time: int - synch_mode: bool - synch_offset: int - synch_micro_sleep: int - point_to_ban: int - point_to_duration: int - player_port: int - trainer_port: int - online_coach_port: int - verbose_mode: bool - coach_send_vi_step: int - replay_file: str - landmark_file: str - send_comms: bool - text_logging: bool - game_logging: bool - game_log_version: int - text_log_dir: str - game_log_dir: str - text_log_fixed_name: str - game_log_fixed_name: str - use_text_log_fixed: bool - use_game_log_fixed: bool - use_text_log_dated: bool - use_game_log_dated: bool - log_date_format: str - log_times: bool - record_message: bool - text_log_compression: int - game_log_compression: int - use_profile: bool - tackle_dist: float - tackle_back_dist: float - tackle_width: float - tackle_exponent: float - tackle_cycles: int - tackle_power_rate: float - freeform_wait_period: int - freeform_send_period: int - free_kick_faults: bool - back_passes: bool - proper_goal_kicks: bool - stopped_ball_vel: float - max_goal_kicks: int - clang_del_win: int - clang_rule_win: int - auto_mode: bool - kick_off_wait: int - connect_wait: int - game_over_wait: int - team_l_start: str - team_r_start: str - keepaway_mode: bool - keepaway_length: float - keepaway_width: float - keepaway_logging: bool - keepaway_log_dir: str - keepaway_log_fixed_name: str - keepaway_log_fixed: bool - keepaway_log_dated: bool - keepaway_start: int - nr_normal_halfs: int - nr_extra_halfs: int - penalty_shoot_outs: bool - pen_before_setup_wait: int - pen_setup_wait: int - pen_ready_wait: int - pen_taken_wait: int - pen_nr_kicks: int - pen_max_extra_kicks: int - pen_dist_x: float - pen_random_winner: bool - pen_allow_mult_kicks: bool - pen_max_goalie_dist_x: float - pen_coach_moves_players: bool - module_dir: str - ball_stuck_area: float - coach_msg_file: str - max_tackle_power: float - max_back_tackle_power: float - player_speed_max_min: float - extra_stamina: float - synch_see_offset: int - extra_half_time: int - stamina_capacity: float - max_dash_angle: float - min_dash_angle: float - dash_angle_step: float - side_dash_rate: float - back_dash_rate: float - max_dash_power: float - min_dash_power: float - tackle_rand_factor: float - foul_detect_probability: float - foul_exponent: float - foul_cycles: int - golden_goal: bool - red_card_probability: float - illegal_defense_duration: int - illegal_defense_number: int - illegal_defense_dist_x: float - illegal_defense_width: float - fixed_teamname_l: str - fixed_teamname_r: str - max_catch_angle: float - min_catch_angle: float - random_seed: int - long_kick_power_factor: float - long_kick_delay: int - max_monitors: int - catchable_area: float - real_speed_max: float - pitch_half_length: float - pitch_half_width: float - our_penalty_area_line_x: float - their_penalty_area_line_x: float - penalty_area_half_width: float - penalty_area_length: float - goal_width: float - goal_area_width: float - goal_area_length: float - center_circle_r: float - goal_post_radius: float - def __init__(self, register_response: _Optional[_Union[RegisterResponse, _Mapping]] = ..., inertia_moment: _Optional[float] = ..., player_size: _Optional[float] = ..., player_decay: _Optional[float] = ..., player_rand: _Optional[float] = ..., player_weight: _Optional[float] = ..., player_speed_max: _Optional[float] = ..., player_accel_max: _Optional[float] = ..., stamina_max: _Optional[float] = ..., stamina_inc_max: _Optional[float] = ..., recover_init: _Optional[float] = ..., recover_dec_thr: _Optional[float] = ..., recover_min: _Optional[float] = ..., recover_dec: _Optional[float] = ..., effort_init: _Optional[float] = ..., effort_dec_thr: _Optional[float] = ..., effort_min: _Optional[float] = ..., effort_dec: _Optional[float] = ..., effort_inc_thr: _Optional[float] = ..., effort_inc: _Optional[float] = ..., kick_rand: _Optional[float] = ..., team_actuator_noise: bool = ..., player_rand_factor_l: _Optional[float] = ..., player_rand_factor_r: _Optional[float] = ..., kick_rand_factor_l: _Optional[float] = ..., kick_rand_factor_r: _Optional[float] = ..., ball_size: _Optional[float] = ..., ball_decay: _Optional[float] = ..., ball_rand: _Optional[float] = ..., ball_weight: _Optional[float] = ..., ball_speed_max: _Optional[float] = ..., ball_accel_max: _Optional[float] = ..., dash_power_rate: _Optional[float] = ..., kick_power_rate: _Optional[float] = ..., kickable_margin: _Optional[float] = ..., control_radius: _Optional[float] = ..., control_radius_width: _Optional[float] = ..., max_power: _Optional[float] = ..., min_power: _Optional[float] = ..., max_moment: _Optional[float] = ..., min_moment: _Optional[float] = ..., max_neck_moment: _Optional[float] = ..., min_neck_moment: _Optional[float] = ..., max_neck_angle: _Optional[float] = ..., min_neck_angle: _Optional[float] = ..., visible_angle: _Optional[float] = ..., visible_distance: _Optional[float] = ..., wind_dir: _Optional[float] = ..., wind_force: _Optional[float] = ..., wind_angle: _Optional[float] = ..., wind_rand: _Optional[float] = ..., kickable_area: _Optional[float] = ..., catch_area_l: _Optional[float] = ..., catch_area_w: _Optional[float] = ..., catch_probability: _Optional[float] = ..., goalie_max_moves: _Optional[int] = ..., corner_kick_margin: _Optional[float] = ..., offside_active_area_size: _Optional[float] = ..., wind_none: bool = ..., use_wind_random: bool = ..., coach_say_count_max: _Optional[int] = ..., coach_say_msg_size: _Optional[int] = ..., clang_win_size: _Optional[int] = ..., clang_define_win: _Optional[int] = ..., clang_meta_win: _Optional[int] = ..., clang_advice_win: _Optional[int] = ..., clang_info_win: _Optional[int] = ..., clang_mess_delay: _Optional[int] = ..., clang_mess_per_cycle: _Optional[int] = ..., half_time: _Optional[int] = ..., simulator_step: _Optional[int] = ..., send_step: _Optional[int] = ..., recv_step: _Optional[int] = ..., sense_body_step: _Optional[int] = ..., lcm_step: _Optional[int] = ..., player_say_msg_size: _Optional[int] = ..., player_hear_max: _Optional[int] = ..., player_hear_inc: _Optional[int] = ..., player_hear_decay: _Optional[int] = ..., catch_ban_cycle: _Optional[int] = ..., slow_down_factor: _Optional[int] = ..., use_offside: bool = ..., kickoff_offside: bool = ..., offside_kick_margin: _Optional[float] = ..., audio_cut_dist: _Optional[float] = ..., dist_quantize_step: _Optional[float] = ..., landmark_dist_quantize_step: _Optional[float] = ..., dir_quantize_step: _Optional[float] = ..., dist_quantize_step_l: _Optional[float] = ..., dist_quantize_step_r: _Optional[float] = ..., landmark_dist_quantize_step_l: _Optional[float] = ..., landmark_dist_quantize_step_r: _Optional[float] = ..., dir_quantize_step_l: _Optional[float] = ..., dir_quantize_step_r: _Optional[float] = ..., coach_mode: bool = ..., coach_with_referee_mode: bool = ..., use_old_coach_hear: bool = ..., slowness_on_top_for_left_team: _Optional[float] = ..., slowness_on_top_for_right_team: _Optional[float] = ..., start_goal_l: _Optional[int] = ..., start_goal_r: _Optional[int] = ..., fullstate_l: bool = ..., fullstate_r: bool = ..., drop_ball_time: _Optional[int] = ..., synch_mode: bool = ..., synch_offset: _Optional[int] = ..., synch_micro_sleep: _Optional[int] = ..., point_to_ban: _Optional[int] = ..., point_to_duration: _Optional[int] = ..., player_port: _Optional[int] = ..., trainer_port: _Optional[int] = ..., online_coach_port: _Optional[int] = ..., verbose_mode: bool = ..., coach_send_vi_step: _Optional[int] = ..., replay_file: _Optional[str] = ..., landmark_file: _Optional[str] = ..., send_comms: bool = ..., text_logging: bool = ..., game_logging: bool = ..., game_log_version: _Optional[int] = ..., text_log_dir: _Optional[str] = ..., game_log_dir: _Optional[str] = ..., text_log_fixed_name: _Optional[str] = ..., game_log_fixed_name: _Optional[str] = ..., use_text_log_fixed: bool = ..., use_game_log_fixed: bool = ..., use_text_log_dated: bool = ..., use_game_log_dated: bool = ..., log_date_format: _Optional[str] = ..., log_times: bool = ..., record_message: bool = ..., text_log_compression: _Optional[int] = ..., game_log_compression: _Optional[int] = ..., use_profile: bool = ..., tackle_dist: _Optional[float] = ..., tackle_back_dist: _Optional[float] = ..., tackle_width: _Optional[float] = ..., tackle_exponent: _Optional[float] = ..., tackle_cycles: _Optional[int] = ..., tackle_power_rate: _Optional[float] = ..., freeform_wait_period: _Optional[int] = ..., freeform_send_period: _Optional[int] = ..., free_kick_faults: bool = ..., back_passes: bool = ..., proper_goal_kicks: bool = ..., stopped_ball_vel: _Optional[float] = ..., max_goal_kicks: _Optional[int] = ..., clang_del_win: _Optional[int] = ..., clang_rule_win: _Optional[int] = ..., auto_mode: bool = ..., kick_off_wait: _Optional[int] = ..., connect_wait: _Optional[int] = ..., game_over_wait: _Optional[int] = ..., team_l_start: _Optional[str] = ..., team_r_start: _Optional[str] = ..., keepaway_mode: bool = ..., keepaway_length: _Optional[float] = ..., keepaway_width: _Optional[float] = ..., keepaway_logging: bool = ..., keepaway_log_dir: _Optional[str] = ..., keepaway_log_fixed_name: _Optional[str] = ..., keepaway_log_fixed: bool = ..., keepaway_log_dated: bool = ..., keepaway_start: _Optional[int] = ..., nr_normal_halfs: _Optional[int] = ..., nr_extra_halfs: _Optional[int] = ..., penalty_shoot_outs: bool = ..., pen_before_setup_wait: _Optional[int] = ..., pen_setup_wait: _Optional[int] = ..., pen_ready_wait: _Optional[int] = ..., pen_taken_wait: _Optional[int] = ..., pen_nr_kicks: _Optional[int] = ..., pen_max_extra_kicks: _Optional[int] = ..., pen_dist_x: _Optional[float] = ..., pen_random_winner: bool = ..., pen_allow_mult_kicks: bool = ..., pen_max_goalie_dist_x: _Optional[float] = ..., pen_coach_moves_players: bool = ..., module_dir: _Optional[str] = ..., ball_stuck_area: _Optional[float] = ..., coach_msg_file: _Optional[str] = ..., max_tackle_power: _Optional[float] = ..., max_back_tackle_power: _Optional[float] = ..., player_speed_max_min: _Optional[float] = ..., extra_stamina: _Optional[float] = ..., synch_see_offset: _Optional[int] = ..., extra_half_time: _Optional[int] = ..., stamina_capacity: _Optional[float] = ..., max_dash_angle: _Optional[float] = ..., min_dash_angle: _Optional[float] = ..., dash_angle_step: _Optional[float] = ..., side_dash_rate: _Optional[float] = ..., back_dash_rate: _Optional[float] = ..., max_dash_power: _Optional[float] = ..., min_dash_power: _Optional[float] = ..., tackle_rand_factor: _Optional[float] = ..., foul_detect_probability: _Optional[float] = ..., foul_exponent: _Optional[float] = ..., foul_cycles: _Optional[int] = ..., golden_goal: bool = ..., red_card_probability: _Optional[float] = ..., illegal_defense_duration: _Optional[int] = ..., illegal_defense_number: _Optional[int] = ..., illegal_defense_dist_x: _Optional[float] = ..., illegal_defense_width: _Optional[float] = ..., fixed_teamname_l: _Optional[str] = ..., fixed_teamname_r: _Optional[str] = ..., max_catch_angle: _Optional[float] = ..., min_catch_angle: _Optional[float] = ..., random_seed: _Optional[int] = ..., long_kick_power_factor: _Optional[float] = ..., long_kick_delay: _Optional[int] = ..., max_monitors: _Optional[int] = ..., catchable_area: _Optional[float] = ..., real_speed_max: _Optional[float] = ..., pitch_half_length: _Optional[float] = ..., pitch_half_width: _Optional[float] = ..., our_penalty_area_line_x: _Optional[float] = ..., their_penalty_area_line_x: _Optional[float] = ..., penalty_area_half_width: _Optional[float] = ..., penalty_area_length: _Optional[float] = ..., goal_width: _Optional[float] = ..., goal_area_width: _Optional[float] = ..., goal_area_length: _Optional[float] = ..., center_circle_r: _Optional[float] = ..., goal_post_radius: _Optional[float] = ...) -> None: ... - -class PlayerParam(_message.Message): - __slots__ = ("register_response", "player_types", "subs_max", "pt_max", "allow_mult_default_type", "player_speed_max_delta_min", "player_speed_max_delta_max", "stamina_inc_max_delta_factor", "player_decay_delta_min", "player_decay_delta_max", "inertia_moment_delta_factor", "dash_power_rate_delta_min", "dash_power_rate_delta_max", "player_size_delta_factor", "kickable_margin_delta_min", "kickable_margin_delta_max", "kick_rand_delta_factor", "extra_stamina_delta_min", "extra_stamina_delta_max", "effort_max_delta_factor", "effort_min_delta_factor", "random_seed", "new_dash_power_rate_delta_min", "new_dash_power_rate_delta_max", "new_stamina_inc_max_delta_factor", "kick_power_rate_delta_min", "kick_power_rate_delta_max", "foul_detect_probability_delta_factor", "catchable_area_l_stretch_min", "catchable_area_l_stretch_max") - REGISTER_RESPONSE_FIELD_NUMBER: _ClassVar[int] - PLAYER_TYPES_FIELD_NUMBER: _ClassVar[int] - SUBS_MAX_FIELD_NUMBER: _ClassVar[int] - PT_MAX_FIELD_NUMBER: _ClassVar[int] - ALLOW_MULT_DEFAULT_TYPE_FIELD_NUMBER: _ClassVar[int] - PLAYER_SPEED_MAX_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - PLAYER_SPEED_MAX_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - STAMINA_INC_MAX_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - PLAYER_DECAY_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - PLAYER_DECAY_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - INERTIA_MOMENT_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_RATE_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_RATE_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - PLAYER_SIZE_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - KICKABLE_MARGIN_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - KICKABLE_MARGIN_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - KICK_RAND_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - EXTRA_STAMINA_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - EXTRA_STAMINA_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - EFFORT_MAX_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - EFFORT_MIN_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - RANDOM_SEED_FIELD_NUMBER: _ClassVar[int] - NEW_DASH_POWER_RATE_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - NEW_DASH_POWER_RATE_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - NEW_STAMINA_INC_MAX_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - KICK_POWER_RATE_DELTA_MIN_FIELD_NUMBER: _ClassVar[int] - KICK_POWER_RATE_DELTA_MAX_FIELD_NUMBER: _ClassVar[int] - FOUL_DETECT_PROBABILITY_DELTA_FACTOR_FIELD_NUMBER: _ClassVar[int] - CATCHABLE_AREA_L_STRETCH_MIN_FIELD_NUMBER: _ClassVar[int] - CATCHABLE_AREA_L_STRETCH_MAX_FIELD_NUMBER: _ClassVar[int] - register_response: RegisterResponse - player_types: int - subs_max: int - pt_max: int - allow_mult_default_type: bool - player_speed_max_delta_min: float - player_speed_max_delta_max: float - stamina_inc_max_delta_factor: float - player_decay_delta_min: float - player_decay_delta_max: float - inertia_moment_delta_factor: float - dash_power_rate_delta_min: float - dash_power_rate_delta_max: float - player_size_delta_factor: float - kickable_margin_delta_min: float - kickable_margin_delta_max: float - kick_rand_delta_factor: float - extra_stamina_delta_min: float - extra_stamina_delta_max: float - effort_max_delta_factor: float - effort_min_delta_factor: float - random_seed: int - new_dash_power_rate_delta_min: float - new_dash_power_rate_delta_max: float - new_stamina_inc_max_delta_factor: float - kick_power_rate_delta_min: float - kick_power_rate_delta_max: float - foul_detect_probability_delta_factor: float - catchable_area_l_stretch_min: float - catchable_area_l_stretch_max: float - def __init__(self, register_response: _Optional[_Union[RegisterResponse, _Mapping]] = ..., player_types: _Optional[int] = ..., subs_max: _Optional[int] = ..., pt_max: _Optional[int] = ..., allow_mult_default_type: bool = ..., player_speed_max_delta_min: _Optional[float] = ..., player_speed_max_delta_max: _Optional[float] = ..., stamina_inc_max_delta_factor: _Optional[float] = ..., player_decay_delta_min: _Optional[float] = ..., player_decay_delta_max: _Optional[float] = ..., inertia_moment_delta_factor: _Optional[float] = ..., dash_power_rate_delta_min: _Optional[float] = ..., dash_power_rate_delta_max: _Optional[float] = ..., player_size_delta_factor: _Optional[float] = ..., kickable_margin_delta_min: _Optional[float] = ..., kickable_margin_delta_max: _Optional[float] = ..., kick_rand_delta_factor: _Optional[float] = ..., extra_stamina_delta_min: _Optional[float] = ..., extra_stamina_delta_max: _Optional[float] = ..., effort_max_delta_factor: _Optional[float] = ..., effort_min_delta_factor: _Optional[float] = ..., random_seed: _Optional[int] = ..., new_dash_power_rate_delta_min: _Optional[float] = ..., new_dash_power_rate_delta_max: _Optional[float] = ..., new_stamina_inc_max_delta_factor: _Optional[float] = ..., kick_power_rate_delta_min: _Optional[float] = ..., kick_power_rate_delta_max: _Optional[float] = ..., foul_detect_probability_delta_factor: _Optional[float] = ..., catchable_area_l_stretch_min: _Optional[float] = ..., catchable_area_l_stretch_max: _Optional[float] = ...) -> None: ... - -class PlayerType(_message.Message): - __slots__ = ("register_response", "id", "stamina_inc_max", "player_decay", "inertia_moment", "dash_power_rate", "player_size", "kickable_margin", "kick_rand", "extra_stamina", "effort_max", "effort_min", "kick_power_rate", "foul_detect_probability", "catchable_area_l_stretch", "unum_far_length", "unum_too_far_length", "team_far_length", "team_too_far_length", "player_max_observation_length", "ball_vel_far_length", "ball_vel_too_far_length", "ball_max_observation_length", "flag_chg_far_length", "flag_chg_too_far_length", "flag_max_observation_length", "kickable_area", "reliable_catchable_dist", "max_catchable_dist", "real_speed_max", "player_speed_max2", "real_speed_max2", "cycles_to_reach_max_speed", "player_speed_max") - REGISTER_RESPONSE_FIELD_NUMBER: _ClassVar[int] - ID_FIELD_NUMBER: _ClassVar[int] - STAMINA_INC_MAX_FIELD_NUMBER: _ClassVar[int] - PLAYER_DECAY_FIELD_NUMBER: _ClassVar[int] - INERTIA_MOMENT_FIELD_NUMBER: _ClassVar[int] - DASH_POWER_RATE_FIELD_NUMBER: _ClassVar[int] - PLAYER_SIZE_FIELD_NUMBER: _ClassVar[int] - KICKABLE_MARGIN_FIELD_NUMBER: _ClassVar[int] - KICK_RAND_FIELD_NUMBER: _ClassVar[int] - EXTRA_STAMINA_FIELD_NUMBER: _ClassVar[int] - EFFORT_MAX_FIELD_NUMBER: _ClassVar[int] - EFFORT_MIN_FIELD_NUMBER: _ClassVar[int] - KICK_POWER_RATE_FIELD_NUMBER: _ClassVar[int] - FOUL_DETECT_PROBABILITY_FIELD_NUMBER: _ClassVar[int] - CATCHABLE_AREA_L_STRETCH_FIELD_NUMBER: _ClassVar[int] - UNUM_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - UNUM_TOO_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - TEAM_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - TEAM_TOO_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - PLAYER_MAX_OBSERVATION_LENGTH_FIELD_NUMBER: _ClassVar[int] - BALL_VEL_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - BALL_VEL_TOO_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - BALL_MAX_OBSERVATION_LENGTH_FIELD_NUMBER: _ClassVar[int] - FLAG_CHG_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - FLAG_CHG_TOO_FAR_LENGTH_FIELD_NUMBER: _ClassVar[int] - FLAG_MAX_OBSERVATION_LENGTH_FIELD_NUMBER: _ClassVar[int] - KICKABLE_AREA_FIELD_NUMBER: _ClassVar[int] - RELIABLE_CATCHABLE_DIST_FIELD_NUMBER: _ClassVar[int] - MAX_CATCHABLE_DIST_FIELD_NUMBER: _ClassVar[int] - REAL_SPEED_MAX_FIELD_NUMBER: _ClassVar[int] - PLAYER_SPEED_MAX2_FIELD_NUMBER: _ClassVar[int] - REAL_SPEED_MAX2_FIELD_NUMBER: _ClassVar[int] - CYCLES_TO_REACH_MAX_SPEED_FIELD_NUMBER: _ClassVar[int] - PLAYER_SPEED_MAX_FIELD_NUMBER: _ClassVar[int] - register_response: RegisterResponse - id: int - stamina_inc_max: float - player_decay: float - inertia_moment: float - dash_power_rate: float - player_size: float - kickable_margin: float - kick_rand: float - extra_stamina: float - effort_max: float - effort_min: float - kick_power_rate: float - foul_detect_probability: float - catchable_area_l_stretch: float - unum_far_length: float - unum_too_far_length: float - team_far_length: float - team_too_far_length: float - player_max_observation_length: float - ball_vel_far_length: float - ball_vel_too_far_length: float - ball_max_observation_length: float - flag_chg_far_length: float - flag_chg_too_far_length: float - flag_max_observation_length: float - kickable_area: float - reliable_catchable_dist: float - max_catchable_dist: float - real_speed_max: float - player_speed_max2: float - real_speed_max2: float - cycles_to_reach_max_speed: int - player_speed_max: float - def __init__(self, register_response: _Optional[_Union[RegisterResponse, _Mapping]] = ..., id: _Optional[int] = ..., stamina_inc_max: _Optional[float] = ..., player_decay: _Optional[float] = ..., inertia_moment: _Optional[float] = ..., dash_power_rate: _Optional[float] = ..., player_size: _Optional[float] = ..., kickable_margin: _Optional[float] = ..., kick_rand: _Optional[float] = ..., extra_stamina: _Optional[float] = ..., effort_max: _Optional[float] = ..., effort_min: _Optional[float] = ..., kick_power_rate: _Optional[float] = ..., foul_detect_probability: _Optional[float] = ..., catchable_area_l_stretch: _Optional[float] = ..., unum_far_length: _Optional[float] = ..., unum_too_far_length: _Optional[float] = ..., team_far_length: _Optional[float] = ..., team_too_far_length: _Optional[float] = ..., player_max_observation_length: _Optional[float] = ..., ball_vel_far_length: _Optional[float] = ..., ball_vel_too_far_length: _Optional[float] = ..., ball_max_observation_length: _Optional[float] = ..., flag_chg_far_length: _Optional[float] = ..., flag_chg_too_far_length: _Optional[float] = ..., flag_max_observation_length: _Optional[float] = ..., kickable_area: _Optional[float] = ..., reliable_catchable_dist: _Optional[float] = ..., max_catchable_dist: _Optional[float] = ..., real_speed_max: _Optional[float] = ..., player_speed_max2: _Optional[float] = ..., real_speed_max2: _Optional[float] = ..., cycles_to_reach_max_speed: _Optional[int] = ..., player_speed_max: _Optional[float] = ...) -> None: ... - -class RpcCooperativeAction(_message.Message): - __slots__ = ("category", "index", "sender_unum", "target_unum", "target_point", "first_ball_speed", "first_turn_moment", "first_dash_power", "first_dash_angle_relative", "duration_step", "kick_count", "turn_count", "dash_count", "final_action", "description", "parent_index") - CATEGORY_FIELD_NUMBER: _ClassVar[int] - INDEX_FIELD_NUMBER: _ClassVar[int] - SENDER_UNUM_FIELD_NUMBER: _ClassVar[int] - TARGET_UNUM_FIELD_NUMBER: _ClassVar[int] - TARGET_POINT_FIELD_NUMBER: _ClassVar[int] - FIRST_BALL_SPEED_FIELD_NUMBER: _ClassVar[int] - FIRST_TURN_MOMENT_FIELD_NUMBER: _ClassVar[int] - FIRST_DASH_POWER_FIELD_NUMBER: _ClassVar[int] - FIRST_DASH_ANGLE_RELATIVE_FIELD_NUMBER: _ClassVar[int] - DURATION_STEP_FIELD_NUMBER: _ClassVar[int] - KICK_COUNT_FIELD_NUMBER: _ClassVar[int] - TURN_COUNT_FIELD_NUMBER: _ClassVar[int] - DASH_COUNT_FIELD_NUMBER: _ClassVar[int] - FINAL_ACTION_FIELD_NUMBER: _ClassVar[int] - DESCRIPTION_FIELD_NUMBER: _ClassVar[int] - PARENT_INDEX_FIELD_NUMBER: _ClassVar[int] - category: RpcActionCategory - index: int - sender_unum: int - target_unum: int - target_point: RpcVector2D - first_ball_speed: float - first_turn_moment: float - first_dash_power: float - first_dash_angle_relative: float - duration_step: int - kick_count: int - turn_count: int - dash_count: int - final_action: bool - description: str - parent_index: int - def __init__(self, category: _Optional[_Union[RpcActionCategory, str]] = ..., index: _Optional[int] = ..., sender_unum: _Optional[int] = ..., target_unum: _Optional[int] = ..., target_point: _Optional[_Union[RpcVector2D, _Mapping]] = ..., first_ball_speed: _Optional[float] = ..., first_turn_moment: _Optional[float] = ..., first_dash_power: _Optional[float] = ..., first_dash_angle_relative: _Optional[float] = ..., duration_step: _Optional[int] = ..., kick_count: _Optional[int] = ..., turn_count: _Optional[int] = ..., dash_count: _Optional[int] = ..., final_action: bool = ..., description: _Optional[str] = ..., parent_index: _Optional[int] = ...) -> None: ... - -class RpcPredictState(_message.Message): - __slots__ = ("spend_time", "ball_holder_unum", "ball_position", "ball_velocity", "our_defense_line_x", "our_offense_line_x") - SPEND_TIME_FIELD_NUMBER: _ClassVar[int] - BALL_HOLDER_UNUM_FIELD_NUMBER: _ClassVar[int] - BALL_POSITION_FIELD_NUMBER: _ClassVar[int] - BALL_VELOCITY_FIELD_NUMBER: _ClassVar[int] - OUR_DEFENSE_LINE_X_FIELD_NUMBER: _ClassVar[int] - OUR_OFFENSE_LINE_X_FIELD_NUMBER: _ClassVar[int] - spend_time: int - ball_holder_unum: int - ball_position: RpcVector2D - ball_velocity: RpcVector2D - our_defense_line_x: float - our_offense_line_x: float - def __init__(self, spend_time: _Optional[int] = ..., ball_holder_unum: _Optional[int] = ..., ball_position: _Optional[_Union[RpcVector2D, _Mapping]] = ..., ball_velocity: _Optional[_Union[RpcVector2D, _Mapping]] = ..., our_defense_line_x: _Optional[float] = ..., our_offense_line_x: _Optional[float] = ...) -> None: ... - -class RpcActionState(_message.Message): - __slots__ = ("action", "predict_state", "evaluation") - ACTION_FIELD_NUMBER: _ClassVar[int] - PREDICT_STATE_FIELD_NUMBER: _ClassVar[int] - EVALUATION_FIELD_NUMBER: _ClassVar[int] - action: RpcCooperativeAction - predict_state: RpcPredictState - evaluation: float - def __init__(self, action: _Optional[_Union[RpcCooperativeAction, _Mapping]] = ..., predict_state: _Optional[_Union[RpcPredictState, _Mapping]] = ..., evaluation: _Optional[float] = ...) -> None: ... - -class BestPlannerActionRequest(_message.Message): - __slots__ = ("register_response", "pairs", "state") - class PairsEntry(_message.Message): - __slots__ = ("key", "value") - KEY_FIELD_NUMBER: _ClassVar[int] - VALUE_FIELD_NUMBER: _ClassVar[int] - key: int - value: RpcActionState - def __init__(self, key: _Optional[int] = ..., value: _Optional[_Union[RpcActionState, _Mapping]] = ...) -> None: ... - REGISTER_RESPONSE_FIELD_NUMBER: _ClassVar[int] - PAIRS_FIELD_NUMBER: _ClassVar[int] - STATE_FIELD_NUMBER: _ClassVar[int] - register_response: RegisterResponse - pairs: _containers.MessageMap[int, RpcActionState] - state: State - def __init__(self, register_response: _Optional[_Union[RegisterResponse, _Mapping]] = ..., pairs: _Optional[_Mapping[int, RpcActionState]] = ..., state: _Optional[_Union[State, _Mapping]] = ...) -> None: ... - -class BestPlannerActionResponse(_message.Message): - __slots__ = ("index",) - INDEX_FIELD_NUMBER: _ClassVar[int] - index: int - def __init__(self, index: _Optional[int] = ...) -> None: ... - -class Empty(_message.Message): - __slots__ = () - def __init__(self) -> None: ... diff --git a/service_pb2_grpc.py b/service_pb2_grpc.py deleted file mode 100644 index 572c32d..0000000 --- a/service_pb2_grpc.py +++ /dev/null @@ -1,600 +0,0 @@ -# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT! -"""Client and server classes corresponding to protobuf-defined services.""" -import grpc -import warnings - -import service_pb2 as service__pb2 - -GRPC_GENERATED_VERSION = '1.65.4' -GRPC_VERSION = grpc.__version__ -EXPECTED_ERROR_RELEASE = '1.66.0' -SCHEDULED_RELEASE_DATE = 'August 6, 2024' -_version_not_supported = False - -try: - from grpc._utilities import first_version_is_lower - _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION) -except ImportError: - _version_not_supported = True - -if _version_not_supported: - warnings.warn( - f'The grpc package installed is at version {GRPC_VERSION},' - + f' but the generated code in service_pb2_grpc.py depends on' - + f' grpcio>={GRPC_GENERATED_VERSION}.' - + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}' - + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.' - + f' This warning will become an error in {EXPECTED_ERROR_RELEASE},' - + f' scheduled for release on {SCHEDULED_RELEASE_DATE}.', - RuntimeWarning - ) - - -class GameStub(object): - """ - The Game service provides various RPC methods for interacting with a soccer simulation. - - ```mermaid - sequenceDiagram - participant SS as SoccerSimulationServer - participant SP as SoccerSimulationProxy - participant PM as PlayMakerServer - Note over SS,PM: Run - SP->>SS: Connect - SS->>SP: OK, Unum - SS->>SP: ServerParam - SS->>SP: PlayerParam - SS->>SP: PlayerType (0) - SS->>SP: PlayerType (1) - SS->>SP: PlayerType (17) - SP->>PM: Register(RegisterRequest) - PM->>SP: RegisterResponse - SP->>PM: SendInitMessage(InitMessage) - PM->>SP: Empty - SP->>PM: SendServerParams(ServerParam) - PM->>SP: Empty - SP->>PM: SendPlayerParams(PlayerParam) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(0)) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(1)) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(17)) - PM->>SP: Empty - SS->>SP: Observation - Note over SP: Convert observation to State - SP->>PM: GetPlayerActions(State) - PM->>SP: PlayerActions - Note over SP: Convert Actions to Low-Level Commands - SP->>SS: Commands - ``` - """ - - def __init__(self, channel): - """Constructor. - - Args: - channel: A grpc.Channel. - """ - self.GetPlayerActions = channel.unary_unary( - '/protos.Game/GetPlayerActions', - request_serializer=service__pb2.State.SerializeToString, - response_deserializer=service__pb2.PlayerActions.FromString, - _registered_method=True) - self.GetCoachActions = channel.unary_unary( - '/protos.Game/GetCoachActions', - request_serializer=service__pb2.State.SerializeToString, - response_deserializer=service__pb2.CoachActions.FromString, - _registered_method=True) - self.GetTrainerActions = channel.unary_unary( - '/protos.Game/GetTrainerActions', - request_serializer=service__pb2.State.SerializeToString, - response_deserializer=service__pb2.TrainerActions.FromString, - _registered_method=True) - self.SendInitMessage = channel.unary_unary( - '/protos.Game/SendInitMessage', - request_serializer=service__pb2.InitMessage.SerializeToString, - response_deserializer=service__pb2.Empty.FromString, - _registered_method=True) - self.SendServerParams = channel.unary_unary( - '/protos.Game/SendServerParams', - request_serializer=service__pb2.ServerParam.SerializeToString, - response_deserializer=service__pb2.Empty.FromString, - _registered_method=True) - self.SendPlayerParams = channel.unary_unary( - '/protos.Game/SendPlayerParams', - request_serializer=service__pb2.PlayerParam.SerializeToString, - response_deserializer=service__pb2.Empty.FromString, - _registered_method=True) - self.SendPlayerType = channel.unary_unary( - '/protos.Game/SendPlayerType', - request_serializer=service__pb2.PlayerType.SerializeToString, - response_deserializer=service__pb2.Empty.FromString, - _registered_method=True) - self.Register = channel.unary_unary( - '/protos.Game/Register', - request_serializer=service__pb2.RegisterRequest.SerializeToString, - response_deserializer=service__pb2.RegisterResponse.FromString, - _registered_method=True) - self.SendByeCommand = channel.unary_unary( - '/protos.Game/SendByeCommand', - request_serializer=service__pb2.RegisterResponse.SerializeToString, - response_deserializer=service__pb2.Empty.FromString, - _registered_method=True) - self.GetBestPlannerAction = channel.unary_unary( - '/protos.Game/GetBestPlannerAction', - request_serializer=service__pb2.BestPlannerActionRequest.SerializeToString, - response_deserializer=service__pb2.BestPlannerActionResponse.FromString, - _registered_method=True) - - -class GameServicer(object): - """ - The Game service provides various RPC methods for interacting with a soccer simulation. - - ```mermaid - sequenceDiagram - participant SS as SoccerSimulationServer - participant SP as SoccerSimulationProxy - participant PM as PlayMakerServer - Note over SS,PM: Run - SP->>SS: Connect - SS->>SP: OK, Unum - SS->>SP: ServerParam - SS->>SP: PlayerParam - SS->>SP: PlayerType (0) - SS->>SP: PlayerType (1) - SS->>SP: PlayerType (17) - SP->>PM: Register(RegisterRequest) - PM->>SP: RegisterResponse - SP->>PM: SendInitMessage(InitMessage) - PM->>SP: Empty - SP->>PM: SendServerParams(ServerParam) - PM->>SP: Empty - SP->>PM: SendPlayerParams(PlayerParam) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(0)) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(1)) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(17)) - PM->>SP: Empty - SS->>SP: Observation - Note over SP: Convert observation to State - SP->>PM: GetPlayerActions(State) - PM->>SP: PlayerActions - Note over SP: Convert Actions to Low-Level Commands - SP->>SS: Commands - ``` - """ - - def GetPlayerActions(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def GetCoachActions(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def GetTrainerActions(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def SendInitMessage(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def SendServerParams(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def SendPlayerParams(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def SendPlayerType(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def Register(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def SendByeCommand(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - def GetBestPlannerAction(self, request, context): - """Missing associated documentation comment in .proto file.""" - context.set_code(grpc.StatusCode.UNIMPLEMENTED) - context.set_details('Method not implemented!') - raise NotImplementedError('Method not implemented!') - - -def add_GameServicer_to_server(servicer, server): - rpc_method_handlers = { - 'GetPlayerActions': grpc.unary_unary_rpc_method_handler( - servicer.GetPlayerActions, - request_deserializer=service__pb2.State.FromString, - response_serializer=service__pb2.PlayerActions.SerializeToString, - ), - 'GetCoachActions': grpc.unary_unary_rpc_method_handler( - servicer.GetCoachActions, - request_deserializer=service__pb2.State.FromString, - response_serializer=service__pb2.CoachActions.SerializeToString, - ), - 'GetTrainerActions': grpc.unary_unary_rpc_method_handler( - servicer.GetTrainerActions, - request_deserializer=service__pb2.State.FromString, - response_serializer=service__pb2.TrainerActions.SerializeToString, - ), - 'SendInitMessage': grpc.unary_unary_rpc_method_handler( - servicer.SendInitMessage, - request_deserializer=service__pb2.InitMessage.FromString, - response_serializer=service__pb2.Empty.SerializeToString, - ), - 'SendServerParams': grpc.unary_unary_rpc_method_handler( - servicer.SendServerParams, - request_deserializer=service__pb2.ServerParam.FromString, - response_serializer=service__pb2.Empty.SerializeToString, - ), - 'SendPlayerParams': grpc.unary_unary_rpc_method_handler( - servicer.SendPlayerParams, - request_deserializer=service__pb2.PlayerParam.FromString, - response_serializer=service__pb2.Empty.SerializeToString, - ), - 'SendPlayerType': grpc.unary_unary_rpc_method_handler( - servicer.SendPlayerType, - request_deserializer=service__pb2.PlayerType.FromString, - response_serializer=service__pb2.Empty.SerializeToString, - ), - 'Register': grpc.unary_unary_rpc_method_handler( - servicer.Register, - request_deserializer=service__pb2.RegisterRequest.FromString, - response_serializer=service__pb2.RegisterResponse.SerializeToString, - ), - 'SendByeCommand': grpc.unary_unary_rpc_method_handler( - servicer.SendByeCommand, - request_deserializer=service__pb2.RegisterResponse.FromString, - response_serializer=service__pb2.Empty.SerializeToString, - ), - 'GetBestPlannerAction': grpc.unary_unary_rpc_method_handler( - servicer.GetBestPlannerAction, - request_deserializer=service__pb2.BestPlannerActionRequest.FromString, - response_serializer=service__pb2.BestPlannerActionResponse.SerializeToString, - ), - } - generic_handler = grpc.method_handlers_generic_handler( - 'protos.Game', rpc_method_handlers) - server.add_generic_rpc_handlers((generic_handler,)) - server.add_registered_method_handlers('protos.Game', rpc_method_handlers) - - - # This class is part of an EXPERIMENTAL API. -class Game(object): - """ - The Game service provides various RPC methods for interacting with a soccer simulation. - - ```mermaid - sequenceDiagram - participant SS as SoccerSimulationServer - participant SP as SoccerSimulationProxy - participant PM as PlayMakerServer - Note over SS,PM: Run - SP->>SS: Connect - SS->>SP: OK, Unum - SS->>SP: ServerParam - SS->>SP: PlayerParam - SS->>SP: PlayerType (0) - SS->>SP: PlayerType (1) - SS->>SP: PlayerType (17) - SP->>PM: Register(RegisterRequest) - PM->>SP: RegisterResponse - SP->>PM: SendInitMessage(InitMessage) - PM->>SP: Empty - SP->>PM: SendServerParams(ServerParam) - PM->>SP: Empty - SP->>PM: SendPlayerParams(PlayerParam) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(0)) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(1)) - PM->>SP: Empty - SP->>PM: SendPlayerType(PlayerType(17)) - PM->>SP: Empty - SS->>SP: Observation - Note over SP: Convert observation to State - SP->>PM: GetPlayerActions(State) - PM->>SP: PlayerActions - Note over SP: Convert Actions to Low-Level Commands - SP->>SS: Commands - ``` - """ - - @staticmethod - def GetPlayerActions(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/GetPlayerActions', - service__pb2.State.SerializeToString, - service__pb2.PlayerActions.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def GetCoachActions(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/GetCoachActions', - service__pb2.State.SerializeToString, - service__pb2.CoachActions.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def GetTrainerActions(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/GetTrainerActions', - service__pb2.State.SerializeToString, - service__pb2.TrainerActions.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def SendInitMessage(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/SendInitMessage', - service__pb2.InitMessage.SerializeToString, - service__pb2.Empty.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def SendServerParams(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/SendServerParams', - service__pb2.ServerParam.SerializeToString, - service__pb2.Empty.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def SendPlayerParams(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/SendPlayerParams', - service__pb2.PlayerParam.SerializeToString, - service__pb2.Empty.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def SendPlayerType(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/SendPlayerType', - service__pb2.PlayerType.SerializeToString, - service__pb2.Empty.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def Register(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/Register', - service__pb2.RegisterRequest.SerializeToString, - service__pb2.RegisterResponse.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def SendByeCommand(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/SendByeCommand', - service__pb2.RegisterResponse.SerializeToString, - service__pb2.Empty.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) - - @staticmethod - def GetBestPlannerAction(request, - target, - options=(), - channel_credentials=None, - call_credentials=None, - insecure=False, - compression=None, - wait_for_ready=None, - timeout=None, - metadata=None): - return grpc.experimental.unary_unary( - request, - target, - '/protos.Game/GetBestPlannerAction', - service__pb2.BestPlannerActionRequest.SerializeToString, - service__pb2.BestPlannerActionResponse.FromString, - options, - channel_credentials, - insecure, - call_credentials, - compression, - wait_for_ready, - timeout, - metadata, - _registered_method=True) diff --git a/src/behaviors/bhv_block.py b/src/behaviors/bhv_block.py index 92ddef7..d2b2658 100644 --- a/src/behaviors/bhv_block.py +++ b/src/behaviors/bhv_block.py @@ -4,8 +4,10 @@ from pyrusgeom.geom_2d import * from pyrusgeom.soccer_math import * from service_pb2 import * +from src.interfaces.IBehavior import IBehavior -class Bhv_Block: + +class Bhv_Block(IBehavior): """ Bhv_Block is a behavior class that determines whether an agent should block the ball based on the predicted future positions of the ball and the players. Methods diff --git a/src/behaviors/bhv_kick_planner.py b/src/behaviors/bhv_kick_planner.py new file mode 100644 index 0000000..1d16429 --- /dev/null +++ b/src/behaviors/bhv_kick_planner.py @@ -0,0 +1,87 @@ +from src.interfaces.IBehavior import IBehavior +from src.interfaces.IAgent import IAgent +from pyrusgeom.soccer_math import * +from pyrusgeom.geom_2d import * +from service_pb2 import * + + +class BhvKickPlanner(IBehavior): + """ + Decision maker class for an agent with the ball. + + Methods + ------- + __init__(): + Initializes the WithBallDecisionMaker instance. + + execute(agent: IAgent): + Makes a decision for the agent when it has the ball. + + _get_helios_offensive_planner(): + Returns an instance of HeliosOffensivePlanner. + + _get_planner_evaluation(agent: IAgent): + Returns an instance of PlannerEvaluation. + + _get_planner_evaluation_effector(agent: IAgent): + Returns an instance of PlannerEvaluationEffector. + + _get_opponent_effector(agent: IAgent): + Determines the opponent effector based on the agent's world model. + """ + + def __init__(self): + pass + + def execute(self, agent: IAgent): + agent.logger.debug("--- WithBallDecisionMaker ---") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + + agent.add_action( + PlayerAction(helios_offensive_planner=self._get_helios_offensive_planner(agent)) + ) + + def _get_helios_offensive_planner(self, agent): + """ Summary + In this function you can create an instance of HeliosOffensivePlanner and set its attributes. + The HeliosOffensivePlanner is a message that ask proxy to create a tree and find the best chain of actions and execute the first action of the chain. + + Returns: + _type_: HeliosOffensivePlanner + """ + res = HeliosOffensivePlanner(evaluation=self._get_planner_evaluation(agent)) + res.lead_pass = True + res.direct_pass = True + res.through_pass = True + res.simple_pass = True + res.short_dribble = True + res.long_dribble = True + res.simple_shoot = True + res.simple_dribble = True + res.cross = True + + return res + + def _get_planner_evaluation(self, agent: IAgent): + return PlannerEvaluation( + effectors=self._get_planner_evaluation_effector(agent), + ) + + def _get_planner_evaluation_effector(self, agent: IAgent): + return PlannerEvaluationEffector( + opponent_effector=self._get_opponent_effector(agent), + ) + + def _get_opponent_effector(self, agent: IAgent): + wm = agent.wm + + if wm.ball.position.x > 30: + negetive_effect_by_distance = [-5, -4, -3, -2, -1] + else: + negetive_effect_by_distance = [-30, -25, -20, -15, -10, -4, -3, -2, -1] + + return OpponentEffector( + negetive_effect_by_distance=negetive_effect_by_distance, + negetive_effect_by_distance_based_on_first_layer=False, + ) diff --git a/src/behaviors/bhv_penalty.py b/src/behaviors/bhv_penalty.py new file mode 100644 index 0000000..b15224a --- /dev/null +++ b/src/behaviors/bhv_penalty.py @@ -0,0 +1,18 @@ + +from src.interfaces.IAgent import IAgent +from src.utils.convertor import Convertor +from pyrusgeom.geom_2d import * +from pyrusgeom.soccer_math import * +from service_pb2 import * +from src.interfaces.IBehavior import IBehavior + + +class BhvPenalty(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent) -> bool: + agent.logger.debug("BhvPenalty.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + agent.add_action(PlayerAction(helios_penalty=HeliosPenalty())) \ No newline at end of file diff --git a/src/behaviors/bhv_setplay.py b/src/behaviors/bhv_setplay.py new file mode 100644 index 0000000..c87ea8e --- /dev/null +++ b/src/behaviors/bhv_setplay.py @@ -0,0 +1,18 @@ + +from src.interfaces.IAgent import IAgent +from src.utils.convertor import Convertor +from pyrusgeom.geom_2d import * +from pyrusgeom.soccer_math import * +from service_pb2 import * +from src.interfaces.IBehavior import IBehavior + + +class BhvSetPlay(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent) -> bool: + agent.logger.debug("BhvSetPlay.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + agent.add_action(PlayerAction(helios_set_play=HeliosSetPlay())) \ No newline at end of file diff --git a/src/behaviors/bhv_starter_kick_planner.py b/src/behaviors/bhv_starter_kick_planner.py new file mode 100644 index 0000000..91f76ef --- /dev/null +++ b/src/behaviors/bhv_starter_kick_planner.py @@ -0,0 +1,16 @@ +from src.interfaces.IBehavior import IBehavior +from src.interfaces.IAgent import IAgent +from pyrusgeom.soccer_math import * +from pyrusgeom.geom_2d import * +from service_pb2 import * + + +class BhvStarterKickPlanner(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent): + agent.logger.debug("BhvStarterKickPlanner.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + raise NotImplementedError("BhvStarterKickPlanner.execute not implemented") diff --git a/src/behaviors/bhv_starter_penalty.py b/src/behaviors/bhv_starter_penalty.py new file mode 100644 index 0000000..240bab3 --- /dev/null +++ b/src/behaviors/bhv_starter_penalty.py @@ -0,0 +1,18 @@ + +from src.interfaces.IAgent import IAgent +from src.utils.convertor import Convertor +from pyrusgeom.geom_2d import * +from pyrusgeom.soccer_math import * +from service_pb2 import * +from src.interfaces.IBehavior import IBehavior + + +class BhvStarterPenalty(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent) -> bool: + agent.logger.debug("BhvStarterPenalty.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + raise NotImplementedError("BhvStarterPenalty.execute not implemented") \ No newline at end of file diff --git a/src/behaviors/bhv_starter_setplay.py b/src/behaviors/bhv_starter_setplay.py new file mode 100644 index 0000000..f971c86 --- /dev/null +++ b/src/behaviors/bhv_starter_setplay.py @@ -0,0 +1,18 @@ + +from src.interfaces.IAgent import IAgent +from src.utils.convertor import Convertor +from pyrusgeom.geom_2d import * +from pyrusgeom.soccer_math import * +from service_pb2 import * +from src.interfaces.IBehavior import IBehavior + + +class BhvStarterSetPlay(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent) -> bool: + agent.logger.debug("BhvSetPlay.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + raise NotImplementedError("BhvStarterSetPlay.execute not implemented") \ No newline at end of file diff --git a/src/behaviors/bhv_starter_tackle.py b/src/behaviors/bhv_starter_tackle.py new file mode 100644 index 0000000..ebba524 --- /dev/null +++ b/src/behaviors/bhv_starter_tackle.py @@ -0,0 +1,18 @@ + +from src.interfaces.IAgent import IAgent +from src.utils.convertor import Convertor +from pyrusgeom.geom_2d import * +from pyrusgeom.soccer_math import * +from service_pb2 import * +from src.interfaces.IBehavior import IBehavior + + +class BhvStarterTackle(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent) -> bool: + agent.logger.debug("BhvStarterTackle.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + raise NotImplementedError("BhvStarterTackle.execute not implemented") \ No newline at end of file diff --git a/src/behaviors/bhv_tackle.py b/src/behaviors/bhv_tackle.py new file mode 100644 index 0000000..355b6d6 --- /dev/null +++ b/src/behaviors/bhv_tackle.py @@ -0,0 +1,18 @@ + +from src.interfaces.IAgent import IAgent +from src.utils.convertor import Convertor +from pyrusgeom.geom_2d import * +from pyrusgeom.soccer_math import * +from service_pb2 import * +from src.interfaces.IBehavior import IBehavior + + +class BhvTackle(IBehavior): + def __init__(self): + pass + + def execute(self, agent: IAgent) -> bool: + agent.logger.debug("BhvTackle.execute") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + agent.add_action(PlayerAction(helios_basic_tackle=HeliosBasicTackle(min_prob=0.8, body_thr=100.0))) \ No newline at end of file diff --git a/src/decision_makers/kick_decision_maker.py b/src/decision_makers/kick_decision_maker.py index 585b675..d33fa49 100644 --- a/src/decision_makers/kick_decision_maker.py +++ b/src/decision_makers/kick_decision_maker.py @@ -3,83 +3,17 @@ from pyrusgeom.soccer_math import * from pyrusgeom.geom_2d import * from service_pb2 import * +from src.behaviors.bhv_kick_planner import BhvKickPlanner +from src.behaviors.bhv_starter_kick_planner import BhvStarterKickPlanner class KickDecisionMaker(IDecisionMaker): - """ - Decision maker class for an agent with the ball. - - Methods - ------- - __init__(): - Initializes the WithBallDecisionMaker instance. - - make_decision(agent: IAgent): - Makes a decision for the agent when it has the ball. - - _get_helios_offensive_planner(): - Returns an instance of HeliosOffensivePlanner. - - _get_planner_evaluation(agent: IAgent): - Returns an instance of PlannerEvaluation. - - _get_planner_evaluation_effector(agent: IAgent): - Returns an instance of PlannerEvaluationEffector. - - _get_opponent_effector(agent: IAgent): - Determines the opponent effector based on the agent's world model. - """ - def __init__(self): - pass + self.bhv_kick_planner = BhvKickPlanner() + # self.bhv_kick_planner = BhvStarterKickPlanner() def make_decision(self, agent: IAgent): agent.logger.debug("--- WithBallDecisionMaker ---") - - agent.add_action( - PlayerAction(helios_offensive_planner=self._get_helios_offensive_planner(agent)) - ) - - def _get_helios_offensive_planner(self, agent): - """ Summary - In this function you can create an instance of HeliosOffensivePlanner and set its attributes. - The HeliosOffensivePlanner is a message that ask proxy to create a tree and find the best chain of actions and execute the first action of the chain. - - Returns: - _type_: HeliosOffensivePlanner - """ - res = HeliosOffensivePlanner(evaluation=self._get_planner_evaluation(agent)) - res.lead_pass = True - res.direct_pass = True - res.through_pass = True - res.simple_pass = True - res.short_dribble = True - res.long_dribble = True - res.simple_shoot = True - res.simple_dribble = True - res.cross = True - - return res - - def _get_planner_evaluation(self, agent: IAgent): - return PlannerEvaluation( - effectors=self._get_planner_evaluation_effector(agent), - ) - - def _get_planner_evaluation_effector(self, agent: IAgent): - return PlannerEvaluationEffector( - opponent_effector=self._get_opponent_effector(agent), - ) - - def _get_opponent_effector(self, agent: IAgent): - wm = agent.wm - - if wm.ball.position.x > 30: - negetive_effect_by_distance = [-5, -4, -3, -2, -1] - else: - negetive_effect_by_distance = [-30, -25, -20, -15, -10, -4, -3, -2, -1] - - return OpponentEffector( - negetive_effect_by_distance=negetive_effect_by_distance, - negetive_effect_by_distance_based_on_first_layer=False, - ) + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + self.bhv_kick_planner.execute(agent) diff --git a/src/decision_makers/move_decision_maker.py b/src/decision_makers/move_decision_maker.py index 1fe0874..60f7c0f 100644 --- a/src/decision_makers/move_decision_maker.py +++ b/src/decision_makers/move_decision_maker.py @@ -5,6 +5,8 @@ from service_pb2 import * from src.utils.convertor import Convertor from src.behaviors.bhv_block import Bhv_Block +from src.behaviors.bhv_tackle import BhvTackle +from src.behaviors.bhv_starter_tackle import BhvStarterTackle class MoveDecisionMaker(IDecisionMaker): @@ -22,7 +24,9 @@ class MoveDecisionMaker(IDecisionMaker): agent (SamplePlayerAgent): The agent for which the decision is being made. """ def __init__(self): - pass + self.bhv_tackle = BhvTackle() + # self.bhv_tackle = BhvStarterTackle() + self.bhv_block = Bhv_Block() def make_decision(self, agent: IAgent): """ @@ -54,7 +58,7 @@ def make_decision(self, agent: IAgent): agent.logger.debug(f'------ NoBallDecisionMaker ------') wm: WorldModel = agent.wm - agent.add_action(PlayerAction(helios_basic_tackle=HeliosBasicTackle(min_prob=0.8, body_thr=100.0))) + self.bhv_tackle.execute(agent) self_min = wm.intercept_table.self_reach_steps opp_min = wm.intercept_table.first_opponent_reach_steps @@ -68,12 +72,11 @@ def make_decision(self, agent: IAgent): return if opp_min < min(self_min, tm_min): - bhv_block = Bhv_Block() - if bhv_block.execute(agent): + if self.bhv_block.execute(agent): return target_point = agent.strategy.get_position(wm.self.uniform_number) - dash_power = self.get_normal_dash_power(agent) + dash_power = MoveDecisionMaker.get_normal_dash_power(agent) ball_pos = Convertor.convert_rpc_vector2d_to_vector2d(wm.ball.position) self_pos = Convertor.convert_rpc_vector2d_to_vector2d(wm.self.position) @@ -95,8 +98,10 @@ def make_decision(self, agent: IAgent): agent.logger.debug(f'NoBallDecisionMaker: Body_GoToPoint {target_point} {dash_power} {dist_thr} or Body_TurnToBall') + s_recover_mode = False - def get_normal_dash_power(self, agent: IAgent) -> float: + @staticmethod + def get_normal_dash_power(agent: IAgent) -> float: """ Get the normal dash power for the agent based on the current world model state. This method calculates the normal dash power for the agent based on the stamina level, ball position, and other factors. @@ -106,7 +111,6 @@ def get_normal_dash_power(self, agent: IAgent) -> float: float: The normal dash power for the agent. """ wm = agent.wm - self.s_recover_mode = False player_type: PlayerType = agent.player_types[wm.self.type_id] sp: ServerParam = agent.server_params @@ -119,11 +123,11 @@ def get_normal_dash_power(self, agent: IAgent) -> float: opp_min = wm.intercept_table.first_opponent_reach_steps if wm.self.stamina_capacity < 0.01: - self.s_recover_mode = False + MoveDecisionMaker.s_recover_mode = False elif wm.self.stamina < sp.stamina_max * 0.5: - self.s_recover_mode = True + MoveDecisionMaker.s_recover_mode = True elif wm.self.stamina > sp.stamina_max * 0.7: - self.s_recover_mode = False + MoveDecisionMaker.s_recover_mode = False dash_power = sp.max_dash_power my_inc = player_type.stamina_inc_max * wm.self.recovery @@ -131,7 +135,7 @@ def get_normal_dash_power(self, agent: IAgent) -> float: if wm.our_defense_line_x > wm.self.position.x and wm.ball.position.x < wm.our_defense_line_x + 20.0: agent.logger.debug(f'NoBallDecisionMaker: correct DF line. keep max power') dash_power = sp.max_dash_power - elif self.s_recover_mode: + elif MoveDecisionMaker.s_recover_mode: dash_power = my_inc - 25.0 if dash_power < 0.0: dash_power = 0.0 diff --git a/src/decision_makers/penalty_decision_maker.py b/src/decision_makers/penalty_decision_maker.py index 07592f7..d2a81e5 100644 --- a/src/decision_makers/penalty_decision_maker.py +++ b/src/decision_makers/penalty_decision_maker.py @@ -1,11 +1,17 @@ from src.interfaces.IDecisionMaker import IDecisionMaker from src.interfaces.IAgent import IAgent from service_pb2 import * +from src.behaviors.bhv_penalty import BhvPenalty +from src.behaviors.bhv_starter_penalty import BhvStarterPenalty class PenaltyDecisionMaker(IDecisionMaker): def __init__(self): - pass + self.bhv_penalty = BhvPenalty() + # self.bhv_penalty = BhvStarterPenalty() def make_decision(self, agent: IAgent): - agent.add_action(PlayerAction(helios_penalty=HeliosPenalty())) \ No newline at end of file + agent.logger.debug("PenaltyDecisionMaker.make_decision") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + self.bhv_penalty.execute(agent) \ No newline at end of file diff --git a/src/decision_makers/play_on_decision_maker.py b/src/decision_makers/play_on_decision_maker.py index 34d4422..fbe9bc1 100644 --- a/src/decision_makers/play_on_decision_maker.py +++ b/src/decision_makers/play_on_decision_maker.py @@ -22,6 +22,8 @@ def __init__(self): pass def make_decision(self, agent: IAgent): + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) if agent.wm.self.is_kickable: self.kick_decision_maker.make_decision(agent) else: diff --git a/src/decision_makers/set_play_decision_maker.py b/src/decision_makers/set_play_decision_maker.py index 246e6d9..452cbb4 100644 --- a/src/decision_makers/set_play_decision_maker.py +++ b/src/decision_makers/set_play_decision_maker.py @@ -1,11 +1,17 @@ from src.interfaces.IDecisionMaker import IDecisionMaker from src.interfaces.IAgent import IAgent from service_pb2 import * +from src.behaviors.bhv_setplay import BhvSetPlay +from src.behaviors.bhv_starter_setplay import BhvStarterSetPlay class SetPlayDecisionMaker(IDecisionMaker): def __init__(self): - pass + self.bhv_setplay = BhvSetPlay() + # self.bhv_setplay = BhvStarterSetPlay() def make_decision(self, agent: IAgent): - agent.add_action(PlayerAction(helios_set_play=HeliosSetPlay())) \ No newline at end of file + agent.logger.debug("SetPlayDecisionMaker.make_decision") + from src.sample_player_agent import SamplePlayerAgent # Local import to avoid circular import + assert isinstance(agent, SamplePlayerAgent) + self.bhv_setplay.execute(agent) \ No newline at end of file diff --git a/src/interfaces/IBehavior.py b/src/interfaces/IBehavior.py new file mode 100644 index 0000000..e926d4a --- /dev/null +++ b/src/interfaces/IBehavior.py @@ -0,0 +1,7 @@ +from abc import ABC +from src.interfaces.IAgent import IAgent + + +class IBehavior(ABC): + def execute(self, agent: IAgent): + pass \ No newline at end of file diff --git a/src/interfaces/IPositionStrategy.py b/src/interfaces/IPositionStrategy.py index 58a0ad2..4a7acc2 100644 --- a/src/interfaces/IPositionStrategy.py +++ b/src/interfaces/IPositionStrategy.py @@ -7,7 +7,7 @@ class IPositionStrategy(ABC): @abstractmethod - def get_position(self, uniform_number) -> Vector2D: + def get_position(self, uniform_number, agent: IAgent) -> Vector2D: pass @abstractmethod diff --git a/src/sample_player_agent.py b/src/sample_player_agent.py index 6e2a989..44bc4a2 100644 --- a/src/sample_player_agent.py +++ b/src/sample_player_agent.py @@ -2,6 +2,7 @@ from src.decision_makers.decision_maker import DecisionMaker from src.interfaces.IAgent import IAgent from src.strategy.formation_strategy import FormationStrategy +from src.strategy.starter_strategy import StarterStrategy from service_pb2 import * @@ -11,6 +12,7 @@ def __init__(self, logger) -> None: self.logger.info('SamplePlayerAgent created') self.decision_maker = DecisionMaker() self.strategy = FormationStrategy(self.logger) + # self.strategy = StarterStrategy(self.logger) self.wm: WorldModel = None def update_actions(self, wm:WorldModel): diff --git a/src/strategy/formation_strategy.py b/src/strategy/formation_strategy.py index 4d80a07..ec6b093 100644 --- a/src/strategy/formation_strategy.py +++ b/src/strategy/formation_strategy.py @@ -154,7 +154,7 @@ def update(self, agent: IAgent): logger.debug(f'{self._poses=}') - def get_position(self, uniform_number) -> Vector2D: + def get_position(self, uniform_number, agent: IAgent=None) -> Vector2D: return self._poses[uniform_number] def get_role_name(self, uniform_number) -> RoleName: diff --git a/src/strategy/starter_strategy.py b/src/strategy/starter_strategy.py new file mode 100644 index 0000000..3d88ed0 --- /dev/null +++ b/src/strategy/starter_strategy.py @@ -0,0 +1,19 @@ +from src.interfaces.IPositionStrategy import IPositionStrategy +from src.strategy.formation_file import * +from src.interfaces.IAgent import IAgent +from src.strategy.player_role import PlayerRole, RoleName, RoleType, RoleSide +from pyrusgeom.soccer_math import * +from service_pb2 import * +import logging + + +class StarterStrategy(IPositionStrategy): + def __init__(self, logger: logging.Logger): + self.logger = logger + + def update(self, agent: IAgent): + raise NotImplementedError("StarterStrategy.update not implemented") + pass + + def get_position(self, uniform_number, agent: IAgent) -> Vector2D: + raise NotImplementedError("StarterStrategy.get_position not implemented") \ No newline at end of file