﻿#Change hunt score
change_hunt_success_chance = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	common_interaction = yes
	icon = activity_hunt
	is_shown = {
		debug_only = yes
		scope:actor.involved_activity ?= {
			has_activity_type = activity_hunt
			exists = var:hunt_success_chance
		}
	}

	send_option = {
		flag = score_massive
		localization = score_massive
	}

	send_option = {
		flag = score_major
		localization = score_major
	}

	send_option = {
		flag = score_medium
		localization = score_medium
	}

	send_option = {
		flag = score_minor
		localization = score_minor
	}

	send_option = {
		flag = decrease_score_minor
		localization = decrease_score_minor
	}

	send_option = {
		flag = decrease_score_medium
		localization = decrease_score_medium
	}

	send_option = {
		flag = decrease_score_major
		localization = decrease_score_major
	}

	send_option = {
		flag = decrease_score_massive
		localization = decrease_score_massive
	}

	on_accept = {
		scope:actor.involved_activity = {
			if = {
				limit = {
					NOT = { exists = var:hunt_success_chance_event }
				}
				set_variable = { name = hunt_success_chance_event value = 0 }
			}
			switch = {
				trigger = yes
				scope:score_massive = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_increase_massive_value }
				}
				scope:score_major = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_increase_major_value }
				}
				scope:score_medium = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_increase_medium_value }
				}
				scope:score_minor = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_increase_minor_value }
				}
				scope:decrease_score_massive = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_decrease_massive_value }
				}
				scope:decrease_score_major = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_decrease_major_value }
				}
				scope:decrease_score_medium = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_decrease_medium_value }
				}
				scope:decrease_score_minor = {
					change_variable = { name = hunt_success_chance_event add = hunt_activity_success_decrease_minor_value }
				}
			}
			set_variable = {
				name = hunt_success_chance
				value = {
					value = hunt_success_chance_value
					add = var:hunt_success_chance_event
				}
			}
		}
	}

	auto_accept = yes
}

debug_give_animal_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	common_interaction = no
	icon = dog_positive
	is_shown = {
		debug_only = yes
		scope:recipient = {
			NAND = {
				any_owned_story = { story_type = story_cycle_pet_cat }
				any_owned_story = { story_type = story_cycle_pet_dog }
				any_owned_story = { story_type = story_cycle_martial_lifestyle_warhorse }
			}
		}
	}

	send_option = {
		is_valid = {
			NOT = {
				scope:recipient = { any_owned_story = { story_type = story_cycle_pet_dog } }
			}
		}
		flag = story_cycle_pet_dog
		localization = story_cycle_pet_dog
	}

	send_option = {
		is_valid = {
			NOT = {
				scope:recipient = { any_owned_story = { story_type = story_cycle_pet_cat } }
			}
		}
		flag = story_cycle_pet_cat
		localization = story_cycle_pet_cat
	}

	send_option = {
		is_valid = {
			NOT = {
				scope:recipient = { any_owned_story = { story_type = story_cycle_martial_lifestyle_warhorse } }
			}
		}
		flag = story_cycle_martial_lifestyle_warhorse
		localization = horse_story_modifier
	}

	send_options_exclusive = yes

	on_accept = {
		scope:recipient = {
			switch = {
				trigger = yes
				scope:story_cycle_pet_dog = {
					start_dog_story_cycle_effect = yes
				}
				scope:story_cycle_pet_cat = {
					start_cat_story_cycle_effect = yes
				}
				scope:story_cycle_martial_lifestyle_warhorse = {
					start_warhorse_story_cycle_effect = yes
				}
			}
		}
	}

	auto_accept = yes
}

#Change tournament score
change_tournament_score = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	common_interaction = yes
	icon = activity_tournament
	is_shown = {
		debug_only = yes
		scope:recipient = {
			exists = involved_activity
			involved_activity = {
				has_activity_type = activity_tournament
			}
			activity_is_competing_trigger = yes
		}
	}

	send_option = {
		flag = score_massive
		localization = score_massive
	}

	send_option = {
		flag = score_major
		localization = score_major
	}

	send_option = {
		flag = score_medium
		localization = score_medium
	}

	send_option = {
		flag = score_minor
		localization = score_minor
	}

	send_option = {
		flag = decrease_score_minor
		localization = decrease_score_minor
	}

	send_option = {
		flag = decrease_score_medium
		localization = decrease_score_medium
	}

	send_option = {
		flag = decrease_score_major
		localization = decrease_score_major
	}

	send_option = {
		flag = decrease_score_massive
		localization = decrease_score_massive
	}

	on_accept = {
		scope:recipient = {
			if = {
				limit = { scope:score_massive = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = increase_massive }
			}
			else_if = {
				limit = { scope:score_major = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = increase_major }
			}
			else_if = {
				limit = { scope:score_medium = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = increase_medium }
			}
			else_if = {
				limit = { scope:score_minor = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = increase_minor }
			}
			else_if = {
				limit = { scope:decrease_score_massive = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = decrease_massive }
			}
			else_if = {
				limit = { scope:decrease_score_major = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = decrease_major }
			}
			else_if = {
				limit = { scope:decrease_score_medium = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = decrease_medium }
			}
			else_if = {
				limit = { scope:decrease_score_minor = yes }
				activity_tournament_change_contestant_score_effect = { SCORE = decrease_minor }
			}
		}
	}

	auto_accept = yes
}

#Bring a character to your court
add_to_court_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = guest
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
		scope:recipient = {
			is_playable_character = no
			NOT = { is_courtier_of = scope:actor }
		}
	}

	on_accept = {
		scope:actor = { add_courtier = scope:recipient }
		scope:recipient = {
			hidden_effect = { return_to_court = yes }
		}
	}

	auto_accept = yes
}

debug_secrets_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = debug_secret

	is_shown = {
		debug_only = yes
	}

	send_option = {
		flag = realm
		localization = set_up_secrets_in_realm_interaction
	}
	send_option = {
		flag = court
		localization = give_secrets_to_court_interaction
	}
	send_option = {
		flag = expose
		localization = expose_known_secrets_interaction
	}

	on_accept = {
		switch = {
			trigger = yes
			scope:realm = {
				scope:recipient.top_liege = {
					hidden_effect = {
						# Start by adding all realm characters and neighbouring realm characters to a list
						add_to_list = secret_setup
						every_vassal = {
							add_to_list = secret_setup
							random_courtier_or_guest = {
								add_to_list = secret_setup
							}
						}
						every_neighboring_top_liege_realm_owner = {
							add_to_list = secret_setup
							every_vassal = {
								add_to_list = secret_setup
								random_courtier_or_guest = {
									add_to_list = secret_setup
								}
							}
						}
						every_in_list = { # Give everyone in the list a 50% chance of getting a secret
							list = secret_setup
							give_random_likely_secret_effect = yes
						}
						random_in_list = { # Reveal one secret to the character the decision is used on, from the same realm
							list = secret_setup
							limit = {
								top_liege = scope:recipient.top_liege
								any_secret = {
									NOT = { is_known_by = scope:recipient }
								}
							}
							random_secret = {
								limit = {
									NOT = { is_known_by = scope:recipient }
								}
								reveal_to = scope:recipient
							}
						}
						random_in_list = { # Reveal one secret to the character the decision is used on, NOT from the same realm
							list = secret_setup
							limit = {
								NOT = { top_liege = scope:recipient.top_liege }
								any_secret = {
									NOT = { is_known_by = scope:recipient }
								}
							}
							random_secret = {
								limit = {
									NOT = { is_known_by = scope:recipient }
								}
								reveal_to = scope:recipient
							}
						}
						every_in_list = { # Everyone in the list has a chance to get to know of a secret anyone else has in the list
							list = secret_setup
							save_scope_as = reveal_to_me
							random = {
								chance = 75
								random_in_list = {
									list = secret_setup
									limit = {
										any_secret = {
											NOT = { is_known_by = scope:reveal_to_me }
										}
									}
									random_secret = {
										limit = {
											NOT = { is_known_by = scope:reveal_to_me }
										}
										reveal_to = scope:reveal_to_me
									}
								}
							}
						}
						random_in_list = { # Imprison someone with a secret you know about
							list = secret_setup
							limit = {
								any_secret = {
									is_known_by = scope:recipient
								}
								NOT =  { this = scope:recipient }
								is_foreign_court_guest = no
							}
							save_scope_as = prisoner_secret
							scope:recipient = {
								imprison = {
									target = scope:prisoner_secret
									type = dungeon
								}
							}
						}
						random_in_list = { # Imprison someone who has a secret you don't know about
							list = secret_setup
							limit = {
								any_secret = {
									NOT = { is_known_by = scope:recipient }
								}
								NOT =  { this = scope:recipient }
								is_foreign_court_guest = no
							}
							save_scope_as = prisoner_secret
							scope:recipient = {
								imprison = {
									target = scope:prisoner_secret
									type = dungeon
								}
							}
						}
					}
				}
			}
			scope:court = {
				scope:recipient = {
					give_deviant_secret_or_trait_effect = yes
					give_homosexual_secret_or_nothing_effect = yes
					hidden_effect = {
						every_courtier = {
							give_random_likely_secret_effect = yes
						}
					}
				}
			}
			scope:expose = {
				scope:actor = {
					every_known_secret = {
						limit = {
							secret_owner = scope:recipient
						}
						expose_secret = scope:actor
					}
				}
			}
		}
	}

	auto_accept = yes
}

add_hook_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	interface_priority = -1
	icon = hook_icon
	common_interaction = no

	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	send_option = {
		flag = weak_hook
		localization = add_weak_hook_interaction
	}
	send_option = {
		flag = strong_hook
		localization = add_strong_hook_interaction
	}
	send_option = {
		flag = perpetual_hook
		localization = add_perpetual_hook_interaction
	}
	send_option = {
		flag = obligation_hook
		localization = add_obligation_hook_interaction
	}
	auto_accept = yes
	on_accept = {
		scope:actor = {
			switch = {
				trigger = yes
				scope:weak_hook = {
					add_hook = {
						target = scope:recipient
						type = favor_hook
					}
				}
				scope:strong_hook = {
					add_hook = {
						target = scope:recipient
						type = strong_test_hook
					}
				}
				scope:perpetual_hook = {
					add_hook = {
						target = scope:recipient
						type = perpetual_test_hook
					}
				}
				scope:obligation_hook = {
					add_hook = {
						target = scope:recipient
						type = obligation_hook
					}
				}
			}
		}
	}
}

set_relation_debug = {
	category = interaction_debug_main
	desc = set_relationship_debug_desc
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = debug_chars
	common_interaction = yes
	is_shown = {
		debug_only = yes
		NOT = {
			scope:recipient = scope:actor
		}
	}

	send_option = {
		is_shown = {
			NOR = {
				scope:actor = { has_relation_potential_friend = scope:recipient }
				scope:actor = { has_relation_friend = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_potential_friend_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = potential_friend
		localization = set_relation_debug_potential_friend
	}
	send_option = {
		is_shown = {
			NOR = {
				scope:actor = { has_relation_potential_rival = scope:recipient }
				scope:actor = { has_relation_rival = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_potential_rival_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = potential_rival
		localization = set_relation_debug_potential_rival
	}
	send_option = {
		is_shown = {
			NOR = {
				scope:actor = { has_relation_potential_lover = scope:recipient }
				scope:actor = { has_relation_lover = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_potential_lover_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = potential_lover
		localization = set_relation_debug_potential_lover
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_friend = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_friend_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = friend
		localization = set_relation_debug_friend
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_rival = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_rival_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = rival
		localization = set_relation_debug_rival
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_lover = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_lover_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = lover
		localization = set_relation_debug_lover
	}
	send_option = {
		is_shown = {
			scope:actor = {
				NOR = {
					any_secret ={
						secret_type = secret_lover
						secret_target = scope:recipient
					}
					has_relation_lover = scope:recipient
					has_relation_soulmate = scope:recipient
				}
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_lover_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = lover_secret
		localization = set_relation_debug_lover_secret
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_best_friend = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_best_friend_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = best_friend
		localization = set_relation_debug_best_friend
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_nemesis = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_nemesis_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = nemesis
		localization = set_relation_debug_nemesis
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_soulmate = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_soulmate_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = soulmate
		localization = set_relation_debug_soulmate
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_bully = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_bully_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = bully
		localization = set_relation_debug_bully
	}
	send_option = {
		is_shown = {
			NOT = {
				scope:actor = { has_relation_victim = scope:recipient }
			}
		}
		is_valid = {
			scope:actor = {
				can_set_relation_victim_trigger = { CHARACTER = scope:recipient }
			}
		}
		flag = victim
		localization = set_relation_debug_victim
	}
	send_option = {
		is_valid = {
			scope:actor = {
				NOT = { has_relation_crush = scope:recipient }
			}
		}
		flag = crush
		localization = set_relation_debug_crush
	}
	send_option = {
		is_valid = {
			scope:recipient = {
				NOT = { has_relation_crush = scope:actor }
			}
		}
		flag = crush_on_me
		localization = set_relation_debug_crush_on_me
	}
	send_option = {
		is_valid = {
			scope:actor = {
				NOT = { has_relation_grudge = scope:recipient }
			}
		}
		flag = grudge
		localization = set_relation_debug_grudge
	}
	send_option = {
		is_valid = {
			scope:recipient = {
				NOT = { has_relation_grudge = scope:actor }
			}
		}
		flag = grudge_on_me
		localization = set_relation_debug_grudge_on_me
	}
	# REMOVE
	send_option = {
		is_shown = {
			scope:actor = { has_relation_potential_friend = scope:recipient }
		}
		flag = remove_potential_friend
		localization = remove_relation_debug_potential_friend
	}
	send_option = {
		is_valid = {
			scope:actor = { has_relation_potential_rival = scope:recipient }
		}
		flag = remove_potential_rival
		localization = remove_relation_debug_potential_rival
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_potential_lover = scope:recipient }
		}
		flag = remove_potential_lover
		localization = remove_relation_debug_potential_lover
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_friend = scope:recipient }
		}
		flag = remove_friend
		localization = remove_relation_debug_friend
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_rival = scope:recipient }
		}
		flag = remove_rival
		localization = remove_relation_debug_rival
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_lover = scope:recipient }
		}
		flag = remove_lover
		localization = remove_relation_debug_lover
	}
	send_option = {
		is_shown = {
			scope:actor = {
				any_secret = {
					secret_type = secret_lover
					secret_target = scope:recipient
				}
			}
		}
		flag = remove_lover_secret
		localization = remove_relation_debug_lover_secret
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_best_friend = scope:recipient }
		}
		flag = remove_best_friend
		localization = remove_relation_debug_best_friend
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_nemesis = scope:recipient }
		}
		flag = remove_nemesis
		localization = remove_relation_debug_nemesis
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_soulmate = scope:recipient }
		}
		flag = remove_soulmate
		localization = remove_relation_debug_soulmate
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_bully = scope:recipient }
		}
		flag = remove_bully
		localization = remove_relation_debug_bully
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_victim = scope:recipient }
		}
		flag = remove_victim
		localization = remove_relation_debug_victim
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_crush = scope:recipient }
		}
		flag = remove_crush
		localization = remove_relation_debug_crush
	}
	send_option = {
		is_shown = {
			scope:recipient = { has_relation_crush = scope:actor }
		}
		flag = remove_crush_on_me
		localization = remove_relation_debug_crush_on_me
	}
	send_option = {
		is_shown = {
			scope:actor = { has_relation_grudge = scope:recipient }
		}
		flag = remove_grudge
		localization = remove_relation_debug_grudge
	}
	send_option = {
		is_shown = {
			scope:recipient = { has_relation_grudge = scope:actor }
		}
		flag = remove_grudge_on_me
		localization = remove_relation_debug_grudge_on_me
	}

	on_accept = {
		scope:recipient = {
			switch = {
				trigger = yes
				# SET
				scope:potential_friend = { set_relation_potential_friend = scope:actor }
				scope:potential_rival = { set_relation_potential_rival = scope:actor }
				scope:potential_lover = { set_relation_potential_lover = scope:actor }
				scope:friend = {
					set_relation_friend = { reason = test_friend_desc target = scope:actor }
				}
				scope:rival = {
					set_relation_rival = { reason = test_rival_desc target = scope:actor }
				}
				scope:lover = {
					set_relation_lover = { reason = test_lover_desc target = scope:actor }
				}
				scope:lover_secret = {
					add_secret = {
						target = scope:actor
						type = secret_lover
					}
					scope:actor = {
						add_secret = {
							target = scope:recipient
							type = secret_lover
						}
					}
				}
				scope:best_friend = {
					set_relation_best_friend = { reason = best_friend_poetry copy_reason = friend target = scope:actor }
				}
				scope:nemesis = {
					set_relation_nemesis = { reason = test_nemesis_desc copy_reason = rival target = scope:actor }
				}
				scope:soulmate = {
					set_relation_soulmate = { reason = test_soulmate_desc copy_reason = lover target = scope:actor }
				}
				scope:crush = {
					scope:actor = { set_relation_crush = scope:recipient } #You crush on the recipient
				}
				scope:crush_on_me = { set_relation_crush = scope:actor }
				scope:bully = { set_relation_bully = scope:actor }
				scope:victim = { set_relation_victim = scope:actor }
				scope:grudge = {
					scope:actor = {
						set_relation_grudge = {
							reason = grudge_imprisonment_desc
							target = scope:recipient
						}
					}
				}
				scope:grudge_on_me = { set_relation_grudge = scope:actor }
				# REMOVE
				scope:remove_potential_friend = { remove_relation_potential_friend = scope:actor }
				scope:remove_potential_rival = { remove_relation_potential_rival = scope:actor }
				scope:remove_potential_lover = { remove_relation_potential_lover = scope:actor }
				scope:remove_friend = { remove_relation_friend = scope:actor }
				scope:remove_rival = { remove_relation_rival = scope:actor }
				scope:remove_lover = { remove_relation_lover = scope:actor }
				scope:remove_lover_secret = {
					random_secret = {
						limit = {
							secret_type = secret_lover
							secret_target = scope:actor
						}
						remove_secret = yes
					}
					scope:actor = {
						random_secret = {
							limit = {
								secret_type = secret_lover
								secret_target = scope:recipient
							}
							remove_secret = yes
						}
					}
				}
				scope:remove_best_friend = { remove_relation_best_friend = scope:actor }
				scope:remove_nemesis = { remove_relation_nemesis = scope:actor }
				scope:remove_soulmate = { remove_relation_soulmate = scope:actor }
				scope:remove_crush = {
					scope:actor = { remove_relation_crush = scope:recipient } #You crush on the recipient
				}
				scope:remove_crush_on_me = { remove_relation_crush = scope:actor }
				scope:remove_bully = { remove_relation_bully = scope:actor }
				scope:remove_victim = { remove_relation_victim = scope:actor }
				scope:remove_grudge = {
					scope:actor = { remove_relation_grudge = scope:recipient }
				}
				scope:remove_grudge_on_me = { remove_relation_grudge = scope:actor }
			}
		}
	}
	auto_accept = yes
}

change_character_weight_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = activity_feast

	is_shown = { debug_only = yes }

	send_option = {
		flag = gain_weight
		localization = add_character_weight_interaction
	}
	send_option = {
		flag = lose_weight
		localization = remove_character_weight_interaction
	}

	on_accept = {
		scope:recipient = {
			switch = {
				trigger = yes
				scope:gain_weight = { change_current_weight = 25 }
				scope:lose_weight = { change_current_weight = -25 }
			}
		}
	}
	auto_accept = yes
}

slay_character_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_dead
	common_interaction = no

	interface_priority = -1

	is_shown = { debug_only = yes }

	send_option = {
		flag = random_slayer
		localization = random_slay_character_interaction
	}
	send_option = {
		flag = no_slayer
		localization = null_slay_character_interaction
	}
	send_option = {
		is_valid = {
			NOT = { scope:recipient = scope:actor }
		}
		flag = actor_slayer
		localization = actor_slay_character_interaction
	}
	send_option = {
		flag = bubonic_plague_slayer
		localization = give_bubonic_plague_interaction
	}

	on_accept = {
		scope:recipient = {
			switch = {
				trigger = yes
				scope:random_slayer = {
					random_independent_ruler = {
						limit = {
							NOT = { this = scope:recipient }
						}
						save_scope_as = rando
					}
					hidden_effect = {
						death = {
							death_reason = death_duel
							killer = scope:rando
						}
					}
				}
				scope:no_slayer = {
					death = { death_reason = death_natural_causes }
				}
				scope:actor_slayer = {
					death = {
						death_reason = death_duel
						killer = scope:actor
					}
				}
				scope:bubonic_plague_slayer = {
					add_trait = bubonic_plague
				}
			}
		}
	}
	auto_accept = yes
}

change_cultural_acceptance_debug_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_culture

	is_shown = {
		debug_only = yes
		NOT = { scope:actor.culture = scope:recipient.culture }
	}

	send_option = {
		flag = increase_cultural_acceptance
		localization = increase_cultural_acceptance_debug_interaction
	}
	send_option = {
		flag = decrease_cultural_acceptance
		localization = decrease_cultural_acceptance_debug_interaction
	}

	on_accept = {
		scope:recipient.culture = {
			switch = {
				trigger = yes
				scope:increase_cultural_acceptance = {
					change_cultural_acceptance = {
						target = scope:actor.culture
						value = 25
						desc = debug
					}
				}
				scope:decrease_cultural_acceptance = {
					change_cultural_acceptance = {
						target = scope:actor.culture
						value = -25
						desc = debug
					}
				}
			}
		}
	}
	auto_accept = yes
}

learn_language_debug_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_scheme_learn_language

	interface_priority = -1

	is_shown = {
		debug_only = yes
		NOT = {
			scope:actor = { knows_language_of_culture = scope:recipient.culture }
		}
	}

	on_accept = {
		scope:actor = {
			learn_language_of_culture = scope:recipient.culture
		}
	}
	auto_accept = yes
}

#Start a duel or board game against another character
start_bout_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_combat
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	on_accept = {
		# Duels.
		if = {
			limit = { scope:single_combat = yes }
			scope:actor = { trigger_event = single_combat.1004 }
		}
		# Board Games.
		if = {
			limit = {
				OR = {
					scope:board_game_chess = yes
					scope:board_game_pachisi = yes
					scope:board_game_tabula = yes
					scope:board_game_hnefatafl = yes
					scope:board_game_go = yes
					scope:board_game_fidchell = yes
				}
			}
			scope:actor = { trigger_event = board_games.0102 }
		}
	}

	send_option = {
		flag = single_combat
		localization = start_bout_interaction_single_combat
	}

	send_option = {
		flag = board_game_chess
		localization = start_bout_interaction_board_game_chess
	}

	send_option = {
		flag = board_game_pachisi
		localization = start_bout_interaction_board_game_pachisi
	}

	send_option = {
		flag = board_game_tabula
		localization = start_bout_interaction_board_game_tabula
	}

	send_option = {
		flag = board_game_hnefatafl
		localization = start_bout_interaction_board_game_hnefatafl
	}

	send_option = {
		flag = board_game_go
		localization = start_bout_interaction_board_game_go
	}

	send_option = {
		flag = board_game_fidchell
		localization = start_bout_interaction_board_game_fidchell
	}

	auto_accept = yes
}

add_artifact_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = artifact
	is_shown = {
		debug_only = yes
	}

	send_option = {
		flag = weapon
		localization = add_artifact_interaction_weapon
	}
	send_option = {
		flag = armor
		localization = add_artifact_interaction_armor
	}
	send_option = {
		flag = shinies
		localization = add_artifact_interaction_shinies
	}
	send_option = {
		flag = book
		localization = add_artifact_interaction_book
	}
	send_option = {
		flag = furniture
		localization = add_artifact_interaction_furniture
	}
	send_option = {
		flag = trinket
		localization = add_artifact_interaction_trinket
	}
	send_option = {
		flag = random_personal
		localization = add_random_artifact_interaction
	}
	send_option = {
		flag = christian
		localization = christian_relic
	}
	send_option = {
		flag = islam
		localization = islam_relic
	}
	send_option = {
		flag = buddhism
		localization = buddhism_relic
	}
	send_option = {
		flag = judaism
		localization = judaism_relic
	}

	on_accept = {
		custom_tooltip = add_artifact_interaction
		save_scope_value_as = {
			name = quality
			value = 100
		}
		scope:recipient = {
			hidden_effect = {
				save_scope_as = owner
				random_dummy_gender_effect = yes
				switch = {
					trigger = yes
					scope:weapon = {
						create_artifact_weapon_effect = {
							OWNER = scope:owner
							CREATOR = scope:dummy_gender
							SET_WEAPON_TYPE = flag:no
						}
					}
					scope:armor = {
						create_artifact_armor_effect = {
							OWNER = scope:owner
							CREATOR = scope:dummy_gender
							SET_ARMOR_TYPE = flag:no
						}
					}
					scope:shinies = {
						random_list = {
							10 = {
								create_artifact_regalia_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_crown_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_brooch_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
						}
					}
					scope:book = {
						create_artifact_book_effect = {
							OWNER = scope:owner
							CREATOR = scope:dummy_gender
							SET_SUBJECT = flag:no
							SET_TOPIC = flag:no
						}
					}
					scope:furniture = {
						random_list = {
							10 = {
								create_artifact_throne_effect = {
									OWNER = scope:owner
									MAKER = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_tapestry_effect = {
									OWNER = scope:owner
									WEAVER = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_box_small_effect = {
									OWNER = scope:owner
									CARPENTER = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_box_medium_effect = {
									OWNER = scope:owner
									CARPENTER = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_goblet_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
							30 = {
								create_artifact_animal_hide_effect = {
									OWNER = scope:owner
									HUNTER = scope:dummy_gender
									LEGENDARY = no
									ANIMAL = flag:none
								}
							}
							10 = {
								create_artifact_wall_banner_effect = {
									OWNER = scope:owner
									CREATOR = scope:dummy_gender
									TARGET = scope:owner.primary_title
								}
							}
							10 = {
								create_artifact_wall_skull_effect = {
									OWNER = scope:owner
									HUNTER = scope:dummy_gender
									LEGENDARY = no
									ANIMAL = flag:none
								}
							}
							10 = {
								create_artifact_sculpture_effect = {
									OWNER = scope:owner
									SCULPTER = scope:dummy_gender
								}
							}
							10 = {
								create_artifact_wall_shield_effect = {
									OWNER = scope:owner
									TARGET = scope:owner.house
									CREATOR = scope:dummy_gender
								}
							}
						}
					}
					scope:trinket = {
						create_artifact = {
							name = cuckoldry_psalter_name
							description = cuckoldry_psalter_description
							type = miscellaneous
							visuals = book
							modifier = artifact_monthly_prestige_penalty_modifier
						}
					}
					scope:random_personal = {
						custom_tooltip = add_random_artifact_interaction
						random_list = {
							10 = {
								random_dummy_gender_effect = yes
								create_artifact_weapon_effect = {
									OWNER = scope:owner
									CREATOR = scope:dummy_gender
									SET_WEAPON_TYPE = flag:no
								}
							}
							10 = {
								random_dummy_gender_effect = yes
								create_artifact_armor_effect = {
									OWNER = scope:owner
									CREATOR = scope:dummy_gender
									SET_ARMOR_TYPE = flag:no
								}
							}
							10 = {
								random_dummy_gender_effect = yes
								create_artifact_regalia_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
							10 = {
								random_dummy_gender_effect = yes
								create_artifact_crown_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
							10 = {
								random_dummy_gender_effect = yes
								create_artifact_brooch_effect = {
									OWNER = scope:owner
									SMITH = scope:dummy_gender
								}
							}
						}
					}
					scope:christian = {
						create_artifact_pedestal_reliquary_christian_effect = { OWNER = scope:owner }
					}
					scope:islam = {
						create_artifact_pedestal_reliquary_islam_effect = { OWNER = scope:owner }
					}
					scope:buddhism = {
						create_artifact_pedestal_reliquary_buddhism_effect = { OWNER = scope:owner }
					}
					scope:judaism = {
						create_artifact_pedestal_reliquary_judaism_effect = { OWNER = scope:owner }
					}
				}
			}
		}
	}
	auto_accept = yes
}

take_artifact_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_scheme_steal_back_artifact

	target_type = artifact
	target_filter = recipient_artifacts

	is_shown = {
		debug_only = yes
		scope:recipient = {
			any_character_artifact = { exists = this }
		}
	}

	send_option = {
		is_valid = {
			NOT = { scope:recipient = scope:actor }
		}
		flag = player
		localization = take_artifact_player
	}
	send_option = {
		is_valid = {
			scope:recipient = {
				any_neighboring_top_liege_realm_owner = {
					NOR = {
						this = scope:recipient
						this = scope:actor
					}
				}
			}
		}
		flag = random_neighbor
		localization = give_away_random_artifact_interaction
	}

	is_highlighted = { always = yes }

	on_accept = {
		scope:recipient = {
			switch = {
				trigger = yes
				scope:random_neighbor = {
					random_neighboring_top_liege_realm_owner = {
						limit = {
							NOR = {
								this = scope:recipient
								this = scope:actor
							}
						}
						save_scope_as = new_owner
					}
				}
				scope:player = {
					scope:actor = { save_scope_as = new_owner }
				}
			}
		}
		scope:target = { set_owner = scope:new_owner }
	}

	auto_accept = yes

	ai_accept = {
		base = 100
	}

	auto_accept = yes
}

add_artifact_claim_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_scheme_steal_back_artifact

	target_type = artifact
	target_filter = recipient_artifacts

	is_shown = {
		scope:recipient = {
			any_character_artifact = { exists = this }
		}
		NOT = { scope:recipient = scope:actor }
		debug_only = yes
	}

	send_option = {
		flag = personal
		localization = add_claim_on_artifact_interaction
	}
	send_option = {
		flag = house
		localization = add_house_claim_on_artifact_interaction
	}
	on_accept = {
		scope:actor = {
			switch = {
				trigger = yes
				scope:personal = { add_personal_artifact_claim = scope:target }
				scope:house = {
					house = { add_house_artifact_claim = scope:target }
				}
			}
		}
	}
	auto_accept = yes
}

debug_destroy_artifact_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = artifact

	target_type = artifact
	target_filter = recipient_artifacts

	is_shown = {
		debug_only = yes
		scope:recipient = {
			any_character_artifact = { exists = this }
		}
	}

	send_option = {
		flag = destroy
		localization = destroy_artifact
	}

	send_option = {
		flag = damage
		localization = damage_artifact
	}

	send_options_exclusive = yes

	on_accept = {
		switch = {
			trigger = yes
			scope:destroy = { destroy_artifact = scope:target }
			scope:damage = {
				scope:target = {
					add_durability = {
						value = {
							value = artifact_durability
							divide = 2
							multiply = -1
						}
					}
				}
			}
		}
	}

	auto_accept = yes
}

inspire_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = inspiration

	is_shown = {
		debug_only = yes
		scope:recipient = {
			NOT = { exists = inspiration }
			has_completed_inspiration = no
			is_ruler = no
			is_playable_character = no
		}
	}

	send_option = {
		flag = weapon_inspiration
		localization = debug_inspiration_weapon
	}
	send_option = {
		flag = armor_inspiration
		localization = debug_inspiration_armor
	}
	send_option = {
		flag = book_inspiration
		localization = debug_inspiration_book
	}
	send_option = {
		flag = weaver_inspiration
		localization = debug_inspiration_weaver
	}
	send_option = {
		flag = adventure_inspiration
		localization = debug_inspiration_adventure
	}
	send_option = {
		flag = artisan_inspiration
		localization = debug_inspiration_artisan
	}
	send_option = {
		flag = smith_inspiration
		localization = debug_inspiration_smith
	}
	send_option = {
		flag = alchemy_inspiration
		localization = debug_inspiration_alchemy
	}

	on_accept = {
		scope:recipient = {
			if = {
				limit = {
					always = scope:book_inspiration
				}
				create_inspiration = book_inspiration
				custom_tooltip = inspire_interaction_book
			}
			else_if = {
				limit = {
					always = scope:weaver_inspiration
				}
				create_inspiration = weaver_inspiration
				custom_tooltip = inspire_interaction_weaver
			}
			else_if = {
				limit = {
					always = scope:adventure_inspiration
				}
				create_inspiration = adventure_inspiration
				custom_tooltip = inspire_interaction_adventure
			}
			else_if = {
				limit = {
					always = scope:artisan_inspiration
				}
				create_inspiration = artisan_inspiration
				custom_tooltip = inspire_interaction_artisan
			}
			else_if = {
				limit = {
					always = scope:smith_inspiration
				}
				create_inspiration = smith_inspiration
				custom_tooltip = inspire_interaction_smith
			}
			else_if = {
				limit = {
					always = scope:alchemy_inspiration
				}
				create_inspiration = alchemy_inspiration
				custom_tooltip = inspire_interaction_alchemy
			}
			else_if = {
				limit = {
					always = scope:armor_inspiration
				}
				create_inspiration = armor_inspiration
				custom_tooltip = inspire_interaction_armor
			}
			else = {
				create_inspiration = weapon_inspiration
				custom_tooltip = inspire_interaction_weapon
			}
		}
	}

	auto_accept = yes
}

sponsor_inspiration_debug = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	auto_accept = yes

	is_shown = {
		debug_only = yes
		exists = scope:recipient.inspiration
	}

	is_valid_showing_failures_only = {
		scope:actor = {
			can_sponsor_inspiration = scope:recipient.inspiration
		}
	}

	is_valid = {
		scope:actor = {
			can_sponsor_inspiration = scope:recipient.inspiration
		}
	}

	on_accept = {
		scope:actor = {
			sponsor_inspiration = scope:recipient.inspiration
		}
	}
}

test_effect_localization_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no

	is_shown = {
		debug_only = yes
		scope:actor = { is_ai = no }
		NOT = { scope:actor = scope:recipient }
		always = no # Comment out this line to see this interaction
	}
	on_accept = {
		# Effects are shown under the actor and recipient entries
		scope:actor = { add_prestige = 50 }
		scope:recipient = { add_prestige = 50 }

		# Effects on the same things are collected together into their existing actor and recipient block
		scope:actor = { add_piety = 50 }
		scope:recipient = { add_piety = 50 }

		# Effects in a self contained list are shown in the general text output and will explicitly name the involved characters, including the actor and recipient, with respect to first person pronouns if the player
		scope:actor = {
			random = {
				chance = 30
				scope:actor = {
					add_gold = 200
					random_courtier = { remove_short_term_gold = 50 }
				}
				scope:recipient = { add_piety = 200 }
			}
			random_list = {
				50 = {
					scope:actor = {
						add_gold = 50
						random_courtier = { add_gold = 10 }
					}
					scope:recipient = { add_piety = 50 }
				}
				50 = {
					scope:actor = {
						remove_short_term_gold = 50
						random_courtier = { remove_short_term_gold = 10 }
					}
					scope:recipient = { add_piety = -50 }
				}
			}
			# Single Skill Duel
			duel = {
				skill = diplomacy
				target = scope:recipient
				50 = {
					compare_modifier = {
						value = scope:duel_value
						multiplier = 3.5
						min = -49
					}
					scope:actor = {
						add_gold = 50
						random_courtier = { add_gold = 10 }
					}
					scope:recipient = { add_piety = 50 }
				}
				50 = {
					compare_modifier = {
						value = scope:duel_value
						multiplier = -3.5
						min = -49
					}
					scope:actor = {
						remove_short_term_gold = 50
						random_courtier = { remove_short_term_gold = 10 }
					}
					scope:recipient = { add_piety = -50 }
				}
			}
			# Multi-skill duel
			duel = {
				skills = { prowess martial diplomacy }
				target = scope:recipient
				50 = {
					compare_modifier = {
						value = scope:duel_value
						multiplier = 3.5
						min = -49
					}
					scope:actor = {
						add_gold = 50
						random_courtier = { add_gold = 10 }
					}
					scope:recipient = { add_piety = 50 }
				}
				50 = {
					compare_modifier = {
						value = scope:duel_value
						multiplier = -3.5
						min = -49
					}
					scope:actor = {
						remove_short_term_gold = 50
						random_courtier = { remove_short_term_gold = 10 }
					}
					scope:recipient = { add_piety = -50 }
				}
			}
		}

		# Effects on non core targets get their own separate entries
		scope:actor = {
			every_courtier = {
				add_gold = 10
			}
		}
		# And multiple effects on the same objects are collected into their existing entries
		scope:actor = {
			every_courtier = {
				add_piety = 10
			}
		}
	}

	auto_accept = yes
}

#Give the character a criminal trait that allows actor to imprison them
give_criminal_trait_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = prison

	is_shown = {
		debug_only = yes
		NOT = {
			scope:actor = {
				has_imprisonment_reason = scope:recipient
			}
		}
	}

	on_accept = {
		custom_tooltip = give_criminal_trait_interaction_tt
		hidden_effect = {
			scope:recipient = {
				make_criminal_effect = yes

				#If they're still not a criminal we have them murder someone close to you
				if = {
					limit = {
						NOT = {
							scope:actor = {
								has_imprisonment_reason = scope:recipient
							}
						}
						any_close_family_member = {
							NOT = { this = scope:recipient }
						}
					}
					random_close_family_member = {
						limit = {
							NOT = { this = scope:recipient }
						}
						save_scope_as = family
						known_murder_effect = {
							VICTIM = scope:family
							MURDERER = scope:recipient
							EXPOSER = scope:recipient
						}
					}
				}
			}
		}
	}

	auto_accept = yes
}

generate_artifact_with_history_interaction = {
	category = interaction_debug_main
	desc = generate_artifact_with_history_debug_desc
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = artifact

	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	on_accept = {
		scope:actor = { trigger_event = debug.400 }
	}

	auto_accept = yes
}

# Have (or trigger the aftermath of) sex with the target character
debug_sex_interaction = { # Sleep With Character
	icon = seducer
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	on_accept = { scope:actor = { trigger_event = debug.410 } }
	auto_accept = yes
}

debug_change_every_county = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = alliance

	is_shown = { debug_only = yes }
	send_option = { # Set Control to Max (100)
		flag = debug_change_every_county_max_control
		localization = debug_change_every_county.a
	}
	send_option = { # Set Control to Lowest (0) (-500)
		flag = debug_change_every_county_lowest_control
		localization = gain_county_corruption.message.low_control
	}
	send_option = { # Set Opinion to Max
		flag = debug_change_every_county_highest_opinion
		localization = debug_change_every_county.b.a
	}
	send_option = { # Set Opinion to Min
		flag = debug_change_every_county_lowest_opinion
		localization = debug_change_every_county.b.b
	}
	send_option = { # Here goes anything else you may want to do in the future, just add another send_option and then an if on the accept
		flag = debug_change_every_county_convert_to_fatih
		localization = FAITH_CONVERSION_CONVERT
	}
	# send_option = { # Here goes anything else you may want to do in the future, just add another send_option and then an if on the accept
	# 	flag = auto_formatter_complains_if_I_do_not_do_this
	# 	localization = debug_start_era_of_crusades_interaction
	# }

	on_accept = { # In retrospect, this is pretty sloppy script, but it makes sense considering how old it is -h
		if = { # Set Control to Max (100)
			limit = { scope:debug_change_every_county_max_control = yes }
			scope:recipient = { every_held_county = { change_county_control = 100 } }
		}
		else_if = {
			limit = { scope:debug_change_every_county_lowest_control = yes }
			scope:recipient = { every_held_county = { change_county_control = -500 } }
		}
		else_if = {
			limit = { scope:debug_change_every_county_highest_opinion = yes }
			scope:recipient = { every_held_county = { add_county_modifier = debug_max_popular_opinion_modifier } } # Please ignore this violation of basic scripting decency, I do it for compactness
		}
		else_if = {
			limit = { scope:debug_change_every_county_lowest_opinion = yes }
			scope:recipient = { every_held_county = { add_county_modifier = debug_min_popular_opinion_modifier } }
		}
		else_if = {
			limit = { scope:debug_change_every_county_convert_to_fatih = yes }
			scope:recipient = { every_held_county = { set_county_faith = scope:actor.faith } }
		}
	}

	auto_accept = yes
	ai_accept = {
		base = 100
	}
}

# Embezzle from 'em
do_a_crime_embezzle_interaction = {
	category = interaction_debug_main
	desc = do_a_crime_embezzle_interaction_desc
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_gold
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	on_accept = {
		scope:actor = {
			# Steal a coin.
			if = {
				limit = { scope:steal_x1 = yes }
				give_or_update_embezzler_secret_effect = {
					TARGET = scope:recipient
					STAKE = 1
				}
				scope:recipient = {
					pay_short_term_gold = {
						target = scope:actor
						gold = 1
					}
				}
			}
			# Steal many coins.
			else_if = {
				limit = { scope:steal_x100 = yes }
				give_or_update_embezzler_secret_effect = {
					TARGET = scope:recipient
					STAKE = 100
				}
				scope:recipient = {
					pay_short_term_gold = {
						target = scope:actor
						gold = 100
					}
				}
			}
			# Steal the maniest coins.
			else_if = {
				limit = { scope:steal_x1000 = yes }
				give_or_update_embezzler_secret_effect = {
					TARGET = scope:recipient
					STAKE = 1000
				}
				scope:recipient = {
					pay_short_term_gold = {
						target = scope:actor
						gold = 1000
					}
				}
			}
		}
	}

	send_option = {
		flag = steal_x1
		localization = do_a_crime_embezzle_interaction_steal_x1
	}

	send_option = {
		flag = steal_x100
		localization = do_a_crime_embezzle_interaction_steal_x100
	}

	send_option = {
		flag = steal_x1000
		localization = do_a_crime_embezzle_interaction_steal_x1000
	}

	auto_accept = yes
}

add_glory_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_combat

	interface_priority = -1

	is_shown = {
		debug_only = yes
	}

	send_option = {
		flag = high_glory
		localization = add_glory_debug_high_tt
	}
	send_option = {
		flag = low_glory
		localization = add_glory_debug_low_tt
	}
	send_option = {
		flag = delete_glory
		localization = add_glory_debug_delete_tt
	}

	on_accept = {
		scope:recipient = {
			hidden_effect = {
				if = {
					limit = {
						scope:high_glory = yes
						scope:recipient = {
							is_acclaimed = yes
						}
					}
					scope:recipient = {
						accolade = {
							add_glory = 2500
						}
					}
				}
				else_if = {
					limit = {
						scope:low_glory = yes
						scope:recipient = {
							is_acclaimed = yes
						}
					}
					scope:recipient = {
						accolade = {
							add_glory = 250
						}
					}
				}
				else_if = {
					limit = {
						scope:delete_glory = yes
						scope:recipient = {
							is_acclaimed = yes
						}
					}
					scope:recipient = {
						accolade = {
							add_glory = -5000
						}
					}
				}
			}
		}
	}
	auto_accept = yes
}

debug_progress_all_active_schemes_interaction = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = debug_secret
	is_shown = { debug_only = yes }
	is_valid_showing_failures_only = {
		scope:actor = {
			any_scheme = { count >= 1 }
		}
	}
	on_accept = { scope:recipient = { every_scheme = { add_scheme_progress = 100 } } }
	auto_accept = yes
}

debug_travel_to_ruler_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = travel_mixed
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	on_accept = {
		scope:actor = {
			random_courtier_or_guest = {
				limit = {
					is_available = yes
				}
				save_scope_as = companion1
			}
			random_courtier_or_guest = {
				limit = {
					NOT = {
						this = scope:companion1
					}
					is_available = yes
				}
				save_scope_as = companion2
			}
			random_courtier_or_guest = {
				limit = {
					NOR = {
						this = scope:companion1
						this = scope:companion2
					}
					is_available = yes
				}
				save_scope_as = companion3
			}
			start_travel_plan = {
				destination = scope:recipient.capital_province
				companion = scope:companion1
				companion = scope:companion2
				companion = scope:companion3
				on_arrival_event = travel_completion_event.1000
				on_arrival_destinations = all_but_last
				return_trip = no # One way
			}
		}
	}

	auto_accept = yes
}

debug_add_truce_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_retreat
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
	}

	send_option = {
		flag = one_way_receive
		localization = truce_one_way_receive
	}

	send_option = {
		flag = one_way_give
		localization = truce_one_way_give
	}

	send_option = {
		flag = two_way
		localization = truce_two_way
	}

	on_accept = {
		scope:actor = {
			switch = {
				trigger = yes
				scope:one_way_receive = {
					scope:recipient = {
						add_truce_one_way = {
							character = scope:actor
							years = 5
							name = TRUCE_DEBUG
						}
					}
				}
				scope:one_way_give = {
					add_truce_one_way = {
						character = scope:recipient
						years = 5
						name = TRUCE_DEBUG
					}
				}
				scope:two_way = {
					add_truce_both_ways = {
						character = scope:recipient
						years = 5
						name = TRUCE_DEBUG
					}
				}
			}
		}
	}

	auto_accept = yes
}

spawn_epidemic_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = plague

	interface_priority = -1

	is_shown = {
		debug_only = yes
	}

	send_option = {
		is_valid = {
			scope:consumption = no
			scope:smallpox = no
			scope:ergotism = no
			scope:bubonic_plague = no
			scope:typhus = no
			scope:dysentery = no
		}
		flag = measles
		localization = spawn_epidemic_interaction_measles
	}
	send_option = {
		is_valid = {
			scope:measles = no
			scope:smallpox = no
			scope:ergotism = no
			scope:bubonic_plague = no
			scope:typhus = no
			scope:dysentery = no
		}
		flag = consumption
		localization = epidemic_consumption
	}
	send_option = {
		is_valid = {
			scope:measles = no
			scope:consumption = no
			scope:ergotism = no
			scope:bubonic_plague = no
			scope:typhus = no
			scope:dysentery = no
		}
		flag = smallpox
		localization = spawn_epidemic_interaction_smallpox
	}
	send_option = {
		is_valid = {
			scope:measles = no
			scope:consumption = no
			scope:smallpox = no
			scope:bubonic_plague = no
			scope:typhus = no
			scope:dysentery = no
		}
		flag = ergotism
		localization = spawn_epidemic_interaction_ergotism
	}
	send_option = {
		is_valid = {
			scope:measles = no
			scope:consumption = no
			scope:smallpox = no
			scope:ergotism = no
			scope:typhus = no
			scope:dysentery = no
		}
		flag = bubonic_plague
		localization = spawn_epidemic_interaction_bubonic_plague
	}
	send_option = {
		is_valid = {
			scope:measles = no
			scope:consumption = no
			scope:smallpox = no
			scope:ergotism = no
			scope:bubonic_plague = no
			scope:dysentery = no
		}
		flag = typhus
		localization = spawn_epidemic_interaction_typhus
	}
	send_option = {
		is_valid = {
			scope:measles = no
			scope:consumption = no
			scope:smallpox = no
			scope:ergotism = no
			scope:bubonic_plague = no
			scope:typhus = no
		}
		flag = dysentery
		localization = spawn_epidemic_interaction_dysentery
	}
	send_option = {
		is_valid = {
			scope:major = no
			scope:apocalyptic = no
		}
		flag = minor
		localization = spawn_minor_epidemic_interaction
	}
	send_option = {
		is_valid = {
			scope:minor = no
			scope:apocalyptic = no
		}
		flag = major
		localization = spawn_major_epidemic_interaction
	}
	send_option = {
		is_valid = {
			scope:minor = no
			scope:major = no
		}
		flag = apocalyptic
		localization = spawn_apocalyptic_epidemic_interaction
	}

	send_options_exclusive = no

	can_send = {
		calc_true_if = {
			amount >= 1
			scope:measles = yes
			scope:consumption = yes
			scope:smallpox = yes
			scope:ergotism = yes
			scope:bubonic_plague = yes
			scope:typhus = yes
			scope:dysentery = yes
		}
		calc_true_if = {
			amount >= 1
			scope:minor = yes
			scope:major = yes
			scope:apocalyptic = yes
		}
	}

	on_accept = {
		scope:recipient.capital_province = {
			hidden_effect = {
				switch = {
					trigger = yes
					scope:minor = {
						switch = {
							trigger = yes
							scope:measles = { create_epidemic_outbreak = { type = measles intensity = minor } }
							scope:consumption = { create_epidemic_outbreak = { type = consumption intensity = minor } }
							scope:smallpox = { create_epidemic_outbreak = { type = smallpox intensity = minor } }
							scope:dysentery = { create_epidemic_outbreak = { type = dysentery intensity = minor } }
							scope:bubonic_plague = { create_epidemic_outbreak = { type = bubonic_plague intensity = minor } }
							scope:ergotism = { create_epidemic_outbreak = { type = ergotism intensity = minor } }
							scope:typhus = { create_epidemic_outbreak = { type = typhus intensity = minor } }
						}
					}
					scope:major = {
						switch = {
							trigger = yes
							scope:measles = { create_epidemic_outbreak = { type = measles intensity = major } }
							scope:consumption = { create_epidemic_outbreak = { type = consumption intensity = major } }
							scope:smallpox = { create_epidemic_outbreak = { type = smallpox intensity = major } }
							scope:dysentery = { create_epidemic_outbreak = { type = dysentery intensity = major } }
							scope:bubonic_plague = { create_epidemic_outbreak = { type = bubonic_plague intensity = major } }
							scope:ergotism = { create_epidemic_outbreak = { type = ergotism intensity = major } }
							scope:typhus = { create_epidemic_outbreak = { type = typhus intensity = major } }
						}
					}
					scope:apocalyptic = {
						switch = {
							trigger = yes
							scope:measles = { create_epidemic_outbreak = { type = measles intensity = apocalyptic } }
							scope:consumption = { create_epidemic_outbreak = { type = consumption intensity = apocalyptic } }
							scope:smallpox = { create_epidemic_outbreak = { type = smallpox intensity = apocalyptic } }
							scope:dysentery = { create_epidemic_outbreak = { type = dysentery intensity = apocalyptic } }
							scope:bubonic_plague = { create_epidemic_outbreak = { type = bubonic_plague intensity = apocalyptic } }
							scope:ergotism = { create_epidemic_outbreak = { type = ergotism intensity = apocalyptic } }
							scope:typhus = { create_epidemic_outbreak = { type = typhus intensity = apocalyptic } }
						}
					}
				}
			}
		}
	}
	auto_accept = yes
}

spawn_legend_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = legend

	interface_priority = -1

	is_shown = {
		debug_only = yes
	}

	send_option = {
		flag = heroic
		localization = spawn_legend_interaction_heroic
	}
	send_option = {
		flag = holy
		localization = spawn_legend_interaction_holy
	}
	send_option = {
		flag = legitimizing
		localization = spawn_legend_interaction_legitimizing
	}

	on_accept = {
		scope:recipient = {
			hidden_effect = {
				if = {
					limit = {
						scope:heroic = yes
					}
					scope:recipient = {
						create_legend = {
							type = heroic
							quality = famed
							chronicle = ancestral_glory
							properties = {
								ancestor = scope:recipient
								title = scope:recipient.primary_title
							}
						}
					}
				}
				else_if = {
					limit = {
						scope:holy = yes
					}
					scope:recipient = {
						create_legend = {
							type = holy
							quality = famed
							chronicle = ancestral_glory
							properties = {
								ancestor = scope:recipient
								title = scope:recipient.primary_title
							}
						}
					}
				}
				else_if = {
					limit = {
						scope:legitimizing = yes
					}
					scope:recipient = {
						create_legend = {
							type = legitimizing
							quality = famed
							chronicle = ancestral_glory
							properties = {
								ancestor = scope:recipient
								title = scope:recipient.primary_title
							}
						}
					}
				}
			}
		}
	}
	auto_accept = yes
}

debug_buff_schemes = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = scheme_assassination
	send_options_exclusive = no

	interface_priority = -1

	is_shown = { debug_only = yes }

	auto_accept = yes

	# Clear my opportunities.
	send_option = { flag = debug_buff_schemes_zero_opportunity }
	# Give me an opportunity.
	send_option = { flag = debug_buff_schemes_one_opportunity }
	# Give me max opportunities.
	send_option = { flag = debug_buff_schemes_many_opportunity }
	# Give me an agent slot that gives base success chance.
	send_option = { flag = debug_buff_schemes_give_agent_success_chance_base }
	# Give me an agent slot that gives success chance growth.
	send_option = { flag = debug_buff_schemes_give_agent_success_chance_growth }
	# Give me an agent slot that gives max success chance.
	send_option = { flag = debug_buff_schemes_give_agent_success_chance_max }
	# Give me an agent slot that gives speed.
	send_option = { flag = debug_buff_schemes_give_agent_speed }
	# Give me an agent slot that gives secrecy.
	send_option = { flag = debug_buff_schemes_give_agent_secrecy }
	# Set scheme progress to 1.
	send_option = { flag = debug_buff_schemes_progress_one }
	# Set scheme progress to half.
	send_option = { flag = debug_buff_schemes_progress_half }
	# Reset scheme progress.
	send_option = { flag = debug_buff_schemes_progress_reset }

	on_accept = {
		custom_tooltip = debug_buff_schemes.tt.application_warning
		scope:recipient = {
			every_scheme = {
				if = {
					limit = { always = scope:debug_buff_schemes_zero_opportunity }
					change_opportunities = {
						value = scheme_agent_charges
						multiply = -1
					}
				}
				if = {
					limit = { always = scope:debug_buff_schemes_one_opportunity }
					change_opportunities = 2
				}
				if = {
					limit = { always = scope:debug_buff_schemes_many_opportunity }
					change_opportunities = opportunity_cap_value
				}
				if = {
					limit = { always = scope:debug_buff_schemes_give_agent_success_chance_base }
					add_agent_slot = agent_wraith
				}
				if = {
					limit = { always = scope:debug_buff_schemes_give_agent_success_chance_growth }
					add_agent_slot = agent_changeling
				}
				if = {
					limit = { always = scope:debug_buff_schemes_give_agent_success_chance_max }
					add_agent_slot = agent_mage
				}
				if = {
					limit = { always = scope:debug_buff_schemes_give_agent_speed }
					add_agent_slot = agent_werewolf
				}
				if = {
					limit = { always = scope:debug_buff_schemes_give_agent_secrecy }
					add_agent_slot = agent_vampire
				}
				if = {
					limit = { always = scope:debug_buff_schemes_progress_one }
					custom_tooltip = {
						text = debug_buff_schemes_progress_one
						add_scheme_progress = {
							value = scheme_phase_duration
							subtract = scheme_progress
							add = -1
						}
					}
				}
				if = {
					limit = { always = scope:debug_buff_schemes_progress_half }
					custom_tooltip = {
						text = debug_buff_schemes_progress_half
						add_scheme_progress = {
							value = scheme_progress
							multiply = -1
						}
						add_scheme_progress = {
							value = scheme_phase_duration
							multiply = 0.5
						}
					}
				}
				if = {
					limit = { always = scope:debug_buff_schemes_progress_reset }
					custom_tooltip = {
						text = debug_buff_schemes_progress_reset
						add_scheme_progress = {
							value = scheme_progress
							multiply = -1
						}
					}
				}
			}
		}
	}
}

debug_clear_agents_from_schemes = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = independence
	send_options_exclusive = no

	interface_priority = -1

	is_shown = { debug_only = yes }

	auto_accept = yes

	send_option = { flag = debug_clear_agents_from_schemes_slot_1 }
	send_option = { flag = debug_clear_agents_from_schemes_slot_2 }
	send_option = { flag = debug_clear_agents_from_schemes_slot_3 }
	send_option = { flag = debug_clear_agents_from_schemes_slot_4 }
	send_option = { flag = debug_clear_agents_from_schemes_slot_5 }
	send_option = { flag = debug_clear_agents_from_schemes_slot_excess }
	send_option = { flag = debug_clear_agents_from_schemes_slot_all_but_first }
	send_option = { flag = debug_clear_agents_from_schemes_slot_all }

	on_accept = {
		custom_tooltip = debug_buff_schemes.tt.application_warning
		scope:recipient = {
			every_scheme = {
				ordered_scheme_agent_slot = {
					order_by = { value = 0 }
					max = 5
					if = {
						limit = {
							NOT = { exists = scope:slot_1 }
						}
						save_scope_as = slot_1
					}
					else_if = {
						limit = {
							NOR = {
								this = scope:slot_1
								exists = scope:slot_2
							}
						}
						save_scope_as = slot_2
					}
					else_if = {
						limit = {
							NOR = {
								this = scope:slot_1
								this = scope:slot_2
								exists = scope:slot_3
							}
						}
						save_scope_as = slot_3
					}
					else_if = {
						limit = {
							NOR = {
								this = scope:slot_1
								this = scope:slot_2
								this = scope:slot_3
								exists = scope:slot_4
							}
						}
						save_scope_as = slot_4
					}
					else_if = {
						limit = {
							NOR = {
								this = scope:slot_1
								this = scope:slot_2
								this = scope:slot_3
								this = scope:slot_4
								exists = scope:slot_5
							}
						}
						save_scope_as = slot_5
					}
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_1 }
					remove_agent_slot = scope:slot_1
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_2 }
					remove_agent_slot = scope:slot_2
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_3 }
					remove_agent_slot = scope:slot_3
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_4 }
					remove_agent_slot = scope:slot_4
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_5 }
					remove_agent_slot = scope:slot_5
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_excess }
					every_scheme_agent_slot = {
						limit = {
							NOR = {
								this = scope:slot_1
								this = scope:slot_2
								this = scope:slot_3
								this = scope:slot_4
								this = scope:slot_5
							}
						}
						save_scope_as = slot_temp
						prev = { remove_agent_slot = scope:slot_temp }
					}
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_all_but_first }
					every_scheme_agent_slot = {
						limit = {
							NOT = { this = scope:slot_1 }
						}
						save_scope_as = slot_temp
						prev = { remove_agent_slot = scope:slot_temp }
					}
				}
				if = {
					limit = { always = scope:debug_clear_agents_from_schemes_slot_all }
					every_scheme_agent_slot = {
						save_scope_as = slot_temp
						prev = { remove_agent_slot = scope:slot_temp }
					}
				}
			}
		}
	}
}

debug_make_laamp = {
	category = interaction_debug_admin
	desc = debug_make_laamp_desc
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = request_invasion_sponsorship_interaction

	interface_priority = -1

	is_shown = { debug_only = yes }

	auto_accept = yes

	on_accept = {
		scope:recipient = {
			if = {
				limit = { is_ruler = yes }
				depose = yes
			}
			create_landless_adventurer_title_effect = {
				REASON = flag:voluntary
				FLAVOR_CHAR = scope:recipient
			}
		}
	}
}

debug_add_to_contact_list_interaction = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_contract_modification_single
	is_shown = {
		debug_only = yes
		NOT = { scope:recipient = scope:actor }
		scope:actor = {
			is_landless_adventurer = yes
		}
	}

	is_valid_showing_failures_only = {
		#not already on the list
		scope:recipient = { NOT = { is_contact_of = scope:actor } }
	}

	on_accept = {
		scope:actor = {
			add_contact = scope:recipient
		}
	}

	auto_accept = yes
}

debug_alliance_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_ally
	is_shown = {
		debug_only = yes
		NOR = {
			scope:recipient = scope:actor
			scope:recipient = { is_allied_to = scope:actor }
			scope:recipient = { is_at_war_with = scope:actor }
		}
	}

	on_accept = {
		scope:actor = {
			create_alliance = {
				target = scope:recipient
				allied_through_owner = scope:actor
				allied_through_target = scope:recipient
			}
		}
		scope:recipient = { # This opinion modifier controls the interaction, and is removed when breaking the alliance in any way (though on_actions)
			add_opinion = {
				modifier = perk_negotiated_alliance_opinion
				target = scope:actor
			}
		}
	}
	auto_accept = yes
}

create_task_contract_interaction = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_contract_modification_single

	interface_priority = -1

	is_shown = {
		debug_only = yes
	}

	send_option = { flag = create_task_contract_interaction_option_1 }
	send_option = { flag = create_task_contract_interaction_option_2 }
	send_option = { flag = create_task_contract_interaction_option_3 }
	send_option = { flag = create_task_contract_interaction_option_4 }
	send_option = { flag = create_task_contract_interaction_option_5 }

	is_valid_showing_failures_only = {
		valid_laamp_basic_trigger = {
			EMPLOYER = scope:recipient
			LAAMP = scope:actor
		}
	}

	on_accept = {
		scope:actor = {
			# Now fire the contract.
			switch = {
				trigger = yes
				scope:create_task_contract_interaction_option_1 = {
					create_task_contract = {
						# Comment/de-comment as appropriate for what you want to fire.
						#contract_type = laamp_base_0001
						#contract_type = laamp_base_1001
						#task_contract_type = laamp_base_2001
						#task_contract_type = laamp_base_3001
						#task_contract_type = laamp_base_4001
						#task_contract_type = laamp_base_6001
						task_contract_type = laamp_base_4100
						task_contract_tier = 0
						location = scope:recipient.location
						task_contract_employer = scope:recipient
					}
				}
				scope:create_task_contract_interaction_option_2 = {
					create_task_contract = {
						# Comment/de-comment as appropriate for what you want to fire.
						#task_contract_type = laamp_base_0011
						#task_contract_type = laamp_base_1011
						task_contract_type = laamp_base_2011
						#task_contract_type = laamp_base_3011
						task_contract_type = laamp_base_4011
						#task_contract_type = laamp_base_6011
						task_contract_tier = 0
						location = scope:recipient.location
						task_contract_employer = scope:recipient
					}
				}
				scope:create_task_contract_interaction_option_3 = {
					create_task_contract = {
						# Comment/de-comment as appropriate for what you want to fire.
						#task_contract_type = laamp_base_0021
						#task_contract_type = laamp_base_1021
						#task_contract_type = laamp_base_2001
						#task_contract_type = laamp_base_3021
						task_contract_type = laamp_base_4021
						#task_contract_type = laamp_base_6021
						task_contract_tier = 0
						location = scope:recipient.location
						task_contract_employer = scope:recipient
					}
				}
				scope:create_task_contract_interaction_option_4 = {
					create_task_contract = {
						# Comment/de-comment as appropriate for what you want to fire.
						#task_contract_type = laamp_base_0031
						#task_contract_type = laamp_base_1031
						#task_contract_type = laamp_base_2031
						#task_contract_type = laamp_base_3031
						#task_contract_type = laamp_base_4031
						task_contract_type = laamp_base_5031
						#task_contract_type = laamp_base_6031
						task_contract_tier = 0
						location = scope:recipient.location
						task_contract_employer = scope:recipient
					}
				}
				scope:create_task_contract_interaction_option_5 = {
					create_task_contract = {
						# Comment/de-comment as appropriate for what you want to fire.
						#task_contract_type = laamp_base_0041
						#task_contract_type = laamp_base_1041
						task_contract_type = laamp_base_2041
						#task_contract_type = laamp_base_3041
						#task_contract_type = laamp_base_4041
						task_contract_tier = 0
						location = scope:recipient.location
						task_contract_employer = scope:recipient
					}
				}
			}

		}
	}
	auto_accept = yes
}

# Debug move domicile, choose between moving just the domicile, moving the domicile and the owner, and if you want to use the travel system to do it (last option is only for laamps).
debug_move_domicile_interaction = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	common_interaction = yes
	icon = travel_mixed

	interface_priority = -1

	is_shown = {
		debug_only = yes
		scope:actor = {
			has_domicile = yes
		}
	}

	auto_accept = yes

	send_option = {
		starts_enabled = { always = yes }
		flag = move_domicile_option
	}
	send_option = {
		is_shown = {
			scope:actor = {
				is_landless_adventurer = yes
			}
		}
		flag = move_with_travel_option
	}
	send_options_exclusive = no

	on_accept = {
		scope:recipient.capital_province = {
			save_scope_as = relocation_destination
		}
		scope:actor = {
			if = {
				limit = {
					scope:move_domicile_option = yes
				}
				if = {
					limit = {
						scope:move_with_travel_option = yes
					}
					start_travel_plan = {
						destination = scope:relocation_destination
						on_start_on_action = on_travel_relocation_start
						on_arrival_on_action = on_travel_relocation_end
						on_arrival_destinations = last
						return_trip = no # One way
						travel_with_domicile = yes
					}
				}
				else = {
					domicile = {
						move_domicile = scope:relocation_destination
					}
					populate_location_with_contracts_effect = {
						AREA_CHAR = scope:actor
						AMOUNT = 5
					}
				}
			}
			else = {
				if = {
					limit = {
						scope:move_with_travel_option = yes
					}
					start_travel_plan = {
						destination = scope:relocation_destination
						on_start_on_action = on_travel_relocation_start
						on_arrival_on_action = on_travel_relocation_end
						on_arrival_destinations = last
						return_trip = no # One way
						travel_with_domicile = yes
					}
				}
				else = {
					domicile = {
						move_domicile = scope:relocation_destination
					}
					populate_location_with_contracts_effect = {
						AREA_CHAR = scope:actor
						AMOUNT = 5
					}
				}
			}
		}
	}
}

debug_populate_contracts = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	common_interaction = no
	icon = icon_scheme_learn_language

	interface_priority = -1

	is_shown = {
		debug_only = yes
	}

	auto_accept = yes

	on_accept = {
		scope:actor = {
			populate_location_with_contracts_effect = {
				AREA_CHAR = scope:recipient
				AMOUNT = 5
			}
		}
	}
}

give_infinite_schemes_of_type_interaction = {
	category = interaction_debug_admin
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_adultery

	interface_priority = -1

	is_shown = {
		debug_only = yes
	}

	send_option = { flag = give_infinite_schemes_of_type_all }
	send_option = { flag = give_infinite_schemes_of_type_hostile }
	send_option = { flag = give_infinite_schemes_of_type_contract }
	send_option = { flag = give_infinite_schemes_of_type_personal }
	send_option = { flag = give_infinite_schemes_of_type_clear_modifiers }

	on_accept = {
		scope:actor = {
			custom_tooltip = give_infinite_schemes_of_type_interaction.tt
			if = {
				limit = { scope:give_infinite_schemes_of_type_all = yes }
				add_character_modifier = infinite_hostile_schemes_modifier
				add_character_modifier = infinite_contract_schemes_modifier
				add_character_modifier = infinite_personal_schemes_modifier
			}
			if = {
				limit = { scope:give_infinite_schemes_of_type_hostile = yes }
				add_character_modifier = infinite_hostile_schemes_modifier
			}
			if = {
				limit = { scope:give_infinite_schemes_of_type_contract = yes }
				add_character_modifier = infinite_contract_schemes_modifier
			}
			if = {
				limit = { scope:give_infinite_schemes_of_type_personal = yes }
				add_character_modifier = infinite_personal_schemes_modifier
			}
			if = {
				limit = { scope:give_infinite_schemes_of_type_clear_modifiers = yes }
				remove_character_modifier = infinite_hostile_schemes_modifier
				remove_character_modifier = infinite_contract_schemes_modifier
				remove_character_modifier = infinite_personal_schemes_modifier
			}
		}
	}
	auto_accept = yes
}

antagonise_court = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = icon_hostile

	is_shown = {
		debug_only = yes
	}

	send_option = {
		flag = vassals_only
		localization = antagonise_court_vassals_only
	}

	send_option = {
		flag = courtiers_and_guests
		localization = antagonise_court_courtiers_and_guests
	}

	send_option = {
		flag = present_family
		localization = antagonise_court_present_family
	}

	send_option = {
		flag = antagonise_all
		localization = antagonise_court_antagonise_all
	}

	on_accept = {
		scope:recipient = {
			switch = {
				trigger = yes
				scope:vassals_only = {
					every_vassal = {
						add_opinion = {
							target = scope:recipient
							modifier = hate_opinion
							opinion = -250
						}
					}
				}
				scope:courtiers_and_guests = {
					every_courtier_or_guest = {
						add_opinion = {
							target = scope:recipient
							modifier = hate_opinion
							opinion = -250
						}
					}
				}
				scope:present_family = {
					every_close_or_extended_family_member = {
						add_opinion = {
							target = scope:recipient
							modifier = hate_opinion
							opinion = -250
						}
					}
				}
				scope:antagonise_all = {
					every_vassal = {
						limit = {
							NOT = {
								is_close_or_extended_family_of = scope:recipient
							}
						}
						add_opinion = {
							target = scope:recipient
							modifier = hate_opinion
							opinion = -250
						}
					}
					every_courtier_or_guest = {
						limit = {
							NOT = {
								is_close_or_extended_family_of = scope:recipient
							}
						}
						add_opinion = {
							target = scope:recipient
							modifier = hate_opinion
							opinion = -250
						}
					}
					every_close_or_extended_family_member = {
						add_opinion = {
							target = scope:recipient
							modifier = hate_opinion
							opinion = -250
						}
					}
				}
			}
		}
	}

	auto_accept = yes
}

spawn_courtier_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = guest

	interface_priority = -1

	is_shown = {
		debug_only = yes
		scope:recipient = { is_ruler = yes }
	}

	send_option = {
		flag = diplomacy
		localization = diplomacy
	}
	send_option = {
		flag = martial
		localization = martial
	}
	send_option = {
		flag = stewardship
		localization = stewardship
	}
	send_option = {
		flag = intrigue
		localization = intrigue
	}
	send_option = {
		flag = learning
		localization = learning
	}
	send_option = {
		flag = prowess
		localization = prowess
	}

	on_accept = {
		switch = {
			trigger = yes
			scope:diplomacy = {
				create_character = {
					template = pool_repopulate_diplomacy
					gender_female_chance = 50
					culture = scope:recipient.culture
					faith = scope:recipient.faith
					location = scope:recipient.location
					dynasty = none
					save_scope_as = new_courtier
				}
			}
			scope:martial = {
				create_character = {
					template = pool_repopulate_martial
					gender_female_chance = recipient_soldier_female_chance
					culture = scope:recipient.culture
					faith = scope:recipient.faith
					location = scope:recipient.location
					dynasty = none
					save_scope_as = new_courtier
				}
			}
			scope:stewardship = {
				create_character = {
					template = pool_repopulate_stewardship
					gender_female_chance = 50
					culture = scope:recipient.culture
					faith = scope:recipient.faith
					location = scope:recipient.location
					dynasty = none
					save_scope_as = new_courtier
				}
			}
			scope:intrigue = {
				create_character = {
					template = pool_repopulate_intrigue
					gender_female_chance = 50
					culture = scope:recipient.culture
					faith = scope:recipient.faith
					location = scope:recipient.location
					dynasty = none
					save_scope_as = new_courtier
				}
			}
			scope:learning = {
				create_character = {
					template = pool_repopulate_learning
					gender_female_chance = 50
					culture = scope:recipient.culture
					faith = scope:recipient.faith
					location = scope:recipient.location
					dynasty = none
					save_scope_as = new_courtier
				}
			}
			scope:prowess = {
				create_character = {
					template = pool_repopulate_prowess
					gender_female_chance = recipient_soldier_female_chance
					culture = scope:recipient.culture
					faith = scope:recipient.faith
					location = scope:recipient.location
					dynasty = none
					save_scope_as = new_courtier
				}
			}
		}
		scope:recipient = { custom_tooltip = spawn_courtier_interaction_tt }
		if = {
			limit = { exists = scope:new_courtier }
			scope:recipient = {
				hidden_effect = {
					send_interface_toast = {
						title = spawn_courtier_interaction_tt
						left_icon = scope:new_courtier
						right_icon = scope:actor
						add_courtier = scope:new_courtier
						hidden_effect = {
							scope:new_courtier = { return_to_court = yes }
						}
					}
				}
			}
		}
	}
	auto_accept = yes
}

destroy_title_interaction = {
	category = interaction_debug_main
	use_diplomatic_range = no
	ignores_pending_interaction_block = yes
	icon = antagonistic
	
	is_shown = {
		debug_only = yes
	}

	send_option = { # Destroys just the top title of the realm
		is_valid = {
			scope:recipient = {
				primary_title.tier >= tier_duchy
			}
		}
		flag = top_title
		localization = debug_top_title_interaction
	}

	send_option = { # Destroys all the titles except county titles in the realm
		flag = all_title
		localization = debug_all_title_interaction
	}

	on_accept = {
		switch = {
			trigger = yes
			scope:top_title = {
				scope:recipient = {
					scope:recipient = { destroy_title = primary_title }
				}
			}
			scope:all_title = {
				scope:recipient = {
					every_sub_realm_title = {
						limit = {
							tier >= tier_duchy
						}
						scope:recipient = { destroy_title = prev }
					}
				}
			}
		}	
	}

	auto_accept = yes
}

