﻿#Generic travel events

namespace = travel_events

############################
## Travel Flavor Events
## 4000-4999
## by James Beaumont
############################
# travel_events.4000 # Encounter a mystic on the road
# travel_events.4001 # Encounter an adoring fan
# travel_events.4002 # You determine that the women/men of X region are real pretty
# travel_events.4003 # You encounter vikings at sea
# travel_events.4004 # Fishermen at sea!
# travel_events.4005 # Encounter a caravan of merchants at sea
# travel_events.4006 # A local bird lands on your boat and eats some supplies
# travel_events.4007 # A storm at sea
# travel_events.4008 # Shipwreck!
# travel_events.4012 # You are being followed by a feral child
# travel_events.4015 # Asking for directions from a diff. language character
# travel_events.4016 # You experience heatstroke
# travel_events.4017 # Swords for hire!
# travel_events.4018 # A mendicant preacher!
# travel_events.4019 # You pass by a peasant street food place, demand to sample some
# travel_events.4020 # Strong believers harass your caravan and demand payment
# travel_events.4021 # You witness a human sacrifice!
# travel_events.4022 # You witness some tree worship in a Sanctity of Nature province
# travel_events.4023 # Prester John! You find a same-religion ruler in a faraway land
# travel_events.4028 # You come across a runestone!
# travel_events.4029 # You come across dimwit strung up on a post
# travel_events.4031 # You come across a knight stuck in his armour
# travel_events.4032 # You come across a noble being assaulted by a random animal
# travel_events.4033 # A witch who strangely isn't being burned
# travel_events.4035 # You are a witch and you're being harassed by locals
# travel_events.4036 # Caravaneers want to sell you some cool stuff
# travel_events.4037 # You enter a place that is syncretic with your faith
# travel_events.4038 # You enter a province which your faith is syncretic with
# travel_events.4039 # You enter a ritual hospitality province and are offered a rest
# travel_events.4040 # You meet a xenophile character who wants to learn about your culture

#####################################################################################

############################
## Travel Flavor Events
## 4000-4999
## by James Beaumont
############################

# Encounter a mystic on the road
travel_events.4000 = { 
	type = character_event
	title = travel_events.4000.t
	desc = {
		desc = travel_events.4000.desc.intro
		desc = travel_events.4000.desc.mid.long_to_go
		desc = travel_events.4000.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root 
	   	animation = worry
	}
	right_portrait = {
		character = scope:mystic_scope
		animation = scheme
	}
	cooldown = { years = 30 }
	trigger = {
		static_group_filter = {
			group = travel_events.4000
			match = 0.25
		}
		is_available_travelling_adult = yes
		is_playable_character = yes
		is_travelling = yes
		is_location_valid_for_travel_event_on_land = yes
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		create_character = {
			template = default_mystic_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = mystic_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:mystic_scope = {
				random_list = {
					50 = {}
					50 = { add_trait = witch }
				}
			}
		}
	}
	#Get a mystical reading
	option = {
		name = travel_events.4000.a
		remove_short_term_gold = tiny_gold_value
		random_list = {
			50 = {
				send_interface_toast = {
					title = travel.good_reading
					left_icon = root
					if = {
						limit = {
							NOT = { has_trait = cynical }
						}
						add_stress = minor_stress_loss
					}
					add_character_modifier = {
						modifier = positive_roadside_reading_modifier
						years = 5
					}
				}
			}
			50 = {
				send_interface_toast = {
					title = travel.bad_reading
					left_icon = root
					add_character_modifier = {
						modifier = negative_roadside_reading_modifier
						years = 5
					}
				}
			}
		}
		stress_impact = {   
			greedy = minor_stress_impact_gain
			cynical = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				short_term_gold < minor_gold_value
			}
		}
	}
	#They can join us
	option = {
		trigger = {
			OR = {
				root.faith = {
					NOR = {
						has_doctrine_parameter = witchcraft_illegal
						has_doctrine_parameter = witchcraft_shunned
					}
				}
				is_witch_trigger = yes
				root.faith = { trait_is_virtue = lifestyle_mystic }
				NOT = { scope:mystic_scope = { has_trait = witch } }
			}
			NOR = {
				has_trait = zealous
				has_trait = wrathful
				has_trait = sadistic
				has_trait = callous
			}
		}
		name = travel_events.4000.b
		add_courtier = scope:mystic_scope
		root.current_travel_plan = {
			add_companion = scope:mystic_scope
		}
		if = {
			limit = {
				has_trait = lifestyle_mystic
			}
			add_trait_xp = {
				trait = lifestyle_mystic
				value = lifestyle_mystic_xp_gain_minor_value
			}
		}
		stress_impact = {
			lifestyle_mystic = minor_stress_impact_loss
			paranoid = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
			}
			modifier = {
				add = 10
				has_trait = lifestyle_mystic
			}
			modifier = {
				add = -50
				faith = {
					OR = {
						has_doctrine_parameter = witchcraft_illegal
						has_doctrine_parameter = witchcraft_shunned
					}
					OR = {
						NOT = { trait_is_virtue = lifestyle_mystic }
						scope:mystic_scope = { has_trait = witch }
					}
				}
				has_trait = zealous
			}
			modifier = {
				add = -50
				OR = {
					has_trait = paranoid
					has_trait = cynical
				}
			}
		}
	}
	#Pass them by
	option = {
		name = travel_events.4000.c
		stress_impact = {   
			paranoid = minor_stress_impact_gain
			zealous = minor_stress_impact_gain
			gregarious = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
			}
		}
	}
	#Have them burned as a witch!
	option = {
		name = travel_events.4000.d
		trigger = {
			root.faith = {
				OR = {
					has_doctrine_parameter = witchcraft_illegal
					has_doctrine_parameter = witchcraft_shunned
				}
			}
			NOT = { is_witch_trigger = yes }
			OR = {
				NOT = {
					root.faith = { trait_is_virtue = lifestyle_mystic }
				}
				scope:mystic_scope = { has_trait = witch }
			}
			OR = {
				has_trait = zealous
				has_trait = wrathful
				has_trait = sadistic
				has_trait = callous
			}
		}
		scope:mystic_scope = {
			death = {
				killer = root
				death_reason = death_burned_witch
			}
		}
		add_piety = minor_piety_gain
		add_dread = minor_dread_gain
		stress_impact = {
			base = minor_stress_impact_gain
			sadistic = medium_stress_impact_loss
			zealous = minor_stress_impact_loss
			wrathful = minor_stress_impact_loss
			compassionate = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = compassionate
			}
		}
	}
	
	after = {
		scope:mystic_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# Encounter an adoring fan
travel_events.4001 = { 
	type = character_event
	title = travel_events.4001.t
	desc = travel_events.4001.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_honorable
	}
	right_portrait = {
		character = scope:loyal_fan_scope
		animation = admiration
	}
	cooldown = { years = 50 }
	trigger = {
		static_group_filter = {
			group = travel_events.4001
			match = 0.25
		}
		NOR = {
			religion = { is_in_family = rf_eastern }
			religion = { is_in_family = rf_sinitic }
		} 
		is_available_travelling = yes # Even children were viewed to have been chosen by God and all that
		is_landed = yes
		is_location_valid_for_travel_event_on_land = yes
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_very_small }
		create_character = {
			template = loyal_fan_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = loyal_fan_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:loyal_fan_scope = {
				add_opinion = {
					modifier = loyalty_opinion
					years = 50
					target = root
			 		opinion = 100
				}
			}
		}
	}
	#Join us, friend!
	option = {
		name = travel_events.4001.a
		add_courtier = scope:loyal_fan_scope
		root.current_travel_plan = {
			add_companion = scope:loyal_fan_scope
		}
		stress_impact = {   
			arrogant = minor_stress_impact_loss
			paranoid = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = shy
				}
			}
		}
	}
	#Pay them to sod off
	option = {
		name = travel_events.4001.b
		remove_short_term_gold = tiny_gold_value
		stress_impact = {
			generous = minor_stress_impact_loss
			profligate = minor_stress_impact_loss
			greedy = medium_stress_impact_gain
			gregarious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				short_term_gold < medium_gold_value
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = greedy
					has_trait = gregarious
				}
			}
			ai_value_modifier = {
				ai_sociability = 1
			}
		}
	}
	# Have them beaten up
	option = {
		name = travel_events.4001.c
		scope:loyal_fan_scope = {
			increase_wounds_no_death_effect = { REASON = fight }
		}
		stress_impact = {
			base = minor_stress_impact_gain
			sadistic = minor_stress_impact_loss
			callous = minor_stress_impact_loss
			wrathful = minor_stress_impact_loss
			paranoid = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			gregarious = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
		}
		ai_chance = {
			base = 25
			modifier = {
				factor = 2
				OR = {
					has_trait = sadistic
					has_trait = callous
					has_trait = wrathful
					has_trait = paranoid
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = gregarious
					has_trait = forgiving
				}
			}
		}
	}
	
	after = {
		scope:loyal_fan_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You determine that the women/men of X region are real pretty
travel_events.4002 = { 
	type = character_event
	title = travel_events.4002.t
	desc = travel_events.4002.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = flirtation_left
	}
	right_portrait = {
		character = scope:local_beauty_scope
		animation = love
	}
	cooldown = { years = 20 }
	trigger = {
		static_group_filter = {
			group = travel_events.4002
			match = 0.5
		}
		is_available_travelling_adult = yes
        is_landed = yes
		is_location_valid_for_travel_event_on_land = yes
		NOR = {
			has_trait = celibate
			has_trait = chaste
			has_sexuality = asexual
			# Not my culture
			location.county.culture = root.culture
			# Not a culture local to me
			location.county.culture = root.capital_county.culture
			# I'm not in my own realm
			is_liege_or_above_of = location.county.holder
		}
	}
	weight_multiplier = {
		base = 1
		modifier = {
			involved_activity ?= {
				has_activity_type = activity_pilgrimage
			}
			add = -0.5
		}
		modifier = {
			NOR = {
				has_trait = lustful
				has_trait = seducer
				has_trait = rakish
			}
			add = -0.5
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_very_small }
		create_character = {
			template = local_beauty_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = local_beauty_scope
			after_creation = {
				add_character_flag = created
			}
		}
	}
	# Take them as your lover
	option = {
		name = travel_events.4002.a
		trigger = {
			OR = {
				allowed_concubines = no
				allowed_more_concubines = no
				AND = {
					allowed_to_marry_same_sex_trigger = no
					sex_same_as = scope:local_beauty_scope
				}
			}
			can_set_relation_lover_trigger = {
				CHARACTER = scope:local_beauty_scope
			}
		}
		add_courtier = scope:local_beauty_scope
		root.current_travel_plan = {
			add_companion = scope:local_beauty_scope
		}
		set_relation_lover = {
			reason = lover_first_sight
			target = scope:local_beauty_scope
		}
		if = {
			limit = {
				might_cheat_on_every_partner_trigger = no
			}
			add_stress = medium_stress_gain
		}
		else = {
			stress_impact = {   
				lustful = medium_stress_impact_loss
				rakish = medium_stress_impact_loss
				seducer = medium_stress_impact_loss
				paranoid = medium_stress_impact_gain
				chaste = medium_stress_impact_gain
				shy = medium_stress_impact_gain
			}
		}
		ai_chance = {
			base = 5
			modifier = {
				add = 95
				OR = {
					has_trait = lustful
					has_trait = rakish
					has_trait = seducer
				}
			}
			modifier = {
				factor = 0
				might_cheat_on_every_partner_trigger = no
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = chaste
					has_trait = shy
				}
			}
		}
	}
	# Take them as your concubine
	option = {
		name = travel_events.4002.b
		trigger = {
			allowed_concubines = yes
			allowed_more_concubines = yes
			OR = {
				AND = {
					allowed_to_marry_same_sex_trigger = yes
					sex_same_as = scope:local_beauty_scope
				}
				NOT = { sex_same_as = scope:local_beauty_scope }
			}
		}
		add_courtier = scope:local_beauty_scope
		root.current_travel_plan = {
			add_companion = scope:local_beauty_scope
		}
		make_concubine = scope:local_beauty_scope
		stress_impact = {   
			lustful = medium_stress_impact_loss
			paranoid = medium_stress_impact_gain
			chaste = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = chaste
					has_trait = shy
				}
			}
		}
	}
	# Take them as your spouse
	option = {
		name = travel_events.4002.c
		trigger = {
			allowed_more_spouses = yes
			OR = {
				AND = {
					allowed_to_marry_same_sex_trigger = yes
					sex_same_as = scope:local_beauty_scope
				}
				NOT = { sex_same_as = scope:local_beauty_scope }
			}
			can_marry_character_trigger = { CHARACTER = scope:local_beauty_scope }
		}
		add_courtier = scope:local_beauty_scope
		root.current_travel_plan = {
			add_companion = scope:local_beauty_scope
		}
		if = {
			limit = {
				is_male = yes
			}
			marry = scope:local_beauty_scope
		}
		else = { marry_matrilineal = scope:local_beauty_scope }
		stress_impact = {   
			eccentric = major_stress_impact_loss
			lustful = medium_stress_impact_loss
			paranoid = medium_stress_impact_gain
			chaste = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_rationality = -1
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = chaste
					has_trait = shy
				}
			}
		}
	}
	# Admire from afar
	option = {
		name = travel_events.4002.d
		scope:local_beauty_scope = {
			if = {
				limit = {
					root = { is_ai = yes }
				}
				silent_disappearance_effect = yes
			}
		}
		stress_impact = {
			lustful = medium_stress_impact_gain
			gregarious = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = lustful
					has_trait = rakish
				}
			}
		}
	}
	after = {
		scope:local_beauty_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You encounter vikings at sea
scripted_trigger is_near_vikings_trigger = {
	NOT = {
		culture = { has_innovation = innovation_longboats }
	}
	location = {
		any_neighboring_province = {
			county ?= { #Not at sea, not an impassable
				holder = { in_diplomatic_range = root }
				is_coastal_county = yes
				has_coastal_province = yes
				culture = { has_innovation = innovation_longboats }
				faith = { has_doctrine_parameter = faith_can_raid }
			}
		}
	}
}
scripted_trigger is_near_berber_pirates_trigger = {
	NOT = {
		culture = { has_cultural_pillar = heritage_berber }
	}
	location = {
		any_neighboring_province = {
			exists = county #Not at sea, not an impassable
			county = {
				holder = { in_diplomatic_range = root }
				is_coastal_county = yes
				culture = { has_cultural_pillar = heritage_berber }
			}
		}
	}
}

travel_events.4003 = { 
	type = character_event
	title = travel_events.4003.t
	desc = {
		desc = travel_events.4003.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					is_near_vikings_trigger = yes
				}
				desc = travel_events.4003.desc.viking
			}
			triggered_desc = {
				trigger = {
					is_near_berber_pirates_trigger = yes
				}
				desc = travel_events.4003.desc.berber_pirate
			}
			desc = travel_events.4003.desc.regular_pirate
		}
	}
	theme = travel_danger
	left_portrait = {
		character = root 
	   	animation = fear
	}
	right_portrait = {
		character = scope:viking_scope
		animation = rage
	}
	override_background = { reference = fp1_ocean }
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		location = {
			is_sea_province = yes
			any_neighboring_province = {
				exists = county #Is this on land and in the landed title structure.
				county = {
					holder = { in_diplomatic_range = root }
					has_coastal_province = yes
					culture = { has_innovation = innovation_longboats }
					faith = { has_doctrine_parameter = faith_can_raid }
				}
			}
		}
		location = {
			OR = {
				travel_danger_type = {
					travel_plan = root.current_travel_plan
					terrain = sea
				}
				travel_danger_type = {
					travel_plan = root.current_travel_plan
					terrain = coastal_sea
				}
			}
		}
	}
	weight_multiplier = {
		base = 1
		modifier = {
			add = 1
			is_near_vikings_trigger = yes
		}
		modifier = {
			add = 1
			is_near_berber_pirates_trigger = yes
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		if = {
			limit = {
				is_near_vikings_trigger = yes
			}
			location = {
				random_neighboring_province = {
					limit = {
						exists = county #Not at sea, not an impassable
						county = {
							holder = { in_diplomatic_range = root }
							has_coastal_province = yes
							culture = { has_innovation = innovation_longboats }
							faith = { has_doctrine_parameter = faith_can_raid }
						}
					}
					county = {
						save_scope_as = pirate_county_scope
					}
				}
			}
			create_character = {
				template = fp1_ms_warrior_character
				location = root.location
				culture = scope:pirate_county_scope.culture
				faith = scope:pirate_county_scope.faith
				#Set up the scope
				save_scope_as = viking_scope
				after_creation = {
					add_character_flag = created
				}
			}
		}
		else_if = {
			limit = {
				is_near_berber_pirates_trigger = yes
			}
			location = {
				random_neighboring_province = {
					limit = {
						exists = county #Not at sea, not an impassable
						county = {
							holder = { in_diplomatic_range = root }
							has_coastal_province = yes
							culture = { has_cultural_pillar = heritage_berber }
						}
					}
					county = {
						save_scope_as = pirate_county_scope
					}
				}
			}
			create_character = {
				template = fp1_ms_warrior_character
				location = root.location
				culture = scope:pirate_county_scope.culture
				faith = scope:pirate_county_scope.faith
				#Set up the scope
				save_scope_as = viking_scope
				after_creation = {
					add_character_flag = created
				}
			}
		}
		else = {
			create_character = {
				template = fp1_ms_warrior_character
				location = root.location
				culture = root.culture
				faith = root.faith
				#Set up the scope
				save_scope_as = viking_scope
				after_creation = {
					add_character_flag = created
				}
			}
		}
		location = {
			save_scope_as = background_terrain_scope
		}
	}
	# Attempt to fight the vikings
	option = {
		name = travel_events.4003.a
		duel = {
			skill = prowess
			target = scope:viking_scope
			45 = { # You beat up the viking captain
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel_events.4003.defeated_vikings
					left_icon = scope:viking_scope
					add_prestige = medium_prestige_gain
					create_character_memory = {
						type = won_duel
						participants = {
							duel_loser = scope:viking_scope
						}
					}
					if = {
						limit = {
							OR = {
								has_any_nickname = no
								has_bad_nickname = yes
							}
						}
						random_list = {
							5 = {
								if= {
									limit = {
										scope:viking_scope.culture = {
											has_innovation = innovation_longboats
										}
									}
									give_nickname = nick_northmen_slayer
								}
								else = {
									give_nickname = nick_pirate_slayer
								}
							}
							95 = {}
						}
					}
				}
			}
			45 = { # You get beaten up by the viking captain
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel_events.4003.defeated_by_vikings
					left_icon = scope:viking_scope
					increase_wounds_effect = { REASON = fight }
					remove_short_term_gold = medium_gold_value
					create_character_memory = {
						type = lost_duel
						participants = {
							duel_winner = scope:viking_scope
						}
					}
				}
			}
			10 = { # You get beaten up by the viking captain and die
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel_events.4003.defeated_by_vikings
					left_icon = scope:viking_scope
					death = {
						killer = scope:viking_scope
						death_reason = death_fight
					}
				}
			}
		}
		stress_impact = {
			calm = medium_stress_impact_gain
			craven = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = calm
					has_trait = craven
				}
			}
		}
	}
	# Attempt to bribe the vikings
	option = {
		name = travel_events.4003.b
		remove_short_term_gold = medium_gold_value
		stress_impact = {   
			greedy = medium_stress_impact_gain
			wrathful = medium_stress_impact_gain
			brave = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = greedy
					has_trait = wrathful
					has_trait = brave
				}
			}
			modifier = {
				factor = 0
				short_term_gold < medium_gold_value
			}
		}
	}
	# Attempt to outmanuever the vikings
	option = {
		name = travel_events.4003.c
		duel = {
			skills = { martial learning }
			target = scope:viking_scope
			50 = { # You outmanuever the viking captain
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				modifier = {
					factor = 2
					has_trait = strategist
				}
				send_interface_toast = {
					title = travel_events.4003.defeated_vikings
					left_icon = scope:viking_scope
					add_prestige = medium_prestige_gain
				}
			}
			50 = { # You get beaten up by the viking captain
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}

				send_interface_toast = {
					title = travel_events.4003.defeated_by_vikings
					left_icon = scope:viking_scope
					increase_wounds_effect = { REASON = fight }
					remove_short_term_gold = medium_gold_value
				}
				create_character_memory = {
					type = lost_duel
					participants = {
						duel_winner = scope:viking_scope
					}
				}
			}
			5 = { # You get beaten up by the viking captain and die
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				death = {
					killer = scope:viking_scope
					death_reason = death_fight
				}
			}
		}
		stress_impact = {   
			arrogant = medium_stress_impact_gain
			brave = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = brave
				}
			}
		}
	}
	# Attempt to hire the vikings as your personal guard
	option = {
		name = travel_events.4003.d
		duel = {
			skills = { diplomacy stewardship }
			target = scope:viking_scope
			50 = { # You convince them to join you
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel_events.4003.offer_accepted
					left_icon = scope:viking_scope
					pay_short_term_gold = {
						target = scope:viking_scope
						gold = minor_gold_value
					}
					add_courtier = scope:viking_scope
					root.current_travel_plan = {
						add_companion = scope:viking_scope
					}
				}
				hidden_effect = {
					scope:viking_scope = {
						add_character_flag = {
							flag = blocked_from_leaving
							years = 5
						}
					}
				}
			}
			50 = { # You get beaten up by the viking captain
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel_events.4003.offer_refused
					left_icon = scope:viking_scope
					increase_wounds_effect = { REASON = fight }
					remove_short_term_gold = medium_gold_value
				}
				create_character_memory = {
					type = lost_duel
					participants = {
						duel_winner = scope:viking_scope
					}
				}
			}
			5 = { # You get beaten up by the viking captain and die
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				death = {
					killer = scope:viking_scope
					death_reason = death_fight
				}
			}
		}
		stress_impact = {   
			greedy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = greedy

			}
			modifier = {
				factor = 0
				short_term_gold < minor_gold_value
			}
		}
	}
	
	after = {
		scope:viking_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# Fishermen at sea!
scripted_trigger is_near_fishermen_trigger = {
	location = {
		any_neighboring_province = {
			exists = county #Not at sea, not an impassable
			county = {
				culture = { has_cultural_tradition = tradition_fishermen }
			}
		}
	}
}

travel_events.4004 = {
	type = character_event
	title = travel_events.4004.t
	desc = travel_events.4004.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = admiration
	}
	override_background = { reference = fp1_ocean }
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		location = {
			is_sea_province = yes
		}
		is_near_fishermen_trigger = yes
	}
	immediate = {
		location = {
			random_neighboring_province = {
				limit = {
					exists = county #Not at sea, not an impassable
					county.culture = { has_cultural_tradition = tradition_fishermen }
				}
				county = {
					save_scope_as = fishermen_county_scope
				}
			}
		}
		create_character = {
			template = generic_peasant_character
			location = root.location
			culture = scope:fishermen_county_scope.culture
			faith = scope:fishermen_county_scope.faith
			#Set up the scope
			save_scope_as = fisherman_scope
			after_creation = {
				add_character_flag = created
			}
		}
	}
	# Negotiate for some food
	option = {
		name = travel_events.4004.a
		remove_short_term_gold = minor_gold_value
		current_travel_plan = {
			add_travel_plan_modifier = {
				modifier = travel_well_fed_travellers
				months = 2
			}
		}
		stress_impact = {
			greedy = medium_stress_impact_gain
			arrogant = medium_stress_impact_gain
			wrathful = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = greedy
					has_trait = arrogant
					has_trait = wrathful
				}
			}
			modifier = {
				factor = 0
				short_term_gold < minor_gold_value
			}
		}
	}
	# Attempt to plunder them for food
	option = {
		name = travel_events.4004.b
		duel = {
			skill = prowess
			target = scope:fisherman_scope
			50 = { # You beat up the fisherman
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				current_travel_plan = {
					add_travel_plan_modifier = {
						modifier = travel_well_fed_travellers
						months = 2
					}
				}
			}
			50 = { # You get beaten up and mugged by a lowly fisherman
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				increase_wounds_effect = { REASON = fight }
				remove_short_term_gold = minor_gold_value
				create_character_memory = {
					type = lost_duel
					participants = {
						duel_winner = scope:fisherman_scope
					}
				}
			}
		}
		stress_impact = {
			vengeful = minor_stress_impact_loss
			arrogant = minor_stress_impact_loss
			wrathful = minor_stress_impact_loss
			sadistic = minor_stress_impact_loss
			callous = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
			generous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				add = 50
				OR = {
					has_trait = vengeful
					has_trait = arrogant
					has_trait = wrathful
					has_trait = sadistic
					has_trait = callous
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = forgiving
					has_trait = generous
				}
			}
		}
	}
	# Just go by without bothering the fishermen
	option = {
		name = travel_events.4004.c
		stress_impact = {
			base = minor_stress_impact_loss
		}
		ai_chance = {
			base = 50
		}
	}
	after = {
		scope:fisherman_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# Encounter a caravan of merchants at sea
scripted_trigger nearby_merchant_culture = {
	culture = {
		OR = {
			has_cultural_tradition = tradition_maritime_mercantilism
			has_cultural_tradition = tradition_diasporic
		}
	}
}

travel_events.4005 = { 
	type = character_event
	title = travel_events.4005.t
	desc = travel_events.4005.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_bold
	}
	right_portrait = {
		character = scope:merchant_character_scope
	   	animation = admiration
	}
	artifact = {
		target = scope:merchant_artifact_scope
		position = lower_left_portrait
	}
	override_background = { reference = fp1_ocean }
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		location = {
			is_sea_province = yes
			any_neighboring_province = {
				exists = county #Ie this is not a Sea province or an Impassable, etc
				county.holder = {
					any_courtier = {
						nearby_merchant_culture = yes
					}
				}
			}
		}
	}
	immediate = {
		save_scope_as = root_scope
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		hidden_effect = {
			location = {
				random_neighboring_province = {
					limit = {
						exists = county #Ie this is not a Sea province or an Impassable, etc
						county.holder = {
							any_courtier = {
								nearby_merchant_culture = yes
							}
						}
					}
					county.holder = {
						random_courtier = {
							limit = {
								nearby_merchant_culture = yes
							}
							save_scope_as = merchant_base_scope
						}
					}
				}
			}
			create_character = {
				template = generic_peasant_character
				location = root.location
				culture = scope:merchant_base_scope.culture
				faith = scope:merchant_base_scope.faith
				#Set up the scope
				save_scope_as = merchant_character_scope
				after_creation = {
					add_character_flag = created
				}
			}
			scope:merchant_character_scope = {
				random_list = {
					10 = {
						set_artifact_rarity_masterwork = yes
						create_artifact = {
							name = maritime_trading_handbook
							description = maritime_trading_handbook_description
							type = journal
							visuals = book
							modifier = character_travel_speed_1
							modifier = artifact_monthly_stewardship_lifestyle_xp_3_modifier
							modifier = artifact_naval_speed_2_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
					}
					10 = {
						set_artifact_rarity_masterwork = yes
						create_artifact = {
							name = own_holy_text_mid
							description = own_holy_text_mid_description
							type = journal
							visuals = book
							template = holy_book_template
							modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
							modifier = artifact_monthly_piety_3_modifier
							modifier = artifact_learning_per_piety_level_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
						scope:merchant_artifact_scope = {
							set_variable = {
								name = relic_religion
								value = root.religion
							}
						}
					}
					10 = {
						set_artifact_rarity_masterwork = yes
						create_artifact = {
							name = merchants_holy_text_mid
							description = merchants_holy_text_mid_description
							type = journal
							visuals = book
							template = holy_book_template
							modifier = artifact_monthly_learning_lifestyle_xp_2_modifier
							modifier = artifact_monthly_piety_3_modifier
							modifier = artifact_learning_per_piety_level_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
						scope:merchant_artifact_scope = {
							set_variable = {
								name = relic_religion
								value = scope:merchant_character_scope.religion
							}
						}
					}
					5 = {
						set_artifact_rarity_masterwork = yes 
						create_artifact = {
							name = merchants_sword
							description = merchants_sword_description
							type = sword
							visuals = sword
							modifier = artifact_prowess_4_modifier
							modifier = artifact_monthly_prestige_3_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
					}
				}
			}
		}
	}
	# Buy the artifact!
	option = {
		name = travel_events.4005.a
		if = {
			limit = {
				scope:merchant_artifact_scope = {
					rarity = famed
				}
			}
			remove_short_term_gold = major_gold_value
		}
		else = {
			remove_short_term_gold = medium_gold_value
		}
		scope:merchant_artifact_scope = { set_owner = root }
		stress_impact = {
			generous = medium_stress_impact_loss
			greedy = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = greedy
					has_trait = callous
					has_trait = sadistic
				}
			}
			modifier = {
				factor = 0
				short_term_gold <= major_gold_value
			}
		}
	}
	# Attempt to steal the artifact
	option = {
		name = travel_events.4005.b
		duel = {
			skill = intrigue
			value = very_high_skill_rating
			50 = { # You beat up the fisherman
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.stole_artifact
					left_icon = root
					scope:merchant_artifact_scope = { set_owner = root }
				}
			}
			50 = { # You get caught and exposed as a dirty thief!
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.caught_red_handed
					left_icon = root
					increase_wounds_no_death_effect = { REASON = fight }
					add_prestige = major_prestige_loss
				}
			}
		}
		stress_impact = {
			sadistic = minor_stress_impact_loss
			callous = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
			craven = medium_stress_impact_gain
			generous = major_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				add = 50
				OR = {
					has_trait = sadistic
					has_trait = callous
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = forgiving
					has_trait = generous
					has_trait = craven
				}
			}
		}
	}
	# Just go by without buying anything
	option = {
		name = travel_events.4005.c
		stress_impact = {
			generous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				factor = 0
				has_trait = generous
			}
		}
	}
	after = {
		hidden_effect = {
			if = {
				limit = {
					scope:merchant_artifact_scope.artifact_owner != root
				}
				destroy_artifact = scope:merchant_artifact_scope
			}
			if = {
				limit = { is_ai = yes }
				scope:merchant_character_scope = {
					if = {
						limit = {
							root = { is_ai = yes }
						}
						silent_disappearance_effect = yes
					}
				}
			}
		}
	}
}

# A local bird lands on your boat and eats some supplies
travel_events.4006 = { 
	type = character_event
	title = travel_events.4006.t
	desc = travel_events.4006.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = rage
	}
	right_portrait = {
		character = scope:superstituous_caravan_member
	   	animation = fear
	}
	override_background = { reference = fp1_ocean }
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		location = {
			is_sea_province = yes
		}
		current_travel_plan = {
			any_entourage_character = {
				opinion = {
					value <= low_negative_opinion
					target = root
				}
			}
		}
	}
	immediate = {
		root.current_travel_plan = {
			random_entourage_character = {
				limit = {
					opinion = {
						value <= low_negative_opinion
						target = root
					}
				}
				weight = {
					base = 1
					# Try to find someone relevant
					modifier = {
						is_powerful_vassal_of = root
						add = 2
					}
					modifier = {
						is_close_family_of = root
						add = 2
					}
					modifier = {
						this = root.current_travel_plan.travel_leader
						add = 10
					}
					# Try to find someone who would be upset over this
					modifier = {
						has_trait = compassionate
						add = 1
					}
					modifier = {
						has_trait = zealous
						add = 1
					}
					modifier = {
						has_trait = cynical
						factor = 0.01
					}
				}
				save_scope_as = superstituous_caravan_member
			}
		}
	}
	# Alas, nothing to be done
	option = {
		name = travel_events.4006.a
		current_travel_plan = {
			add_travel_plan_modifier = {
				modifier = bird_ate_supplies
				years = 2
			}
		}
		change_current_weight = -10
		progress_towards_friend_effect = {
			REASON = friend_listened_to_advice
			CHARACTER = scope:superstituous_caravan_member
			OPINION = default_friend_opinion
		}
		stress_impact = {
			base = minor_stress_impact_gain
			vengeful = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = vengeful
					has_trait = callous
					has_trait = sadistic
				}
			}
		}
	}
	# Kill the bloody bird!
	option = {
		name = travel_events.4006.b
		progress_towards_rival_effect = {
			REASON = rival_belittled_beliefs
			CHARACTER = scope:superstituous_caravan_member
			OPINION = default_rival_opinion
		}
		random_list = {
			50 = {
				send_interface_toast = {
					title = travel.supersititions_abated
					left_icon = root
					add_stress = minor_stress_loss
					current_travel_plan = {
						add_travel_plan_modifier = {
							modifier = ate_a_bird
							years = 2
						}
					}
				}
			}
			50 = {
				modifier = {
					factor = 0.5
					has_trait = cynical
				}
				send_interface_toast = {
					title = travel.birds_curse
					left_icon = root
					add_stress = minor_stress_gain
					current_travel_plan = {
						add_travel_plan_modifier = {
							modifier = bird_superstition
							years = 2
						}
					}
				}
			}
		}
		ai_chance = {
			base = 50
			modifier = {
				add = 50
				OR = {
					has_trait = sadistic
					has_trait = callous
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = zealous
				}
			}
		}
	}
}

# A storm at sea
travel_events.4007 = { 
	type = character_event
	title = travel_events.4007.t
	desc = travel_events.4007.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = fear
	}
	right_portrait = {
		character = root.current_travel_plan.travel_leader
	   	animation = stress
	}
	override_background = { reference = fp1_ocean }
	cooldown = { months = 1 }
	trigger = {
		exists = current_travel_plan.travel_leader
		NOT = { current_travel_plan.travel_leader = root }
		is_available_travelling = yes
        is_playable_character = yes
		location = {
			has_sea_danger_type = { TRAVEL = root.current_travel_plan }
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_high }
		hidden_effect = {
			while = {
				count = 5
				current_travel_plan = {
					random_entourage_character = {
						limit = {
							this != root
						}
						weight = {
							base = 1
							# Try to find someone relevant
							modifier = {
								is_close_family_of = root
								add = 1
							}
						}
						add_to_list = drowning_courtiers_list
					}
				}
			}
		}
		traveler_danger_xp_effect = {
			MIN = 3
			MAX = 7
		}
	}
	# Trust your guide leader's judgement
	option = {
		name = travel_events.4007.a
		current_travel_plan.travel_leader = {
			duel = {
				skill = martial
				value = high_skill_rating
				50 = { # You manage to navigate the storm
					compare_modifier = {
						value = scope:duel_value
						multiplier = 0.5
					}
					custom_tooltip = succesfully_navigate_the_storm_tt
					hidden_effect = {
						root = {
							send_interface_toast = {
								title = succesfully_navigate_the_storm_tt
								left_icon = root
								add_prestige = 10
							}
						}
					}
				}
				40 = { # You mess up and get someone killed
					compare_modifier = {
						value = scope:duel_value
						multiplier = -0.5
					}
					add_prestige = medium_prestige_loss
					increase_wounds_effect = { REASON = drowned }
					custom_tooltip = someone_drowns_tt
					hidden_effect = {
						root = {
							send_interface_toast = {
								title = someone_drowns_tt
								left_icon = root
								random_in_list = {
									list = drowning_courtiers_list
									death = {
										death_reason = death_drowned
									}
								}
							}
						}
					}
				}
				10 = { # They mess up a lot and drown a lot of people
					compare_modifier = {
						value = scope:duel_value
						multiplier = -0.5
					}
					increase_wounds_effect = { REASON = drowned }
					custom_tooltip = some_people_drown_tt
					hidden_effect = {
						root = {
							send_interface_toast = {
								title = some_people_drown_tt
								left_icon = root
								every_in_list = {
									list = drowning_courtiers_list
									death = {
										death_reason = death_drowned
									}
								}
							}
						}
					}
				}
			}
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			brave = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = brave
				}
			}
		}
	}
	# Take the helm yourself!
	option = {
		name = travel_events.4007.b
		stress_impact = {
			arrogant = minor_stress_impact_loss
			craven = medium_stress_impact_gain
		}
		progress_towards_rival_effect = {
			REASON = rival_upstaged_at_sea
			CHARACTER = root.current_travel_plan.travel_leader
			OPINION = default_rival_opinion
		}
		duel = {
			skill = martial
			value = high_skill_rating
			50 = { # You manage to navigate the storm
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = succesfully_navigate_the_storm_tt
					left_icon = root
					add_prestige = medium_prestige_gain
				}
			}
			40 = { # You mess up and get someone killed
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				custom_tooltip = some_people_drown_tt
				hidden_effect = {
					send_interface_toast = {
						title = some_people_drown_tt
						left_icon = root
						every_in_list = {
							list = drowning_courtiers_list
							death = {
								death_reason = death_drowned
							}
						}
						add_prestige = medium_prestige_loss
						increase_wounds_effect = { REASON = drowned }
					}
				}
			}
			10 = { # You really mess up and get yourself drowned
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = you_drown_tt
					left_icon = root
					add_prestige = medium_prestige_loss
					death = {
						death_reason = death_drowned
					}
				}
			}
		}
		ai_chance = {
			base = 50
			modifier = {
				add = 50
				has_trait = arrogant
			}
			modifier = {
				factor = 0
				has_trait = craven
			}
		}
	}
	# Follow the experienced sailors to shore
	option = {
		name = travel_events.4007.c
		trigger = {
			location = {
				any_neighboring_province = {
					exists = county #Not at sea, not an impassable
					county.culture = {
						OR = {
							has_cultural_tradition = tradition_seafaring
							has_cultural_tradition = tradition_fishermen
						}
					}
				}
			}
		}
		add_prestige = minor_prestige_gain
		stress_impact = {
			arrogant = medium_stress_impact_gain
			brave = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = brave
				}
			}
		}
	}
}

# Shipwreck!
travel_events.4008 = { 
	type = character_event
	title = travel_events.4008.t
	desc = travel_events.4008.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	override_background = { reference = fp1_ocean }
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		location = { is_sea_province = yes }
	}

	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		mp_delay_travel_plan = { DAYS = 90 }
	}

	# Investigate the wreck
	option = {
		name = travel_events.4008.a
		current_travel_plan = {
			delay_travel_plan = {
				weeks = 1
				add = yes
			}
		}
		duel = {
			skill = intrigue
			value = medium_skill_rating
			60 = { # You find something cool
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				add_prestige = medium_prestige_gain
				custom_tooltip = find_something_cool_tt
				hidden_effect = {
					random_list = {
						50 = { # A cool artifact
							trigger_event = travel_events.4009
						}
						50 = { # Treasure!
							trigger_event = travel_events.4010
						}
						50 = { # A survivor!
							trigger = {
								location = {
									any_neighboring_province = {
										is_sea_province = no
										has_holding = yes
									}
								}
							}
							trigger_event = travel_events.4011
						}
					}
				}
			}
			40 = { # You find nothing
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				custom_tooltip = you_find_nothing_tt
				send_interface_toast = {
					title = you_find_nothing_tt
					left_icon = root
					add_prestige = minor_prestige_loss
				}
			}
		}
		stress_impact = {
			craven = medium_stress_impact_gain
			paranoid = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = craven
					has_trait = paranoid
				}
			}
		}
	}
	# Ignore it
	option = {
		name = travel_events.4008.b
		stress_impact = {
			arrogant = medium_stress_impact_gain
			brave = medium_stress_impact_gain
			curious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = brave
					has_trait = curious
				}
			}
		}
	}
	after = {
		mp_resume_travel_plan = yes
	}
}

# Shipwreck, a trinket!
travel_events.4009 = { 
	type = character_event
	title = travel_events.4009.t
	desc = travel_events.4009.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = admiration
	}
	artifact = {
		target = scope:new_trinket
		position = lower_left_portrait
	}
	override_background = { reference = fp1_ocean }
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		generate_trinket_effect = {
			TRINKET_RECEIVER = root
			TRINKET_GIVER = root
			GRAB_ALL_TRINKETS = yes
			HISTORY_TYPE = discovered
		}
	}
	# Cool dude
	option = {
		name = travel_events.4009.a
	}
}

# Shipwreck, treasure!
travel_events.4010 = { 
	type = character_event
	title = travel_events.4010.t
	desc = travel_events.4010.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = admiration
	}
	override_background = { reference = fp1_ocean }
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
	}
	# Cool dude
	option = {
		name = travel_events.4010.a
		add_gold = minor_gold_value
	}
}

# Shipwreck, a survivor!
travel_events.4011 = { 
	type = character_event
	title = travel_events.4011.t
	desc = travel_events.4011.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = shock
	}
	right_portrait = {
		character = scope:castaway_scope 
	   	animation = ecstasy
	}
	override_background = { reference = fp1_ocean }
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		root.location = {
			random_neighboring_province = {
				limit = {
					is_sea_province = no
					has_holding = yes
				}
				county = { save_scope_as = nearby_coast_scope }
			}
		}
		create_character = {
			template = castaway_character
			location = root.location
			culture = scope:nearby_coast_scope.culture
			faith = scope:nearby_coast_scope.faith
			#Set up the scope
			save_scope_as = castaway_scope
			after_creation = {
				add_character_flag = created
			}
		}
	}
	# Help them to shore
	option = {
		name = travel_events.4011.a
		add_piety = minor_piety_value
		add_gold = minor_gold_value
		stress_impact = {
			arrogant = minor_stress_impact_gain
			callous = minor_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
	}
	# Recruit them to your court
	option = {
		name = travel_events.4011.b
		add_courtier = scope:castaway_scope
		root.current_travel_plan = {
			add_companion = scope:castaway_scope
		}
		add_gold = minor_gold_value
		stress_impact = {
			sadistic = minor_stress_impact_gain
			callous = minor_stress_impact_gain
			paranoid = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
	}
	# Abandon them there
	option = {
		name = travel_events.4011.c
		stress_impact = {
			callous = minor_stress_impact_loss
			paranoid = minor_stress_impact_loss
			sadistic = medium_stress_impact_loss
			just = medium_stress_impact_gain
			compassionate = massive_stress_impact_gain
		}
	}
	
	after = {
		scope:castaway_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You are being followed by a feral child
travel_events.4012 = {
	type = character_event
	title = travel_events.4012.t
	desc = travel_events.4012.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:feral_child_scope
		animation = pain
		triggered_outfit = {
			outfit_tags = { beggar_rags }
		}
	}
	cooldown = { years = 50 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
        is_location_valid_for_travel_event_on_land = yes
		location = {
			has_holding = no
			county = { development_level <= 5 }
		}
		trigger_if = {
			limit = {
				is_ai = yes
			}
			highest_held_title_tier >= tier_kingdom
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		create_character = {
			template = feral_child_template
			location = root.location
			culture = root.location.county.culture # They should look like a local
			faith = root.faith
			dynasty = none
			#Set up the scope
			save_scope_as = feral_child_scope
		}
		scope:feral_child_scope = {
			# Save scope to limit possible animals: big/small/dangerous/harmless/prowling
			select_local_animal_effect = { TYPE = prowling } # Save scope to limit possible animals: any/big/small/dangerous/harmless/prowling
		}
		hidden_effect = {
			scope:feral_child_scope = {
				# They are feral, they learned very basic language from your party
				if = {
					limit = {
						culture != root.culture
						NOT = {
							culture = {
								has_same_culture_language = root.culture #Even if the child is from another culture they might speak the same language
							}
						}
					}
					set_culture = root.culture
					unlearn_language_of_culture = root.location.county.culture
				}
				else_if = {
					limit = {
						culture != root.culture
					}
					set_culture = root.culture #For consistency we will set the culture even if it already speaks the same language.
				}
				# Give them a cool nickname
				give_nickname = nick_son_of_dangerous_animal
			}
		}
	}
	# Take them as your ward
	option = {
		name = travel_events.4012.a
		trigger = {
			num_of_relation_ward < 2
		}
		add_courtier = scope:feral_child_scope
		root.current_travel_plan = {
			add_companion = scope:feral_child_scope
		}
		scope:feral_child_scope = { set_relation_guardian = root }
		create_character_memory = {
			type = feral_child_found_memory
			participants = {
				feral_child = scope:feral_child_scope
			}
		}
		hidden_effect = {
			duel = {
				skill = learning
				value = very_high_skill_rating
				50 = { # You manage to tame the child
					compare_modifier = {
						value = scope:duel_value
						multiplier = 0.5
					}
					trigger_event = {
						id = travel_events.4013
						years = 1
					}
				}
				50 = { # You fail to tame the child and they return to nature
					compare_modifier = {
						value = scope:duel_value
						multiplier = -0.5
					}
					trigger_event = {
						id = travel_events.4014
						years = 1
					}
				}
			}
		}
		stress_impact = {
			paranoid = medium_stress_impact_gain
			callous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = callous
				}
			}
		}
	}
	# Ignore them
	option = {
		name = travel_events.4012.b
		add_character_modifier = {
			modifier = stalked_by_feral_child_modifier
			years = 2
		}
		scope:feral_child_scope = {
			if = {
				limit = {
					root = { is_ai = yes }
				}
				silent_disappearance_effect = yes
			}
		}
		stress_impact = {
			compassionate = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = compassionate
			}
		}
	}
	#Have them chased away!
	option = {
		name = travel_events.4012.c
		duel = {
			skill = prowess
			target = scope:feral_child_scope
			50 = { # You beat up the child
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.beat_feral_child
					left_icon = root
					add_dread = minor_dread_gain
				}
			}
			50 = { # You get beaten up by the child
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.beaten_by_feral_child
					left_icon = root
					add_prestige = medium_prestige_loss
					increase_wounds_effect = { REASON = fight }
				}
				create_character_memory = {
					type = attacked_by_feral_child_memory
					participants = {
						feral_child = scope:feral_child_scope
					}
				}
			}
		}
		if = { #Can die from the wounds effect above
			limit = { scope:feral_child_scope = { is_alive = yes } }
			scope:feral_child_scope = {
				if = {
					limit = {
						root = { is_ai = yes }
					}
					silent_disappearance_effect = yes
				}
			}
		}
		stress_impact = {
			base = medium_stress_impact_gain
			sadistic = medium_stress_impact_loss
			zealous = minor_stress_impact_loss
			wrathful = minor_stress_impact_loss
			compassionate = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
			}
		}
	}
}

# You gain the option to adopt the child
travel_events.4013 = { 
	type = character_event
	title = travel_events.4013.t
	desc = travel_events.4013.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = admiration
	}
	right_portrait = {
		character = scope:feral_child_scope
		animation = personality_rational
	}
	trigger = {
		has_relation_ward = scope:feral_child_scope
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		scope:feral_child_scope = {
			if = {
				limit = {
					has_character_modifier = nonverbal_modifier
				}
				remove_character_modifier = nonverbal_modifier
			}
			if = {
				limit = {
					has_character_modifier = feral_modifier
				}
				remove_character_modifier = feral_modifier
			}
		}
		create_character_memory = {
			type = feral_child_socialised_memory
			participants = {
				feral_child = scope:feral_child_scope
			}
		}
	}
	# Adopt them as your child
	option = {
		name = travel_events.4013.a
		if = {
			limit = {
				exists = dynasty
				dynasty.dynast = root
			}
			dynasty = { add_dynasty_prestige = major_dynasty_prestige_loss }
		}
		else = {
			add_prestige = massive_prestige_loss
		}
		if = {
			limit = {
				is_male = yes
			}
			scope:feral_child_scope = { set_father = root }
		}
		else = {
			scope:feral_child_scope = { set_mother = root }
		}
		if = {
			limit = { exists = house }
			scope:feral_child_scope = { set_house = root.house }
		}
		set_relation_friend = {
			reason = friend_adopted
			target = scope:feral_child_scope
		}
		stress_impact = {
			compassionate = medium_stress_impact_loss
			paranoid = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 10 # The AI should really avoid doing this
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = arrogant
					has_trait = callous
					has_trait = sadistic
				}
			}
		}
	}
	# Use this to spread word of my good deeds
	option = {
		name = travel_events.4013.b
		add_learning_lifestyle_xp = massive_lifestyle_xp
		add_piety = medium_piety_gain
		stress_impact = {
			humble = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = humble
					has_trait = compassionate
				}
			}
		}
	}
}

# You fail to tame the child
travel_events.4014 = { 
	type = character_event
	title = travel_events.4014.t
	desc = travel_events.4014.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = disbelief
	}
	right_portrait = {
		character = scope:feral_child_scope
		animation = grief
	}
	# Try again
	option = {
		name = travel_events.4014.a
		trigger = {
			scope:feral_child_scope = { is_alive = yes }
			has_relation_ward = scope:feral_child_scope
		}
		duel = {
			skill = learning
			value = very_high_skill_rating
			50 = { # You manage to tame the child
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				trigger_event = {
					id = travel_events.4013
					months = 1
				}
			}
			50 = { # You fail to tame the child and they return to nature
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				custom_tooltip = child_returns_to_nature_tt
				create_character_memory = {
					type = feral_child_socialised_failed_memory
					participants = {
						feral_child = scope:feral_child_scope
					}
				}
				scope:feral_child_scope = {
					silent_disappearance_effect = yes
				}
			}
		}
		stress_impact = {
			compassionate = medium_stress_impact_loss
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
			wrathful = medium_stress_impact_gain
			impatient = medium_stress_impact_gain
		}
		ai_chance = {
			base = 10 # The AI should really avoid doing this
			modifier = {
				factor = 0
				OR = {
					has_trait = callous
					has_trait = sadistic
					has_trait = wrathful
					has_trait = impatient
				}
			}
		}
	}
	# Accept your loss and move on
	option = {
		name = travel_events.4014.b
		custom_tooltip = child_returns_to_nature_tt
		create_character_memory = {
			type = feral_child_socialised_failed_memory
			participants = {
				feral_child = scope:feral_child_scope
			}
		}
		if = {
			limit = {
				scope:feral_child_scope = { is_alive = yes }
			}
			scope:feral_child_scope = {
				silent_disappearance_effect = yes
			}
		}
		stress_impact = {
			patient = minor_stress_impact_gain
			humble = minor_stress_impact_gain
			compassionate = minor_stress_impact_gain
			arrogant = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = patient
					has_trait = humble
					has_trait = compassionate
					has_trait = arrogant
				}
			}
		}
	}
}

# Asking for directions from a diff. language character
travel_events.4015 = { 
	type = character_event
	title = travel_events.4015.t
	desc = travel_events.4015.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:travel_leader_scope
	   	animation = stress
	}
	cooldown = { years = 20 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		exists = current_travel_plan.travel_leader
		current_travel_plan.travel_leader = {
			NOT = { knows_language_of_culture = root.location.county.culture }
		}
		NOT = { culture = { has_same_culture_language = root.location.county.culture } }
	}
	immediate = {
		mp_delay_travel_plan = { DAYS = 90 }
		current_travel_plan.travel_leader = { save_scope_as = travel_leader_scope }
	}
	# Attempt to interpret the instructions
	option = {
		name = travel_events.4015.a
		trigger = {
			NOT = { knows_language_of_culture = location.county.culture }
		}
		duel = {
			skills = { diplomacy learning }
			value = medium_skill_rating
			60 = { # You succesfully interpret the instructions
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.interpreted_instructions
					left_icon = root
					add_prestige = minor_prestige_gain
					current_travel_plan = {
						add_destination_progress = { days = 7 }
					}
				}
			}
			40 = { # You mess up and get lost
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.got_lost
					left_icon = root
					current_travel_plan = {
						delay_travel_plan = {
							weeks = 1
							add = yes
						}
					}
				}
			}
		}
	}
	# You speak the language and interpret the instructions
	option = {
		name = travel_events.4015.b
		trigger = {
			knows_language_of_culture = location.county.culture
		}
		add_prestige = minor_prestige_gain
		current_travel_plan = {
			add_destination_progress = { days = 7 }
		}
	}
	after = {
		mp_resume_travel_plan = yes
	}
}

# You experience heatstroke
scripted_trigger 4016_is_hot_climate_trigger = {
	NOT = { terrain = mountains }
	NOT = { terrain = taiga }
	OR = {
		geographical_region = world_middle_east
		geographical_region = world_india
		geographical_region = world_africa
		geographical_region = world_burma
		geographical_region = world_asia_southeast
		AND = {
			OR = {
				is_desert_trigger = yes
				terrain = jungle
			}
			NOR = {
				geographical_region = world_steppe
				geographical_region = world_tibet
			}
		}
	}
}
scripted_trigger 4016_is_cold_climate_trigger = { # Explicitly looking for places that are *cold*, not merely that they're not hot
	OR = {
		geographical_region = world_steppe
		geographical_region = world_tibet
		NOT = { is_desert_trigger = yes }
		NOT = { terrain = jungle }
	}
	OR = {
		geographical_region = world_steppe
		geographical_region = world_tibet
		geographical_region = world_europe_west_britannia
		geographical_region = world_europe_west_germania
		geographical_region = world_europe_north
		terrain = mountains
		terrain = taiga
	}
	NOT = {
		geographical_region = world_europe_west_iberia
		geographical_region = world_europe_south
		geographical_region = world_middle_east
		geographical_region = world_india
		geographical_region = world_africa
		geographical_region = world_burma
	}
}

travel_events.4016 = {
	type = character_event
	title = travel_events.4016.t
	desc = {
		desc = travel_events.4016.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					root.location = {
						is_drylands_or_desert_trigger = yes
					}
				}
				desc = travel_events.4016.desc.mid.dry_heat
			}
			desc = travel_events.4016.desc.mid.humid_heat
		}
		desc = travel_events.4016.desc.outro
	}
	theme = travel_danger
	left_portrait = {
		character = root 
	   	animation = stress
	}
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		root.location = {
			4016_is_hot_climate_trigger = yes
		}
		root.capital_province = {
			4016_is_cold_climate_trigger = yes
		}
	}

	immediate = {
		mp_delay_travel_plan = { DAYS = 90 }
	}

	# Grit your teeth and keep going
	option = {
		name = travel_events.4016.a
		random_list = {
			50 = {
				modifier = {
					factor = 2
					OR = {
						has_any_illness = yes
						has_trait = weak
						has_trait = physique_bad
						has_trait = spindly
						has_trait = wheezing
						has_trait = bleeder
					}
				}
				send_interface_toast = {
					title = travel.got_heatstroke
					left_icon = root
					add_character_modifier = {
						modifier = heatstroke_modifier
						years = 2
					}
					add_stress = medium_stress_gain
				}
			}
			50 = {
				modifier = {
					factor = 2
					OR = {
						has_trait = strong
						has_trait = physique_good
						has_trait = athletic
					}
				}
				modifier = {
					factor = 2
					OR = {
						has_trait = desert_warrior
						has_trait = jungle_stalker
						has_trait = logistician
					}
				}
				send_interface_toast = {
					title = travel.found_a_place_to_cool
					left_icon = root
					add_stress = minor_stress_loss
				}
			}
		}
		stress_impact = {
			patient = minor_stress_impact_gain
			humble = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = patient
					has_trait = humble
				}
			}
		}
	}

	# Attempt to steal water from your entourage
	option = {
		name = travel_events.4016.b
		duel = {
			skill = intrigue
			value = medium_skill_rating
			50 = { # You manage to steal water without being caught
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.stole_water
					left_icon = root
					add_stress = minor_stress_loss
				}
			}
			50 = { # You get caught stealing water
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.caught_stealing_water
					left_icon = root
					add_prestige = medium_prestige_loss
					root.current_travel_plan = {
						every_entourage_character = {
							custom = every_entourage_tt
							add_opinion = {
								modifier = angry_opinion
								opinion = -10
								target = root
							}
						}
					}
				}
			}
		}
		stress_impact = {
			patient = minor_stress_impact_gain
			humble = minor_stress_impact_gain
			honest = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = patient
					has_trait = humble
					has_trait = honest
				}
			}
		}
	}
	after = {
		mp_resume_travel_plan = yes
	}
}

# Swords for hire!
travel_events.4017 = {
	type = character_event
	title = travel_events.4017.t
	desc = {
		desc = travel_events.4017.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					root.location = {
						OR = {
							geographical_region = world_steppe
							county = { culture = { has_cultural_pillar = heritage_turkic } }
							county = { culture = { has_cultural_pillar = heritage_mongolic } }
						}
						county = { culture = { has_cultural_tradition = tradition_horse_lords } }
					}
				}
				desc = travel_events.4017.desc.mid.nomad
			}
			desc = travel_events.4017.desc.mid.swordsman
		}
		desc = travel_events.4017.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:warrior_scope
	   	animation = marshal
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		root.location = {
			county = {
				culture != root.capital_county.culture
				culture = {
					OR = {
						has_cultural_tradition = tradition_swords_for_hire
						has_cultural_tradition = tradition_ep3_audacious_cadets
					}
				}
			}
		}
	}
	immediate = {
		create_character = {
			template = swords_for_hire_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = warrior_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:warrior_scope = {
				give_nickname = nick_the_own_culture
				add_character_flag = single_combat_duel_armor
			}
		}
	}
	# Hire them!
	option = {
		name = travel_events.4017.a
		pay_short_term_gold = {
			target = scope:warrior_scope
			gold = minor_gold_value
		}
		add_courtier = scope:warrior_scope
		root.current_travel_plan = {
			add_companion = scope:warrior_scope
		}
		hidden_effect = {
			scope:warrior_scope = {
				add_character_flag = {
					flag = blocked_from_leaving
					years = 10
				}
			}
		}
		stress_impact = {
			zealous = medium_stress_impact_gain
			greedy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = zealous
					has_trait = greedy
				}
			}
			modifier = {
				factor = 0
				short_term_gold < minor_gold_value
			}
		}
	}

	# Attempt to negotiate for a lower contract
	option = {
		name = travel_events.4017.b
		duel = {
			skill = stewardship
			value = medium_skill_rating
			50 = { # You manage to haggle the price down
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.haggle_succesful
					left_icon = root
					pay_short_term_gold = {
						target = scope:warrior_scope
						gold = tiny_gold_value
					}
					add_courtier = scope:warrior_scope
					root.current_travel_plan = {
						add_companion = scope:warrior_scope
					}
					hidden_effect = {
						scope:warrior_scope = {
							add_character_flag = {
								flag = blocked_from_leaving
								years = 10
							}
						}
					}
				}
			}
			50 = { # You fail and they get pissed
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.haggle_failed
					left_icon = root
					add_prestige = minor_prestige_loss
				}
			}
		}
		stress_impact = {
			humble = minor_stress_impact_gain
			shy = medium_stress_impact_gain
			generous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = humble
					has_trait = shy
					has_trait = generous
				}
			}
			modifier = {
				factor = 0
				short_term_gold < minor_gold_value
			}
		}
	}

	# Use them to get lower mercenary contracts
	option = {
		name = travel_events.4017.c
		trigger = {
			has_trait = avaricious
		}
		add_character_modifier = {
			modifier = cheaper_merc_contracts
			years = 5
		}
		stress_impact = {
			craven = minor_stress_impact_gain
			generous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = craven
					has_trait = generous
				}
			}
		}
	}

	# Move on without hiring their services
	option = {
		name = travel_events.4017.d
		stress_impact = {
			brave = minor_stress_impact_gain
			generous = medium_stress_impact_gain
			arrogant = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = brave
					has_trait = generous
					has_trait = arrogant
				}
			}
		}
	}

	after = {
		hidden_effect = {
			scope:warrior_scope = {
				remove_character_flag = single_combat_duel_armor
				silent_disappearance_ai_if_created_effect = yes
			}
		}
	}
}

# A mendicant preacher!
travel_events.4018 = {
	type = character_event
	title = travel_events.4018.t
	desc = {
		desc = travel_events.4018.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					root.location = {
						county = { culture = { has_cultural_tradition = tradition_mendicant_mystics } }
					}
				}
				desc = travel_events.4018.desc.mid.mystic
			}
			desc = travel_events.4018.desc.mid.preacher
		}
		desc = travel_events.4018.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:mystic_scope
	   	animation = personality_zealous
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		location = {
			county = {
				culture != root.capital_county.culture
				faith.religion != root.faith.religion
				OR = {
					faith = { has_doctrine_parameter = mendicant_preachers_conversion_active }
					culture = { has_cultural_tradition = tradition_mendicant_mystics }
				}
			}
		}
	}
	immediate = {
		create_character = {
			template = default_mystic_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = mystic_scope
			after_creation = {
				add_character_flag = created
			}
		}
	}

	# Have them burned
	option = {
		name = travel_events.4018.d
		trigger = {
			OR = {
				has_trait = sadistic
				has_trait = callous
				has_trait = zealous
			}
		}
		trait = sadistic
		trait = callous
		trait = zealous
		scope:mystic_scope = {
			death = {
				killer = root
				death_reason = death_burned_witch
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_loss
			callous = medium_stress_impact_loss
			zealous = minor_stress_impact_loss
			compassionate = major_stress_impact_gain
			just = major_stress_impact_gain
			calm = major_stress_impact_gain
		}
		ai_chance = {
			base = 0
			modifier = {
				factor = 100
				OR = {
					has_trait = sadistic
					has_trait = callous
				}
			}
		}
	}
	
	# Debate me in the arena of facts and logic
	option = {
		name = travel_events.4018.a
		duel = {
			skill = learning
			target = scope:mystic_scope
			50 = { # You win the debate
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = root
					add_piety = medium_piety_gain
				}
			}
			50 = { # You lose the debate
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.debate_lost
					left_icon = root
					add_prestige = miniscule_prestige_loss
					add_courtier = scope:mystic_scope
					root.current_travel_plan = {
						add_companion = scope:mystic_scope
					}
				}
			}
		}
		stress_impact = {
			shy = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					has_trait = cynical
				}
			}
		}
	}

	# They do make some good points...
	option = {
		name = travel_events.4018.b
		add_piety = major_piety_loss
		set_character_faith = scope:mystic_scope.faith
		add_courtier = scope:mystic_scope
		root.current_travel_plan = {
			add_companion = scope:mystic_scope
		}
		hidden_effect = {
			scope:mystic_scope = {
				add_character_flag = {
					flag = blocked_from_leaving
					years = 10
				}
			}
		}
		stress_impact = {
			cynical = medium_stress_impact_loss
			zealous = major_stress_impact_gain
			arrogant = medium_stress_impact_gain
			impatient = medium_stress_impact_gain
		}
		ai_chance = { # The AI should never do this
			base = 0
		}
	}

	# Pass them by
	option = {
		name = travel_events.4018.c
		stress_impact = {
			zealous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
		}
	}
	
	after = {
		scope:mystic_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You pass by a peasant street food place, demand to sample some
travel_events.4019 = {
	type = character_event
	title = travel_events.4019.t
	desc = travel_events.4019.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = thinking
	}
	right_portrait = {
		character = scope:pompous_courtier
	   	animation = personality_zealous
	}
	override_background = { reference = market }
	cooldown = { years = 20 }
	trigger = {
		static_group_filter = {
			group = travel_events.4019
			match = 0.25
		}
		is_available_travelling = yes
        is_playable_character = yes
        is_location_valid_for_travel_event_on_land = yes
		location = {
			has_holding = yes
		}
		NOT = {
			location.culture = {
				has_same_culture_heritage = root.culture
			}
		}
		current_travel_plan = {
			any_entourage_character = {
				is_physically_able_ai_adult = yes
				this != root
			}
		}
	}
	weight_multiplier = {
		base = 1
		# Culinary art is an exceptionally rare cultrad, so I feel for visibility this should just make the event more likely rather than locking it only to culinary artists
		modifier = {
			add = 10
			location.culture = {
				has_cultural_tradition = tradition_culinary_art
			}
		}
	}
	immediate = {
		current_travel_plan = {
			random_entourage_character = {
				limit = {
					is_physically_able_ai_adult = yes
					this != root
				}
				weight = {
					base = 1
					modifier = {
						factor = 2
						has_trait = arrogant
					}
					modifier = {
						factor = 0.5
						NOT = { has_trait = humble }
					}
				}
				save_scope_as = pompous_courtier
			}
		}
	}
	# I am the Emperor and I want pudding!
	option = {
		name = travel_events.4019.a
		add_prestige = minor_prestige_loss
		random_list = {
			60 = {
				modifier = {
					factor = 2
					root.location.culture = {
						has_cultural_tradition = tradition_culinary_art
					}
				}
				send_interface_toast = {
					title = travel.good_food
					left_icon = root
					add_stress = minor_stress_loss
					add_character_modifier = {
						modifier = good_soup_modifier
						years = 2
					}
				}
			}
			30 = {
				send_interface_toast = {
					title = travel.bad_food
					left_icon = root
					add_character_modifier = {
						modifier = bad_soup_modifier
						years = 2
					}
				}
			}
			10 = {
				send_interface_toast = {
					title = travel.food_poisoning
					left_icon = root
					contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = no }
				}
			}
		}
		stress_impact = {
			gluttonous = medium_stress_impact_loss
			comfort_eater = medium_stress_impact_loss
			humble = medium_stress_impact_gain
			temperate = medium_stress_impact_gain
			inappetetic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = temperate
					has_trait = humble
					has_trait = inappetetic
				}
			}
			modifier = {
				factor = 0
				prestige <= minor_prestige_value
			}
		}
	}

	# Yes we do have better food at home...
	option = {
		name = travel_events.4019.b
		scope:pompous_courtier = {
			add_opinion = {
				target = root
				opinion = 5
				modifier = respect_opinion
			}
		}
		stress_impact = {
			inappetetic = minor_stress_impact_loss
			temperate = minor_stress_impact_loss
			gluttonous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = humble
					has_trait = gluttonous
					has_trait = content
				}
			}
		}
	}

	# Let's take note of the recipe
	option = {
		name = travel_events.4019.c
		trigger = {
			root.location.culture = {
				has_cultural_tradition = tradition_culinary_art
			}
			has_trait = scholar
		}
		add_character_modifier = {
			modifier = exotic_recipe_modifier
			years = 5
		}
		stress_impact = {
			lazy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = lazy
			}
		}
	}
}

# Strong believers harass your caravan and demand payment
travel_events.4020 = {
	type = character_event
	title = travel_events.4020.t
	desc = travel_events.4020.desc
	theme = travel_danger
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:strong_believer_scope
	   	animation = rage
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		location = {
			county = {
				faith.religion != root.faith.religion
				culture = { has_cultural_tradition = tradition_zealous_people }
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		create_character = {
			template = scholar_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = strong_believer_scope
			after_creation = {
				add_character_flag = created
			}
		}
		select_local_animal_effect = { TYPE = prowling } # Save scope to limit possible animals: any/big/small/dangerous/harmless/prowling
	}
	# Debate me in the arena of facts and logic
	option = {
		name = travel_events.4020.a
		duel = {
			skill = learning
			target = scope:strong_believer_scope
			50 = { # You manage to haggle the price down
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = root
					add_piety = medium_piety_gain
				}
			}
			50 = { # You fail and they get pissed
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
				}
				send_interface_toast = {
					title = travel.debate_lost
					left_icon = root
					add_piety = medium_piety_loss
					remove_short_term_gold = minor_gold_value
				}
			}
		}
		stress_impact = {
			cynical = medium_stress_impact_gain
			humble = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = cynical
					has_trait = humble
				}
			}
		}
	}

	# Pay the tax
	option = {
		name = travel_events.4020.b
		remove_short_term_gold = minor_gold_value
		stress_impact = {
			arrogant = medium_stress_impact_gain
			greedy = medium_stress_impact_gain
			zealous = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = greedy
					has_trait = zealous
				}
			}
			modifier = {
				factor = 0
				short_term_gold < minor_gold_value
			}
		}
	}

	# Have them burned
	option = {
		name = travel_events.4020.c
		trigger = {
			OR = {
				has_trait = sadistic
				has_trait = wrathful
				has_trait = impatient
				has_trait = zealous
			}
		}
		scope:strong_believer_scope = {
			death = {
				killer = root
				death_reason = death_burned_witch
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_loss
			callous = medium_stress_impact_loss
			zealous = medium_stress_impact_loss
			compassionate = major_stress_impact_gain
			just = major_stress_impact_gain
			calm = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = calm
				}
			}
		}
	}
	
	after = {
		scope:strong_believer_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You witness a human sacrifice!
travel_events.4021 = {
	type = character_event
	title = travel_events.4021.t
	desc = {
		desc = travel_events.4021.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					OR = {
						has_trait = sadistic
						has_trait = callous
					}
				}
				desc = travel_events.4021.desc.mid.sadist
			}
			desc = travel_events.4021.desc.mid
		}
		first_valid = {
			triggered_desc = {
				trigger = {
					is_cannibal_trigger = yes
				}
				desc = travel_events.4021.desc.outro.cannibal
			}
			triggered_desc = {
				trigger = {
					OR = {
						has_trait = sadistic
						has_trait = callous
					}
				}
				desc = travel_events.4021.desc.outro.sadist
			}
			desc = travel_events.4021.desc.outro
		}
	}
	theme = travel
	left_portrait = {
		character = root 
		triggered_animation = {
			trigger = {
				OR = {
					has_trait = callous
					has_trait = sadistic
				}
			}
			animation = personality_callous
		}
	   	animation = disbelief
	}
	right_portrait = {
		character = scope:sacrificed_person_scope
	   	animation = prisondungeon
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		# Human sacrifice should be shocking to you
		NOT = { root.faith = { has_doctrine_parameter = human_sacrifice_active } }
		is_location_valid_for_travel_event_on_land = yes
		location = {
			county = {
				faith = { has_doctrine_parameter = human_sacrifice_active }
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		create_character = {
			template = generic_peasant_character
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = sacrificed_person_scope
			after_creation = {
				add_character_flag = created
			}
		}
		if = {
			limit = {
				root.current_travel_plan = {
					any_entourage_character = {
						has_relation_rival = root
						is_ruler = no
					}
				}
			}
			root.current_travel_plan = {
				random_entourage_character = {
					limit = {
						has_relation_rival = root
						is_ruler = no
					}
					save_scope_as = rival_to_sacrifice
				}
			}
		}
		scope:sacrificed_person_scope = {
			add_character_flag = is_naked
		}
	}

	# Buy the sacrifice as your servant
	option = {
		name = travel_events.4021.b
		remove_short_term_gold = medium_gold_value
		add_courtier = scope:sacrificed_person_scope
		root.current_travel_plan = {
			add_companion = scope:sacrificed_person_scope
		}
		scope:sacrificed_person_scope = {
			add_opinion = {
				modifier = feast_saved_my_life_opinion
				target = root
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			greedy = medium_stress_impact_gain
			paranoid = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = greedy
					has_trait = zealous
					has_trait = paranoid
				}
			}
			modifier = {
				factor = 0
				short_term_gold <= medium_gold_value
			}
		}
	}

	# Offer up your own sacrifice!
	option = {
		name = travel_events.4021.c
		trigger = {
			exists = scope:rival_to_sacrifice
		}
		add_piety = medium_piety_loss
		scope:rival_to_sacrifice = {
			death = {
				killer = root
				death_reason = death_sacrificed_to_foreign_gods
			}
		}
		add_courtier = scope:sacrificed_person_scope
		root.current_travel_plan = {
			add_companion = scope:sacrificed_person_scope
		}
		scope:sacrificed_person_scope = {
			add_opinion = {
				modifier = feast_saved_my_life_opinion
				target = root
			}
		}
		stress_impact = {
			vengeful = medium_stress_impact_loss
			sadistic = medium_stress_impact_loss
			callous = medium_stress_impact_loss
			compassionate = major_stress_impact_gain
			just = major_stress_impact_gain
			calm = major_stress_impact_gain
			forgiving = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = calm
					has_trait = forgiving
				}
			}
		}
	}
	# Just let it happen
	option = {
		name = {
			text = {
				first_valid = {
					triggered_desc = {
						trigger = { has_trait = sadistic }
						desc = travel_events.4021.a.sadist
					}
					desc = travel_events.4021.a
				}
			}
		}
		scope:sacrificed_person_scope = {
			death = {
				death_reason = death_sacrificed_to_gods
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_loss
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			zealous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = zealous
				}
			}
		}
	}
	after = {
		scope:sacrificed_person_scope ?= {
			remove_character_flag = is_naked
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You witness some tree worship in a Sanctity of Nature province
travel_events.4022 = {
	type = character_event
	title = travel_events.4022.t
	desc = travel_events.4022.desc
	theme = travel
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				has_trait = zealous
				NOT = { faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible } }
			}
			animation = anger
		}
		triggered_animation = {
			trigger = {
				has_trait = zealous
				faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible }
			}
			animation = admiration
		}
	   	animation = interested
	}
	right_portrait = {
		character = location.county.holder
	   	animation = dancing
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		location = {
			county = {
				faith != root.faith
				faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible }
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
	}
	# Sit back and watch the ceremony
	option = {
		name = {
			text = {
				first_valid = {
					triggered_desc = {
						trigger = {
							has_trait = zealous
							faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible }
						}
						desc = travel_events.4022.a.not_so_different
					}
					triggered_desc = {
						trigger = {
							has_trait = zealous
							NOT = { faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible } }
						}
						desc = travel_events.4022.a.ignore_heretics
					}
					desc = travel_events.4022.a
				}
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_gain
		}
		if = {
			limit = {
				faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible }
			}
			add_piety = minor_piety_gain
			stress_impact = {
				zealous = minor_stress_impact_loss
			}
		}
		else = {
			stress_impact = {
				zealous = medium_stress_impact_gain
			}
		}
		if = {
			limit = {
				has_trait = lifestyle_mystic
			}
			add_trait_xp = {
				trait = lifestyle_mystic
				value = lifestyle_mystic_xp_gain_minor_value
			}
		}
		else = {
			random = {
				chance = root.learning
				add_trait = lifestyle_mystic
			}
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = sadistic
					AND = {
						has_trait = zealous
						NOT = { faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible } }
					}
				}
			}
		}
	}

	# Burn the tree!
	option = {
		name = travel_events.4022.b
		trigger = {
			NOT = { faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible } }
		}
		duel = {
			skill = prowess
			value = medium_skill_rating
			50 = { # You manage to burn the tree without getting beaten up
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.burn_the_tree
					left_icon = root
					add_piety = medium_piety_gain
					location.county.holder = {
						if = {
							limit = {
								faith = root.location.county.faith
							}
							add_opinion = {
								target = root
								modifier = impious_opinion
								opinion = -20
							}
						}
						if = {
							limit = {
								liege ?= {
									faith = root.location.county.faith
									this != root.location.county.holder
								}
							}
							liege = {
								add_opinion = {
									target = root
									modifier = impious_opinion
									opinion = -20
								}
							}
						}
						if = {
							limit = {
								top_liege ?= {
									faith = root.location.county.faith
									NOR = {
										this = root.location.county.holder
										this = root.location.county.holder.liege
									}
								}
							}
							top_liege = {
									add_opinion = {
									target = root
									modifier = impious_opinion
									opinion = -20
								}
							}
						}
					}
				}
			}
			50 = { # You are beaten up attempting to burn the tree
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.beaten_by_peasants
					left_icon = root
					increase_wounds_no_death_effect = { REASON = fight }
					add_prestige = medium_prestige_loss
				}
			}
		}
		stress_impact = {
			sadistic = minor_stress_impact_loss
			zealous = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = cynical
					has_trait = just
					has_trait = forgiving
				}
			}
			ai_value_modifier = {
				ai_zeal = 1
			}
		}
	}

	# Join the ceremony
	option = {
		name = travel_events.4022.c
		if = {
			limit = {
				faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible }
			}
			add_piety = medium_piety_gain
		}
		if = {
			limit = {
				has_trait = lifestyle_mystic
			}
			add_trait_xp = {
				trait = lifestyle_mystic
				value = lifestyle_mystic_xp_gain_minor_value
			}
		}
		if = {
			limit = {
				root.location.culture != root.culture
			}
			root.culture = {
				change_cultural_acceptance = {
					target = root.location.culture
					value = 1
					desc = cultural_acceptance_participated_in_festival
				}
			}
		}
		stress_impact = {
			curious = minor_stress_impact_loss
			gregarious = minor_stress_impact_loss
			shy = medium_stress_impact_loss
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					AND = {
						faith = { has_doctrine_parameter = believes_in_harmony_with_nature_invisible }
						has_trait = zealous
					}
				}
			}
		}
	}
}

# Prester John! You find a same-religion ruler in a faraway land
travel_events.4023 = {
	type = character_event
	title = travel_events.4023.t
	desc = {
		desc = travel_events.4023.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
					scope:prester_john_scope = { is_male = yes }
				}
				desc = travel_events.4023.desc.mid.john
			}
			triggered_desc = {
				trigger = {
					OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
					scope:prester_john_scope = { is_female = yes }
				}
				desc = travel_events.4023.desc.mid.joan
			}
			desc = travel_events.4023.desc.mid
		}
		desc = travel_events.4023.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				has_trait = cynical
			}
			animation = personality_cynical
		}
	   	animation = admiration
	}
	right_portrait = {
		character = scope:prester_john_scope
	   	animation = personality_zealous
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_landed = yes
		is_location_valid_for_travel_event_on_land = yes
		location.county.holder.top_liege ?= {
			religion = root.religion
			faith != root.faith # This shouldn't happen for Icelandic Catholics visiting Catholic Jerusalem
			NOT = { in_diplomatic_range = root }
			# They must be "surrounded" by other religions
			save_temporary_scope_as = location_top_liege
			any_neighboring_top_liege_realm = {
				count < 3
				holder = {
					religion = scope:location_top_liege.religion
				}
			}
			any_neighboring_top_liege_realm = {
				count > 3
				holder = {
					religion != scope:location_top_liege.religion
				}
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		root.location.county.holder.top_liege = {
			save_scope_as = prester_john_scope
		}
		save_scope_as = foreign_visitor
	}
	# Fanboy out and ask to see "Prester John"
	option = {
		name = travel_events.4023.a
		add_piety = minor_piety_gain
		custom_tooltip = john_may_reward_you_tt
		scope:prester_john_scope = {
			trigger_event = travel_events.4024
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = cynical
					has_trait = shy
				}
			}
		}
	}
	# Visit "Prester John" and tell him that it is his duty to spread the faith
	option = {
		name = travel_events.4023.b
		add_piety = medium_piety_gain
		if = {
			limit = {
				NOT = {
					has_trait = holy_warrior
				}
			}
			add_trait = holy_warrior
		}
		hidden_effect = {
			scope:prester_john_scope = {
				trigger_event = travel_events.4025
			}
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 2
				OR = {
					has_trait = zealous
					has_trait = holy_warrior
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = cynical
					has_trait = shy
				}
			}
		}
	}
	# They may be [religion], but they are still [faith] heretics!
	option = {
		name = travel_events.4023.c
		trigger = {
			faith = {
				faith_hostility_level = {
					target = root.location.faith
					value >= faith_hostile_level
				}
			}
		}
		add_piety = minor_piety_gain
		stress_impact = {
			zealous = minor_stress_impact_loss
			arrogant = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			humble = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = humble
				}
			}
		}
	}

	# That's cool I guess. Moving on
	option = {
		name = travel_events.4023.d
		
		stress_impact = {
			zealous = medium_stress_impact_gain
			curious = medium_stress_impact_gain
			gregarious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = zealous
					has_trait = curious
					has_trait = gregarious
				}
			}
		}
	}
}

# Prester John is told of the visitor
travel_events.4024 = {
	type = character_event
	title = travel_events.4024.t
	desc = {
		desc = travel_events.4024.desc.intro
		desc = travel_events.4024.desc.mid
	}
	theme = travel
	left_portrait = {
		character = root
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:foreign_visitor
	   	animation = admiration
	}
	cooldown = { years = 10 }

	immediate = {
		cp:councillor_court_chaplain = { save_scope_as = chaplain_scope }
	}

	# Fanboy back! Become friends :)
	option = {
		name = travel_events.4024.a
		add_piety = minor_piety_gain
		custom_tooltip = may_become_friends_tt
		scope:foreign_visitor = {
			trigger_event = travel_events.4026
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = cynical
					has_trait = shy
				}
			}
		}
	}
	# They may be [religion], but they are still [faith] heretics!
	option = {
		name = travel_events.4024.b
		trigger = {
			# This should be true anyway, but just in case
			faith != scope:foreign_visitor.faith
		}
		show_as_tooltip = {
			duel = {
				skill = learning
				target = scope:foreign_visitor
				50 = { # You win the debate
					compare_modifier = {
						value = scope:duel_value
						multiplier = 0.5
					}
					send_interface_toast = {
						title = travel.debate_won
						left_icon = root
						add_piety = medium_piety_gain
					}
				}
				50 = { # You lose the debate
					compare_modifier = {
						value = scope:duel_value
						multiplier = -0.5
					}
					send_interface_toast = {
						title = travel.debate_lost
						left_icon = root
						add_piety = minor_piety_loss
						add_stress = minor_stress_gain
					}
				}
			}
		}
		hidden_effect = {
			scope:foreign_visitor = {
				trigger_event = travel_events.4027
			}
		}
		stress_impact = {
			zealous = minor_stress_impact_loss
			arrogant = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			humble = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = humble
				}
			}
		}
	}

	# Give them your chaplain as a gift
	option = {
		name = travel_events.4024.c
		trigger = { scope:chaplain_scope = { is_landed = no } is_available_allow_travelling = yes }
		scope:foreign_visitor = {
			send_interface_toast = {
				title = travel.gift_from_john
				left_icon = scope:foreign_visitor
				right_icon = scope:chaplain_scope
				add_courtier = scope:chaplain_scope
				root.current_travel_plan = {
					add_companion = scope:chaplain_scope
				}
				add_opinion = {
					modifier = gift_opinion
					opinion = 25
					target = scope:prester_john_scope
				}
			}
		}
		stress_impact = {
			zealous = minor_stress_impact_loss
			arrogant = minor_stress_impact_loss
			gregarious = medium_stress_impact_gain
			just = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = gregarious
					has_trait = just
				}
			}
		}
	}

	# That's cool I guess. Moving on
	option = {
		name = travel_events.4024.d
		scope:foreign_visitor = {
			send_interface_toast = {
				title = travel.turned_away_from_john
				left_icon = scope:foreign_visitor
				right_icon = scope:prester_john_scope
				add_prestige = minor_prestige_loss
				add_opinion = {
					modifier = insulted_opinion
					opinion = -20
					target = scope:prester_john_scope
				}
			}
		}
		stress_impact = {
			zealous = medium_stress_impact_gain
			curious = medium_stress_impact_gain
			gregarious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = zealous
					has_trait = curious
					has_trait = gregarious
				}
			}
		}
	}
}

# Prester John encouraged to to take up the sword against heretics
travel_events.4025 = {
	type = character_event
	title = travel_events.4025.t
	desc = {
		desc = travel_events.4024.desc.intro
		desc = travel_events.4025.desc.mid
	}
	theme = travel
	left_portrait = {
		character = root
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:foreign_visitor
	   	animation = personality_bold
	}
	cooldown = { years = 10 }

	# Heretic bashing time
	option = {
		name = travel_events.4025.a
		add_trait = holy_warrior
		if = {
			limit = {
				OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
				OR = {
					has_any_nickname = no
					has_bad_nickname = yes
				}
			}
			if = {
				limit = { is_male = yes }
				give_nickname = nick_prester_john
			}
			else = {
				give_nickname = nick_prester_joan
			}
		}
		every_neighboring_and_across_water_top_liege_realm = {
			custom = travel_events.4025.different_religion_neighbors_and_vassals
			limit = {
				holder.religion != root.religion
			}
			holder = {
				add_opinion = {
					modifier = insult_opinion
					opinion = -25
					target = root
				}
			}
		}
		#Hidden because the above tooltip should inform you
		hidden_effect = {
			every_vassal = {
				limit = {
					religion != root.religion
				}
				add_opinion = {
					modifier = insult_opinion
					opinion = -25
					target = root
				}
			}
		}
		stress_impact = {
			zealous = medium_stress_impact_loss
			compassionate = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
			gregarious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = cynical
					has_trait = gregarious
				}
			}
		}
	}
	# No
	option = {
		name = travel_events.4025.b
		scope:foreign_visitor = {
			send_interface_toast = {
				title = travel.visitor_rejected_me
				left_icon = scope:foreign_visitor
				right_icon = scope:prester_john_scope
				add_opinion = {
					modifier = disappointed_opinion
					opinion = -25
					target = root
				}
			}
		}
		stress_impact = {
			gregarious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 0
			modifier = {
				add = 100
				has_trait = shy
			}
		}
	}
}

# Prester John wants to be penpals!
travel_events.4026 = {
	type = character_event
	title = travel_events.4026.t
	desc = travel_events.4026.desc
	theme = travel
	left_portrait = {
		character = root
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:prester_john_scope
	   	animation = admiration
	}
	cooldown = { years = 10 }

	# Fren time
	option = {
		name = travel_events.4026.a
		scope:prester_john_scope = {
			send_interface_toast = {
				title = travel.became_friends_with_visitor
				left_icon = scope:prester_john_scope
				right_icon = scope:foreign_visitor
				set_relation_friend = {
					reason = friend_respected_other_religion
					target = scope:foreign_visitor
				}
			}
		}
		stress_impact = {
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = shy
			}
		}
	}
	# No frens
	option = {
		name = travel_events.4026.b
		scope:prester_john_scope = {
			send_interface_toast = {
				title = travel.visitor_rejected_friendship
				left_icon = scope:prester_john_scope
				right_icon = scope:foreign_visitor
				add_opinion = {
					modifier = disappointed_opinion
					opinion = -25
					target = root
				}
			}
		}
		stress_impact = {
			gregarious = medium_stress_impact_gain
		}
		ai_chance = {
			base = 0
			modifier = {
				add = 100
				has_trait = shy
			}
		}
	}
}

# Prester John wants to debate you
travel_events.4027 = {
	type = character_event
	title = travel_events.4027.t
	desc = travel_events.4027.desc
	theme = travel
	left_portrait = {
		character = root
	   	animation = shock
	}
	right_portrait = {
		character = scope:prester_john_scope
	   	animation = anger
	}
	cooldown = { years = 10 }

	# Debate me bro
	option = {
		name = travel_events.4027.a
		duel = {
			skill = learning
			target = scope:prester_john_scope
			50 = { # You win the debate
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = scope:prester_john_scope
					right_icon = scope:foreign_visitor
					add_piety = medium_piety_gain
				}
				scope:prester_john_scope = {
					send_interface_toast = {
						title = travel.debate_lost
						left_icon = scope:prester_john_scope
						right_icon = scope:foreign_visitor
						add_piety = minor_piety_loss
						add_stress = minor_stress_gain
					}
				}
			}
			50 = { # You lose the debate
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.debate_lost
					left_icon = scope:prester_john_scope
					right_icon = scope:foreign_visitor
					add_piety = minor_piety_loss
					add_stress = minor_stress_gain
					scope:prester_john_scope = {
						send_interface_toast = {
							title = travel.debate_won
							left_icon = scope:prester_john_scope
							right_icon = scope:foreign_visitor
							add_piety = medium_piety_gain
						}
					}
				}
			}
		}
	}
}

# You come across a runestone!
travel_events.4028 = {
	type = character_event
	title = travel_events.4028.t
	desc = travel_events.4028.desc
	theme = travel
	left_portrait = {
		character = root
		camera = camera_event_left_away_3_4
		triggered_animation = {
			trigger = {
				has_trait = zealous
			}
			animation = anger
		}
	   	animation = survey
	}
	cooldown = { years = 10 }
	override_background = { reference = fp1_runestone }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		# You're not used to Runestones
		NOT = { root.culture = { has_cultural_parameter = has_access_to_runestones } }
		# This place do be having Runestones tho
		location.county.culture = { has_cultural_parameter = has_access_to_runestones }
		# You'd be unlikely to understand the written language on the stone
		NOT = { knows_language_of_culture = location.county.culture }
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
	}
	# Attempt to read the runestone
	option = {
		name = travel_events.4028.a
		duel = {
			skill = learning
			value = high_skill_rating
			50 = { # You read the runestone
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.read_runestone
					left_icon = root
					add_learning_lifestyle_xp = major_lifestyle_xp
				}
			}
			50 = { # You fail
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.failed_to_read_runestone
					left_icon = root
					add_prestige = minor_prestige_loss
				}
			}
		}
		stress_impact = {
			scholar = medium_stress_impact_loss
			dull = medium_stress_impact_gain
			lazy = medium_stress_impact_gain
			zealous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = dull
					has_trait = lazy
					has_trait = zealous
					has_trait = sadistic
				}
			}
		}
	}

	# Topple the stone!
	option = {
		name = travel_events.4028.b
		if = {
			limit = { faith_is_aniconic_trigger = yes }
			add_piety = medium_piety_gain
		}
		else = {
			add_piety = minor_piety_gain
		}
		stress_impact = {
			sadistic = minor_stress_impact_loss
			zealous = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			craven = medium_stress_impact_gain
			just = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = craven
					has_trait = just
					has_trait = forgiving
				}
			}
		}
	}

	# Just pass by
	option = {
		name = travel_events.4028.c
		stress_impact = {
			curious = minor_stress_impact_gain
			zealous = minor_stress_impact_gain
			sadistic = medium_stress_impact_gain
			scholar = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = curious
					has_trait = zealous
					has_trait = sadistic
					has_trait = scholar
				}
			}
		}
	}
}

# You come across dimwit strung up on a post
travel_events.4029 = {
	type = character_event
	title = travel_events.4029.t
	desc = {
		desc = travel_events.4029.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
				}
				desc = travel_events.4029.desc.mid.christian
			}
			desc = travel_events.4029.desc.mid
		}
		desc = travel_events.4029.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				has_trait = sadistic
			}
			animation = admiration
		}
		triggered_animation = {
			trigger = {
				has_trait = callous
			}
			animation = personality_rational
		}
	   	animation = shock
	}
	right_portrait = {
		character = scope:brainless_character
	   	animation = pain
	}
	override_background = { reference = battlefield }
	cooldown = { years = 30 }
	trigger = {
		static_group_filter = {
			group = wizard_of_oz_group
			match = 0.1
		}
		is_available_travelling = yes
        is_playable_character = yes
		root.location = { terrain = farmlands }
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		create_character = {
			template = brainless_character_template
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = brainless_character
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:brainless_character = {
				give_nickname = nick_the_thoughtless
				random_list = {
					50 = {
						set_to_lowborn = yes
					}
					50 = { # They're someone important!
						add_gold = 50
					}
				}
			}
		}
	}
	# Cut them down from there
	option = {
		name = travel_events.4029.a
		custom_tooltip = brainless_may_reward_you_tt
		trigger_event = travel_events.4030
		stress_impact = {
			compassionate = medium_stress_impact_loss
			paranoid = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
			arbitrary = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = paranoid
					has_trait = callous
					has_trait = sadistic
					has_trait = arbitrary
				}
			}
		}
	}

	# Cut them down.... and imprison them!
	option = {
		name = travel_events.4029.b
		rightfully_imprison_character_effect = {
			TARGET = scope:brainless_character
			IMPRISONER = root
		}
		add_piety = minor_piety_gain
		stress_impact = {
			callous = minor_stress_impact_loss
			sadistic = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
		}
		ai_chance = {
			base = 0
			modifier = {
				add = 100
				OR = {
					has_trait = callous
					has_trait = sadistic
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = forgiving
				}
			}
		}
	}

	# Just pass by
	option = {
		name = travel_events.4029.c
		scope:brainless_character = {
			if = {
				limit = {
					root = { is_ai = yes }
				}
				silent_disappearance_effect = yes
			}
		}
		stress_impact = {
			compassionate = minor_stress_impact_gain
			just = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
				}
			}
		}
	}
	after = {
		scope:brainless_character = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

travel_events.4030 = {
	type = character_event
	title = travel_events.4030.t
	desc = {
		desc = travel_events.4030.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:brainless_character = {
						is_lowborn = yes
					}
				}
				desc = travel_events.4030.desc.mid.lowborn
			}
			desc = travel_events.4030.desc.mid.noble
		}
		desc = travel_events.4030.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:brainless_character
	   	animation = personality_forgiving
	}
	cooldown = { years = 10 }
	weight_multiplier = {
		base = 1
		modifier = {
			involved_activity = {
				has_activity_type = activity_pilgrimage
			}
			factor = 0.5
		}
	}
	# Welcome them to your entourage
	option = {
		name = travel_events.4030.a
		add_courtier = scope:brainless_character
		root.current_travel_plan = {
			add_companion = scope:brainless_character
		}
		scope:brainless_character = {
			add_character_flag = {
				flag = blocked_from_leaving
				years = 10
			}
		}
		stress_impact = {
			callous = minor_stress_impact_gain
			sadistic = minor_stress_impact_gain
			shy = medium_stress_impact_gain
			paranoid = medium_stress_impact_gain
			greedy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = callous
					has_trait = sadistic
					has_trait = shy
					has_trait = paranoid
					has_trait = greedy
				}
			}
		}
	}

	# Take their reward
	option = {
		name = travel_events.4030.b
		if = {
			limit = {
				scope:brainless_character = { is_lowborn = yes }
			}
			add_gold = tiny_gold_value
		}
		else = {
			add_gold = minor_gold_value
		}
		add_hook = {
			type = favor_hook
			target = scope:brainless_character
		}
		if = {
			limit = {
				NOT = { # We currently don't have any doctrines that do this, but good to future-proof
					root.faith = { trait_is_virtue = greedy }
				}
			}
			add_piety = minor_piety_loss
		}
		stress_impact = {
			humble = medium_stress_impact_gain
			generous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = humble
					has_trait = generous
				}
			}
		}
	}

	# Let them go without a reward
	option = {
		name = travel_events.4030.c
		add_piety = medium_piety_gain
		stress_impact = {
			greedy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = greedy
			}
		}
	}
	after = {
		if = {
			limit = {
				is_ai = yes
				scope:brainless_character = {
					is_alive = yes
					NOT = { is_courtier_of = root }
				}
			}
			scope:brainless_character = {
				if = {
					limit = {
						root = { is_ai = yes }
					}
					silent_disappearance_effect = yes
				}
			}
		}
	}
}

# You come across a knight stuck in his armour
travel_events.4031 = {
	type = character_event
	title = travel_events.4031.t
	desc = {
		desc = travel_events.4031.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					OR = {
						has_trait = callous
						has_trait = sadistic
					}
				}
				desc = travel_events.4031.desc.mid.callous
			}
			desc = travel_events.4031.desc.mid
		}
		desc = travel_events.4031.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				OR = {
					has_trait = sadistic
					has_trait = callous
				}
			}
			animation = laugh
		}
	   	animation = shock
	}
	right_portrait = {
		character = scope:heartless_knight_scope
	   	animation = rage
	}
	cooldown = { years = 30 }
	trigger = {
		static_group_filter = {
			group = wizard_of_oz_group
			match = 0.1
		}
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		is_valid_for_east_asian_events_trigger = no
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		create_character = {
			template = heartless_knight
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = heartless_knight_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:heartless_knight_scope = {
				if = {
					limit = { root = { is_ai = no } }
					give_nickname = nick_the_heartless
				}
				add_character_flag = single_combat_duel_armor
			}
		}
	}
	# Help them unsuit, for a reward
	option = {
		name = travel_events.4031.a
		add_gold = {
			value = minor_gold_value
			max = 30
		}
		add_hook = {
			type = favor_hook
			target = scope:heartless_knight_scope
		}
		stress_impact = {
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
			generous = medium_stress_impact_gain
			compassionate = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = callous
					has_trait = sadistic
					has_trait = generous
				}
			}
		}
	}

	# Help them unsuit, for their loyalty
	option = {
		name = travel_events.4031.b
		add_courtier = scope:heartless_knight_scope
		root.current_travel_plan = {
			add_companion = scope:heartless_knight_scope
		}
		scope:heartless_knight_scope = {
			add_character_flag = {
				flag = blocked_from_leaving
				years = 10
			}
			if = {
				limit = {
					NOT = {
						can_be_combatant_based_on_gender_trigger = {
							ARMY_OWNER = root
						}
					}
				}
				custom_tooltip = ignores_gender_army_rules_tt
				add_character_modifier = ignores_gender_army_rules
			}
		}
		if = {
			limit = {
				can_employ_court_position_type = champion_court_position
			}
			court_position_grant_effect = {
				CANDIDATE = scope:heartless_knight_scope
				EMPLOYER = root
				POS = champion
			}
		}
		else_if = {
			limit = {
				can_employ_court_position_type = bodyguard_court_position
			}
			court_position_grant_effect = {
				CANDIDATE = scope:heartless_knight_scope
				EMPLOYER = root
				POS = bodyguard
			}
		}
		stress_impact = {
			callous = minor_stress_impact_gain
			sadistic = minor_stress_impact_gain
			paranoid = medium_stress_impact_gain
			greedy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = callous
					has_trait = sadistic
					has_trait = shy
					has_trait = paranoid
					has_trait = greedy
				}
			}
		}
	}

	# Cackle at them and walk away
	option = {
		name = travel_events.4031.c
		add_prestige = miniscule_prestige_gain
		if = {
			limit = {
				NOR = {
					has_trait = callous
					has_trait = sadistic
				}
			}
			stress_impact = {
				compassionate = minor_stress_impact_gain
				just = minor_stress_impact_gain
				forgiving = medium_stress_impact_gain
				greedy = medium_stress_impact_gain
			}
		}
		else = {
			stress_impact = {
				callous = medium_stress_impact_loss
				sadistic = medium_stress_impact_loss
				compassionate = medium_stress_impact_gain
				just = medium_stress_impact_gain
				forgiving = medium_stress_impact_gain
				greedy = medium_stress_impact_gain
			}
		}
		ai_chance = {
			base = 0
			modifier = {
				add = 100
				OR = {
					has_trait = callous
					has_trait = sadistic
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = forgiving
					has_trait = greedy
				}
			}
		}
	}
	after = {
		hidden_effect = {
			scope:heartless_knight_scope = {
				remove_character_flag = single_combat_duel_armor
				silent_disappearance_ai_if_created_effect = yes
			}
		}
	}
}

# You come across a noble being assaulted by a random animal
travel_events.4032 = {
	type = character_event
	title = travel_events.4032.t
	desc = travel_events.4032.desc
	theme = travel
	left_portrait = {
		character = root
	   	scripted_animation = duel_wield_weapon
	}
	right_portrait = {
		character = scope:cowardly_knight_scope
	   	animation = fear
	}
	lower_right_portrait = scope:entourage_helper
	cooldown = { years = 30 }
	trigger = {
		static_group_filter = {
			group = wizard_of_oz_group
			match = 0.1
		}
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		current_travel_plan = {
			any_entourage_character = {
				this != root
				is_ai = yes
				is_adult = yes
				is_healthy = yes
				can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_high }
		hidden_effect = {
			select_local_animal_effect = { TYPE = prowling } # Save scope to limit possible animals: any/big/small/dangerous/harmless/prowling
			create_character = {
				template = cowardly_knight
				location = root.location
				culture = root.location.county.culture
				faith = root.location.county.faith
				#Set up the scope
				save_scope_as = cowardly_knight_scope
				after_creation = {
					add_character_flag = created
				}
			}
			scope:cowardly_knight_scope ?= {
				give_nickname = nick_the_craven
				change_trait_rank = {
					trait = wounded
					rank = 1
					max = 3
				}
			}
			current_travel_plan = {
				ordered_entourage_character = {
					order_by = prowess
					limit = {
						this != root
						is_ai = yes
						is_adult = yes
						is_healthy = yes
						can_be_combatant_based_on_gender_trigger = { ARMY_OWNER = root }
					}
					save_scope_as = entourage_helper
				}
			}
		}
	}

	# Entourage member helps them
	option = {
		name = travel_events.4032.b
		#Lower personal risk, a bit lower reward
		scope:entourage_helper = {
			duel = {
				skill = prowess
				value = high_skill_rating
				50 = { # Your companion defeats the lion
					compare_modifier = {
						value = scope:duel_value
						multiplier = 0.5
					}
					if = {
						limit = {
							accolade ?= { is_accolade_active = yes }
						}
						accolade = { add_glory = minor_glory_gain }
					}
					root = {
						send_interface_toast = {
							title = travel.beat_back_lion
							left_icon = root
							add_prestige = medium_prestige_gain
						}
					}
				}
				50 = { # Your companion is mauled by a lion
					compare_modifier = {
						value = scope:duel_value
						multiplier = -0.5
					}
					if = {
						limit = {
							accolade ?= { is_accolade_active = yes }
						}
						accolade = { add_glory = minor_glory_gain }
					}
					send_interface_toast = {
						title = travel.mauled_by_animal
						left_icon = root
						increase_wounds_effect = { REASON = wild_animal }
						scope:cowardly_knight_scope = {
							death = {
								death_reason = death_wild_animal
							}
						}
					}
				}
			}
		}
		if = { #Always the pious thing to do, even if you failed.
			limit = { has_pious_pilgrimage_type_trigger = yes }
			pious_type_option_effect = yes
			
		}
		stress_impact = {
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
			brave = minor_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				add = -50
				has_trait = sadistic
			}
			modifier = {
				add = -25
				has_trait = brave
			}
		}
	}
	# Help them yourself
	option = {
		name = travel_events.4032.a
		duel = {
			skill = prowess
			value = high_skill_rating
			50 = { # You fight back the lion
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.beat_back_lion
					left_icon = root
					add_prestige = medium_prestige_gain
					add_courtier = scope:cowardly_knight_scope
					root.current_travel_plan = {
						add_companion = scope:cowardly_knight_scope
					}
					scope:cowardly_knight_scope = {
						add_opinion = {
							modifier = feast_saved_my_life_opinion
							target = root
						}
						add_character_flag = {
							flag = blocked_from_leaving
							years = 10
						}
						if = {
							limit = {
								NOT = {
									can_be_combatant_based_on_gender_trigger = {
										ARMY_OWNER = root
									}
								}
							}
							custom_tooltip = ignores_gender_army_rules_tt
							add_character_modifier = ignores_gender_army_rules
						}
					}
				}

			}
			50 = { # You are mauled by a lion
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.mauled_by_animal
					left_icon = root
					increase_wounds_effect = { REASON = wild_animal }
					scope:cowardly_knight_scope = {
						death = {
							death_reason = death_wild_animal
						}
					}
				}
			}
		}
		if = { #Always the pious thing to do, even if you failed.
			limit = { has_pious_pilgrimage_type_trigger = yes }
			pious_type_option_effect = yes
			
		}
		stress_impact = {
			craven = major_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				factor = 3
				has_trait = brave
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = callous
					has_trait = sadistic
					has_trait = craven
				}
			}
		}
	}

	# Just walk away
	option = {
		name = travel_events.4032.c
		scope:cowardly_knight_scope = {
			death = {
				death_reason = death_wild_animal
			}
		}
		stress_impact = {
			callous = medium_stress_impact_loss
			sadistic = medium_stress_impact_loss
			craven = medium_stress_impact_loss
			compassionate = minor_stress_impact_gain
			just = minor_stress_impact_gain
			brave = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				add = -50
				NOR = {
					has_trait = callous
					has_trait = sadistic
				}
			}
			modifier = {
				factor = 0.25
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = brave
				}
			}
		}
	}
	after = {
		scope:cowardly_knight_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# A witch who strangely isn't being burned
travel_events.4033 = {
	type = character_event
	title = travel_events.4033.t
	desc = {
		desc = travel_events.4033.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					has_trait = zealous
				}
				desc = travel_events.4033.desc.mid.zealous
			}
			desc = travel_events.4033.desc.mid
		}
	}
	theme = travel
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				has_trait = zealous
			}
			animation = personality_callous
		}
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:witch_scope
	   	animation = personality_compassionate
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_witch_trigger = no
		is_location_valid_for_travel_event_on_land = yes
		location = {
			county = {
				faith = { has_doctrine_parameter = witchcraft_accepted }
			}
		}
		OR = {
			faith = { has_doctrine_parameter = witchcraft_shunned }
			faith = { has_doctrine_parameter = witchcraft_illegal }
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		create_character = {
			template = witchy_template
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = witch_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:witch_scope = {
				add_trait = witch
			}
		}
	}
	# Debate the sinful nature of Witchcraft
	option = {
		name = travel_events.4033.a
		duel = {
			skill = learning
			target = scope:witch_scope
			5 = { # Critical success: the Witch becomes convinced of their own wickedness and joins you to repent
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = root
					right_icon = scope:witch_scope
					add_piety = medium_piety_gain
					scope:witch_scope = {
						set_character_faith = root.faith
						remove_trait = witch
					}
					add_courtier = scope:witch_scope
					root.current_travel_plan = {
						add_companion = scope:witch_scope
					}
				}
			}
			45 = { # You convince the peasantry that witchcraft is evil
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = root
					add_piety = medium_piety_gain
				}
			}
			45 = { # You fail to convince them
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.debate_lost
					left_icon = root
					add_piety = minor_piety_loss
				}
			}
		}
		stress_impact = {
			cynical = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					has_trait = cynical
					has_trait = arrogant
					has_trait = impatient
				}
			}
		}
	}

	# Teach me to be a Witch!
	option = {
		name = travel_events.4033.b
		trigger = {
			NOT = { has_trait = zealous }
			OR = { #have a witchy trait
				has_trait = cynical
				has_trait = deceitful
				has_trait = fickle
				has_trait = arbitrary
			}
		}
		give_witch_secret_or_trait_effect = yes
		add_piety = medium_piety_loss
		pay_short_term_gold = {
			target = scope:witch_scope
			gold = minor_gold_value
		}
		add_courtier = scope:witch_scope
		root.current_travel_plan = {
			add_companion = scope:witch_scope
		}
		set_relation_friend = scope:witch_scope
		hidden_effect = {
			scope:witch_scope = {
				add_character_flag = {
					flag = blocked_from_leaving
					years = 10
				}
			}
			set_variable = {
				name = discounted_faith_to_convert_to_var
				value = scope:witch_scope.faith
			}
		}
		custom_tooltip = cheaper_to_convert_to_witchy_faith_tt
		stress_impact = {
			base = medium_stress_impact_gain
			cynical = medium_stress_impact_loss
		}
		ai_chance = { # The AI should never do this
			base = 0
			modifier = { # Unless you're cynical/ambitious
				add = 50
				has_trait = cynical
			}
		}
	}

	# Pass them by
	option = {
		name = travel_events.4033.c
		stress_impact = {
			zealous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
		}
	}

	# Have them burned
	option = {
		name = travel_events.4033.d
		trigger = {
			NOT = { has_trait = cynical }
		}
		duel = {
			skill = diplomacy
			value = medium_skill_rating
			50 = { # You burn the witch
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.burned_witch
					left_icon = root
					add_piety = medium_piety_gain
					scope:witch_scope = {
						death = {
							killer = root
							death_reason = death_burned
						}
					}
				}
				hidden_effect = { # Get a cool witchy artifact!
					random_list = {
						95 = {

						}
						5 = {
							trigger_event = travel_events.4034
						}
					}
				}
			}
			50 = { # You get beaten up by the locals
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.beaten_by_locals
					left_icon = root
					add_prestige = medium_prestige_loss
				}
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_loss
			callous = medium_stress_impact_loss
			zealous = major_stress_impact_loss
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			calm = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = calm
				}
			}
		}
	}
	
	after = {
		scope:witch_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# A witchy artifact in the ashes
travel_events.4034 = {
	type = character_event
	title = travel_events.4034.t
	desc = {
		desc = travel_events.4034.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					exists = var:artifact_is_bones
				}
				desc = travel_events.4034.desc.mid.bones
			}
			desc = travel_events.4034.desc.mid
		}
		desc = travel_events.4034.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root
	   	animation = personality_rational
	}
	artifact = {
		target = scope:witchy_artifact_scope
		position = lower_left_portrait
	}
	override_background = { reference = battlefield }
	immediate = {
		random_list = {
			10 = {
				set_artifact_rarity_famed = yes
				create_artifact = {
					name = jewelled_slippers
					description = jewelled_slippers_description
					type = miscellaneous
					visuals = small_box
					template = witchy_shoes_template
					modifier = artifact_monthly_prestige_2_modifier
					modifier = artifact_stress_gain_4_modifier
					wealth = scope:wealth
					quality = scope:quality
					save_scope_as = witchy_artifact_scope
				}
			}
			10 = {
				set_artifact_rarity_masterwork = yes
				create_artifact = {
					name = witchcraft_book
					description = witchcraft_book_description
					type = miscellaneous
					visuals = book
					template = witchy_book_template
					modifier = artifact_health_gain_1_modifier
					modifier = artifact_learning_per_piety_level_modifier
					wealth = scope:wealth
					quality = scope:quality
					save_scope_as = witchy_artifact_scope
				}
			}
			10 = {
				set_artifact_rarity_masterwork = yes
				create_artifact = {
					name = witchy_holy_text_mid
					description = witchy_holy_text_mid_description
					type = miscellaneous
					visuals = book
					template = holy_book_template
					modifier = artifact_monthly_piety_1_modifier
					modifier = artifact_learning_per_piety_level_modifier
					wealth = scope:wealth
					quality = scope:quality
					save_scope_as = witchy_artifact_scope
				}
				scope:witchy_artifact_scope = {
					set_variable = {
						name = relic_religion
						value = scope:witch_scope.religion
					}
				}
			}
			10 = {
				set_artifact_rarity_masterwork = yes 
				create_artifact = {
					name = immaculate_witchy_bones
					description = immaculate_witchy_bones_description
					type = miscellaneous
					visuals = human_skull
					modifier = artifact_dread_gain_mult_2_modifier
					wealth = scope:wealth
					quality = scope:quality
					save_scope_as = witchy_artifact_scope
				}
				set_variable = {
					name = artifact_is_bones
					value = yes
					days = 7
				}
			}
		}
	}
	# Cool
	option = {
		name = travel_events.4034.a
	}
}

# You are a witch and you're being harassed by locals
travel_events.4035 = {
	type = character_event
	title = travel_events.4035.t
	desc = {
		desc = travel_events.4035.desc.intro
		first_valid = {
			triggered_desc = {
				trigger = {
					has_trait = zealous
				}
				desc = travel_events.4035.desc.mid.zealous
			}
			desc = travel_events.4035.desc.mid
		}
		desc = travel_events.4035.desc.outro
	}
	theme = travel
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				has_trait = zealous
			}
			animation = personality_callous
		}
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:zealous_priest_scope
	   	animation = personality_compassionate
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_witch_trigger = yes
		is_location_valid_for_travel_event_on_land = yes
		location = {
			county = {
				OR = {
					faith = { has_doctrine_parameter = witchcraft_shunned }
					faith = { has_doctrine_parameter = witchcraft_illegal }
				}
			}
		}
		faith = { has_doctrine_parameter = witchcraft_accepted }
	}
	immediate = {
		create_character = {
			template = priest_character_template
			location = root.location
			culture = root.location.county.culture
			faith = root.location.county.faith
			#Set up the scope
			save_scope_as = zealous_priest_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:zealous_priest_scope = {
				add_trait = zealous
			}
		}
	}
	# Debate the sinful nature of Witchcraft
	option = {
		name = travel_events.4035.a
		duel = {
			skill = learning
			target = scope:zealous_priest_scope
			5 = { # Critical success: the Witch becomes convinced of their own wickedness and joins you to repent
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = root
					right_icon = scope:zealous_priest_scope
					add_piety = medium_piety_gain
					scope:zealous_priest_scope = {
						set_character_faith = root.faith
						add_trait = witch
					}
					add_courtier = scope:zealous_priest_scope
					root.current_travel_plan = {
						add_companion = scope:zealous_priest_scope
					}
				}
			}
			45 = { # You convince the peasantry that witchcraft is good actually
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.debate_won
					left_icon = root
					add_piety = medium_piety_gain
				}
			}
			45 = { # You fail to convince them
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.debate_lost
					left_icon = root
					add_piety = minor_piety_loss
					add_stress = minor_stress_gain
					increase_wounds_effect = { REASON = burned_witch }
				}
			}
		}
		stress_impact = {
			shy = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
			arrogant = medium_stress_impact_gain
			impatient = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					has_trait = cynical
					has_trait = arrogant
					has_trait = impatient
				}
			}
		}
	}

	# I repent my witchy ways!
	option = {
		name = travel_events.4035.b
		remove_witch_secret_or_trait_effect = yes
		add_piety = medium_piety_loss
		pay_short_term_gold = {
			target = scope:zealous_priest_scope
			gold = minor_gold_value
		}
		add_courtier = scope:zealous_priest_scope
		root.current_travel_plan = {
			add_companion = scope:zealous_priest_scope
		}
		set_relation_friend = scope:zealous_priest_scope
		hidden_effect = {
			scope:zealous_priest_scope = {
				add_character_flag = {
					flag = blocked_from_leaving
					years = 10
				}
			}
			set_variable = {
				name = discounted_faith_to_convert_to_var
				value = scope:zealous_priest_scope.faith
			}
		}
		custom_tooltip = cheaper_to_convert_to_priest_faith_tt
		stress_impact = {
			base = medium_stress_impact_gain
			ambitious = minor_stress_impact_loss
			cynical = medium_stress_impact_loss
			content = major_stress_impact_gain
			zealous = massive_stress_impact_gain
		}
		ai_chance = { # The AI should never do this
			base = 0
			modifier = { # Unless you're cynical/ambitious
				add = 50
				OR = {
					has_trait = cynical
					has_trait = ambitious
				}
			}
			modifier = { # Unless you're cynical/ambitious
				factor = 0
				OR = {
					has_trait = content
					has_trait = zealous
				}
			}
		}
	}

	# Run away!
	option = {
		name = travel_events.4035.c
		stress_impact = {
			zealous = medium_stress_impact_gain
			brave = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
		}
	}

	# Fight em
	option = {
		name = travel_events.4035.d
		if = {
			limit = {
				exists = root.current_travel_plan.travel_leader
			}
			root.current_travel_plan.travel_leader = {
				duel = {
					skill = prowess
					target = scope:zealous_priest_scope
					50 = { # You beat up the witch hater
						compare_modifier = {
							value = scope:duel_value
							multiplier = 0.5
						}
						root = {
							send_interface_toast = {
								title = travel.beat_zealot
								left_icon = root
								add_piety = medium_piety_gain
								add_prestige = minor_prestige_gain
								scope:zealous_priest_scope = {
									increase_wounds_effect = {
										REASON = fight
									}
								}
							}
						}
					}
					50 = { # You get beaten up by the locals
						compare_modifier = {
							value = scope:duel_value
							multiplier = -0.5
						}
						root = {
							send_interface_toast = {
								title = travel.beaten_by_locals
								left_icon = root
								prev = {
									increase_wounds_effect = { REASON = fight }
								}
								add_prestige = medium_prestige_loss
							}
						}
					}
				}
			}
		}
		else = {
			duel = {
				skill = prowess
				target = scope:zealous_priest_scope
				50 = { # You beat up the witch hater
					compare_modifier = {
						value = scope:duel_value
						multiplier = 0.5
					}
					root = {
						send_interface_toast = {
							title = travel.beat_zealot
							left_icon = root
							add_piety = medium_piety_gain
							add_prestige = minor_prestige_gain
							scope:zealous_priest_scope = {
								increase_wounds_effect = {
									REASON = fight
								}
							}
						}
					}
				}
				50 = { # You get beaten up by the locals
					compare_modifier = {
						value = scope:duel_value
						multiplier = -0.5
					}
					root = {
						send_interface_toast = {
							title = travel.beaten_by_locals
							left_icon = root
							prev = {
								increase_wounds_effect = { REASON = fight }
							}
							add_prestige = medium_prestige_loss
						}
					}
				}
			}
		}
		stress_impact = {
			sadistic = medium_stress_impact_loss
			callous = medium_stress_impact_loss
			zealous = minor_stress_impact_loss
			compassionate = major_stress_impact_gain
			just = major_stress_impact_gain
			calm = major_stress_impact_gain
			craven = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = calm
					has_trait = craven
				}
			}
		}
	}
	
	after = {
		scope:zealous_priest_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# Caravaneers want to sell you some cool stuff
travel_events.4036 = { 
	type = character_event
	title = travel_events.4036.t
	desc = travel_events.4036.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:merchant_character_scope
	   	animation = admiration
	}
	artifact = {
		target = scope:merchant_artifact_scope
		position = lower_left_portrait
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		location.culture = {
			has_cultural_tradition = tradition_caravaneers
		}
	}
	immediate = {
		create_character = {
			template = generic_peasant_character
			location = root.location
			culture = root.location.culture
			faith = root.location.faith
			#Set up the scope
			save_scope_as = merchant_character_scope
			after_creation = {
				add_character_flag = created
			}
		}
		root.location.kingdom = { save_scope_as = kingdom_scope }
		scope:merchant_character_scope = {
			hidden_effect = {
				add_trait = avaricious
				random_list = {
					10 = {
						set_artifact_rarity_masterwork = yes
						create_artifact = {
							name = mysterious_lamp
							description = mysterious_lamp_description
							type = goblet
							visuals = riches
							modifier = artifact_monthly_prestige_2_modifier
							modifier = artifact_court_grandeur_baseline_add_5_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
					}
					10 = {
						set_artifact_rarity_masterwork = yes
						create_artifact = {
							name = mysterious_puzzle
							description = mysterious_puzzle_description
							type = miscellaneous
							visuals = small_box
							template = mysterious_puzzle_template
							modifier = artifact_learn_language_scheme_phase_duration_add_2_modifier
							modifier = artifact_learning_per_stress_level_2_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
					}
					5 = {
						set_artifact_rarity_famed = yes 
						create_artifact = {
							name = lunchbox
							description = lunchbox_description
							type = miscellaneous
							visuals = small_box
							modifier = artifact_negate_health_penalty_add_2_modifier
							modifier = artifact_stress_gain_4_modifier
							wealth = scope:wealth
							quality = scope:quality
							save_scope_as = merchant_artifact_scope
						}
					}
				}
			}
		}
	}
	# Buy the artifact!
	option = {
		name = travel_events.4036.a
		if = {
			limit = {
				scope:merchant_artifact_scope = {
					rarity = famed
				}
			}
			remove_short_term_gold = major_gold_value
		}
		else = {
			remove_short_term_gold = medium_gold_value
		}
		scope:merchant_artifact_scope = { set_owner = root }
		stress_impact = {
			greedy = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = greedy
					has_trait = callous
					has_trait = sadistic
				}
			}
			modifier = {
				factor = 0
				short_term_gold <= major_gold_value
			}
		}
	}
	# Attempt to steal the artifact
	option = {
		name = travel_events.4036.b
		duel = {
			skill = intrigue
			value = very_high_skill_rating
			50 = { # You beat up the fisherman
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.stole_artifact
					left_icon = root
					scope:merchant_artifact_scope = { set_owner = root }
				}
			}
			50 = { # You get caught and exposed as a dirty thief!
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.caught_red_handed
					left_icon = root
					increase_wounds_no_death_effect = { REASON = fight }
					add_prestige = major_prestige_loss
					add_character_modifier = {
						modifier = caught_thief_modifier
						years = 5
					}
				}
			}
		}
		stress_impact = {
			sadistic = minor_stress_impact_loss
			callous = minor_stress_impact_loss
			base = medium_stress_impact_gain
			compassionate = medium_stress_impact_gain
			just = medium_stress_impact_gain
			forgiving = medium_stress_impact_gain
			craven = medium_stress_impact_gain
			generous = major_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				add = 50
				OR = {
					has_trait = sadistic
					has_trait = callous
				}
			}
			modifier = {
				factor = 0
				OR = {
					has_trait = compassionate
					has_trait = just
					has_trait = forgiving
					has_trait = generous
					has_trait = craven
				}
			}
		}
	}
	# Haggle the price
	option = {
		name = travel_events.4036.d
		duel = {
			skill = stewardship
			target = scope:merchant_character_scope
			50 = { # You pay a lower price
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.haggled_for_artifact
					left_icon = root
					scope:merchant_artifact_scope = { set_owner = root }
					if = {
						limit = {
							scope:merchant_artifact_scope = {
								rarity = famed
							}
						}
						remove_short_term_gold = medium_gold_value
					}
					else = {
						remove_short_term_gold = minor_gold_value
					}
				}
			}
			50 = { # You pay a higher price
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.failed_to_haggle
					left_icon = root
					scope:merchant_artifact_scope = { set_owner = root }
					if = {
						limit = {
							scope:merchant_artifact_scope = {
								rarity = famed
							}
						}
						remove_short_term_gold = massive_gold_value
					}
					else = {
						remove_short_term_gold = major_gold_value
					}
				}
			}
		}
		stress_impact = {
			shy = medium_stress_impact_gain
			deceitful = medium_stress_impact_gain
			honest = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					has_trait = deceitful
					has_trait = honest
				}
			}
			modifier = {
				factor = 0
				short_term_gold <= major_gold_value
			}
		}
	}
	# Just go by without buying anything
	option = {
		name = travel_events.4036.c
		ai_chance = {
			base = 50
			modifier = {
				add = 100
				gold <= massive_gold_value
			}
		}
	}
	after = {
		hidden_effect = {
			if = {
				limit = {
					scope:merchant_artifact_scope.artifact_owner != root
				}
				destroy_artifact = scope:merchant_artifact_scope
			}
			scope:merchant_character_scope = {
				if = {
					limit = {
						root = { is_ai = yes }
					}
					silent_disappearance_effect = yes
				}
			}
		}
	}
}

# You enter a place that is syncretic with your faith
travel_events.4037 = { 
	type = character_event
	title = travel_events.4037.t
	desc = travel_events.4037.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:fanboy_character_scope
	   	animation = admiration
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		location.faith != root.faith
		OR = {
			AND = {
				religion = { is_in_family = rf_eastern }
				location.faith = { has_doctrine_parameter = eastern_syncretic_actor_opinion_active }
			}
			AND = {
				faith = { has_doctrine_parameter = unreformed }
				location.faith = { has_doctrine_parameter = unreformed_syncretic_actor_opinion_active }
			}
			AND = {
				OR = { religion = religion:eastern_orthodox_religion religion = religion:catholic_religion religion = religion:protestant_religion }
				location.faith = { has_doctrine_parameter = christian_syncretic_actor_opinion_active }
			}
			AND = {
				religion = religion:islam_religion
				location.faith = { has_doctrine_parameter = islamic_syncretic_actor_opinion_active }
			}
			AND = {
				religion = religion:judaism_religion
				location.faith = { has_doctrine_parameter = jewish_syncretic_actor_opinion_active }
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		create_character = {
			template = generic_peasant_character
			location = root.location
			culture = root.location.culture
			faith = root.location.faith
			#Set up the scope
			save_scope_as = fanboy_character_scope
			after_creation = {
				add_character_flag = created
			}
		}
	}
	# Ah, let me teach you all about our lord and savior
	option = {
		name = travel_events.4037.a
		duel = {
			skill = learning
			value = medium_skill_rating
			50 = { # You perform a good cermon
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.good_cermon
					left_icon = root
					add_piety = medium_piety_gain
				}
			}
			50 = { # You perform a mediocre cermon
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.bad_cermon
					left_icon = root
					add_piety = minor_piety_gain
				}
			}
		}
		if = {
			limit = {
				has_trait = lifestyle_mystic
			}
			add_trait_xp = {
				trait = lifestyle_mystic
				value = lifestyle_mystic_xp_gain_minor_value
			}
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			lazy = medium_stress_impact_gain
			shy = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = lazy
					has_trait = shy
					has_trait = callous
					has_trait = sadistic
					has_trait = cynical
				}
			}
		}
	}
	# I'm more interested in hearing about your faith!
	option = {
		name = travel_events.4037.b
		add_courtier = scope:fanboy_character_scope
		root.current_travel_plan = {
			add_companion = scope:fanboy_character_scope
		}
		set_relation_friend = {
			reason = friend_respected_other_religion
			target = scope:fanboy_character_scope
		}
		hidden_effect = {
			scope:fanboy_character_scope = {
				add_character_flag = {
					flag = blocked_from_leaving
					years = 10
				}
			}
			set_variable = {
				name = discounted_faith_to_convert_to_var
				value = scope:fanboy_character_scope.faith
			}
		}
		custom_tooltip = cheaper_to_convert_to_fanboy_faith_tt
		stress_impact = {
			shy = medium_stress_impact_gain
			callous = medium_stress_impact_gain
			sadistic = medium_stress_impact_gain
			zealous = medium_stress_impact_gain
			arrogant = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					has_trait = callous
					has_trait = sadistic
					has_trait = zealous
					has_trait = arrogant
				}
			}
		}
	}
	# Eww go away, syncretic weirdos
	option = {
		name = travel_events.4037.c
		stress_impact = {
			base = medium_stress_impact_gain
			zealous = medium_stress_impact_loss
			gregarious = minor_stress_impact_gain
			compassionate = medium_stress_impact_gain
			arrogant = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				factor = 0
				OR = {
					has_trait = gregarious
					has_trait = compassionate
					has_trait = arrogant
				}
			}
		}
	}
	
	after = {
		scope:fanboy_character_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}

# You enter a province which your faith is syncretic with
travel_events.4038 = { 
	type = character_event
	title = travel_events.4038.t
	desc = travel_events.4038.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = personality_rational
	}
	right_portrait = {
		character = scope:zealous_priest_scope
	   	animation = admiration
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		location = {
			# Make sure this is a church held by a theocratic or lay clergy character
			has_holding = yes
			has_holding_type = church_holding
			barony = { has_wrong_holding_type = no }
			# Make sure you don't bother player lay clergy characters
			barony.holder = { is_ai = yes }
			barony.holder != root
		}
		OR = {
			AND = {
				faith = { has_doctrine_parameter = eastern_syncretic_actor_opinion_active }
				location.religion = { is_in_family = rf_eastern }
			}
			AND = {
				faith = { has_doctrine_parameter = unreformed_syncretic_actor_opinion_active }
				location.faith = { has_doctrine_parameter = unreformed }
			}
			AND = {
				faith = { has_doctrine_parameter = christian_syncretic_actor_opinion_active }
				OR = { location.religion = religion:eastern_orthodox_religion location.religion = religion:catholic_religion location.religion = religion:protestant_religion }
			}
			AND = {
				faith = { has_doctrine_parameter = islamic_syncretic_actor_opinion_active }
				location.religion = religion:islam_religion
			}
			AND = {
				faith = { has_doctrine_parameter = jewish_syncretic_actor_opinion_active }
				location.religion = religion:judaism_religion
			}
		}
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		location.barony.holder = { save_scope_as = zealous_priest_scope }
	}
	# Let me attend a sermon!
	option = {
		name = travel_events.4038.a
		set_relation_friend = {
			reason = friend_respected_other_religion
			target = scope:zealous_priest_scope
		}
		hidden_effect = {
			set_variable = {
				name = discounted_faith_to_convert_to_var
				value = scope:zealous_priest_scope.faith
			}
		}
		custom_tooltip = cheaper_to_convert_to_priest_faith_tt
		add_learning_lifestyle_xp = minor_lifestyle_xp
		if = {
			limit = {
				has_trait = lifestyle_mystic
			}
			add_trait_xp = {
				trait = lifestyle_mystic
				value = lifestyle_mystic_xp_gain_minor_value
			}
		}
		stress_impact = {
			shy = medium_stress_impact_gain
			lazy = medium_stress_impact_gain
			cynical = medium_stress_impact_gain
			zealous = medium_stress_impact_gain
			arrogant = major_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = shy
					has_trait = arrogant
					has_trait = lazy
					has_trait = cynical
					has_trait = zealous
					has_trait = arrogant
				}
			}
		}
	}
	# Perhaps they would be interested in our perspective
	option = {
		name = travel_events.4038.b
		duel = {
			skill = learning
			target = scope:zealous_priest_scope
			50 = { # You perform a good cermon
				compare_modifier = {
					value = scope:duel_value
					multiplier = 0.5
				}
				send_interface_toast = {
					title = travel.good_cermon
					left_icon = root
					add_piety = medium_piety_gain
					add_learning_lifestyle_perk_points = 1
				}
			}
			50 = { # You perform a mediocre cermon
				compare_modifier = {
					value = scope:duel_value
					multiplier = -0.5
				}
				send_interface_toast = {
					title = travel.bad_cermon
					left_icon = root
					add_piety = minor_piety_loss
					if = {
						limit = {
							faith = { has_doctrine_parameter = eastern_syncretic_actor_opinion_active }
						}
						add_character_modifier = {
							modifier = offended_eastern_modifier
							years = 5
						}
					}
					else_if = {
						limit = {
							faith = { has_doctrine_parameter = unreformed_syncretic_actor_opinion_active }
						}
						add_character_modifier = {
							modifier = offended_pagan_modifier
							years = 5
						}
					}
					else_if = {
						limit = {
							faith = { has_doctrine_parameter = christian_syncretic_actor_opinion_active }
						}
						add_character_modifier = {
							modifier = offended_christian_modifier
							years = 5
						}
					}
					else_if = {
						limit = {
							faith = { has_doctrine_parameter = islamic_syncretic_actor_opinion_active }
						}
						add_character_modifier = {
							modifier = offended_muslim_modifier
							years = 5
						}
					}
					else_if = {
						limit = {
							faith = { has_doctrine_parameter = jewish_syncretic_actor_opinion_active }
						}
						add_character_modifier = {
							modifier = offended_jewish_modifier
							years = 5
						}
					}
				}
			}
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			lazy = medium_stress_impact_gain
			shy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = arrogant
					has_trait = lazy
					has_trait = shy
				}
			}
		}
	}
	# Eww go away, weirdos
	option = {
		name = travel_events.4038.c
		stress_impact = {
			base = medium_stress_impact_gain
			zealous = medium_stress_impact_loss
			gregarious = minor_stress_impact_gain
			compassionate = medium_stress_impact_gain
			arrogant = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				factor = 0
				OR = {
					has_trait = gregarious
					has_trait = compassionate
					has_trait = arrogant
				}
			}
		}
	}
}

# You enter a ritual hospitality province and are offered a rest
travel_events.4039 = { 
	type = character_event
	title = travel_events.4039.t
	desc = travel_events.4039.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = stress
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		faith = { NOT = { has_doctrine_parameter = host_honored_guests_active } }
		location.faith = { has_doctrine_parameter = host_honored_guests_active }
	}

	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_medium }
		mp_delay_travel_plan = { DAYS = 90 }
	}

	# Perhaps a rest for a few days would be nice...
	option = {
		name = travel_events.4039.a
		current_travel_plan = {
			delay_travel_plan = {
				weeks = 3
				add = yes
			}
		}
		add_stress = medium_stress_loss
		add_character_modifier = {
			modifier = pampered_by_locals_modifier
			years = 5
		}
		stress_impact = {
			lazy = medium_stress_impact_loss
			diligent = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = { # The AI should avoid unnecessary delays
				factor = 0
				NOT = { has_trait = lazy }
			}
		}
	}
	# No, we *must* keep going!
	option = {
		name = travel_events.4039.b
		stress_impact = {
			lazy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 50
			modifier = {
				factor = 0
				has_trait = lazy
			}
		}
	}
	after = {
		mp_resume_travel_plan = yes
	}
}

# You meet a xenophile character who wants to learn about your culture
travel_events.4040 = { 
	type = character_event
	title = travel_events.4040.t
	desc = travel_events.4040.desc
	theme = travel
	left_portrait = {
		character = root 
	   	animation = admiration
	}
	right_portrait = {
		character = scope:fanboy_character_scope 
	   	animation = ecstasy
	}
	cooldown = { years = 10 }
	trigger = {
		is_available_travelling = yes
        is_playable_character = yes
		is_location_valid_for_travel_event_on_land = yes
		culture = { NOT = { has_cultural_tradition = tradition_xenophilic } }
		location.culture = { has_cultural_tradition = tradition_xenophilic }
		NOT = { knows_language_of_culture = root.location.culture }
	}
	immediate = {
		wayfarer_storyteller_fame_effect = { VALUE = roaming_reward_fame_small }
		create_character = {
			template = loyal_fan_character
			location = root.location
			culture = root.location.culture
			faith = root.location.faith
			#Set up the scope
			save_scope_as = fanboy_character_scope
			after_creation = {
				add_character_flag = created
			}
		}
		hidden_effect = {
			scope:fanboy_character_scope = {
				learn_language_of_culture = root.culture
			}
		}
	}
	# My culture *is* kinda great tbh
	option = {
		name = travel_events.4040.a
		add_prestige = minor_prestige_gain
		stress_impact = {
			arrogant = medium_stress_impact_loss
			humble = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				has_trait = humble
			}
		}
	}
	# Come, let's learn about each other!
	option = {
		name = travel_events.4040.b
		trigger = {
			can_start_scheme = {
				type = learn_language
				target_character = scope:fanboy_character_scope
			}
		}
		start_scheme = {
			type = learn_language
			target_character = scope:fanboy_character_scope
		}
		custom_tooltip = learn_language_with_bonus_tt
		hidden_effect = {
			random_scheme = {
				type = learn_language
				limit = {
					scheme_target_character = scope:fanboy_character_scope
				}
				add_scheme_modifier = { type = xenophile_bonus_modifier }
			}
		}
		stress_impact = {
			lazy = medium_stress_impact_gain
			shy = medium_stress_impact_gain
			arrogant = medium_stress_impact_gain
		}
		ai_chance = {
			base = 100
			modifier = {
				factor = 0
				OR = {
					has_trait = lazy
					has_trait = shy
					has_trait = arrogant
				}
			}
		}
	}
	after = {
		scope:fanboy_character_scope = {
			silent_disappearance_ai_if_created_effect = yes
		}
	}
}
