down one-on-one

Created Diff never expires
19 Entfernungen
Zeilen
Gesamt
Entfernt
Wörter
Gesamt
Entfernt
Um diese Funktion weiterhin zu nutzen, aktualisieren Sie auf
Diffchecker logo
Diffchecker Pro
273 Zeilen
26 Hinzufügungen
Zeilen
Gesamt
Hinzugefügt
Wörter
Gesamt
Hinzugefügt
Um diese Funktion weiterhin zu nutzen, aktualisieren Sie auf
Diffchecker logo
Diffchecker Pro
280 Zeilen
{
{
version_array: [
version_array: [
// Latest ME Version Physical Constraints always at the top, enter new ME version constraints here:
// Latest ME Version Physical Constraints always at the top, enter new ME version constraints here:


// January 2020 fix
// January 2020 fix
{
{
"min_me_version": 2037, // any match from this version onwards will use these constraints (if there are no newer sets)
"min_me_version": 2037, // any match from this version onwards will use these constraints (if there are no newer sets)


// Speed constraints - all values as ms-1 - used directly in the ME after being scaled
// Speed constraints - all values as ms-1 - used directly in the ME after being scaled
"speed_scaler": 10000, // below values are divided by this to get the correct Match Real value
"speed_scaler": 10000, // below values are divided by this to get the correct Match Real value
"very_slow_walk_speed": 4470,
"very_slow_walk_speed": 4470,
"slow_walk_speed": 8940,
"slow_walk_speed": 8940,
"walk_speed": 13410,
"walk_speed": 13410,
"fast_walk_speed": 17880,
"fast_walk_speed": 17880,
"slow_jog_speed": 23000,
"slow_jog_speed": 23000,
"jog_speed": 26820,
"jog_speed": 26820,
"moderate_jog_speed": 31290,
"moderate_jog_speed": 31290,
"fast_jog_speed": 35760,
"fast_jog_speed": 35760,
"run_speed": 44704,
"run_speed": 44704,
"sprint_speed": 67056,
"sprint_speed": 67056,
"top_speed": 89408,
"top_speed": 89408,
"base_top_speed": 78000,
"base_top_speed": 78000,
"theoretical_max_running_speed": 122700,
"theoretical_max_running_speed": 122700,
"theoretical_min_diving_speed": 50000,
"theoretical_min_diving_speed": 50000,
"theoretical_max_diving_speed": 75000,
"theoretical_max_diving_speed": 75000,


// The min/max speeds of walk/jog/run speed ranges are calculated in PHYSICAL_CONSTRAINTS helper class based on the above values
// The min/max speeds of walk/jog/run speed ranges are calculated in PHYSICAL_CONSTRAINTS helper class based on the above values


// Acceleration/deceleration constraints - all values as ms-2 - theoretical values
// Acceleration/deceleration constraints - all values as ms-2 - theoretical values
"acceleration_scaler": 10000, // below values are divided by this to get the correct Match Real value
"acceleration_scaler": 10000, // below values are divided by this to get the correct Match Real value
"theoretical_min_acceleration": 2500,
"theoretical_min_acceleration": 2500,
"theoretical_max_acceleration": 89408,
"theoretical_max_acceleration": 89408,
"theoretical_min_diving_acceleration": 25000,
"theoretical_min_diving_acceleration": 25000,
"theoretical_max_diving_acceleration": 89408, // should always be the same as top speed
"theoretical_max_diving_acceleration": 89408, // should always be the same as top speed
"theoretical_min_deceleration": 15000,
"theoretical_min_deceleration": 15000,
"theoretical_max_deceleration": 44704, // should always be top speed / 2
"theoretical_max_deceleration": 67056, // should always be top speed / 2


// Turning rate constraints for turning facing - all values as angles / second - theoretical values
// Turning rate constraints for turning facing - all values as angles / second - theoretical values
"theoretical_max_turning_rate": 180,
"theoretical_max_turning_rate": 180,
"theoretical_min_turning_rate": 30,


// Direction change rate constraints - all values as angles / second - theoretical values per speed range (walk/jog/run)
// Direction change rate constraints - all values as angles / second - theoretical values per speed range (walk/jog/run)
"theoretical_max_potential_direction_change_walk": 192,
"theoretical_max_potential_direction_change_walk": 300,
"theoretical_min_potential_direction_change_walk": 52,
"theoretical_min_potential_direction_change_walk": 40,
"theoretical_max_potential_direction_change_jog": 104,
"theoretical_max_potential_direction_change_jog": 150,
"theoretical_min_potential_direction_change_jog": 15,
"theoretical_min_potential_direction_change_jog": 20,
"theoretical_max_potential_direction_change_run": 53,
"theoretical_max_potential_direction_change_run": 75,
"theoretical_min_potential_direction_change_run": 15,
"theoretical_min_potential_direction_change_run": 10,


// Delays - all values as milliseconds at 250ms intervals (these will be stored internally as match slices - one slice is 0.25s, so 4 slices are 1s)
// Delays - all values as milliseconds at 250ms intervals (these will be stored internally as match slices - one slice is 0.25s, so 4 slices are 1s)
"min_delay_for_diving_header": 2000, // 2s - 8 slices
"min_delay_for_diving_header": 2000, // 2s - 8 slices
"min_delay_for_normal_header": 1000, // 1s - 4 slices
"min_delay_for_normal_header": 1000, // 1s - 4 slices


"min_delay_for_slide_tackle_do": 1500, // 1.5s - 6 slices
"min_delay_for_slide_tackle_do": 1700, // 1.5s - 6
"max_delay_for_slide_tackle_do": 1800, // 1.5s - 6 slices
"min_delay_for_slide_tackle_receive": 750, // 0.75s - 3 slices
"min_delay_for_slide_tackle_receive": 750, // 0.75s - 3 slices
"min_delay_for_ball_lunge_do": 1500, // 1.5s - 6 slices
"min_delay_for_ball_lunge_do": 700, // 1.5s - 6 slices
"max_delay_for_ball_lunge_do": 900, // 1.5s - 6 slices
"min_delay_for_ball_lunge_receive": 750, // 0.75s - 3 slices
"min_delay_for_ball_lunge_receive": 750, // 0.75s - 3 slices
"min_delay_for_block_tackle_do": 500, // 0.5s - 2 slices
"min_delay_for_block_tackle_do": 450, // 0.5s - 2 slices
"max_delay_for_block_tackle_do": 550, // 0.5s - 2 slices
"min_delay_for_block_tackle_receive": 750, // 0.75s - 3 slices
"min_delay_for_block_tackle_receive": 750, // 0.75s - 3 slices
"min_delay_for_deflect_ball_do": 250, // 0.25s - 1 slices
"min_delay_for_deflect_ball_do": 250, // 0.25s - 1 slices
"min_delay_for_deflect_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_deflect_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_do": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_do": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_receive": 2000, // 2s - 8 slices
"min_delay_for_shoulder_charge_receive": 2000, // 2s - 8 slices
"min_delay_for_force_opponent_to_lose_ball_do": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_do": 450, // 0.5s - 2 slices
"max_delay_for_force_opponent_to_lose_ball_do": 550, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_shirt_tug_do": 0, // 0
"min_delay_for_shirt_tug_do": 0, // 0
"min_delay_for_shirt_tug_receive": 500, // 0.5s - 2 slices
"min_delay_for_shirt_tug_receive": 500, // 0.5s - 2 slices
"min_delay_for_obstruct_do": 1000, // 1s - 4 slices
"min_delay_for_obstruct_do": 1000, // 1s - 4 slices
"min_delay_for_obstruct_receive": 2000, // 2s - 8 slices
"min_delay_for_obstruct_receive": 2000, // 2s - 8 slices
"min_delay_for_two_footed_tackle_do": 1500, // 1.5s - 6 slices
"min_delay_for_two_footed_tackle_do": 1500, // 1.5s - 6 slices
"min_delay_for_two_footed_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_two_footed_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_trip_do": 750, // 0.75s - 3 slices
"min_delay_for_trip_do": 750, // 0.75s - 3 slices
"min_delay_for_trip_receive": 3000, // 3s - 12 slices
"min_delay_for_trip_receive": 3000, // 3s - 12 slices
"min_delay_for_foot_up_in_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_foot_up_in_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_foot_up_in_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_foot_up_in_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_push_opponent_do": 500, // 0.5s - 2 slices
"min_delay_for_push_opponent_do": 500, // 0.5s - 2 slices
"min_delay_for_push_opponen_receive": 2000, // 2s - 8 slices
"min_delay_for_push_opponen_receive": 2000, // 2s - 8 slices
"min_delay_for_violent_act_do": 500, // 0.5s - 2 slices - elbow, punch, head butt, kick, shove
"min_delay_for_violent_act_do": 500, // 0.5s - 2 slices - elbow, punch, head butt, kick, shove
"min_delay_for_violent_act_receive": 1000, // 1s - 4 slices
"min_delay_for_violent_act_receive": 1000, // 1s - 4 slices
"min_delay_for_celebrating_a_goal": 3000, // 3s - 12 slices
"min_delay_for_celebrating_a_goal": 3000, // 3s - 12 slices


"min_delay_keeper_save_intentionally_drop_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_intentionally_drop_ball": 300, // 0.5s - 2 slices
"min_delay_keeper_save_dive_and_hold_ball": 2000, // 2s - 8 slices
"min_delay_keeper_save_dive_and_hold_ball": 2000, // 2s - 8 slices
"min_delay_keeper_save_dive_but_not_held": 750, // 0.75s - 3 slices
"min_delay_keeper_save_dive_but_not_held": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_hold_ball": 500, // 0.5s - 2 slices
"max_delay_keeper_save_dive_but_not_held": 650, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_not_held": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_hold_ball": 700, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_not_held": 400, // 0.5s - 2 slices
"max_delay_keeper_save_no_dive_not_held": 550, // 0.5s - 2 slices
"min_delay_keeper_drop_ball_for_distribution": 1000, // 1s - 4 slices
"min_delay_keeper_drop_ball_for_distribution": 1000, // 1s - 4 slices


"min_delay_for_getting_injured": 2000, // 2s - 8 slices
"min_delay_for_getting_injured": 2000, // 2s - 8 slices
"min_extra_delay_for_falling_down_before_injury": 4000, // 4s - 16 slices
"min_extra_delay_for_falling_down_before_injury": 4000, // 4s - 16 slices


"min_delay_for_player_stop_to_avoid_collision": 500 // 0.5s - 2 slices
"min_delay_for_player_stop_to_avoid_collision": 200 // 0.5s - 2 slices
},
},


// October 2019 fix
// October 2019 fix
{
{
"min_me_version": 1957, // any match from this version onwards will use these constraints (if there are no newer sets)
"min_me_version": 1957, // any match from this version onwards will use these constraints (if there are no newer sets)


// Speed constraints - all values as ms-1 - used directly in the ME after being scaled
// Speed constraints - all values as ms-1 - used directly in the ME after being scaled
"speed_scaler": 10000, // below values are divided by this to get the correct Match Real value
"speed_scaler": 10000, // below values are divided by this to get the correct Match Real value
"very_slow_walk_speed": 4470,
"very_slow_walk_speed": 4470,
"slow_walk_speed": 8940,
"slow_walk_speed": 8940,
"walk_speed": 13410,
"walk_speed": 13410,
"fast_walk_speed": 17880,
"fast_walk_speed": 17880,
"slow_jog_speed": 23000,
"slow_jog_speed": 23000,
"jog_speed": 26820,
"jog_speed": 26820,
"moderate_jog_speed": 31290,
"moderate_jog_speed": 31290,
"fast_jog_speed": 35760,
"fast_jog_speed": 35760,
"run_speed": 44704,
"run_speed": 44704,
"sprint_speed": 67056,
"sprint_speed": 67056,
"top_speed": 89408,
"top_speed": 89408,
"base_top_speed": 78000,
"base_top_speed": 78000,
"theoretical_max_running_speed": 122700,
"theoretical_max_running_speed": 122700,
"theoretical_min_diving_speed": 50000,
"theoretical_min_diving_speed": 50000,
"theoretical_max_diving_speed": 75000,
"theoretical_max_diving_speed": 75000,


// The min/max speeds of walk/jog/run speed ranges are calculated in PHYSICAL_CONSTRAINTS helper class based on the above values
// The min/max speeds of walk/jog/run speed ranges are calculated in PHYSICAL_CONSTRAINTS helper class based on the above values


// Acceleration/deceleration constraints - all values as ms-2 - theoretical values
// Acceleration/deceleration constraints - all values as ms-2 - theoretical values
"acceleration_scaler": 10000, // below values are divided by this to get the correct Match Real value
"acceleration_scaler": 10000, // below values are divided by this to get the correct Match Real value
"theoretical_min_acceleration": 2500,
"theoretical_min_acceleration": 2500,
"theoretical_max_acceleration": 89408,
"theoretical_max_acceleration": 89408,
"theoretical_min_diving_acceleration": 25000,
"theoretical_min_diving_acceleration": 25000,
"theoretical_max_diving_acceleration": 89408, // should always be the same as top speed
"theoretical_max_diving_acceleration": 89408, // should always be the same as top speed
"theoretical_min_deceleration": 15000,
"theoretical_min_deceleration": 15000,
"theoretical_max_deceleration": 44704, // should always be top speed / 2
"theoretical_max_deceleration": 44704, // should always be top speed / 2


// Turning rate constraints for turning facing - all values as angles / second - theoretical values
// Turning rate constraints for turning facing - all values as angles / second - theoretical values
"theoretical_max_turning_rate": 180,
"theoretical_max_turning_rate": 180,


// Direction change rate constraints - all values as angles / second - theoretical values per speed range (walk/jog/run)
// Direction change rate constraints - all values as angles / second - theoretical values per speed range (walk/jog/run)
"theoretical_max_potential_direction_change_walk": 192,
"theoretical_max_potential_direction_change_walk": 192,
"theoretical_min_potential_direction_change_walk": 52,
"theoretical_min_potential_direction_change_walk": 52,
"theoretical_max_potential_direction_change_jog": 104,
"theoretical_max_potential_direction_change_jog": 104,
"theoretical_min_potential_direction_change_jog": 15,
"theoretical_min_potential_direction_change_jog": 15,
"theoretical_max_potential_direction_change_run": 53,
"theoretical_max_potential_direction_change_run": 53,
"theoretical_min_potential_direction_change_run": 15,
"theoretical_min_potential_direction_change_run": 15,


// Delays - all values as milliseconds at 250ms intervals (these will be stored internally as match slices - one slice is 0.25s, so 4 slices are 1s)
// Delays - all values as milliseconds at 250ms intervals (these will be stored internally as match slices - one slice is 0.25s, so 4 slices are 1s)
"min_delay_for_diving_header": 2000, // 2s - 8 slices
"min_delay_for_diving_header": 2000, // 2s - 8 slices
"min_delay_for_normal_header": 1000, // 1s - 4 slices
"min_delay_for_normal_header": 1000, // 1s - 4 slices


"min_delay_for_slide_tackle_do": 500, // 0.5s - 2 slices
"min_delay_for_slide_tackle_do": 500, // 0.5s - 2 slices
"min_delay_for_slide_tackle_receive": 750, // 0.75s - 3 slices
"min_delay_for_slide_tackle_receive": 750, // 0.75s - 3 slices
"min_delay_for_ball_lunge_do": 500, // 0.5s - 2 slices
"min_delay_for_ball_lunge_do": 500, // 0.5s - 2 slices
"min_delay_for_ball_lunge_receive": 750, // 0.75s - 3 slices
"min_delay_for_ball_lunge_receive": 750, // 0.75s - 3 slices
"min_delay_for_block_tackle_do": 250, // 0.25s - 1 slices
"min_delay_for_block_tackle_do": 250, // 0.25s - 1 slices
"min_delay_for_block_tackle_receive": 500, // 0.5s - 2 slices
"min_delay_for_block_tackle_receive": 500, // 0.5s - 2 slices
"min_delay_for_deflect_ball_do": 250, // 0.25s - 1 slices
"min_delay_for_deflect_ball_do": 250, // 0.25s - 1 slices
"min_delay_for_deflect_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_deflect_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_do": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_do": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_receive": 2000, // 2s - 8 slices
"min_delay_for_shoulder_charge_receive": 2000, // 2s - 8 slices
"min_delay_for_force_opponent_to_lose_ball_do": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_do": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_shirt_tug_do": 0, // 0
"min_delay_for_shirt_tug_do": 0, // 0
"min_delay_for_shirt_tug_receive": 500, // 0.5s - 2 slices
"min_delay_for_shirt_tug_receive": 500, // 0.5s - 2 slices
"min_delay_for_obstruct_do": 1000, // 1s - 4 slices
"min_delay_for_obstruct_do": 1000, // 1s - 4 slices
"min_delay_for_obstruct_receive": 2000, // 2s - 8 slices
"min_delay_for_obstruct_receive": 2000, // 2s - 8 slices
"min_delay_for_two_footed_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_two_footed_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_two_footed_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_two_footed_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_trip_do": 750, // 0.75s - 3 slices
"min_delay_for_trip_do": 750, // 0.75s - 3 slices
"min_delay_for_trip_receive": 3000, // 3s - 12 slices
"min_delay_for_trip_receive": 3000, // 3s - 12 slices
"min_delay_for_foot_up_in_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_foot_up_in_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_foot_up_in_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_foot_up_in_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_push_opponent_do": 500, // 0.5s - 2 slices
"min_delay_for_push_opponent_do": 500, // 0.5s - 2 slices
"min_delay_for_push_opponen_receive": 2000, // 2s - 8 slices
"min_delay_for_push_opponen_receive": 2000, // 2s - 8 slices
"min_delay_for_violent_act_do": 500, // 0.5s - 2 slices - elbow, punch, head butt, kick, shove
"min_delay_for_violent_act_do": 500, // 0.5s - 2 slices - elbow, punch, head butt, kick, shove
"min_delay_for_violent_act_receive": 1000, // 1s - 4 slices
"min_delay_for_violent_act_receive": 1000, // 1s - 4 slices
"min_delay_for_celebrating_a_goal": 3000, // 3s - 12 slices
"min_delay_for_celebrating_a_goal": 3000, // 3s - 12 slices


"min_delay_keeper_save_intentionally_drop_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_intentionally_drop_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_dive_and_hold_ball": 2000, // 2s - 8 slices
"min_delay_keeper_save_dive_and_hold_ball": 2000, // 2s - 8 slices
"min_delay_keeper_save_dive_but_not_held": 750, // 0.75s - 3 slices
"min_delay_keeper_save_dive_but_not_held": 750, // 0.75s - 3 slices
"min_delay_keeper_save_no_dive_hold_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_hold_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_not_held": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_not_held": 500, // 0.5s - 2 slices
"min_delay_keeper_drop_ball_for_distribution": 1000, // 1s - 4 slices
"min_delay_keeper_drop_ball_for_distribution": 1000, // 1s - 4 slices


"min_delay_for_getting_injured": 2000, // 2s - 8 slices
"min_delay_for_getting_injured": 2000, // 2s - 8 slices
"min_extra_delay_for_falling_down_before_injury": 4000, // 4s - 16 slices
"min_extra_delay_for_falling_down_before_injury": 4000, // 4s - 16 slices


"min_delay_for_player_stop_to_avoid_collision": 500 // 0.5s - 2 slices
"min_delay_for_player_stop_to_avoid_collision": 500 // 0.5s - 2 slices
},
},


// Initial version
// Initial version
{
{
"min_me_version": 1, // any match from this version onwards will use these constraints (if there are no newer sets)
"min_me_version": 1, // any match from this version onwards will use these constraints (if there are no newer sets)


// Speed constraints - all values as ms-1 - used directly in the ME after being scaled
// Speed constraints - all values as ms-1 - used directly in the ME after being scaled
"speed_scaler": 10000, // below values are divided by this to get the correct Match Real value
"speed_scaler": 10000, // below values are divided by this to get the correct Match Real value
"very_slow_walk_speed": 4470,
"very_slow_walk_speed": 4470,
"slow_walk_speed": 8940,
"slow_walk_speed": 8940,
"walk_speed": 13410,
"walk_speed": 13410,
"fast_walk_speed": 17880,
"fast_walk_speed": 17880,
"slow_jog_speed": 23000,
"slow_jog_speed": 23000,
"jog_speed": 26820,
"jog_speed": 26820,
"moderate_jog_speed": 31290,
"moderate_jog_speed": 31290,
"fast_jog_speed": 35760,
"fast_jog_speed": 35760,
"run_speed": 44704,
"run_speed": 44704,
"sprint_speed": 67056,
"sprint_speed": 67056,
"top_speed": 89408,
"top_speed": 89408,
"base_top_speed": 78000,
"base_top_speed": 78000,
"theoretical_max_running_speed": 122700,
"theoretical_max_running_speed": 122700,
"theoretical_min_diving_speed": 50000,
"theoretical_min_diving_speed": 50000,
"theoretical_max_diving_speed": 75000,
"theoretical_max_diving_speed": 75000,


// The min/max speeds of walk/jog/run speed ranges are calculated in PHYSICAL_CONSTRAINTS helper class based on the above values
// The min/max speeds of walk/jog/run speed ranges are calculated in PHYSICAL_CONSTRAINTS helper class based on the above values


// Acceleration/deceleration constraints - all values as ms-2 - theoretical values
// Acceleration/deceleration constraints - all values as ms-2 - theoretical values
"acceleration_scaler": 10000, // below values are divided by this to get the correct Match Real value
"acceleration_scaler": 10000, // below values are divided by this to get the correct Match Real value
"theoretical_min_acceleration": 2500,
"theoretical_min_acceleration": 2500,
"theoretical_max_acceleration": 89408,
"theoretical_max_acceleration": 89408,
"theoretical_min_diving_acceleration": 25000,
"theoretical_min_diving_acceleration": 25000,
"theoretical_max_diving_acceleration": 89408, // should always be the same as top speed
"theoretical_max_diving_acceleration": 89408, // should always be the same as top speed
"theoretical_min_deceleration": 15000,
"theoretical_min_deceleration": 15000,
"theoretical_max_deceleration": 44704, // should always be top speed / 2
"theoretical_max_deceleration": 44704, // should always be top speed / 2


// Turning rate constraints for turning facing - all values as angles / second - theoretical values
// Turning rate constraints for turning facing - all values as angles / second - theoretical values
"theoretical_max_turning_rate": 180,
"theoretical_max_turning_rate": 180,


// Direction change rate constraints - all values as angles / second - theoretical values per speed range (walk/jog/run)
// Direction change rate constraints - all values as angles / second - theoretical values per speed range (walk/jog/run)
"theoretical_max_potential_direction_change_walk": 192,
"theoretical_max_potential_direction_change_walk": 192,
"theoretical_min_potential_direction_change_walk": 52,
"theoretical_min_potential_direction_change_walk": 52,
"theoretical_max_potential_direction_change_jog": 104,
"theoretical_max_potential_direction_change_jog": 104,
"theoretical_min_potential_direction_change_jog": 15,
"theoretical_min_potential_direction_change_jog": 15,
"theoretical_max_potential_direction_change_run": 53,
"theoretical_max_potential_direction_change_run": 53,
"theoretical_min_potential_direction_change_run": 15,
"theoretical_min_potential_direction_change_run": 15,


// Delays - all values as milliseconds at 250ms intervals (these will be stored internally as match slices - one slice is 0.25s, so 4 slices are 1s)
// Delays - all values as milliseconds at 250ms intervals (these will be stored internally as match slices - one slice is 0.25s, so 4 slices are 1s)
"min_delay_for_diving_header": 2000, // 2s - 8 slices
"min_delay_for_diving_header": 2000, // 2s - 8 slices
"min_delay_for_normal_header": 1000, // 1s - 4 slices
"min_delay_for_normal_header": 1000, // 1s - 4 slices


"min_delay_for_slide_tackle_do": 2000, // 2s - 8 slices
"min_delay_for_slide_tackle_do": 2000, // 2s - 8 slices
"min_delay_for_slide_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_slide_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_ball_lunge_do": 2000, // 2s - 8 slices
"min_delay_for_ball_lunge_do": 2000, // 2s - 8 slices
"min_delay_for_ball_lunge_receive": 3000, // 3s - 12 slices
"min_delay_for_ball_lunge_receive": 3000, // 3s - 12 slices
"min_delay_for_block_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_block_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_block_tackle_receive": 1000, // 1s - 4 slices
"min_delay_for_block_tackle_receive": 1000, // 1s - 4 slices
"min_delay_for_deflect_ball_do": 250, // 0.25s - 1 slices
"min_delay_for_deflect_ball_do": 250, // 0.25s - 1 slices
"min_delay_for_deflect_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_deflect_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_do": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_do": 500, // 0.5s - 2 slices
"min_delay_for_shoulder_charge_receive": 2000, // 2s - 8 slices
"min_delay_for_shoulder_charge_receive": 2000, // 2s - 8 slices
"min_delay_for_force_opponent_to_lose_ball_do": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_do": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_force_opponent_to_lose_ball_receive": 500, // 0.5s - 2 slices
"min_delay_for_shirt_tug_do": 0, // 0
"min_delay_for_shirt_tug_do": 0, // 0
"min_delay_for_shirt_tug_receive": 500, // 0.5s - 2 slices
"min_delay_for_shirt_tug_receive": 500, // 0.5s - 2 slices
"min_delay_for_obstruct_do": 1000, // 1s - 4 slices
"min_delay_for_obstruct_do": 1000, // 1s - 4 slices
"min_delay_for_obstruct_receive": 2000, // 2s - 8 slices
"min_delay_for_obstruct_receive": 2000, // 2s - 8 slices
"min_delay_for_two_footed_tackle_do": 2000, // 2s - 8 slices
"min_delay_for_two_footed_tackle_do": 2000, // 2s - 8 slices
"min_delay_for_two_footed_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_two_footed_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_trip_do": 1000, // 1s - 4 slices
"min_delay_for_trip_do": 1000, // 1s - 4 slices
"min_delay_for_trip_receive": 3000, // 3s - 12 slices
"min_delay_for_trip_receive": 3000, // 3s - 12 slices
"min_delay_for_foot_up_in_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_foot_up_in_tackle_do": 1000, // 1s - 4 slices
"min_delay_for_foot_up_in_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_foot_up_in_tackle_receive": 3000, // 3s - 12 slices
"min_delay_for_push_opponent_do": 500, // 0.5s - 2 slices
"min_delay_for_push_opponent_do": 500, // 0.5s - 2 slices
"min_delay_for_push_opponen_receive": 2000, // 2s - 8 slices
"min_delay_for_push_opponen_receive": 2000, // 2s - 8 slices
"min_delay_for_violent_act_do": 500, // 0.5s - 2 slices - elbow, punch, head butt, kick, shove
"min_delay_for_violent_act_do": 500, // 0.5s - 2 slices - elbow, punch, head butt, kick, shove
"min_delay_for_violent_act_receive": 1000, // 1s - 4 slices
"min_delay_for_violent_act_receive": 1000, // 1s - 4 slices
"min_delay_for_celebrating_a_goal": 3000, // 3s - 12 slices
"min_delay_for_celebrating_a_goal": 3000, // 3s - 12 slices


"min_delay_keeper_save_intentionally_drop_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_intentionally_drop_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_dive_and_hold_ball": 2000, // 2s - 8 slices
"min_delay_keeper_save_dive_and_hold_ball": 2000, // 2s - 8 slices
"min_delay_keeper_save_dive_but_not_held": 750, // 0.75s - 3 slices
"min_delay_keeper_save_dive_but_not_held": 750, // 0.75s - 3 slices
"min_delay_keeper_save_no_dive_hold_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_hold_ball": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_not_held": 500, // 0.5s - 2 slices
"min_delay_keeper_save_no_dive_not_held": 500, // 0.5s - 2 slices
"min_delay_keeper_drop_ball_for_distribution": 1000, // 1s - 4 slices
"min_delay_keeper_drop_ball_for_distribution": 1000, // 1s - 4 slices


"min_delay_for_getting_injured": 2000, // 2s - 8 slices
"min_delay_for_getting_injured": 2000, // 2s - 8 slices
"min_extra_delay_for_falling_down_before_injury": 4000, // 4s - 16 slices
"min_extra_delay_for_falling_down_before_injury": 4000, // 4s - 16 slices


"min_delay_for_player_stop_to_avoid_collision": 500 // 0.5s - 2 slices
"min_delay_for_player_stop_to_avoid_collision": 500 // 0.5s - 2 slices
}
}


],
],
}
}