
[Mood Entropy]
	// This is how much we add or subtract to our current mood every 2 seconds if
	// our current mood is different from our entropy mood
	entropy_regeneration_at_0	= 0.1;	// entropy regeneration every 2 seconds at elite level 0	
	entropy_regeneration_at_100	= 0.4;	// entropy regeneration every 2 seconds at elite level 100
										// NOTE: entropy_regeneration_at_100 *MUST* be greater than entropy_regeneration_at_0

[Friendly Fire Building Cheat]
	building_ff_multiplier	= 0.1;	// when a friendly fire shot hits a building, this multiplier is applied to the damage the building takes
									// (note: this should be very small so that friendly fire has a hard time destroying a base accidentally)

[Mood Modifiers]
	// These are modifiers for the current mood when various events occur.
	// NOTE: previously, these were multipliers; now, they are what is ADDED to the mood when the
	// event occurs (usually a negative number to indicate that the mood has lowered).

	shutdown				= -0.5;	// when we are about to be forced to shut down due to overheating
	internal_armor_breached = -0.8;	// when internal armor is damaged
	fall_down				= -2.5;	// when we fall down
	first_arm_hit			= -2.0;	// when our first arm is blown off
	second_arm_hit			= -4.0;	// when both arms are now blown off
	first_leg_hit			= -2.5;	// when one of our legs is taken out (gimped)

	mood_squad_dead_unit_multiplier	= 3.5;	// when a unit dies, we subtract this number divided by the number of living units left in the group from all who remain
											// i.e. in a 4-unit group, we subtract N/3 when the first unit dies, N/2 when the second unit dies, N when the third unit dies
											// (of course, we don't care when the 4th unit dies, because by then the group is no more!)

	interval_multiplier_desperate	= 1.4;	// multiplier for the attack interval when we're in a "desperate" mood
	interval_multiplier_defensive	= 1.1;	// multiplier for the attack interval when we're in a "defensive" mood
	interval_multiplier_neutral		= 1.0;	// multiplier for the attack interval when we're in a "neutral" mood
	interval_multiplier_aggressive	= 0.85;	// multiplier for the attack interval when we're in an "aggressive" mood
	interval_multiplier_brutal		= 0.7;	// multiplier for the attack interval when we're in a "brutal" mood

[Missed Shot Modifiers]
	// These are modifiers used when we're about to fire a shot that we want to miss.

	// The "skew_size" numbers indicate the maximum amount to randomly offset a point from the component we're trying
	// to miss.  Larger numbers mean shots should veer off further from the body part we're pretending to try to hit.
	// WARNING: DO NOT SET THE SKEW SIZE BELOW 1.0!

	// The "skew_increment" numbers indicate, for any given attempt to miss, the multiplier that we temporarily apply to the skew size.
	// I.e. 1.2 indicates "We missed?  OK, exaggerate the skew size by 20% and roll a new point.  We missed again?  OK, repeat."
	// WARNING: DO NOT SET THE SKEW INCREMENT BELOW 1.2!  Also, a larger skew size should be paired with a smaller skew increment and vice versa.
	skew_at_0			=  7.0;			// skew size at base (unmodified) chance-to_hit of 0%; should be less than skew_at_100
	skew_at_100			=  1.5;			// skew size at base (unmodified) chance-to_hit of 100%; should be greater than skew_at_0

	skew_inc_at_0		= 1.3;			// skew increment at base (unmodified) chance-to_hit of 0%
										// NOTE: should be smaller than skew_inc_at_100 since the skew_at_0 is already a large number

	skew_inc_at_100		= 1.5;			// skew increment at base (unmodified) chance-to_hit of 100%
										// NOTE: this should be higher than the skew_inc_at_0 to ensure that we can actually
										// miss in a reasonable number of retries!


[Speed Definitions]
	// This section defines "speeds" that will be used in a later section of this file.
	// Each defines a maximum speed value for that level, in KPH.
	speed_stopped			= 5;	// stopped, or very slow: 0 to N KPH
	speed_slow				= 20;	// moving slowly
	speed_medium			= 50;	// moving at a moderate clip
	speed_fast				= 80;	// moving at a fast speed
	speed_maximum			= 1000;	// moving very fast


[Tonnage Definitions]
	// This section defines mech sizes in terms of tonnage that will be used in a later section of this file.
	// Each size defines a maximum tonnage value for that level.
	mech_tiny				= 1;		// tiny mech: 0 to N tons
	mech_small				= 35;		// small mech
	mech_medium				= 55;		// medium-size mech
	mech_large				= 75;		// large mech
	mech_huge				= 200;	// huge mech


[Distance Definitions]
	// This section defines mech distances in terms of meters that will be used in a later section of this file.
	// Each value defines a maximum distance value for that level.
	distance_adjacent			= 25;		// target is very close: 0 to N meters
	distance_near			= 70;		// target is not far
	distance_medium			= 200;	// target is medium range
	distance_far			= 600;	// target is kinda far away
	distance_very_far			= 2000;	// target is near the edge of my perception

[To-Hit Modifiers]
	// These are multipliers to the to-hit percentage roll for various attributes of the target.
	if_crouched				= 0.8;	// if the target is crouched

	if_tiny				= 0.8;
	if_small				= 0.85;
	if_medium_size			= 0.9;
	if_large				= 0.95;
	if_huge				= 1.0;

	if_stopped				= 1.0;
	if_slow				= 0.95;                                        \
	if_medium_speed			= 0.9;
	if_fast				= 0.8;
	if_maximum				= 0.65;

	if_shooter_stopped		= 1.0;
	if_shooter_slow			= 0.95;
	if_shooter_medium			= 0.90;
	if_shooter_fast			= 0.80;
	if_shooter_maximum		= 0.65;

	if_adjacent				= 1.0;
	if_near				= 0.95;
	if_medium_range			= 0.85;
	if_far				= 0.75;
	if_very_far				= 0.55;

	if_firing_with_one_arm 		= 0.5;

	if_turning				= 0.97;		// the multiplier to be used when the target is turning at the maximum rate (intermediate
										// turning values will be smoothly interpolated between this number and 1)

		// "if_bearing_90" is used as follows:
		//	-if the target is stopped or slow, the value is used
		//  -if the target is medium or fast, the value is squared, then used
		//  -if the target is maximum, the value is cubed, then used

	if_bearing_90			= 0.95;	// the multiplier to use when the target is sideways relative to us
										// (we interpolate between this number and 1.0, with 1.0 used when target is
										//  facing toward or away from us)

[Elite Levels]
	// These are the minimum and maximum elite levels (inclusive) required in order for a vehicle to perform a specific action.

	// These are specified as percentage values, from 0 to 100.  The "min" value must ALWAYS be less than or equal to
	// (probably *much* less than) the max value.  If min > max, the action cannot be carried out!

	// If a unit's current elite level is less than the minimum or greater than the maximum, it will not perform the action.

	// A "min" value of 0 and a "max" value of 100 indicates that the elite level is irrelevant to carrying out the specified task.
	// The "min_tactic_*" numbers are the minimum and maximum elite levels to carry out a given tactic.

	min_evade_when_missiles_shot_at_me		=  65;	// whether or not I will attempt to evade missiles shot directly at me
	max_evade_when_missiles_shot_at_me		= 100;

	min_evade_when_targeted				=  10;	// whether or not I will avoid allowing myself to remain within the player's targeting reticule
	max_evade_when_targeted				= 100;	// for more than a half-second or so (i.e. I try to avoid even letting him target me)

	min_evade_by_jumping				=  70;	// whether or not I can jump as an evasive maneuver
	max_evade_by_jumping				= 100;

	min_evade_by_throttle_override		=  60;	// whether or not I can override my attack throttle (i.e. increase my speed back up to full speed)
	max_evade_by_throttle_override		= 100;	// as an evasive maneuver

	min_evade_by_crouching				=  75;	// whether or not I can crouch as an evasive maneuver (considered for use only if I'm standing still)
	max_evade_by_crouching				= 100;

	min_jump_if_rushed				=  55;	// whether or not I can jump if I think I'm about to collide with the player
	max_jump_if_rushed				= 100;	// (NOTE: this is specifically for enemy AI units against the player; AI units will not use this on each other!)

	min_opportunity_fire				=  10;	// whether or not I can fire at other potential targets when I
	max_opportunity_fire				= 100;	//  can't shoot my current target target (for whatever reason -- torso twisted wrong way, etc.)

	min_look_left_or_right				=  50;	// whether or not a mech can look left/right out of the cockpit and shoot with only that arm
	max_look_left_or_right				= 100;

	min_look_time_at_0				=  2;	// minimum time a unit must be looking from left or right arm before it can fire (at elite level 0)
	min_look_time_at_100				=  0;	// minimum time a unit must be looking from left or right arm before it can fire (at elite level 100)

	switch_to_random_component_picking = 65;	// the point at which I switch from picking the least damaged
												// component on my enemy to picking a random component to hit

	switch_to_most_damaged_component_picking = 91;	// the point at which I switch from picking a random component
													// on my enemy to picking the most damaged

	min_prefer_water					=   0;	// whether or not I should prefer to use water when executing an offensive tactic (i.e. not "retreat")
	max_prefer_water					= 100;

	min_dont_use_limited_ammo_vs_non_mechs	=	1;	// whether I can use limited-ammo weapons against non-mech targets (assuming I have lasers)
	max_dont_use_limited_ammo_vs_non_mechs	= 100;

	min_vulnerable_leg_hiding			=  70;	// whether or not I can take a single damaged/destroyed leg into account when maneuvering or turning in combat
	max_vulnerable_leg_hiding			= 100;

	min_mood_vulnerable_leg_hiding		=   2;	// same as above, but based on mood
	max_mood_vulnerable_leg_hiding		=   7;

	min_throttle_override				=  10;	// minimum elite skill required for certain tactics (such as Retreat) to override my current attack throttle setting

	torso_twist_multiplier_at_0			= 0.65; // this specifies a multiplier that will be used at elite level 0; the AI will interpolate between this value and the value specified below
	torso_twist_use_full_multiplier		=  45;	// specifies an elite skill to use 100% torso twist speed; less than this value, we interpolate according to the number above; greater or equal to this value, we use 100%
												// MUST BE GREATER THAN 0!

[Evasion Characteristics]
	jump_wait_time_at_0					= 30;	// minimum time (in seconds) a mech at elite level 0 must wait between jumps
	jump_wait_time_at_100				= 8;	// minimum time (in seconds) a mech at elite level 100 must wait between jumps

	evade_focus_time_at_0				= 3;	// minimum time (in seconds) the player must be focused on a mech for it to decide to evade, at elite level 0
	evade_focus_time_at_100				= 0.8;	// minimum time (in seconds) the player must be focused on a mech for it to decide to evade, at elite level 100


[Lancemates]
	lancemate_can_attack_radius			= 450;	// radius at which a lancemate searches for enemies to attack automatically
	max_lancemate_distance_from_leader	= 300;	// the maximum distance a lancemate can go from its leader


[Tactics]
	max_defend_distance_from_target		= 120;	// maximum distance anyone using the "defend" tactic can go from its target

	jump_and_shoot_hover_height_min		= 45;	// minimum of how far off the ground a mech using the "jump and shoot" tactic will attempt to hover in midair
	jump_and_shoot_hover_height_max		= 100;	// maximum of how far off the ground a mech using the "jump and shoot" tactic will attempt to hover in midair


[Firing]
	max_fire_cheat_angle			= 25;	// maximum angle (in degrees) by which we can "cheat" when we fire
	max_airplane_fire_cheat_angle		= 50;	// maximum cheat angle for air units
	max_turret_fire_cheat_angle		=  8;	// maximum angle for laser turrets


[Tactic Selection]

	// This section lists constants for automatic tactic selection/switching -- i.e. what tactics to select when you use OrderAttack()
	min_tactic_time						= 10;	// minimum amount of time (in seconds) that we try any given tactic before switching to another tactic

	// Joust

	min_elite_joust						=   0;	// min elite level to select "Joust" tactic
	max_elite_joust						= 100;	// max elite level to select "Joust" tactic

	min_mood_joust						=   6;	// min mood to select "Joust" tactic
	max_mood_joust						=   8;	// max mood to select "Joust" tactic

	// Rush

	min_elite_rush						=   0;	// min elite level to select "Rush" tactic
	max_elite_rush						= 100;	// max elite level to select "Rush" tactic

	min_mood_rush						=   7;	// min mood to select "Rush" tactic
	max_mood_rush						=  10;	// max mood to select "Rush" tactic

	// Hit + Run

	min_elite_hitandrun					=   0;	// min elite level to select "Hit + Run" tactic
	max_elite_hitandrun					= 100;	// max elite level to select "Hit + Run" tactic

	min_mood_hitandrun					=   5;	// min mood to select "Hit + Run" tactic
	max_mood_hitandrun					=   7;	// max mood to select "Hit + Run" tactic

	// Rear

	min_elite_rear						=   0;	// min elite level to select "Rear" tactic
	max_elite_rear						= 100;	// max elite level to select "Rear" tactic

	min_mood_rear						=   3;	// min mood to select "Rear" tactic
	max_mood_rear						=  10;	// max mood to select "Rear" tactic

	// Circle

	min_elite_circle					=   0;	// min elite level to select "Circle of Death" tactic
	max_elite_circle					= 100;	// max elite level to select "Circle of Death" tactic

	min_mood_circle						=   3;	// min mood to select "Circle of Death" tactic
	max_mood_circle						=   8;	// max mood to select "Circle of Death" tactic

	// Retreat

	min_elite_retreat					=   0;	// min elite level to select "Retreat" tactic
	max_elite_retreat					= 100;	// max elite level to select "Retreat" tactic

	min_mood_retreat					=   0;	// min mood to select "Retreat" tactic
	max_mood_retreat					=   2;	// max mood to select "Retreat" tactic

	// Death From Above

	min_elite_dfa						=  70;	// min elite level to select "Death From Above" tactic
	max_elite_dfa						= 100;	// max elite level to select "Death From Above" tactic

	min_mood_dfa						=   7;	// min mood to select "Death From Above" tactic
	max_mood_dfa						=  10;	// max mood to select "Death From Above" tactic


[AI Slope]
			leg_up_slope				= 0.707f;		//cos (45 deg)      slope order for best manuverablity
			leg_down_slope				= 0.5f;		//cos (60 deg)      must be leg, track, wheel, hover
			track_up_slope				= 0.766f;		//cos (40 deg)
			track_down_slope				= 0.707f;		//cos (45 deg)
			wheel_up_slope				= 0.819f;		//cos (35 deg)
			wheel_down_slope				= 0.819f;		//cos (35 deg)
			hover_up_slope				= 0.866f;		//cos (30 deg)
			hover_down_slope				= 0.866f;		//cos (30 deg)

[AI Movement Costs]
			leg_dirt_cost					  = 0;              // this is cost added to base cost of 1 to enter cell
			leg_rock_cost					  = 0;              // negative would be easier to enter
			leg_steel_cost					= 0;              // positive would be harder
			leg_blacktop_cost			  = 0;              // use a number less than -100 for impassable
			leg_glass_cost					= 0;
			leg_brick_cost					= 0;
			leg_grass_cost					= 0;
			leg_wood_cost					  = 0;
			leg_tree_cost					  = 0;
			leg_swamp_cost					= 0;
			leg_concrete_cost			  = 0;
			leg_rough_cost					= 0;
			leg_snow_cost					  = 0;
			leg_underbrush_cost		  = 0;
			leg_shallowwater_cost	  = 0;
			leg_midwater_cost			  = 0;
			leg_oceanicwater_cost	  = 0;
			leg_desert_cost				  = 0;
			leg_flatswamp_cost			= 0;
			leg_thickswamp_cost		  = 0;
//			leg_crackedlava_cost		= 0.5;
//			leg_openlava_cost			= 0.75;
			leg_crackedlava_cost		= -150.0;
			leg_openlava_cost			= -150.0;
			track_dirt_cost				  = 0;
			track_rock_cost				  = 0;
			track_steel_cost				= 0;
			track_blacktop_cost		  = 0;
			track_glass_cost				= 0;
			track_brick_cost				= 0;
			track_grass_cost				= 0;
			track_wood_cost				  = 0;
			track_tree_cost				  = 0;
			track_swamp_cost				= 0;
			track_concrete_cost		  = 0;
			track_rough_cost				= 0;
			track_snow_cost				  = 0;
			track_underbrush_cost	  = 0;
			track_shallowwater_cost = 0;
			track_midwater_cost		  = 0;
			track_oceanicwater_cost = 0;
			track_desert_cost			  = 0;
			track_flatswamp_cost		= 0;
			track_thickswamp_cost	  = 0;
			track_crackedlava_cost		= -150;
			track_openlava_cost			= -150;
			wheel_dirt_cost				  = 0;
			wheel_rock_cost				  = 0;
			wheel_steel_cost				= 0;
			wheel_blacktop_cost		  = 0;
			wheel_glass_cost				= 0;
			wheel_brick_cost				= 0;
			wheel_grass_cost				= 0;
			wheel_wood_cost				  = 0;
			wheel_tree_cost				  = 0;
			wheel_swamp_cost				= 0;
			wheel_concrete_cost		  = 0;
			wheel_rough_cost				= 0;
			wheel_snow_cost				  = 0;
			wheel_underbrush_cost	  = 0;
			wheel_shallowwater_cost = 0;
			wheel_midwater_cost		  = 0;
			wheel_oceanicwater_cost = 0;
			wheel_desert_cost			  = 0;
			wheel_flatswamp_cost		= 0;
			wheel_thickswamp_cost	  = 0;
			wheel_crackedlava_cost		= -150;
			wheel_openlava_cost			= -150;
			hover_dirt_cost				  = 0;
			hover_rock_cost				  = 0;
			hover_steel_cost				= 0;
			hover_blacktop_cost		  = 0;
			hover_glass_cost				= 0;
			hover_brick_cost				= 0;
			hover_grass_cost				= 0;
			hover_wood_cost				  = 0;
			hover_tree_cost				  = 0;
			hover_swamp_cost				= 0;
			hover_concrete_cost		  = 0;
			hover_rough_cost				= 0;
			hover_snow_cost				  = 0;
			hover_underbrush_cost	  = 0;
			hover_shallowwater_cost = 0;
			hover_midwater_cost		  = 0;
			hover_oceanicwater_cost = 0;
			hover_desert_cost			  = 0;
			hover_flatswamp_cost		= 0;
			hover_thickswamp_cost 	= 0;
			hover_crackedlava_cost		= -150;
			hover_openlava_cost		= -150;
[Objective]
    objective_display_time    = 30;       // in seconds.

[Joystick]
    throttle_center           = 0.3       // 0-1
    throttle_dead_low         = 0.25     // on either side of throttle_center
    throttle_dead_high        = 0.06       // on either side of throttle_center

[Skills]
    default_pilot  = 20;
    default_gunnery = 50;
    default_elite = 30;
//    default_minheat = 50;
//    default_maxheat = 80;
    default_minheat = 10;
    default_maxheat = 35;
    default_sensor = 2;			// max time (in seconds) sensor data can be refreshed
    default_blind = 80;			// default multiplier (%) used for night and heavy fog missions if not specified
    default_longrange = 100;	// default additional multiplier (%) applied for long-range shots if not specified
    default_shortrange = 100;	// default additional multiplier (%) applied for short-range shots if not specified
    default_addpilot = 10;
    default_addgunnery = 1;
    default_addelite = 10;
    max_skill_add = 5;            // max value a skill can increase per game
	max_fog_dist_to_use_blind_skill = 400;	// in a non-night mission, we use blind fighting skill if fog is <= this distance


[Piloting]      // modifiers for piloting rolls
    damage_amount       = 1.1;     // this amount is multiplied by tonage of the mech to get the damage to cause a skill check
    fall_damage_minus   = 40;     // points of damage to subtract every second
    fall_splash_multiplier = 0.115;
    min_fall_timer = 10.0;		// was 30.0
    damage_mod          = 0.8;
    low_water_mod       = 0.9;
    mid_water_mod       = 0.8;
    concrete_mod        = 0.9;
    gimped_mod          = 0.5;
    double_damage_mod   = 0.75;
    moving_fast_mod     = 0.75;     // over 50% of max speed
    jump_recover_mod    = 0.75;
    max_water_jump      = 1;        // maximum depth of water allowed for jumping
    flying_turn_rate	= 0.3;		// turn rate to use while jump-jetting in radians per second (0.2 equals about 10 degrees)

//	flying_turn_rate	= 0.2;		// turn rate to use while jump-jetting in radians per second (0.2 equals about 10 degrees)

[Ejecting]	// modifiers for when pilots eject
	eject_chance_for_non_lancemate	= 25;	// chance that a non-lancemate will eject
	eject_chance_for_lancemate		= 60;	// chance that a lancemate will eject when destroyed
	eject_chance_ok_when_ejected	= 40;	// chance that a lancemate will have "OK" status when he ejects
	eject_chance_injured_when_ejected = 30;	// chance that a lancemate will have "injured" status when he ejects
	// NOTE: the chance to be "MIA" when ejected is 100 minus the sum of the chances to be OK or injured when ejected

[Difficulty]    // modifier for difficulty levels
	friend_easy_gunnery_mod      = 1.3;
	friend_medium_gunnery_mod    = 1.1;
	friend_hard_gunnery_mod      = 1.0;
	friend_impossible_gunnery_mod  = 1.0;
	enemy_easy_gunnery_mod      = 0.35;
	enemy_medium_gunnery_mod    = 0.6;
	enemy_hard_gunnery_mod      = 1.00;
	enemy_impossible_gunnery_mod      = 2.0;
	neutral_easy_gunnery_mod      = 1.0;
	neutral_medium_gunnery_mod    = 1.0;
	neutral_hard_gunnery_mod      = 1.0;
	neutral_impossible_gunnery_mod      = 1.0;

[Collision]		// modifiers for collision system
	collision_mech_light_damage			= 0.010 	// was 0.003 	points of damage done per ton per mps of impact
	collision_mech_light_slowdown			= 8.0		// was 8.0 		mps of speed lost by a mech hitting a small building
	collision_mech_light_mech_speed		= 123.456	// was 123.456	square of minimum damaging impact speed in mps from mechs
	collision_mech_light_building_speed		= 25.0	// was 25.0		square of minimum damaging impact speed in mps to large buildings

	collision_mech_medium_tonage			= 20.0	// was 40 		tons required for mech to be considered medium weight (now light/medium)
	collision_mech_medium_damage			= 0.010	// was 0.003	points of damage done per ton per mps of impact
	collision_mech_medium_slowdown		= 6.0		// was 7.0		mps of speed lost by a mech hitting a small building
	collision_mech_medium_mech_speed		= 123.456	// was 123.456	square of minimum damaging impact speed in mps from mechs
	collision_mech_medium_building_speed	= 25.0	// was 25.0		square of minimum damaging impact speed in mps to large buildings

	collision_mech_heavy_tonage			= 65.0	// was 75		tons required for mech to be considered heavy weight (now med/heavy/assault)
	collision_mech_heavy_damage			= 0.010	// was 0.003	points of damage done per ton per mps of impact
	collision_mech_heavy_slowdown			= 1.0		// was 6.0		mps of speed lost by a mech hitting a small building
	collision_mech_heavy_mech_speed		= 123.456	// was 123.456	square of minimum damaging impact speed in mps from mechs
	collision_mech_heavy_building_speed		= 25.0	// was 25.0		square of minimum damaging impact speed in mps to large buildings

	collision_dfa_speed				= 19.6	// (was 19.6) minimum downward impact speed in mps to use DFA constant
	collision_dfa_damage_given			= 0.050	// (was 0.016)points of damage done to target per ton per mps of dfa impact
	collision_dfa_damage_taken			= 0.01	// (was 0.006)points of damage done to landing mech per ton per mps of dfa impact


	collision_tank_slowdown				= 8.0		// mps of speed lost by a tank when hitting a small building or tree

[Salvage]
	chance_salvage 					= 4		// chance for a destroyed mech to be added to salvage

[Mouse]
  mouse_min_change              = 0.015  // minimum the mouse must move to return to center
  mouse_interia_mult            = 0.02  // amount mouse delta is multiplied by, delta is in screen coordinates
  mouse_max_mouse               = 0.75  // maximum the mouse is allowed to be away from center 0-1 range

