﻿jochid_maintenance_effect = {
	apply_invader_modifiers_effect = {
		INVADER_DYNN = $INVADER_DYNN$
	}
	spawn_$INVADER_DYNN$_family_effect = {
		INVADER_CHAR = $INVADER_CHAR$
	}
	spawn_invader_servants_effect = {
		INVADER_CHAR = $INVADER_CHAR$
	}
	form_the_invader_title_effect = {
		INVADER_DYNN = $INVADER_DYNN$
		INVADER_CHAR = $INVADER_CHAR$
		INVADER_TITLE = $INVADER_TITLE$
		LANDLESS_YES_NO = $LANDLESS_YES_NO$
	}
	### succession law
	if = {
		limit = {
			can_have_single_heir_succession_law_trigger = yes
			NOT = { has_realm_law = single_heir_succession_law }
		}
		add_realm_law_skip_effects = single_heir_succession_law
	}
	else = {
		if = {
			limit = {
				NOT = { has_realm_law = high_partition_succession_law }
			}
			add_realm_law_skip_effects = high_partition_succession_law
		}
	}
	# as a last resort, try to move away from confederate
	if = {
		limit = { has_realm_law = confederate_partition_succession_law }
		add_realm_law_skip_effects = partition_succession_law
	}
}

### populating the life of the invader character
spawn_jochid_family_effect = {
	# spouse
	create_character = {
		age = { 20 30 }
		template = hi_random_spouse_character_template
		dynasty = generate
		gender = female
		employer = $INVADER_CHAR$
		faith = $INVADER_CHAR$.faith
		culture = $INVADER_CHAR$.culture
		save_scope_as = borte_onggirat
		after_creation = {
			marry = $INVADER_CHAR$
			disease_immunity_long_effect = yes
		}
	}
	# three concubines
	create_character = {
		age = { 20 24 }
		template = hi_random_spouse_character_template
		dynasty = none
		gender = female
		employer = $INVADER_CHAR$
		faith = $INVADER_CHAR$.faith
		culture = $INVADER_CHAR$.culture
		save_scope_as = concubine_1
		after_creation = {
			disease_immunity_short_effect = yes
		}
	}
	create_character = {
		age = { 20 24 }
		template = hi_random_spouse_character_template
		dynasty = none
		gender = female
		employer = $INVADER_CHAR$
		faith = $INVADER_CHAR$.faith
		culture = $INVADER_CHAR$.culture
		save_scope_as = concubine_2
		after_creation = {
			disease_immunity_short_effect = yes
		}
	}
	create_character = {
		age = { 20 24 }
		template = hi_random_spouse_character_template
		dynasty = none
		gender = female
		employer = $INVADER_CHAR$
		faith = $INVADER_CHAR$.faith
		culture = $INVADER_CHAR$.culture
		save_scope_as = concubine_3
		after_creation = {
			disease_immunity_short_effect = yes
		}
	}
	$INVADER_CHAR$ = {
		make_concubine = scope:concubine_1
		make_concubine = scope:concubine_2
		make_concubine = scope:concubine_3
	}

	# Spawn some captured Han siege engineers
	create_character = {
		gender_female_chance = historicinvasions_soldier_female_chance
		employer = $INVADER_CHAR$
		template = new_siege_engineer
		faith = faith:shangqing
		culture = culture:han
	}
	create_character = {
		gender_female_chance = historicinvasions_soldier_female_chance
		employer = $INVADER_CHAR$
		template = new_siege_engineer
		faith = faith:shangqing
		culture = culture:han
	}
}

# Make sure invader has troops
spawn_jochid_troops_effect = {
	if = {
		limit = { has_character_flag = is_first_invader_flag }
		spawn_jochid_army_effect = yes
	}
	spawn_jochid_army_effect = yes
	spawn_jochid_army_effect = yes
	if = {
		limit = { game_start_date < 1000.1.1 }
		spawn_jochid_army_effect = yes
	}
}
spawn_jochid_army_effect = {
	spawn_army = {
		name = jochid_event_troops
		location = capital_province
		uses_supply = no
		inheritable = no
		
		levies = 250
		men_at_arms = {
			type = armored_horsemen
			stacks = 6
		}
		men_at_arms = {
			type = light_horsemen
			stacks = 10
		}
		men_at_arms = {
			type = horse_archers
			stacks = 12
		}
		# siege
		men_at_arms = {
			type = bombard
			stacks = 3
		}
		men_at_arms = {
			type = trebuchet
			stacks = 9
		}
	}
}

### Blue Horde (west) & White Horde (east)
jochid_splinter_golden_horde_effect = {
	scope:story.story_owner = {
		save_scope_as = old_emperor

		every_held_title = { # Clean up excess kingdoms
			limit = {
				OR = {
					tier = tier_empire
					tier = tier_kingdom
					tier = tier_duchy
				}
				NOT = { this = scope:story.var:invader_title_var }
			}
			scope:old_emperor = {
				destroy_title = prev
			}
		}

		every_character_war = {
			limit = { primary_attacker = scope:old_emperor }
			end_war = white_peace
		}
	}

	set_global_variable = {
		name = golden_horde_was_broken_up
		value = yes
	}

	### pick characters for successor states
	scope:old_emperor = {
		dynasty = {
			every_dynasty_member = { # Every potential khandidate
				limit = {
					NOT = { this = scope:old_emperor }
					character_gender_can_inherit_from_trigger = { CHARACTER = scope:old_emperor }
					is_alive = yes
				}
				add_to_list = golden_horde_heir_candidates_list
			}
		}
	}

	ordered_in_list = {
		limit = { NOT = { is_in_list = selected_golden_horde_heirs_list } }
		list = golden_horde_heir_candidates_list
		order_by = historicinvasions_mongol_breakup_succession_score

		max = 2
		check_range_bounds = no

		#debug_log = "Golden Horde succession list found:"
		#debug_log_scopes = yes

		add_to_list = selected_golden_horde_heirs_list
	}
	if = {
		limit = {
			list_size = {
				name = selected_golden_horde_heirs_list
				value < 2
			}
		}
		scope:old_emperor.dynasty = {
			random_dynasty_member = {
				father = { save_scope_as = fake_father }
			}
		}
		debug_log = "list too small"
		# then spawn more heirs
		while = {
			limit = {
				list_size = {
					name = selected_golden_horde_heirs_list
					value < 4 # will stop at exactly this list size value; create more than merely enough to fish for better characters
				}
			}
			create_character = {
				employer = scope:story.var:invader_title_var.holder
				template = new_warrior_character
				dynasty = inherit
				father = scope:fake_father
				gender_female_chance = 50
				after_creation = { add_to_list = selected_golden_horde_heirs_list }
			}
		}
	}
	# mark the heirs
	ordered_in_list = {
		list = selected_golden_horde_heirs_list
		order_by = historicinvasions_mongol_breakup_succession_score
		position = 0

		save_scope_as = blue_horde_heir
	}
	ordered_in_list = {
		list = selected_golden_horde_heirs_list
		order_by = historicinvasions_mongol_breakup_succession_score
		position = 1

		save_scope_as = white_horde_heir
	}

	### unland characters for successor states
	create_title_and_vassal_change = {
		type = granted
		save_scope_as = mongol_change
		add_claim_on_loss = yes
	}

	### grant a duchy within a specified region to each heir
	give_jochid_heir_land_effect = {
		MONGOL_REGION = special_jochid_conquest_region_blue_horde_de_jure
		STARTING_TIER = duchy
		MONGOL_HEIR = scope:blue_horde_heir
	}
	give_jochid_heir_land_effect = {
		MONGOL_REGION = special_jochid_conquest_region_white_horde_de_jure
		STARTING_TIER = duchy
		MONGOL_HEIR = scope:white_horde_heir
	}

	### transfer personally held titles to appropriate successor state
		# heir of old Khagan will inherit every county after the breakup effect and thus bypass all the following vassalage and transfer checks
		# if they were already landed, they will remain with the successor state their original capital was located in
		# if they were unlanded, they would simply pop out of the realm
		# we can't simply transfer all titles of the old Khagan to his player_heir because that would lead to a game over if the Khagan was player controlled
	# clean up counties held by old Khagan beforehand
	scope:story.story_owner = {
		every_held_title = {
			limit = {
				tier = tier_county
				NOR = {
					empire = scope:story.story_owner.primary_title
					this = holder.capital_county
				}
			}
			add_to_list = seceding_counties_list
		}
	}
	# unland regular heir
	scope:story.story_owner.player_heir = {
		if = {
			limit = {
				is_ruler = yes
				is_landed = yes
			}
		}
		every_held_title = {
			limit = { tier > tier_kingdom }
			scope:story.story_owner.player_heir = { destroy_title = prev }
		}
		every_held_title = {
			limit = { tier = tier_county }
			add_to_list = seceding_counties_list
		}
	}
	# the following procedure will only work if the Khagan holds at least two counties
	# granting the heir a county within the Khagan's primary title will work as well:
	scope:story.story_owner = {
		if = {
			limit = {
				always = yes
				# any_held_title = {
				# 	count < 2
				# 	tier = tier_county
				# }
			}
			create_title_and_vassal_change = {
				type = revoked
				save_scope_as = mongol_preparation_change
				add_claim_on_loss = yes
			}
			random_realm_county = {
				limit = {
					empire = scope:story.story_owner.primary_title
					holder = { is_ai = yes }
					NOT = { this = holder.capital_county }
				}
				change_title_holder = {
					holder = scope:story.story_owner.player_heir
					change = scope:mongol_preparation_change
				}
				save_scope_as = new_player_heir_capital
			}
			resolve_title_and_vassal_change = scope:mongol_preparation_change
			scope:story.story_owner.player_heir = {
				set_realm_capital = scope:new_player_heir_capital
			}
		}
	}
	# finally, this is what actually enables the script to vassalize the player heir of the dead Khagan:
	scope:story.story_owner = {
		random_held_title = {
			limit = {
				tier = tier_county
				empire = scope:story.story_owner.primary_title
			}
			change_title_holder = {
				holder = scope:story.story_owner.player_heir
				change = scope:mongol_change
			}
		}
	}

	jochid_heirs_mark_wrong_counties_effect = {
		MAIN_MONGOL_REGION = special_jochid_conquest_region_blue_horde
		LOSING_MONGOL_HEIR = scope:blue_horde_heir
	}
	jochid_heirs_mark_wrong_counties_effect = {
		MAIN_MONGOL_REGION = special_jochid_conquest_region_white_horde
		LOSING_MONGOL_HEIR = scope:white_horde_heir
	}
	jochid_heirs_transfer_wrong_counties_effect = yes

	### grant appropriate empires to characters
	title:e_blue_horde = {
		change_title_holder = {
			holder = scope:blue_horde_heir
			change = scope:mongol_change
		}
	}
	title:e_white_horde = {
		change_title_holder = {
			holder = scope:white_horde_heir
			change = scope:mongol_change
		}
	}

	### transfer vassals to other empires
	# based on capital county, then based on any sub realm county
	$INVADER_CHAR$ = {
		# blue horde
		every_vassal_or_below = {
			limit = {
				highest_held_title_tier >= tier_county
				capital_province = { geographical_region = special_jochid_conquest_region_blue_horde }
			}
			add_to_list = blue_horde_vassals_list
		}
		# white horde
		every_vassal_or_below = {
			limit = {
				highest_held_title_tier >= tier_county
				capital_province = { geographical_region = special_jochid_conquest_region_white_horde }
			}
			add_to_list = white_horde_vassals_list
		}
		# independence
		every_vassal_or_below = {
			limit = {
				highest_held_title_tier >= tier_county
				NOR = {
					is_in_list = blue_horde_vassals_list
					is_in_list = white_horde_vassals_list
				}
			}
			add_to_list = breakaway_vassals_list
		}
	}
	resolve_title_and_vassal_change = scope:mongol_change

	title:e_blue_horde.holder = { set_primary_title_to = title:e_blue_horde }
	title:e_white_horde.holder = { set_primary_title_to = title:e_white_horde }

	# ### mark local warlords for transfer; otherwise they would stay independent
	# # blue horde
	# every_in_list = {
	# 	list = local_warlord_list
	# 	limit = {
	# 		highest_held_title_tier >= tier_county
	# 		capital_province = { geographical_region = special_jochid_conquest_region_blue_horde }
	# 	}
	# 	add_to_list = blue_horde_vassals_list
	# 	remove_from_list = local_warlord_list
	# 	debug_log_scopes = yes
	# }
	# # white horde
	# every_in_list = {
	# 	list = local_warlord_list
	# 	limit = {
	# 		highest_held_title_tier >= tier_county
	# 		capital_province = { geographical_region = special_jochid_conquest_region_white_horde }
	# 	}
	# 	add_to_list = white_horde_vassals_list
	# 	remove_from_list = local_warlord_list
	# }
	# # independence
	# every_in_list = {
	# 	list = local_warlord_list
	# 	limit = {
	# 		highest_held_title_tier >= tier_county
	# 		NOR = {
	# 			is_in_list = blue_horde_vassals_list
	# 			is_in_list = white_horde_vassals_list
	# 		}
	# 	}
	# 	add_to_list = breakaway_vassals_list
	# 	remove_from_list = local_warlord_list
	# }

	##### VASSAL TRANSFER #####
	create_title_and_vassal_change = {
		type = swear_fealty
		save_scope_as = mongol_change_vassalge
	}
	every_in_list = {
		list = blue_horde_vassals_list
		limit = {
			NOT = { top_liege = title:e_blue_horde.holder }
			highest_held_title_tier < tier_empire
		}
		change_liege = {
			liege = title:e_blue_horde.holder
			change = scope:mongol_change_vassalge
		}
	}
	every_in_list = {
		list = white_horde_vassals_list
		limit = {
			NOT = { top_liege = title:e_white_horde.holder }
			highest_held_title_tier < tier_empire
		}
		change_liege = {
			liege = title:e_white_horde.holder
			change = scope:mongol_change_vassalge
		}
	}
	every_in_list = {
		list = breakaway_vassals_list
		becomes_independent = { change = scope:mongol_change_vassalge }
	}
	resolve_title_and_vassal_change = scope:mongol_change_vassalge

	### faith
	every_in_list = { # If tengri, switch to an organized faith in your new realm
		list = selected_golden_horde_heirs_list
		limit = {
			primary_title.tier = tier_empire
			faith = { has_doctrine_parameter = unreformed }
			any_sub_realm_county = {
				NOR = {
					faith = { has_doctrine_parameter = unreformed }
					faith = faith:catholic
					faith = faith:orthodox
				}
			}
		}
		save_scope_as = faith_changer
		random_sub_realm_county = {
			limit = {
				NOR = {
					faith = { has_doctrine_parameter = unreformed }
					faith = faith:catholic
					faith = faith:orthodox
				}
			}
			weight = {
				base = 1
				modifier = {
					save_temporary_scope_as = county_faith_check
					add = historicinvasions_mongol_successor_faith_chance
				}
			}
			scope:faith_changer = {
				set_character_faith = prev.faith
			}
		}
	}

	### clean up de facto vassal structure since all vassals were transferred without their sub-vassals. AI will (slowly) clean this up anyway.
	title:e_blue_horde.holder = { borjigin_clean_up_successor_de_facto_vassals_effect = yes }
	title:e_white_horde.holder = { borjigin_clean_up_successor_de_facto_vassals_effect = yes }

	### mark exclaves for transfer
	# blue horde
	title:e_blue_horde.holder = {
		every_realm_county = {
			limit = {
				NOT = { title_province = { geographical_region = special_jochid_conquest_region_blue_horde } }
			}
			add_to_list = county_cleanup_list
		}
	}
	# white horde
	title:e_white_horde.holder = {
		every_realm_county = {
			limit = {
				NOT = { title_province = { geographical_region = special_jochid_conquest_region_white_horde } }
			}
			add_to_list = county_cleanup_list
		}
	}
	### transfer exclaves
	create_title_and_vassal_change = {
		type = revoked
		save_scope_as = county_cleanup_change
		add_claim_on_loss = yes
	}
	# blue horde
	every_in_list = {
		list = county_cleanup_list
		limit = { title_province = { geographical_region = special_jochid_conquest_region_blue_horde } }
		change_title_holder = {
			holder = scope:blue_horde_heir
			change = scope:county_cleanup_change
		}
		remove_from_list = county_cleanup_list
	}
	# white horde
	every_in_list = {
		list = county_cleanup_list
		limit = { title_province = { geographical_region = special_jochid_conquest_region_white_horde } }
		change_title_holder = {
			holder = scope:white_horde_heir
			change = scope:county_cleanup_change
		}
		remove_from_list = county_cleanup_list
	}
	resolve_title_and_vassal_change = scope:county_cleanup_change

	### succession law
	every_in_list = {
		list = selected_golden_horde_heirs_list
		limit = {
			primary_title.tier = tier_empire
		}
		if = {
			limit = {
				can_have_single_heir_succession_law_trigger = yes
				NOT = { has_realm_law = single_heir_succession_law }
			}
			add_realm_law_skip_effects = single_heir_succession_law
		}
		else = {
			if = {
				limit = {
					NOT = { has_realm_law = high_partition_succession_law }
				}
				add_realm_law_skip_effects = high_partition_succession_law
			}
		}
		# as a last resort, try to move away from confederate
		if = {
			limit = { has_realm_law = confederate_partition_succession_law }
			add_realm_law_skip_effects = partition_succession_law
		}
	}

	### transfer gold to all four heirs
	# by default, 100% goes to his player_heir
	scope:story.story_owner.player_heir = {
		pay_short_term_gold = {
			target = scope:blue_horde_heir
			gold = {
				value = scope:story.story_owner.gold
				multiply = 0.95
				multiply = 0.25
				min = 0
			}
		}
		pay_short_term_gold = {
			target = scope:white_horde_heir
			gold = {
				value = scope:story.story_owner.gold
				multiply = 0.95
				multiply = 0.25
				min = 0
			}
		}
	}

	### destroy other held empires

	### de jure changes
	# blue horde
	if = {
		limit = { title:e_blue_horde = { is_title_created = yes } }
		every_county_in_region = {
			region = special_jochid_conquest_region_blue_horde_de_jure
			kingdom = { add_to_list = blue_horde_de_jure_potential_list }
		}
		every_in_list = {
			list = blue_horde_de_jure_potential_list
			limit = {
				OR = {
					AND = {
						any_in_de_jure_hierarchy = {
							filter = { tier = tier_county }
							continue = { tier > tier_county }
							OR = {
								holder = title:e_blue_horde.holder
								holder = { target_is_liege_or_above = title:e_blue_horde.holder }
							}
							percent > 0.3
						}
						NOT = { de_jure_liege = title:e_blue_horde }
					}
					de_jure_liege = scope:story.var:invader_title_var
				}
			}
			set_de_jure_liege_title = title:e_blue_horde
		}
	}
	# white horde
	if = {
		limit = { title:e_white_horde = { is_title_created = yes } }
		every_county_in_region = {
			region = special_jochid_conquest_region_white_horde_de_jure
			kingdom = { add_to_list = white_horde_de_jure_potential_list }
		}
		every_in_list = {
			list = white_horde_de_jure_potential_list
			limit = {
				OR = {
					AND = {
						any_in_de_jure_hierarchy = {
							filter = { tier = tier_county }
							continue = { tier > tier_county }
							OR = {
								holder = title:e_white_horde.holder
								holder = { target_is_liege_or_above = title:e_white_horde.holder }
							}
							percent > 0.3
						}
						NOT = { de_jure_liege = title:e_white_horde }
					}
					de_jure_liege = scope:story.var:invader_title_var
				}
			}
			set_de_jure_liege_title = title:e_white_horde
		}
	}
	# fallback in case Golden Horde still has de jure kingdoms
	if = {
		limit = { scope:story.var:invader_title_var = { is_titular = no } }
		scope:story.var:invader_title_var = {
			every_in_de_jure_hierarchy = {
				limit = { tier = tier_kingdom }
				random_title_to_title_neighboring_empire = {
					save_scope_as = fallback_empire
				}
				set_de_jure_liege_title = scope:fallback_empire
			}
		}
	}

	### destroy Golden Horde
	scope:story.var:invader_title_var.holder = { destroy_title = scope:story.var:invader_title_var }

	### misc, actions
	every_in_list = {
		list = selected_golden_horde_heirs_list
		limit = {
			is_ruler = yes
			is_landed = yes
			exists = dynasty
			primary_title.tier = tier_empire
		}
		if = {
			limit = { gold < 750 }
			add_gold = 500
		}
		if = {
			limit = { prestige < 2500 }
			add_prestige = 2250
		}
		if = {
			limit = { piety < 500 }
			add_piety = 250
		}
		# family
		trigger_event = game_rule.1001
		# cadet branch
		create_cadet_branch = {}
		# troops?
	}
	# set up cadet branch infos
	every_in_list = {
		list = selected_golden_horde_heirs_list
		limit = {
			is_ruler = yes
			is_landed = yes
			exists = dynasty
			primary_title.tier = tier_empire
			NOR = { # prevent the main house from being changed
				house = father.house
				house = mother.house
			}
		}
		house = {
			set_coa = prev.primary_title
		}
	}
	### arrange truces
	scope:blue_horde_heir = {
		add_truce_both_ways = {
			character = scope:white_horde_heir
			years = 10
			name = truce_mongol_partition
		}
	}

	### notification event
	every_player = {
		trigger_event = {
			id = jochid_invasion.1002
			days = 1
		}
	}
}

give_jochid_heir_land_effect = {
	# it's likely that the chosen heirs don't hold any land or only hold land outside of their assigned successor state (which they will lose later on)
	if = {
		# first off we will check whether the Mongol Empire ever crossed into this region
		limit = {
			exists = $MONGOL_HEIR$
			scope:story.var:invader_title_var = {
				any_in_de_facto_hierarchy = {
					tier = tier_county
					title_province = { geographical_region = $MONGOL_REGION$ }
				}
			}
		}
		$MONGOL_HEIR$ = {
			# the mongol successors will only steal land from AI controlled characters who were subjugated by the Khagan
			if = {
				# are there any AI-held counties within the region?
				limit = {
					any_county_in_region = {
						region = $MONGOL_REGION$
						count > 0
						holder = { is_ai = yes }
						scope:story.var:invader_title_var = { is_de_facto_liege_or_above_target = this }
					}
				}
				# pick out a county as starting point and scope upwards to its duchy
				random_county_in_region = { # bigger duchies are more likely to be picked
					# try to only pick duchies with only AI-held counties
					limit = {
						$STARTING_TIER$ = { # usually a duchy; can be any other tier
							any_in_de_jure_hierarchy = {
								tier = tier_county
								count = all
								holder = { is_ai = yes }
								scope:story.var:invader_title_var = { is_de_facto_liege_or_above_target = this }
							}
						}
					}
					# alternatively, pick any AI-held county
					alternative_limit = {
						holder = { is_ai = yes }
						scope:story.var:invader_title_var = { is_de_facto_liege_or_above_target = this }
					}
					region = $MONGOL_REGION$
					$STARTING_TIER$ = { save_scope_as = starting_landed_title } # usually a duchy; can be any other tier
				}
				# then scope downwards to every de jure AI-held county
				scope:starting_landed_title = {
					every_in_de_jure_hierarchy = {
						limit = {
							tier = tier_county
							holder = { is_ai = yes }
							scope:story.var:invader_title_var = { is_de_facto_liege_or_above_target = this }
						}
						add_to_list = starting_titles_list
					}
				}
			}
			else = { # fallback; should theoretically never trigger due to check at the beginning
				#debug_log = "story used fallback land grant effect"
				#debug_log_date = yes
				#debug_log_scopes = yes
				
				random_county_in_region = {
					region = $MONGOL_REGION$
					add_to_list = starting_titles_list
				}
			}
	
			# hand out titles
			create_title_and_vassal_change = {
				type = revoked
				save_scope_as = title_change
				add_claim_on_loss = no
			}
			every_in_list = {
				list = starting_titles_list
				change_title_holder = {
					holder = $MONGOL_HEIR$
					change = scope:title_change
				}
			}
			# scope:starting_landed_title = {
			# 	change_title_holder = {
			# 		holder = $MONGOL_HEIR$
			# 		change = scope:title_change
			# 	}
			# }
			resolve_title_and_vassal_change = scope:title_change

			# move the capital into the assigned successor state; they may lose any previously held titles later on
			random_in_list = {
				list = starting_titles_list
				save_scope_as = new_capital
			}
			set_realm_capital = scope:new_capital
	
			# raise control
			every_in_list = {
				list = starting_titles_list
				change_county_control = 100
				remove_from_list = starting_titles_list
			}
			every_realm_province = {
				refill_levy = yes
				refill_garrison = yes
			}
		}
	}
	# fallback?
	else = {}
}

jochid_heirs_mark_wrong_counties_effect = {
	### let go of every held title outside of the specified region
	if = {
		limit = { exists = $LOSING_MONGOL_HEIR$ }
		$LOSING_MONGOL_HEIR$ = {
			every_held_title = {
				limit = {
					tier = tier_county
					NOT = { title_province = { geographical_region = $MAIN_MONGOL_REGION$ } }
				}
				add_to_list = seceding_counties_list
			}
		}
	}
}

jochid_heirs_transfer_wrong_counties_effect = {
	# blue_horde
	if = {
		limit = { exists = scope:blue_horde_heir }
		every_in_list = {
			list = seceding_counties_list
			limit = { title_province = { geographical_region = special_jochid_conquest_region_blue_horde } }
			change_title_holder = {
				holder = scope:blue_horde_heir
				change = scope:mongol_change
			}
			remove_from_list = seceding_counties_list
		}
	}
	# white horde
	if = {
		limit = { exists = scope:white_horde_heir }
		every_in_list = {
			list = seceding_counties_list
			limit = { title_province = { geographical_region = special_jochid_conquest_region_white_horde } }
			change_title_holder = {
				holder = scope:white_horde_heir
				change = scope:mongol_change
			}
			remove_from_list = seceding_counties_list
		}
	}
	# independence
	every_in_list = {
		list = seceding_counties_list
		duchy = { save_scope_as = seceding_duchy }
		create_character = {
			location = scope:seceding_duchy.title_capital_county.title_province
			template = hi_post_migration_local_warlord_template
			save_scope_as = local_warlord
			after_creation = { add_to_list = local_warlord_list }
		}
		change_title_holder = {
			holder = scope:local_warlord
			change = scope:mongol_change
		}
	}
	every_in_list = { # family
		list = local_warlord_list
		trigger_event = game_rule.1001
	}
}

jochid_restore_golden_horde_decision_effect = {
	# title
	create_title_and_vassal_change = {
		type = created
		save_scope_as = change
	}
	title:e_golden_horde = {
		change_title_holder = {
			holder = root
			change = scope:change
		}
	}
	set_primary_title_to = title:e_golden_horde
	resolve_title_and_vassal_change = scope:change

	destroy_title = title:e_blue_horde
	destroy_title = title:e_white_horde

	# de jure
	title:e_blue_horde = {
		every_in_de_jure_hierarchy = {
			limit = { tier = tier_kingdom }
			add_to_temporary_list = jochid_restore_golden_horde_list
		}
	}
	title:e_white_horde = {
		every_in_de_jure_hierarchy = {
			limit = { tier = tier_kingdom }
			add_to_temporary_list = jochid_restore_golden_horde_list
		}
	}
	every_kingdom = {
		limit = {
			any_de_jure_county = {
				title_province = { geographical_region = special_jochid_conquest_region_de_jure }
				percent >= 0.75
			}
		}
		add_to_temporary_list = jochid_restore_golden_horde_list
	}
	every_in_list = {
		list = jochid_restore_golden_horde_list
		every_in_de_jure_hierarchy = {
			limit = { tier = tier_kingdom }
			set_de_jure_liege_title = title:e_golden_horde
		}
	}

	# other rewards
	add_prestige = 1250
	dynasty = { add_dynasty_prestige = 750 }

	### only once
	hidden_effect = {
		add_to_global_variable_list = {
			name = unavailable_unique_decisions
			target = flag:jochid_restore_golden_horde_decision
		}
	}
}