# cb_install_khan
# nomad_dispute
# cb_liberate_nomad_duchy
# cb_minor_clan_revolt
# nomad_subjugation
# nomad_invasion
# nomad_expansion
# nomad_humiliate_cb

cb_install_khan = {
	name = CB_NAME_INSTALLKHAN
	war_name = WAR_NAME_INSTALLKHAN
	sprite = 12
	truce_days = 3650

	is_revolt_cb = no
	can_call_vassals = yes
	attacker_can_call_allies = no
	major_revolt = yes

	can_use_gui = {
		check_if_crusader_trigger = yes
	}

	can_use = {
		has_dlc = "Horse Lords"

		# Attacker
		ROOT = {
			is_nomadic = yes
		}
	}

	is_valid = {
		# Attacker
		ROOT = {
			liege_before_war = { character = FROM }
			num_of_count_titles >= 1
		}

		# Defender
		FROM = {
			any_demesne_title = {
				NOT = { lower_real_tier_than = ROOT }
				temporary = no
			}
		}
	}

	on_add = {
		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success = {
		attacker = {
			show_scope_change = no
			participation_scaled_prestige = 250
		}

		defender = {
			show_scope_change = no

			any_demesne_title = {
				show_scope_change = no

				limit = { real_tier = EMPEROR }

				gain_title = {
					target = attacker
					type = faction_demand
				}
			}

			death = {
				death_reason = death_execution
				killer = attacker
			}
		}

		any_attacker = {
			limit = { NOT = { character = attacker } }
			hidden_effect = { participation_scaled_prestige = 250 }
		}
	}

	on_fail = {
		attacker = {
			show_scope_change = no

			prestige = -100
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			prestige = -200
			imprison = defender
		}

		defender = {
			show_scope_change = no

			participation_scaled_prestige = 50

		#	hidden_effect = {
		#		if = {
		#			limit = {
		#				NOT = {
		#					has_opinion_modifier = { # Allow free revocation of a title
		#						name = opinion_traitor
		#						who = attacker
		#					}
		#				}
		#			}
		#
		#			opinion = {
		#				name = opinion_traitor
		#				who = attacker
		#			}
		#		}
		#	}
		}

		any_defender = {
			limit = { NOT = { character = defender } }
			hidden_effect = { participation_scaled_prestige = 50 }
		}
	}

	attacker_ai_victory_worth = {
		factor = -1 # always accept
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	on_defender_leader_death = {
		any_attacker = {
			letter_event = { id = 251 } # Our enemy has died, the war has ended
		}

		end_war = invalid
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}
}

nomad_dispute = {
	name = CB_NAME_DISPUTE
	war_name = CB_NAME_DISPUTE
	sprite = 16
	truce_days = 1095
	sort_priority = 700

	hostile_against_others = yes
	is_permanent = yes
	check_all_titles = yes
	can_ask_to_join_war = no
	allow_distant = yes
	allowed_to_target_tributaries = no
	press_claim = yes

	can_use_gui = {
		check_if_crusader_trigger = yes

		# CK2Plus
		# Attacker
		ROOT = {
			can_use_cb_preamble = yes
		}
	}

	can_use = {
		has_dlc = "Horse Lords"

		# Defender
		FROM = {
			is_nomadic = yes
		}

		# Attacker
		ROOT = {
			is_nomadic = yes
			has_feud_with = FROM
			same_realm = FROM
			mercenary = no
		}
	}

	can_use_title = {
		tier = COUNT
		holder = FROM

		location = {
			num_of_settlements < 1
		}
	}

	is_valid_title = {
		holder = FROM

		location = {
			num_of_settlements < 1
		}
	}

	on_add = {
		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success_title = {
		usurp_title_plus_barony_if_unlanded = {
			target = attacker
			type = invasion
		}

		attacker = {
			show_scope_change = no

			participation_scaled_prestige = 100
			participation_scaled_piety = 50
		}

		any_attacker = {
			limit = { NOT = { character = attacker } }

			hidden_effect = {
				participation_scaled_prestige = 100
				participation_scaled_piety = 50
			}
		}
	}

	on_fail_title = {
		attacker = {
			show_scope_change = no

			prestige = -100
		}

		defender = {
			show_scope_change = no

			participation_scaled_prestige = 50
		}

		any_defender = {
			limit = { NOT = { character = defender } }
			hidden_effect = { participation_scaled_prestige = 50 }
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			prestige = -200

			transfer_scaled_wealth = {
				to = defender
				value = 4.0
			}
		}

		defender = {
			show_scope_change = no

			participation_scaled_prestige = 100
			participation_scaled_piety = 50
		}

		any_defender = {
			limit = { NOT = { character = defender } }

			hidden_effect = {
				participation_scaled_prestige = 100
				participation_scaled_piety = 50
			}
		}
	}

	attacker_ai_victory_worth = {
		factor = -1 # always accept
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}

	ai_will_do = {
		factor = 2

		# CK2Plus
		trigger = {
			ROOT = {
				sufficient_treasury_for_war_trigger = yes
			}
		}

		coronation_factor = yes
	}
}

# CB for non-nomads to seize a duchy off a nomad horde
cb_liberate_nomad_duchy = {
	name = CB_NAME_LIBERATE_NOMAD
	war_name = WAR_NAME_LIBERATE_NOMAD
	sprite = 8
	truce_days = 3650
	infamy_modifier = 0.75
	sort_priority = 810

	is_permanent = yes
	# check_de_jure_tier = DUKE # this scans all dejure duchies for the counties which are held by or vassals(or below) of selected character. Only valid if is_permanent = yes
	allowed_to_target_tributaries = no
	hostile_against_others = yes
	check_all_titles = yes # if permanent, setting this to true will check against all of someones titles, including vassal held titles
	press_claim = yes

	can_use_gui = {
		check_if_crusader_trigger = yes

		# CK2Plus
		# Attacker
		ROOT = {
			can_use_cb_preamble = yes
		}
	}

	can_use = {
		# Attacker
		ROOT = {
			NOT = { same_realm = FROM }
			pacifist = no
			is_nomadic = no
			mercenary = no
		}

		# Defender
		FROM = {
			is_nomadic = yes
		}
	}

	can_use_title = {
		real_tier = COUNT

		holder_scope = {
			OR = {
				character = FROM
				is_vassal_or_below_of = FROM
			}
		}

		# The attacker needs a land border
		location = {
			any_neighbor_province = {
				has_owner = yes

				owner = {
					OR = {
						character = ROOT
						is_vassal_or_below_of = ROOT
					}
				}
			}
		}

		# Can only liberate counties that are either outside of the Steppe region, or contains a Castle/City/Tribe
		location = {
			trigger_if = {
				limit = { region = world_steppe }

				OR = {
					has_city = yes
					has_castle = yes
					has_tribal = yes
				}
			}
		}

		# Use pagan or muslim county conquest instead
		ROOT = {
			NOR = {
				can_use_cb = {
					target = FROM
					casus_belli = pagan_county_conquest
					thirdparty_title = PREV
					only_check_triggers = yes
				}

				can_use_cb = {
					target = FROM
					casus_belli = muslim_county_conquest
					thirdparty_title = PREV
					only_check_triggers = yes
				}
			}
		}
	}

	is_valid = {
		# Attacker
		ROOT = {
			NOT = { same_realm = FROM }
			is_nomadic = no
			pacifist = no
			mercenary = no
		}

		# Defender
		FROM = {
			is_nomadic = yes
		}
	}

	is_valid_title = {
		holder_scope = {
			OR = {
				character = FROM
				is_vassal_or_below_of = FROM
			}
		}

		# Needs a land border
		location = {
			any_neighbor_province = {
				owner = {
					OR = {
						character = ROOT
						is_vassal_or_below_of = ROOT
					}
				}
			}
		}
	}

	on_add = {
		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success = {
		attacker = {
			show_scope_change = no

			participation_scaled_prestige = 200

			if = {
				limit = { uses_decadence = yes }
				participation_scaled_decadence = -10
			}
		}

		any_attacker = {
			limit = { NOT = { character = attacker } }

			hidden_effect = {
				participation_scaled_prestige = 200

				if = {
					limit = { uses_decadence = yes }
					participation_scaled_decadence = -10
				}
			}
		}

		defender = {
			show_scope_change = no

			prestige = -200
		}
	}

	on_success_title = {
		check_holy_order_donation_effect = yes

	#	custom_tooltip = {
	#		text = liberate_nomad_cb_succ_tip
	#
	#		attacker = {
	#			vassalize_or_take_under_title = {
	#				title = PREV
	#				enemy = defender
	#				anti_nomad = yes # Vassalize non-nomadic rulers
	#				type = invasion
	#			}
	#		}
	#	}

		attacker = {
			show_scope_change = no

			vassalize_or_take_under_title = {
				title = PREV
				enemy = FROM
				anti_nomad = yes # Vassalize non-nomadic rulers
				type = invasion
			}
		}

		usurp_title = {
			target = ROOT
			type = invasion
		}
	}

	on_fail = {
		attacker = {
			show_scope_change = no

			prestige = -100
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			transfer_scaled_wealth = {
				to = defender
				value = 4.0
			}

			prestige = -200
		}

		defender = {
			show_scope_change = no

			participation_scaled_prestige = 200

			if = {
				limit = { uses_decadence = yes }
				participation_scaled_decadence = -10
			}
		}

		any_defender = {
			limit = { NOT = { character = defender } }

			hidden_effect = {
				participation_scaled_prestige = 200

				if = {
					limit = { uses_decadence = yes }
					participation_scaled_decadence = -10
				}
			}
		}
	}

	attacker_ai_victory_worth = {
		factor = -1 # always accept
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}

	ai_will_do = {
		factor = 1

		trigger = {
			ROOT = {
				sufficient_treasury_for_war_trigger = yes
			}

			trigger_if = {
				limit = {
					ROOT = {
						is_tribal = no
					}
				}

				OR = {
					ROOT = {
						trait = ambitious
					}

					location = {
						culture = ROOT
					}

					any_direct_de_jure_vassal_title = {
						OR = {
							holding_type = castle
							holding_type = city

 							trigger_if = {
								limit = { holding_type = temple }
								holder_scope = { religion = ROOT }
							}
						}
					}
				}
			}

			trigger_if = {
				limit = {
					ROOT = {
						OR = {
							has_landed_title = e_byzantium

							any_liege = {
								has_landed_title = e_byzantium
							}
						}
					}
				}

				location = {
					NOT = { region = world_steppe_west }
				}
			}
		}

		coronation_factor = yes
	}
}

# The CB used by "Minor Clan" revolters in Horse Lords
cb_minor_clan_revolt = {
	name = CB_NAME_MINOR_CLAN_REVOLT
	war_name = WAR_NAME_MINOR_CLAN_REVOLT
	sprite = 16
	truce_days = 365

	hostile_against_others = no
	is_permanent = yes
	check_all_titles = yes # if permanent, setting this to true will check against all of someones titles, including vassal held titles
	press_claim = yes
	attacker_can_call_allies = no
	defender_can_call_allies = no
	can_ask_to_join_war = no
	is_independence = yes

	can_use = {
		# Attacker
		ROOT = {
			primary_title = { temporary = yes } # Revolter or adventurer trigger

			NOT = { is_vassal_or_below_of = FROM }
			war = no
			mercenary = no
		}
	}

	can_use_title = {
		real_tier = COUNT
	}

	is_valid_title = {
		holder_scope = {
			OR = {
				character = FROM
				is_vassal_or_below_of = FROM
			}
		}
	}

	on_add = {
		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success_title = {
		log = "[Root.GetBestName] (ID: [Root.GetID]) succeeded with [Root.GetHerHis] minor clan revolt against [From.GetBestName] (ID: [From.GetID])"

		usurp_title_plus_barony_if_unlanded = {
			target = attacker
			type = revolt
		}

		attacker = {
			show_scope_change = no

			hidden_effect = {
				primary_title = {
					set_title_nomad = {
						title = THIS
						status = no
					}
				}
			}

			if = {
				limit = { PREV = { location = { has_tribal = yes } } }
				set_government_type = tribal_government
			}
			else = {
				set_government_type = nomadic_government
			}

			set_defacto_liege = defender

			hidden_effect = {
				wealth = 100
			}
		}

		defender = {
			show_scope_change = no

			prestige = -100
			clr_character_flag = has_current_revolt
		}
	}

	on_fail = {
		attacker = {
			show_scope_change = no

			imprison = defender

			hidden_effect = {
				add_character_modifier = {
					name = broken_spirit
					days = -1
				}
			}
		}

		defender = {
			show_scope_change = no

			prestige = 10
			clr_character_flag = has_current_revolt

			hidden_effect = {
				opinion = {
					name = opinion_rebel_traitor
					who = attacker
					years = 100
				}
			}
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			imprison = defender

			hidden_effect = {
				add_character_modifier = {
					name = broken_spirit
					days = -1
				}
			}
		}

		defender = {
			show_scope_change = no

			prestige = 20
			clr_character_flag = has_current_revolt

			hidden_effect = {
				opinion = {
					name = opinion_rebel_traitor
					who = attacker
					years = 100
				}

				add_character_modifier = {
					name = crushed_revolt
					years = 10
				}
			}
		}
	}

	on_attacker_leader_death = {
		end_war = invalid
	}

	attacker_ai_victory_worth = {
		factor = -1 # always accept
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}
}

# Nomads can subjugate non-Nomads
nomad_subjugation = {
	name = CB_NAME_PAGAN_SUBJUGATION
	war_name = WAR_NAME_PAGAN_SUBJUGATION
	sprite = 8
	truce_days = 365
	sort_priority = 1100

	is_permanent = yes
	can_ask_to_join_war = yes
	allowed_to_target_tributaries = no
	defender_unoccupied_warscore = yes

	can_use_gui = {
		trigger_if = {
			limit = { ROOT = { lower_tier_than = EMPEROR } }

			FROM = {
				show_scope_change = no

				lower_tier_than = EMPEROR
			}
		}

		# Attacker
		ROOT = {
			OR = {
				prestige >= 500

				has_opinion_modifier = {
					name = declared_independence_nomad
					who = FROM
				}
			}

			# CK2Plus
			can_use_cb_preamble = yes
		}

		# Defender
		FROM = {
			is_nomadic = no

			OR = {
				AND = {
					is_tribal = yes

					ROOT = {
						show_scope_change = no

						population >= 2500
					}
				}

				ROOT = {
					show_scope_change = no

					population >= 10000
				}

				has_opinion_modifier = {
					name = declared_independence_nomad
					who = FROM
				}
			}
		}
	}

	can_use = {
		# Attacker
		ROOT = {
			independent = yes
			is_nomadic = yes
			NOT = { same_realm = FROM }
			mercenary = no

			trigger_if = {
				limit = {
					ai = no
					multiplayer = yes
				}

				NOT = {
					has_game_rule = {
						name = multiplayer_invasions
						value = off
					}
				}
			}

			trigger_if = {
				limit = { has_character_modifier = launched_subjugation }

				has_opinion_modifier = {
					name = declared_independence_nomad
					who = FROM
				}
			}
		}

		# Defender
		FROM = {
			in_revolt = no
			is_nomadic = no # Nomads cannot be subjugated
			NOT = { is_offmap_governor = yes }

			NOT = {
				any_war = {
					defender = { character = PREVPREV }

					OR = {
						using_cb = nomad_subjugation
						using_cb = pagan_subjugation
					}
				}
			}
		}
	}

	on_add = {
		attacker = {
			show_scope_change = no

			if = {
				limit = {
					NOT = {
						has_opinion_modifier = {
							name = declared_independence_nomad
							who = FROM
						}
					}
				}

				prestige = -500

				add_character_modifier = {
					name = launched_subjugation
					years = 1000
					hidden = yes
				}
			}
		}

		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success = {
		attacker = {
			show_scope_change = no

			piety = 100
			participation_scaled_prestige = 300

			hidden_effect = {
				if = {
					limit = { has_nickname = no }

					# Set event targets for dynamic nicknames
					save_event_target_as = nickname_receiver
					defender = { save_event_target_as = nickname_target }

					random_list = {
						2 = { give_nickname = nick_the_eastern_wind }
						5 = { give_nickname = nick_the_despoiler }

						5 = {
							give_nickname = nick_the_bane_of_realmname

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { culture = ROOT }
								}
							}
						}

						5 = {
							give_nickname = nick_the_culture_marauder

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { culture = ROOT }
								}
							}
						}

						100 = { }
					}
				}
			}
		}

		any_attacker = {
			limit = { NOT = { character = attacker } }
			hidden_effect = { participation_scaled_prestige = 100 }
		}

		defender = {
			show_scope_change = no

			piety = -100
			prestige = -100

			if = {
				limit = {
					is_reformed_religion = attacker
					controls_religion = no
				}

				religion = ROOT # Reformed pagans are forced to convert back
			}

			custom_tooltip = {
				text = tribal_subjugation_tip

				opinion = {
					name = opinion_subjugated
					who = attacker
				}

				any_vassal = {
					opinion = {
						name = opinion_subjugated
						who = attacker
					}
				}

				any_demesne_title = {
					limit = {
						higher_real_tier_than = attacker
						controls_religion = no
					}

					attacker = {
						grant_title_no_opinion = {
							target = PREV
							type = invasion
						}
					}

					add_pressed_claim = PREV
				}

				any_demesne_title = {
					limit = {
						real_tier = attacker
						controls_religion = no
					}

					attacker = {
						grant_title_no_opinion = {
							target = PREV
							type = invasion
						}
					}

					add_pressed_claim = PREV
				}

				if = {
					limit = { controls_religion = no }

					set_defacto_liege = attacker
					pf_liege_change_effect = yes
				}
				else = {
					any_vassal = {
						set_defacto_liege = attacker
						pf_liege_change_effect = yes
					}

					any_demesne_title = {
						limit = { controls_religion = no }

						attacker = {
							grant_title_no_opinion = {
								target = PREV
								type = invasion
							}
						}
					}
				}
			}
		}

		hidden_effect = {
			check_if_reconquista_finished_effect = yes

			defender = {
				landless_pope_effect = yes
			}
		}
	}

	on_fail = {
		attacker = {
			show_scope_change = no

			piety = -100
		}

		defender = {
			show_scope_change = no

			piety = 50
			participation_scaled_prestige = 50
		}

		any_defender = {
			limit = { NOT = { character = defender } }
			hidden_effect = { participation_scaled_prestige = 50 }
		}
	}

	on_invalidation = {
		if = {
			limit = {
				NOT = {
					has_opinion_modifier = {
						name = declared_independence_nomad
						who = defender
					}
				}
			}

			attacker = {
				remove_character_modifier = launched_subjugation
			}
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			piety = -200

			transfer_scaled_wealth = {
				to = defender
				value = 2.0
			}
		}

		defender = {
			show_scope_change = no

			participation_scaled_prestige = 100
			piety = 100
			roman_victory_triumph_effect = yes
		}

		any_defender = {
			limit = { NOT = { character = defender } }
			hidden_effect = { participation_scaled_prestige = 100 }
		}
	}

	attacker_ai_victory_worth = {
		factor = 200
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}

	ai_will_do = {
		factor = 10

		trigger = {
			FROM = {
				num_of_count_titles_in_realm >= 5
				lower_real_tier_than = EMPEROR
			}

			ROOT = {
				sufficient_treasury_for_war_trigger = yes
			}

			trigger_if = {
				limit = {
					ROOT = {
						has_character_flag = is_temujin
						has_landed_title = e_mongol_empire
						is_landed = yes
					}
				}

				FROM = {
					NOT = { has_landed_title = e_china_west_governor }
				}
			}
		}
	}
}

nomad_invasion = {
	name = CB_NAME_INVASION
	war_name = WAR_NAME_INVASION
	sprite = 8
	truce_days = 1825
	sort_priority = 1000

	hostile_against_others = yes
	is_permanent = yes
	is_holy_war = yes
	can_ask_to_join_war = yes
	check_de_jure_tier = KING # this scans all de jure kingdoms for the counties which are held by or vassals(or below) of selected character. Only valid if is_permanent = yes
	allowed_to_target_tributaries = no

	can_use_gui = {
		# Attacker
		ROOT = {
			prestige >= 500
			population >= 30000

			# Mongols can use this CB more easily
			trigger_if = {
				limit = { has_landed_title = e_mongol_empire }
				population_factor >= 0.50
			}
			trigger_else = {
				population_factor >= 0.75 # 75% of max
			}

			# CK2Plus
			can_use_cb_preamble = yes
		}
	}

	can_use = {
		# Attacker
		ROOT = {
			is_nomadic = yes
			NOT = { same_realm = FROM }

			trigger_if = {
				limit = {
					ai = no
					multiplayer = yes
				}

				NOT = {
					has_game_rule = {
						name = multiplayer_invasions
						value = off
					}
				}
			}
		}
	}

	is_valid_title = {
		# Defender
		FROM = {
			num_of_realm_counties = {
				value >= 1
				title = PREV
			}
		}
	}

	on_add = {
		attacker = {
			show_scope_change = no

			prestige = -500
		}

		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success = {
		attacker = {
			prestige = 500

			hidden_effect = {
				if = {
					limit = { has_nickname = no }

					# Set event targets for dynamic nicknames
					save_event_target_as = nickname_receiver
					defender = { save_event_target_as = nickname_target }

					random_list = {
						5 = { give_nickname = nick_the_great }
						5 = { give_nickname = nick_the_victorious }
						5 = { give_nickname = nick_the_conqueror }
						5 = { give_nickname = nick_the_brave }
						10 = { give_nickname = nick_the_dragon }
						10 = { give_nickname = nick_the_terrible }
						10 = { give_nickname = nick_the_eastern_wind }
						25 = { give_nickname = nick_the_despoiler }

						25 = {
							give_nickname = nick_the_culture_marauder

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { culture = attacker }
								}
							}
						}

						50 = {
							give_nickname = nick_the_bane_of_realmname

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { culture = attacker }
								}
							}
						}

						50 = {
							give_nickname = nick_the_slayer_of_culture

							trigger = {
								event_target:nickname_target = {
									NOT = { culture = attacker }
								}
							}
						}

						50 = {
							give_nickname = nick_the_scourge_of_god

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { religion = attacker }
								}
							}
						}
					}
				}
			}
		}

		any_attacker = {
			limit = { NOT = { character = attacker } }
			hidden_effect = { participation_scaled_prestige = 500 }
		}

		defender = {
			show_scope_change = no

			prestige = -250
		}
	}

	on_success_title = {
		custom_tooltip = {
			text = tribal_invasion_succ_tip

			attacker = {
				occupy_minors_of_occupied_settlements = defender

				gain_all_occupied_titles = {
					who = defender
					type = invasion
				}

				vassalize_or_take_under_title_destroy_duchies = {
					title = PREV
					enemy = defender
					is_crusade = yes # Even if the title holder is not participating in the war, gain holdings occupied by all Crusade participants
					type = invasion
				}
			}
		}

		hidden_effect = {
			destroy_tradeposts_effect = yes
			check_if_reconquista_finished_effect = yes

			defender = {
				landless_pope_effect = yes
			}
		}
	}

	on_fail = {
		log = "Nomad Invasion Failed [Root.GetTitledName]"

		attacker = {
			show_scope_change = no

			prestige = -250
		}

		defender = {
			show_scope_change = no

			prestige = 100
			participation_scaled_prestige = 100

			hidden_effect = {
				if = {
					limit = { has_nickname = no }

					random_list = {
						10 = { give_nickname = nick_the_great }
						10 = { give_nickname = nick_the_hammer }
						10 = { give_nickname = nick_the_avenger }
						10 = { give_nickname = nick_the_lion }
						10 = { give_nickname = nick_the_bold }
					}
				}
			}
		}

		any_defender = {
			limit = { NOT = { character = defender } }
			hidden_effect = { participation_scaled_prestige = 100 }
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			prestige = -250

			transfer_scaled_wealth = {
				to = defender
				value = 4.0
			}
		}

		defender = {
			show_scope_change = no

			prestige = 250
			participation_scaled_prestige = 250
			roman_victory_triumph_effect = yes

			hidden_effect = {
				if = {
					limit = { has_nickname = no }

					random_list = {
						10 = { give_nickname = nick_the_great }
						10 = { give_nickname = nick_the_hammer }
						10 = { give_nickname = nick_the_avenger }
						10 = { give_nickname = nick_the_lion }
						10 = { give_nickname = nick_the_bold }
					}
				}
			}
		}

		any_defender = {
			limit = { NOT = { character = defender } }
			hidden_effect = { participation_scaled_prestige = 250 }
		}
	}

	on_invalidation = {
		log = "Nomad Invasion Invalidated [Root.GetTitledName]"
	}

	attacker_ai_victory_worth = {
		factor = 200
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}

	ai_will_do = {
		factor = 7.2 # Prefer using CB's without on_add costs

		trigger = {
			ROOT = {
				sufficient_treasury_for_war_trigger = yes
			}

			# This ensures that the AI doesn't declare this type of war against someone who only holds a few counties within the targeted title...
			trigger_if = {
				limit = {
					ROOT = {
						NOT = { has_landed_title = e_mongol_empire }
					}
				}

				# Defender
				FROM = {
					num_of_realm_counties = {
						value >= 5
						title = PREV
					}
				}
			}

			trigger_if = {
				limit = {
					ROOT = {
						has_character_flag = is_temujin
						has_landed_title = e_mongol_empire
						is_landed = yes
					}
				}

				FROM = {
					NOT = { has_landed_title = e_china_west_governor }
				}
			}

			trigger_if = {
				limit = {
					ROOT = {
						culture = hungarian
					}
				}

				capital_scope = {
					NOR = {
						region = custom_cuman
						region = custom_volga_bulgaria
						region = custom_alania
						region = custom_novgorod
						region = custom_muscovy
						region = custom_ruthenia
					}
				}
			}
			trigger_else_if = {
				limit = {
					ROOT = {
						culture = khazar
					}
				}

				capital_scope = {
					NOR = {
						region = world_steppe_tarim
						region = world_steppe_east
						region = custom_cuman
						region = custom_perm
						region = custom_volga_bulgaria
					}
				}
			}
		}

		# Try to guide the Hordes in the right direction
		mult_modifier = {
			factor = 0.1

			ROOT = {
				OR = {
					dynasty = 613 # Seljuks
					dynasty = 800 # Timurids

					primary_title = {
						title = e_ilkhanate
					}
				}
			}

			OR = {
				capital_scope = {
					NOR = {
						region = world_europe_south_east
						region = world_asia_minor
						region = world_middle_east
						region = world_persia
					}
				}

				FROM = {
					primary_title = {
						title = e_golden_horde
					}

					year < 1300
				}
			}
		}

		mult_modifier = {
			factor = 0.1

			ROOT = {
				primary_title = {
					title = e_golden_horde
				}
			}

			OR = {
				capital_scope = {
					NOR = {
						region = world_europe_south_east
						region = world_asia_minor
						region = world_middle_east
						region = world_persia
					}
				}

				FROM = {
					primary_title = {
						title = e_ilkhanate
					}

					year < 1300
				}
			}
		}

	#	mult_modifier = {
	#		factor = 0.1
	#
	#		ROOT = {
	#			culture = hungarian
	#
	#			primary_title = {
	#				OR = {
	#					title = k_hungary
	#					title = e_carpathia
	#				}
	#			}
	#		}
	#
	#		empire = {
	#			OR = {
	#				title = e_tartaria
	#				title = e_rus
	#			}
	#		}
	#	}

	#	mult_modifier = {
	#		factor = 100
	#
	#		ROOT = {
	#			primary_title = {
	#				title = e_mongol_empire
	#			}
	#		}
	#
	#		empire = {
	#			OR = {
	#				title = e_tartaria
	#				title = e_turkestan
	#				title = e_pontic_steppe
	#				title = e_volga_ural
	#				title = e_rus
	#				title = e_persia
	#			}
	#		}
	#	}

	#	mult_modifier = {
	#		factor = 0.1
	#
	#		ROOT = {
	#			primary_title = {
	#				title = e_mongol_empire
	#			}
	#		}
	#
	#		empire = {
	#			OR = {
	#				title = e_tibet
	#				title = e_rajastan
	#				title = e_bengal
	#				title = e_deccan
	#			}
	#		}
	#	}

		mult_modifier = {
			factor = 2.0

			ROOT = {
				culture = hungarian
			}

			capital_scope = {
				OR = {
					region = custom_bulgaria
					region = custom_carpathia
				}
			}
		}

		mult_modifier = {
			factor = 5
			ROOT = { trait = bloodlust }
		}
	}
}

# Nomads can grab entire duchies, if they have the Prestige
nomad_expansion = {
	name = CB_NAME_NOMAD_EXPANSION
	war_name = WAR_NAME_NOMAD_EXPANSION
	sprite = 8
	truce_days = 1825
	sort_priority = 800

	is_permanent = yes
	is_holy_war = yes
	check_de_jure_tier = DUKE # this scans all de jure duchies for the counties which are held by or vassals(or below) of selected character. Only valid if is_permanent = yes
	allowed_to_target_tributaries = no

	can_use_gui = {
		# Attacker
		ROOT = {
			prestige >= 250
			population_factor >= 0.5

			# Defender
			FROM = {
				show_scope_change = no

				trigger_if = {
					limit = { is_nomadic = no } # Nomads no population requirement

					trigger_if = {
						limit = { is_tribal = yes }

						ROOT = { # Tribals need 5k
							show_scope_change = no

							population >= 5000
						}
					}
					trigger_else = {
						ROOT = { # Everyone else needs 15k
							show_scope_change = no

							population >= 15000
						}
					}
				}
			}

			# CK2Plus
			can_use_cb_preamble = yes
		}
	}

	can_use = {
		# Attacker
		ROOT = {
			is_nomadic = yes
			NOT = { same_realm = FROM}
			mercenary = no
		}
	}

	can_use_title = {
		# The attacker needs at least one county in the target duchy, or a border
		any_direct_de_jure_vassal_title = {
			OR = {
				holder_scope = {
					OR = {
						character = ROOT
						is_vassal_or_below_of = ROOT
					}
				}

				location = {
					any_neighbor_province = {
						has_owner = yes

						owner = {
							OR = {
								character = ROOT
								is_vassal_or_below_of = ROOT
							}
						}
					}
				}
			}
		}
	}

	is_valid = {
		# Attacker
		ROOT = {
			is_nomadic = yes

			NOR = {
				same_realm = FROM
				pays_tribute_to = FROM

				any_liege = {
					OR = {
						pays_tribute_to = FROM

						FROM = {
							pays_tribute_to = PREV
						}
					}
				}
			}
		}
	}

	on_add = {
		attacker = {
			show_scope_change = no
			prestige = -250
		}

		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success = {
		attacker = {
			hidden_effect = {
				if = {
					limit = { has_nickname = no }

					# Set event targets for dynamic nicknames
					save_event_target_as = nickname_receiver
					defender = { save_event_target_as = nickname_target }

					random_list = {
						5 = { give_nickname = nick_the_eastern_wind }
						5 = { give_nickname = nick_the_despoiler }

						5 = {
							give_nickname = nick_the_culture_marauder

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { culture = attacker }
								}
							}
						}

						5 = {
							give_nickname = nick_the_bane_of_realmname

							trigger = {
								event_target:nickname_target = {
									is_nomadic = no
									NOT = { culture = attacker }
								}
							}
						}

						5 = {
							give_nickname = nick_the_slayer_of_culture

							trigger = {
								event_target:nickname_target = {
									NOT = { culture = attacker }
								}
							}
						}

						5 = {
							give_nickname = nick_the_scourge_of_god

							trigger = {
								event_target:nickname_target = {
									NOT = { religion = attacker }
								}
							}
						}

						100 = { }
					}
				}

				if = {
					limit = { uses_decadence = yes }
					participation_scaled_decadence = -10
				}
			}

			participation_scaled_prestige = 250
		}

		any_attacker = {
			limit = { NOT = { character = attacker } }

			hidden_effect = {
				participation_scaled_prestige = 250

				if = {
					limit = { uses_decadence = yes }
					participation_scaled_decadence = -10
				}
			}
		}

		defender = {
			show_scope_change = no

			prestige = -250
		}
	}

	on_success_title = {
		custom_tooltip = {
			text = pagan_subjugation_tip

			attacker = {
				subjugate_or_take_under_title = {
					title = PREV
					enemy = defender
				}
			}
		}

		hidden_effect = {
			destroy_tradeposts_effect = yes
			check_if_reconquista_finished_effect = yes

			defender = {
				landless_pope_effect = yes
			}
		}
	}

	on_fail = {
		attacker = {
			show_scope_change = no

			prestige = -100
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			transfer_scaled_wealth = {
				to = defender
				value = 4.0
			}

			prestige = -200
		}

		defender = {
			show_scope_change = no

			participation_scaled_prestige = 200

			if = {
				limit = { uses_decadence = yes }
				participation_scaled_decadence = -10
			}
		}

		any_defender = {
			limit = { NOT = { character = defender } }

			hidden_effect = {
				participation_scaled_prestige = 200

				if = {
					limit = { uses_decadence = yes }
					participation_scaled_decadence = -10
				}
			}
		}
	}

	attacker_ai_victory_worth = {
		factor = -1 # always accept
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100
	}

	ai_will_do = {
		factor = 2

		trigger = {
			ROOT = {
				sufficient_treasury_for_war_trigger = yes
			}

			trigger_if = {
				limit = {
					ROOT = {
						has_character_flag = is_temujin
						has_landed_title = e_mongol_empire
						is_landed = yes
					}
				}

				FROM = {
					NOT = { has_landed_title = e_china_west_governor }
				}
			}
		}

		# Try to guide the Hordes in the right direction
		mult_modifier = {
			factor = 0.1

			ROOT = {
				OR = {
					dynasty = 613 # Seljuks
					dynasty = 800 # Timurids

					primary_title = {
						title = e_ilkhanate
					}
				}
			}

			OR = {
				capital_scope = {
					NOR = {
						region = world_europe_south_east
						region = world_asia_minor
						region = world_middle_east
						region = world_persia
					}
				}

				FROM = {
					primary_title = {
						title = e_golden_horde
					}

					year < 1300
				}
			}
		}

		mult_modifier = {
			factor = 0.1

			ROOT = {
				primary_title = {
					title = e_golden_horde
				}
			}

			OR = {
				capital_scope = {
					OR = {
						region = world_europe_south_east
						region = world_asia_minor
						region = world_middle_east
						region = world_persia
					}
				}

				FROM = {
					primary_title = {
						title = e_ilkhanate
					}

					year < 1300
				}
			}
		}

		mult_modifier = {
			factor = 2.0

			OR = {
				culture = persian
				culture = baloch
				culture = afghan
				culture = turkish
			}

			capital_scope = {
				OR = {
					region = world_persia
					region = world_india_rajastan
				}
			}
		}

		# CK2Plus
		mult_modifier = { # Temujin should prefer bigger targets
			factor = 0.1
			ROOT = {
				has_character_flag = is_temujin
			}
		}

		mult_modifier = { # Temujin's heir should prefer bigger targets
			factor = 0.5
			ROOT = {
				father_even_if_dead = { has_character_flag = is_temujin }
			}
		}

		mult_modifier = {
			factor = 0.1

			ROOT = {
				culture = hungarian
			}

			capital_scope = {
				OR = {
					region = custom_cuman
					region = custom_volga_bulgaria
					region = custom_alania
					region = custom_novgorod
					region = custom_muscovy
					region = custom_ruthenia
				}
			}
		}

		mult_modifier = {
			factor = 2.0

			ROOT = {
				culture = hungarian
			}

			capital_scope = {
				OR = {
					region = custom_bulgaria
					region = custom_carpathia
				}
			}
		}

		mult_modifier = {
			factor = 0.1

			ROOT = {
				culture = khazar
			}

			capital_scope = {
				OR = {
					region = world_steppe_tarim
					region = world_steppe_east
					region = custom_cuman
					region = custom_perm
					region = custom_volga_bulgaria
				}
			}
		}
	}
}

nomad_humiliate_cb = {
	name = CB_NAME_HUMILIATE
	war_name = WAR_NAME_HUMILIATE
	sprite = 1
	truce_days = 3650
	sort_priority = 815

	is_permanent = yes
	hostile_against_others = yes
	can_ask_to_join_war = no
	display_on_map = no
	allowed_to_target_tributaries = no
	defender_unoccupied_warscore = yes

	can_use_gui = {
		check_if_crusader_trigger = yes
	}

	can_use = {
		has_dlc = "Horse Lords"

		# Attacker
		ROOT = {
			is_nomadic = yes
			mercenary = no
		}

		# Defender
		FROM = {
			is_nomadic = yes

			trigger_if = {
				limit = { independent = no }
				same_realm = ROOT
				has_feud_with = ROOT
			}

			# The attacker needs a border, or be at most two sea zones away from one of the target's counties
			any_realm_province = {
				held_under_PREV = yes

				any_neighbor_province = {
					trigger_if = {
						limit = { has_owner = yes } # border

						owner = {
							OR = {
								character = ROOT
								is_vassal_or_below_of = ROOT
							}
						}
					}
					trigger_else = {
						is_land = no # first sea zone

						any_neighbor_province = {
							trigger_if = {
								limit = { has_owner = yes } # one sea zone away

								owner = {
									OR = {
										character = ROOT
										is_vassal_or_below_of = ROOT
									}
								}
							}
							trigger_else = {
								is_land = no # second sea zone

								any_neighbor_province = { # second sea zone away
									owner = {
										OR = {
											character = ROOT
											is_vassal_or_below_of = ROOT
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}

	on_add = {
		fire_haruspicy_event_effect = yes
		anger_china_effect = yes
	}

	on_success = {
		attacker = {
			show_scope_change = no

			prestige = 300

			steal_population_scaled = {
				target = defender
				percentage = 0.25
			}
		}

		defender = {
			show_scope_change = no

			prestige = -300
		}
	}

	on_fail = {
		attacker = {
			show_scope_change = no

			prestige = -100
		}

		defender = {
			show_scope_change = no

			prestige = 100
		}
	}

	on_reverse_demand = {
		attacker = {
			show_scope_change = no

			prestige = -200

			transfer_scaled_wealth = {
				to = defender
				value = 4.0
			}
		}

		defender = {
			prestige = 200
		}
	}

	on_attacker_leader_death = {
		end_war = invalid
	}

	attacker_ai_victory_worth = {
		factor = -1 # always accept
	}

	attacker_ai_defeat_worth = {
		factor = 100
	}

	defender_ai_victory_worth = {
		factor = -1 # always accept
	}

	defender_ai_defeat_worth = {
		factor = 100

		mult_modifier = {
			factor = 2
			defender = { trait = proud }
		}

		mult_modifier = {
			factor = 2
			defender = { trait = brave }
		}

		mult_modifier = {
			factor = 2
			defender = { trait = greedy}
		}

		mult_modifier = {
			factor = 3
			defender = { real_tier = KING }
		}

		mult_modifier = {
			factor = 0.85

			attacker = {
				relative_power = {
					who = defender
					power >= 1.2
				}
			}
		}

		mult_modifier = {
			factor = 0.85

			attacker = {
				relative_power = {
					who = defender
					power >= 1.5
				}
			}
		}

		mult_modifier = {
			factor = 0.8

			attacker = {
				relative_power = {
					who = defender
					power >= 2.0
				}
			}
		}

		mult_modifier = {
			factor = 0.8

			attacker = {
				relative_power = {
					who = defender
					power >= 2.5
				}
			}
		}

		mult_modifier = {
			factor = 0.8

			attacker = {
				relative_power = {
					who = defender
					power >= 3
				}
			}
		}

		mult_modifier = {
			factor = 0.75

			attacker = {
				relative_power = {
					who = defender
					power >= 4
				}
			}
		}

		mult_modifier = {
			factor = 0.75

			attacker = {
				relative_power = {
					who = defender
					power >= 5
				}
			}
		}

		mult_modifier = {
			factor = 0.75

			attacker = {
				relative_power = {
					who = defender
					power >= 6
				}
			}
		}

		mult_modifier = {
			factor = 0.5

			attacker = {
				relative_power = {
					who = defender
					power >= 8
				}
			}
		}

		mult_modifier = {
			factor = 0.25

			attacker = {
				relative_power = {
					who = defender
					power >= 10
				}
			}
		}

		mult_modifier = {
			factor = 2

			attacker = {
				distance_from_realm = {
					who = defender
					value >= 20
				}
			}
		}

		mult_modifier = {
			factor = 2

			attacker = {
				distance_from_realm = {
					who = defender
					value >= 40
				}
			}
		}

		mult_modifier = {
			factor = 3

			attacker = {
				distance_from_realm = {
					who = defender
					value >= 80
				}
			}
		}

		mult_modifier = {
			factor = 4

			attacker = {
				distance_from_realm = {
					who = defender
					value >= 120
				}
			}
		}
	}

	ai_will_do = {
		factor = 0.1 # Low prio CB

		trigger = {
			ROOT = {
				sufficient_treasury_for_war_trigger = yes
			}
		}

		mult_modifier = {
			factor = 0.1 # Target has almost no money

			FROM = {
				OR = {
					is_nomadic = yes
					is_tribal = yes
				}
			}
		}

		mult_modifier = {
			factor = 4
			ROOT = { trait = greedy }
		}
	}
}