# leader_traits contain a list of UnitLeaderTrait with the following structure:
# trait_key = {
# 	type = all # or either of field_marshal, corps_commander, navy
#	trait_type = basic_trait # or either of status_trait, personality_trait, assignable_trait, basic_terrain_trait, assignable_terrain_trait, exile
#	attack_skill = 0 # integer
#	defense_skill = 0 # integer
#	logistics_skill = 0 # integer
#	planning_skill = 0 # integer
#	maneuvering_skill = 0 # integer
#	coordination_skill = 0 # integer
#	attack_skill_factor = 0.0 # decimal
#	defense_skill_factor = 0.0 # decimal
#	logistics_skill_factor = 0.0 # decimal
#	planning_skill_factor = 0.0 # decimal
#	maneuvering_skill_factor = 0.0 # decimal
#	coordination_skill_factor = 0.0 # decimal
#	show_in_combat = yes # boolean
#	override_effect_tooltip = "" # loc key
#	custom_effect_tooltip = "" # loc key
#	custom_prerequisite_tooltip = "" # loc key
#	custom_gain_xp_trigger_tooltip = "" # loc key
#	mutually_exclusive = other_trait # trait key
#	parent = other_trait # trait key
#	num_parents_needed = -1 # integer, -1 means "all"
#	gui_row = -1 # integer, starts at 0, -1 means auto
#	gui_column = -1 # integer, starts at 0, -1 means auto
#	allowed = trigger # scope is a unit leader
#	prerequisites = trigger # scope is an unit leader
#	gain_xp = trigger # scope is a combatant
#	gain_xp_leader = trigger # scope is a unit leader. ROOT is country you are from and FROM is any target nationality for agents
#	gain_xp_on_spotting = 0 # integer
#	modifier = { } # list of modifiers
#	non_shared_modifier = {} #
#	corps_commander_modifier = {} #
#	field_marshal_modifier = {} #
#	sub_unit_modifiers = { # list of sub unit def
#		# e.g.
#		submarine {
#			units = {} # list of adjusters
#			# list of modifiers e.g.
#			naval_visibility = -0.1
#		}
#	}
#	trait_xp_factor = {} # list of trait_key/decimal
#	on_add = effect # scope is an unit leader
#	on_remove = effect # scope is an unit leader
#	daily_effect = effect # scope is an unit leader
#	cost = 1000 # integer
#	ai_will_do = {} # weight
#	new_commander_weight = {} # weight
#	enable_ability = ability_key
#}

leader_traits = {
##################################
# Random Personality/Starting traits
##################################
	old_guard_navy = {
		type = navy
		trait_type = personality_trait

		modifier = {
			experience_gain_factor = -0.25
		}

		new_commander_weight = {
			factor = 1
		}

		ai_will_do = {
			factor = 1
			#Military Junta more likely to favor older admirals
			modifier = {
				factor = 3
				FROM = { is_in_array = { ruling_party = 22 } }
			}
		}
	}
	gentlemanly = {
		type = navy
		trait_type = personality_trait

		modifier = {
			naval_enemy_retreat_chance = 0.2
			navy_org = 5
		}

		new_commander_weight = {
			factor = 1
		}

		ai_will_do = {
			factor = 1
			#Increased chance for aristocrats
			modifier = {
				factor = 3
				FROM = { is_in_array = { ruling_party = 23 } }
			}
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}
	}
	gunnery_expert = {
		type = navy
		trait_type = personality_trait

		modifier = {

		}
		trait_xp_factor = {
			ironside = 0.5	 #+100%
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	cuts_corners = {
		type = navy
		trait_type = personality_trait

		modifier = {
			naval_damage_factor = 0.2
			naval_defense_factor = -0.1
		}
		new_commander_weight = {
			factor = 1
		}
		ai_will_do = {
			factor = 1
		}
	}
	chief_engineer = {
		type = navy
		trait_type = personality_trait

		modifier = {
			critical_receive_chance = -0.05
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	navy_media_personality = {
		type = navy
		trait_type = personality_trait

		modifier = {
			naval_has_potf_in_combat_attack = 0.1
			naval_has_potf_in_combat_defense = 0.1
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	bold = {
		type = navy
		trait_type = personality_trait

		modifier = {
			naval_damage_factor = 0.05
			naval_speed_factor = 0.1
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 0
				has_trait = craven
			}
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	craven = {
		type = navy
		trait_type = personality_trait

		modifier = {
			naval_retreat_chance = 0.25
			naval_damage_factor = -0.05
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 0
				has_trait = bold
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	navy_career_officer = {
		type = navy
		trait_type = personality_trait

		modifier = {
			experience_gain_factor = 0.1
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	cruiser_adherent = {
		type = navy
		trait_type = personality_trait

		modifier = {
			navy_capital_ship_attack_factor = 0.1
			navy_anti_air_attack_factor = -0.2
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	aviation_enthusiast = {
		type = navy
		trait_type = personality_trait

		modifier = {

		}

		trait_xp_factor = {
			air_controller = 0.5	 #+100%
		}

		new_commander_weight = {
			factor = 1
			modifier = {
				factor = 3
				FROM = { has_idea = best_of_the_best_naval_academy_spirit }
			}
		}

		ai_will_do = {
			factor = 1
		}
	}
	caustic_personality = {
		type = navy
		trait_type = personality_trait

		modifier = {
			ships_at_battle_start = -0.25
		}
		new_commander_weight = {
			factor = 1
		}
		ai_will_do = {
			factor = 1
		}
	}
	naval_lineage = {
		type = navy
		trait_type = personality_trait

		modifier = {
			naval_retreat_chance = -0.25
			ships_at_battle_start = 0.25
		}
		new_commander_weight = {
			factor = 1
		}
		ai_will_do = {
			factor = 1
		}
	}


##################################
# Earnable/Assignable Admiral Traits
##################################

	seawolf = {
		type = navy

		gain_xp = {
			submarine > 0.8 # at least 80% subs
		}
		custom_gain_xp_trigger_tooltip = SEAWOLF_TRIGGER_TT

		cost = 700

		modifier = {
			navy_submarine_attack_factor = 0.2 # +X% stronger damage for submarines
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 0
		gui_column = 0
	}
	silent_hunter = {
		type = navy

		modifier = {
			naval_torpedo_reveal_chance_factor = -0.15
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = lancer

		gui_row = 0
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { seawolf }
	}
	torpedo_expert = {
		type = navy

		modifier = {
			naval_torpedo_hit_chance_factor = 0.1
		}

		slot = high_command
		specialist_advisor_trait = navy_submarine_1
		expert_advisor_trait = navy_submarine_2
		genius_advisor_trait = navy_submarine_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 0
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { silent_hunter lancer }
	}

	lancer = {
		type = navy

		modifier = {
			naval_torpedo_screen_penetration_factor = 0.25
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = silent_hunter

		gui_row = 1
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { seawolf superior_tactician }
	}
	loading_drill_master = {
		type = navy

		modifier = {
			naval_torpedo_cooldown_factor = -0.25
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 1
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { silent_hunter lancer }
	}

	fleet_protector = {
		type = navy

		gain_xp = {
			screen_ship > 0.5
		}
		custom_gain_xp_trigger_tooltip = FLEET_PROTECTOR_TRIGGER_TT

		cost = 500

		modifier = {
			screening_efficiency = 0.2
		}

		slot = high_command
		specialist_advisor_trait = navy_screen_1
		expert_advisor_trait = navy_screen_2
		genius_advisor_trait = navy_screen_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 7
		gui_column = 0
	}
	destroyer_leader = {
		type = navy

		sub_unit_modifiers = {
			destroyer = {
				naval_damage_factor = 0.1
				naval_torpedo_hit_chance_factor = 0.1
			}
			stealth_destroyer = {
				naval_damage_factor = 0.1
				naval_torpedo_hit_chance_factor = 0.1
			}
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 6
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { fly_swatter }
	}
	hunter_killer = {
		type = navy

		modifier = {
			navy_submarine_detection_factor = 0.2
		}

		slot = high_command
		specialist_advisor_trait = navy_anti_submarine_1
		expert_advisor_trait = navy_anti_submarine_2
		genius_advisor_trait = navy_anti_submarine_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 7
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { small_ship_captain }
	}

	fly_swatter = {
		type = navy

		gain_xp = {
			is_fighting_air_units = yes
		}
		custom_gain_xp_trigger_tooltip = FLY_SWATTER_TRIGGER_TT

		cost = 300

		modifier = {
			navy_anti_air_attack_factor = 0.1
		}

		slot = high_command
		specialist_advisor_trait = navy_naval_air_defense_1
		expert_advisor_trait = navy_naval_air_defense_2
		genius_advisor_trait = navy_naval_air_defense_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 6
		gui_column = 0
	}
	small_ship_captain = {
		type = navy

		sub_unit_modifiers = {
			stealth_frigate = {
				navy_visibility = -0.05
				naval_speed_factor = 0.05
				naval_damage_factor = 0.1
			}
			stealth_corvette = {
				navy_visibility = -0.05
				naval_speed_factor = 0.05
				navy_submarine_detection_factor = 0.1
			}
			frigate = {
				navy_visibility = -0.05
				naval_speed_factor = 0.05
				naval_damage_factor = 0.1
			}
			corvette = {
				navy_visibility = -0.05
				naval_speed_factor = 0.05
				navy_submarine_detection_factor = 0.1
			}
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 7
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { fleet_protector }
	}
	search_pattern_expert = {
		type = navy

		modifier = {
			 spotting_chance = 0.2
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 6
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { small_ship_captain destroyer_leader }
	}

	superior_tactician = {
		type = navy

		gain_xp = {
			is_winning = yes
		}
		custom_gain_xp_trigger_tooltip = SUPERIOR_TACTICIAN_TRIGGER_TT

		cost = 500

		modifier = {
			positioning = 0.1
		}

		slot = navy_chief
		specialist_advisor_trait = navy_chief_maneuver_1
		expert_advisor_trait = navy_chief_maneuver_2
		genius_advisor_trait = navy_chief_maneuver_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 2
		gui_column = 0
	}
	lone_wolf = {
		type = navy

		modifier = {
			naval_enemy_fleet_size_ratio_penalty_factor = 0.2
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = concealment_expert

		gui_row = 2
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { superior_tactician }
	}
	smoke_screen_expert = {
		type = navy

		modifier = {
			naval_retreat_chance = 0.25
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 2
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { lone_wolf concealment_expert }
	}

	concealment_expert = {
		type = navy

		modifier = {
			navy_visibility = -0.1
		}

		slot = navy_chief
		specialist_advisor_trait = navy_chief_commerce_raiding_1
		expert_advisor_trait = navy_chief_commerce_raiding_2
		genius_advisor_trait = navy_chief_commerce_raiding_3

		ai_will_do = {
			factor = 1
		}
		# mutually_exclusive = lone_wolf

		gui_row = 3
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { superior_tactician blockade_runner }
	}

	blockade_runner = {
		type = navy

		gain_xp = {
			#gains XP when running away
		}
		custom_gain_xp_trigger_tooltip = BLOCKADE_RUNNER_TRIGGER_TT

		cost = 500

		modifier = {
			naval_retreat_chance = 0.2
			naval_retreat_speed = 0.15
			convoy_retreat_speed = 0.05
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 4
		gui_column = 0
	}
	mine_sweeper = {

		type = navy

		modifier = {
			mines_sweeping_by_fleets_factor = 0.25
			naval_mines_effect_reduction = 0.25
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = mine_layer
		gui_row = 4
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { spotter blockade_runner }
	}

	spotter = {
		type = navy

		gain_xp = { # This trigger is not needed as it gets xp from spotting (not by combat)
			always = no
		}
		gain_xp_on_spotting = 10
		custom_gain_xp_trigger_tooltip = SPOTTER_TRIGGER_TT

		cost = 500

		modifier = {
			spotting_chance = 0.1
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 5
		gui_column = 0
	}
	mine_layer = {
		type = navy

		modifier = {
			mines_planting_by_fleets_factor = 0.25
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = mine_sweeper

		gui_row = 5
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { spotter blockade_runner }
	}

	air_controller = {
		type = navy

		gain_xp = {
			OR = {
				has_carrier_airwings_on_mission = yes
				has_carrier_airwings_in_own_combat = yes
			}
		}

		cost = 500

		modifier = {
			navy_carrier_air_targetting_factor = 0.1 # Airplanes from carriers has better naval targetting
			sortie_efficiency = 0.1
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 9
		gui_column = 0
	}
	flight_deck_manager = {
		type = navy

		modifier = {
			sortie_efficiency = 0.1
		}

		slot = high_command
		specialist_advisor_trait = navy_carrier_1
		expert_advisor_trait = navy_carrier_2
		genius_advisor_trait = navy_carrier_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 9
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { air_controller }
	}
	fighter_director = {
		type = navy

		modifier = {
			fighter_sortie_efficiency = 0.2
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = dive_bomber
		# mutually_exclusive = torpedo_bomber

		gui_row = 8
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { flight_deck_manager }
	}
	dive_bomber = {
		type = navy

		sub_unit_modifiers = {
			cv_mr_fighter = {
				air_attack_factor = 0.1
				air_mission_efficiency = 0.1
			}
		}

		slot = navy_chief
		specialist_advisor_trait = navy_chief_naval_aviation_1
		expert_advisor_trait = navy_chief_naval_aviation_2
		genius_advisor_trait = navy_chief_naval_aviation_3

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = fighter_director
		# mutually_exclusive = torpedo_bomber

		gui_row = 9
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { flight_deck_manager }
	}
	torpedo_bomber = {
		type = navy

		sub_unit_modifiers = {
			cv_light_nav_strike = {
				air_attack_factor = 0.1
				air_mission_efficiency = 0.1
			}
		}

		slot = high_command
		specialist_advisor_trait = air_naval_strike_1
		expert_advisor_trait = air_naval_strike_2
		genius_advisor_trait = air_naval_strike_3

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = fighter_director
		# mutually_exclusive = dive_bomber

		gui_row = 10
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { flight_deck_manager }
	}

	ironside = {
		type = navy

		gain_xp = {
			OR = {
				capital_ship > 0.0
				opponent = {
					capital_ship > 0.0
				}
			}
		}
		custom_gain_xp_trigger_tooltip = IRONSIDE_TRIGGER_TT

		cost = 500

		modifier = {
			navy_capital_ship_defence_factor = 0.1
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 12
		gui_column = 0
	}
	big_guns_expert = {
		type = navy

		modifier = {
			navy_capital_ship_attack_factor = 0.15
		}

		slot = high_command
		specialist_advisor_trait = navy_capital_ship_1
		expert_advisor_trait = navy_capital_ship_2
		genius_advisor_trait = navy_capital_ship_3

		ai_will_do = {
			factor = 1
		}

		gui_row = 11
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { ironside }
	}
	marksman = {
		type = navy

		modifier = {
			naval_critical_score_chance_factor = 0.1
		}

		slot = navy_chief
		specialist_advisor_trait = navy_chief_decisive_battle_1
		expert_advisor_trait = navy_chief_decisive_battle_2
		genius_advisor_trait = navy_chief_decisive_battle_3

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = crisis_magician

		gui_row = 11
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { big_guns_expert }
	}
	safety_first = {
		type = navy

		modifier = {
			critical_receive_chance = -0.25
		}

		slot = navy_chief
		specialist_advisor_trait = navy_chief_reform_1
		expert_advisor_trait = navy_chief_reform_2
		genius_advisor_trait = navy_chief_reform_3

		ai_will_do = {
			factor = 1
		}

		trait_type = assignable_trait
		any_parent = { ironside }

		gui_row = 12
		gui_column = 1
	}
	crisis_magician = {
		type = navy

		modifier = {
			naval_critical_effect_factor = -0.5
		}

		ai_will_do = {
			factor = 1
		}

		# mutually_exclusive = marksman

		gui_row = 12
		gui_column = 2

		trait_type = assignable_trait
		any_parent = { safety_first }
	}
	ground_pounder = {
		type = navy

		modifier = {
			shore_bombardment_bonus = 0.25
		}

		ai_will_do = {
			factor = 1
		}

		gui_row = 13
		gui_column = 1

		trait_type = assignable_trait
		any_parent = { ironside }
	}

##################################
# Admiral Terrain Traits
##################################

	arctic_water_expert = {
		type = navy

		gain_xp = {
			is_fighting_in_weather = arctic_water
		}

		cost = 1000

		modifier = {
			naval_attrition = -0.08
		}

		ai_will_do = {
			factor = 1
		}

		trait_type = basic_terrain_trait
		gui_row = 1
	}
	inshore_fighter = {
		type = navy

		gain_xp = {
			is_fighting_in_terrain = water_fjords
		}

		cost = 1000

		modifier = {
			water_fjords = {
				attack = 0.1
				movement = 0.1
				defence = 0.1
			}
		}

		ai_will_do = {
			factor = 1
		}

		trait_type = basic_terrain_trait
		gui_row = 2
	}
	blue_water_expert = {
		type = navy

		gain_xp = {
			OR = {
				is_fighting_in_terrain = water_deep_ocean
				is_fighting_in_terrain = ocean
			}
		}

		cost = 1000

		modifier = {
			water_deep_ocean = {
				attack = 0.1
				movement = 0.1
				defence = 0.1
			}
			ocean = {
				attack = 0.1
				movement = 0.1
				defence = 0.1
			}
		}

		slot = high_command
		specialist_advisor_trait = navy_fleet_logistics_1
		expert_advisor_trait = navy_fleet_logistics_2
		genius_advisor_trait = navy_fleet_logistics_3

		ai_will_do = {
			factor = 1
		}

		trait_type = basic_terrain_trait
		gui_row = 3
	}
	green_water_expert = {
		type = navy

		gain_xp = {
			OR = {
				is_fighting_in_terrain = water_shallow_sea
				is_fighting_in_terrain = water_littoral
			}
		}

		cost = 1000

		modifier = {
			water_shallow_sea = {
				attack = 0.1
				movement = 0.1
				defence = 0.1
			}
			water_littoral = {
				attack = 0.1
				movement = 0.1
				defence = 0.1
			}
		}

		ai_will_do = {
			factor = 1
		}

		trait_type = basic_terrain_trait
		gui_row = 4
	}
}