﻿provoked_dissolution_faction_war = {
	icon = dissolution_war
	group = civil_war
	allow_hostages = no

	target_top_liege_if_outside_realm = no # In case of Adventurers starting this war

	allowed_for_character = {
		scope:attacker = {
			is_ai = no
		}
	}

	allowed_against_character = {
		scope:attacker = {
			liege = scope:defender
		}
	}

	on_declaration = {
		on_declared_war = yes
		# Remove offending HumSac modifiers.
		scope:attacker = {
			hidden_effect = { fp1_remove_humsac_offended_counties_effect = yes }
		}

		# Tell the schemer war has begun
		scope:defender = {
			primary_title = {
				var:provoke_vassals_schemer = {
					trigger_event = sas_faction_demand.1016
				}
			}
		}
	}

	on_victory_desc = {
		first_valid = {
			triggered_desc = {
				trigger = { # Desc for only one player attacker
					scope:attacker = {
						is_local_player = yes
					}
				}
				desc = nation_fracturing_faction_war_victory_desc_local_player_attacker_alone
			}
			triggered_desc = { # Desc for only one attacker, player defender
				trigger = {
					scope:defender = {
						is_local_player = yes
					}
				}
				desc = player_nation_fracturing_faction_war_victory_desc_local_player_defender_attacker_alone
			}
			desc = nation_fracturing_faction_war_victory_desc_local_player_attacker_alone # Desc for a third party involved
		}

	}

	on_victory = {

		scope:attacker = { show_pow_release_message_effect = yes }

		#EP2 Accolade glory gain from winning against higher ranked enemy
		scope:attacker = { accolade_attacker_war_end_glory_gain_med_effect = yes }
		
		create_title_and_vassal_change = {
			type = independency
			save_scope_as = change
		}
		scope:attacker.joined_faction = {
			every_faction_member = {
				change_liege_or_become_independent = {
					CHANGE = scope:change
					VASSAL = this
				}

				hidden_effect = {
					set_variable = {
						name = independence_war_former_liege
						value = scope:defender
					}
					add_truce_both_ways = {
						character = scope:defender
						days = 1825
						war = root.war
						result = victory
					}
					save_scope_as = current_member
					# Struggle Catalyst
					if = {
						limit = {
							catalyst_gave_independence_to_powerful_diff_faith_culture_vassal_preliminary_trigger = {
								CHAR1 = scope:defender
								CHAR2 = scope:current_member
							}
							any_character_struggle = {
								involvement = involved
								activate_struggle_catalyst_secondary_character_involvement_involved_trigger = {
									CATALYST = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal
									CHAR = scope:current_member
								}
							}
						}
						every_character_struggle = {
							involvement = involved
							limit = {
								activate_struggle_catalyst_secondary_character_involvement_either_trigger = {
									CATALYST = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal
									CHAR = scope:current_member
								}
							}
							activate_struggle_catalyst = {
								catalyst = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal
								character = scope:defender
							}
						}
					}
				}
			}
		}
		scope:attacker = {
			add_prestige = medium_prestige_value
		}
		scope:defender = {
			add_prestige = {
				value = medium_prestige_value
				multiply = -1
			}

			every_vassal = {
				limit = { is_ai = no }
				send_interface_toast = {
					type = msg_gained_independence
					title = liege_primary_title_dissolution
					desc = liege_primary_title_dissolution_desc
					left_icon = scope:defender
				}
			}
		}
		resolve_title_and_vassal_change = scope:change

		scope:defender = {
			every_held_title = {
				limit = {
					OR = {
						tier = prev.primary_title.tier
						tier >= tier_kingdom
					}
				}
				add_to_temporary_list = titles_to_destroy
			}
		}

		every_in_list = {
			list = titles_to_destroy
			scope:attacker = {
				destroy_title = prev
			}
		}

		# LEGITIMACY FROM LOSING FACTION WAR
		faction_war_end_defeat_legitimacy_effect = yes

		# Tell the schemer war ended in victory
		scope:defender = {
			primary_title = {
				var:provoke_vassals_schemer = {
					trigger_event = sas_faction_demand.1012
				}
			}
		}

		scope:defender = {
			primary_title = {
				if = {
					limit = { exists = var:provoke_vassals_schemer}
					remove_variable = provoke_vassals_schemer
				}
			}
		}
	}

	on_white_peace_desc = {
		first_valid = {
			triggered_desc = {
				trigger = { scope:defender = { is_local_player = yes } }
				desc = player_nation_fracturing_faction_war_white_peace_defender_desc
			}
			triggered_desc = {
				trigger = {
					scope:attacker = {
						is_local_player = yes
					}
				}
				desc = player_nation_fracturing_faction_war_white_peace_attacker_desc
			}
			desc = player_nation_fracturing_faction_war_white_peace_desc
		}
	}

	on_white_peace = {
		scope:attacker = {
			show_pow_release_message_effect = yes
			stress_impact = {
 				ambitious = medium_stress_impact_gain
 				arrogant = medium_stress_impact_gain
 			}
		}
		hidden_effect = {
			scope:attacker = {
				add_truce_both_ways = {
					character = scope:defender
					days = 1825
					war = root.war
					result = white_peace
				}
			}
		}

		scope:defender = {
			stress_impact = {
 				arrogant = medium_stress_impact_gain
 			}

			add_character_flag = {
				flag = recent_nation_fracturing_faction_war
				years = faction_nation_fracturing_war_white_peace_cooldown
			}
			add_prestige = minor_prestige_value
		}

		# Tell the schemer war ended in white peace
		scope:defender = {
			primary_title = {
				var:provoke_vassals_schemer = {
					trigger_event = sas_faction_demand.1013
				}
			}
		}

		scope:defender = {
			primary_title = {
				if = {
					limit = { exists = var:provoke_vassals_schemer}
					remove_variable = provoke_vassals_schemer
				}
			}
		}

		on_white_peace_faction_revolt_war = yes
	}

	on_defeat_desc = {
		first_valid = {
			triggered_desc = {
				trigger = { scope:defender = { is_local_player = yes } }
				desc = nation_fracturing_faction_war_defeat_defender_desc
			}
			triggered_desc = {
				trigger = {
					scope:attacker = {
						is_local_player = yes
					}
				}
				desc = player_nation_fracturing_defeat_attacker_desc
			}
			desc = player_nation_fracturing_faction_war_defeat_desc
		}

	}

	on_defeat = {
		scope:attacker = { show_pow_release_message_effect = yes }
		scope:defender = {
			add_character_flag = {
				flag = recent_nation_fracturing_faction_war
				years = faction_nation_fracturing_war_defeat_cooldown
			}
			add_dread = medium_dread_gain
			# Prestige for Defender
			add_prestige_war_defender_effect = {
				PRESTIGE_VALUE = medium_prestige_value
			}
			add_achievement_flag_effect = { FLAG = achievement_know_your_place_flag }

			# LEGITIMACY FROM WINNING FACTION WAR
			faction_war_end_victory_legitimacy_effect = yes
		}

		# Tell the schemer war ended in defeat
		scope:defender = {
			primary_title = {
				var:provoke_vassals_schemer = {
					trigger_event = sas_faction_demand.1014
				}
			}
		}

		scope:defender = {
			primary_title = {
				if = {
					limit = { exists = var:provoke_vassals_schemer}
					remove_variable = provoke_vassals_schemer
				}
			}
		}

		on_lost_faction_revolt_war = yes
	}

	on_invalidated_desc = msg_invalidate_war_title

	check_defender_inheritance_validity = no

	on_primary_attacker_death = inherit
	on_primary_defender_death = inherit

	attacker_allies_inherit = yes
	defender_allies_inherit = yes

	transfer_behavior = transfer

	war_name = "NATION_FRACTURING_WAR_NAME"

	interface_priority = 120

	attacker_wargoal_percentage = 0.8

	max_attacker_score_from_battles = 100
	max_defender_score_from_battles = 50
	
	max_defender_score_from_occupation = 150
	max_attacker_score_from_occupation = 150

	max_ai_diplo_distance_to_title = 500
}