namespace = ep3_camp_party

################################
# Maintenance
################################

# START EVENT
ep3_camp_party.0001 = {
	type = activity_event
	title = ep3_camp_party.0001.t
	desc = ep3_camp_party.0001.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	center_portrait = {
		character = root
		animation = drink
	}

	option = {
		name = ep3_camp_party.0001.a
		ai_chance = {
			base = 100
		}
	}
}

# CONCLUSION EVENT
ep3_camp_party.0009 = {
	type = activity_event
	title = ep3_camp_party.0009.t
	desc = ep3_camp_party.0009.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	center_portrait = {
		character = root
		animation = ecstasy
	}

	immediate = {
		#Reward effects
		camp_party_completed_log_entry_effect = yes
	}

	option = {
		name = ep3_camp_party.0009.a
		ai_chance = {
			base = 100
		}
	}
}

################################
# Events
################################
# ep3_camp_party.1000 - Listen to a story at the campfire
# ep3_camp_party.1005 - Someone wanders off and gets lost
# ep3_camp_party.1010 - Solve a riddle
# ep3_camp_party.1015 - An archery contest breaks out
# ep3_camp_party.1020 - A local turns up
# ep3_camp_party.1025 - Bond with your intent target
# ep3_camp_party.1030 - Relieve stress - intent event
# ep3_camp_party.1035 - Fell a tree for more firewood
# ep3_camp_party.1040 - Encounter a wandering merchant
# 

# Listen to a story at the campfire
ep3_camp_party.1000 = { 
	type = activity_event
	title = ep3_camp_party.1000.t
	desc = ep3_camp_party.1000.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = drink
	}
	right_portrait = {
		character = scope:storyteller
		animation = storyteller
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		involved_activity = {
			any_attending_character = {
				count > 3 #Make sure there's actually a 'crowd' to listen
				this != root
				is_ai = yes
				is_adult = yes
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
			random_attending_character = {
				limit = {
					this != root
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = storyteller
			}
		}
	}

	#If we rip some of these tables apart...
	option = { 
		name = ep3_camp_party.1000.a

		trigger = {
			involved_activity = {
				has_activity_option = {
					category = camp_party_option_food
					option = camp_party_food_lavish
				}
			}
		}

		add_internal_flag = special

		flavor = ep3_camp_party.1000.a.tt

		domicile = {
			change_provisions = medium_provisions_loss
		}

		create_artifact = {
			name = ep3_makeshift_mace
			description = ep3_makeshift_mace_description
			type = mace
			visuals = mace
			modifier = artifact_prowess_4_modifier
			modifier = artifact_mercenary_hire_cost_mult_2_modifier
			modifier = artifact_men_at_arms_maintenance_8_modifier
			modifier = artifact_monthly_prestige_penalty_modifier
			creator = root
			rarity = common
			save_scope_as = makeshift_mace
		}

		stress_impact = {
			wrathful = miniscule_stress_impact_loss
			brave = miniscule_stress_impact_loss
			ambitious = miniscule_stress_impact_loss
			diligent = miniscule_stress_impact_loss
			calm = minor_stress_impact_gain
			content = minor_stress_impact_gain
			lazy = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_boldness = 1
			}
		}
	}

	#Oh yeah? Well I have a story too!
	option = { 
		name = ep3_camp_party.1000.b

		trigger = {
			OR = {
				has_trait = lifestyle_poet
				has_trait = lifestyle_traveler
			}
		}

		duel = {
			skill = diplomacy
			value = medium_skill_rating
			# Success: Your story is believed
			50 = {
				desc = ep3_camp_party.1000.b.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1000.b.success
					left_icon = root

					add_prestige = medium_prestige_gain
					involved_activity = {
						if = {
							limit = {
								any_attending_character = {
									NOR = {
										this = scope:storyteller
										this = root
									}
								}
							}
							every_attending_character = {
								custom = custom.every_attending_character
								limit = {
									NOR = {
										this = scope:storyteller
										this = root
									}
								}
								add_opinion = {
									target = root
									modifier = impressed_opinion
									opinion = 10
								}
							}
						}
					}
				}
			}
			# Failure
			50 = {
				desc = ep3_camp_party.1000.b.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1000.b.failure
					left_icon = root

					add_prestige = medium_prestige_loss
				}
			}
		}

		random = {
			chance = 50

			send_interface_toast = {
				type = event_toast_effect_bad
				title = ep3_camp_party.1000.b.tt
				left_icon = root
				right_icon = scope:storyteller

				reverse_add_opinion = {
					target = scope:storyteller
					modifier = upstaged_opinion
					opinion = -25
				}
			}
		}

		stress_impact = {
			arrogant = minor_stress_impact_loss
			humble = medium_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = -0.5
				ai_compassion = -1
			}
		}
	}

	#Another!
	option = { 
		name = ep3_camp_party.1000.c

		scope:storyteller = {
			duel = {
				skill = diplomacy
				value = medium_skill_rating
				# Success: Their next story is great
				50 = {
					desc = ep3_camp_party.1000.c.success
					show_chance = yes

					compare_modifier = {
						value = scope:duel_value
						multiplier = 3.5
						min = -49
					}

					send_interface_toast = {
						title = ep3_camp_party.1000.c.success
						left_icon = root
						right_icon = scope:storyteller

						involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
						custom_tooltip = camp_party_tt_positive_medium

						progress_towards_friend_effect = {
							REASON = friend_encouraged_tale
							CHARACTER = root
							OPINION = default_friend_opinion
						}
					}
				}
				# Failure: Their next story is a damp squib
				50 = {
					desc = ep3_camp_party.1000.c.failure
					show_chance = yes

					compare_modifier = {
						value = scope:duel_value
						multiplier = -3.5
						min = -49
					}

					send_interface_toast = {
						title = ep3_camp_party.1000.c.failure
						left_icon = root
						right_icon = scope:storyteller

						add_prestige = medium_prestige_loss
					}
				}
			}
		}

		stress_impact = {
			humble = miniscule_stress_impact_loss
			gregarious = miniscule_stress_impact_loss
			shy = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
			}
		}
	}

	#A fine tale.
	option = { 
		name = ep3_camp_party.1000.d

		scope:activity = { activity_special_type_progression_variable = { NUM = 10 } }
		custom_tooltip = camp_party_tt_positive_tiny

		stress_impact = {
			patient = minor_stress_impact_loss
			impatient = medium_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1 
			}
		}
	}
}

# Someone wanders off and gets lost
ep3_camp_party.1005 = { 
	type = activity_event
	title = ep3_camp_party.1005.t
	desc = ep3_camp_party.1005.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = stress
	}
	right_portrait = {
		character = scope:attendee
		animation = worry
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		involved_activity = {
			any_attending_character = {
				count > 2 #Requires you plus two others
				this != root
				is_ai = yes
				is_adult = yes
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
			random_attending_character = {
				limit = {
					this != root
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = attendee
			}
			random_attending_character = {
				limit = {
					NOR = {
						this = root
						this = scope:attendee
					}
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = wanderer
			}
		}
	}

	#Chuck some more wood on the fire to guide them home
	option = { 
		name = ep3_camp_party.1005.a

		trigger = {
			involved_activity = {
				OR = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_simple
					}
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_lavish
					}
				}
			}
		}

		add_internal_flag = special

		domicile = {
			change_provisions = minor_provisions_loss
		}

		reverse_add_opinion = {
			target = scope:wanderer
			modifier = grateful_opinion
			opinion = 20
		}

		if = {
			limit = {
				involved_activity = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_simple
					}
				}
			}
			random = {
				chance = 50

				custom_tooltip = ep3_camp_party.1005.a.tt.positive
				trigger_event = ep3_camp_party.1006
			}
		}
		if = { #Boost chance for lavish
			limit = {
				involved_activity = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_lavish
					}
				}
			}
			random = {
				chance = 80

				custom_tooltip = ep3_camp_party.1005.a.tt.positive
				trigger_event = ep3_camp_party.1006
			}
		}

		stress_impact = {
			calm = miniscule_stress_impact_loss
			compassionate = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
			}
		}
	}

	#Search for them
	option = { 
		name = ep3_camp_party.1005.b

		duel = {
			skills = { learning martial }
			value = medium_skill_rating

			# You find them
			50 = {
				desc = ep3_camp_party.1005.b.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1005.b.success
					left_icon = root
					right_icon = scope:wanderer

					if = {
						limit = {
							NOT = {
								has_trait = lifestyle_hunter
							}
						}
						add_trait = lifestyle_hunter
					}

					add_trait_xp = {
						trait = lifestyle_hunter
						track = hunter
						value = { 3 8 }
					}

					reverse_add_opinion = {
						target = scope:wanderer
						modifier = grateful_opinion
						opinion = 15
					}

					scope:activity = { activity_special_type_progression_variable = { NUM = 15 } }
					custom_tooltip = camp_party_tt_positive_medium
				}
			}
			# You find some berries
			50 = {
				desc = ep3_camp_party.1005.b.neutral
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1005.b.neutral
					left_icon = root
					right_icon = scope:attendee

					domicile = {
						change_provisions = microscopic_provisions_gain
					}

					scope:wanderer = {
						random = {
							chance = 35
							add_trait = lifestyle_gardener
						}
					}
				}
			}
			# You don't find them, and have a tangle with a wild animal
			50 = {
				desc = ep3_camp_party.1005.b.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1005.b.failure
					left_icon = root
					right_icon = scope:wanderer

					add_prestige = miniscule_prestige_loss
					increase_wounds_no_death_effect = { REASON = wild_animal }
				}
			}
		}

		stress_impact = {
			arrogant = miniscule_stress_impact_loss
			humble = minor_stress_impact_gain
			diligent = miniscule_stress_impact_loss
			lazy = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
				ai_energy = 1
			}
		}
	}

	#They'll come back, no worries
	option = { 
		name = ep3_camp_party.1005.c

		random_list = {
			#They find their way back
			50 = {
				desc = ep3_camp_party.1005.c.success

				send_interface_toast = {
					title = ep3_camp_party.1005.c.success
					left_icon = root
					right_icon = scope:wanderer

					scope:wanderer = {
						add_stress = miniscule_stress_loss
					}

					scope:activity = { activity_special_type_progression_variable = { NUM = 10 } }
					custom_tooltip = camp_party_tt_positive_tiny
				}
			}
			#They find their way back, wounded
			50 = {
				desc = ep3_camp_party.1005.c.failure

				send_interface_toast = {
					title = ep3_camp_party.1005.c.failure
					left_icon = root
					right_icon = scope:wanderer

					scope:wanderer = {
						increase_wounds_no_death_effect = { REASON = wild_animal }
					}
				}
			}
			# They are lost forever
			10 = {
				desc = ep3_camp_party.1005.c.critfailure

				send_interface_toast = {
					title = ep3_camp_party.1005.c.critfailure
					left_icon = root
					right_icon = scope:attendee

					scope:wanderer = {
						move_to_pool = yes
					}
				}
			}
		}

		stress_impact = {
			lazy = miniscule_stress_impact_loss
			diligent = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = -1
				ai_energy = -1
			}
		}
	}
}

# Followup to 1005: some wanderers join!
ep3_camp_party.1006 = { 
	type = activity_event
	title = ep3_camp_party.1006.t
	desc = ep3_camp_party.1006.desc
	theme = landless_adventurer
	left_portrait = {
		character = root
		animation = ecstasy
	}
	right_portrait = {
		character = scope:newcomer
		animation = obsequious_bow
	}

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
		}
		if = {
			limit = {
				any_pool_character = {
					province = root.location
					is_physically_able_ai_adult = yes
					has_no_particular_noble_roots_trigger = yes
				}
			}
			random_pool_character = {
				province = root.location
				limit = {
					is_physically_able_ai_adult = yes
					has_no_particular_noble_roots_trigger = yes
				}
				save_scope_as = newcomer
			}
		}
		else = {
			create_character = {
				template = bandit_character
				culture = location.culture
				faith = location.faith
				location = root.location
				save_scope_as = newcomer
			}
		}
		hidden_effect = {
			scope:newcomer = {
				add_trait = lifestyle_physician
				add_trait_xp = {
					trait = lifestyle_physician
					value = {
						integer_range = {
							min = 50
							max = 100
						}
					}
				}
				add_trait = lifestyle_traveler
				add_trait_xp = {
					trait = lifestyle_traveler
					track = danger
					value = {
						integer_range = {
							min = 25
							max = 75
						}
					}
				}
			}
		}
		domicile = {
			change_provisions = miniscule_provisions_gain
		}
	}

	#Join, and stay!
	option = { 
		name = ep3_camp_party.1006.a

		scope:newcomer = {
			add_to_activity = scope:activity
		}
		add_courtier = scope:newcomer

		scope:activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium

		stress_impact = {
			calm = miniscule_stress_impact_loss
			compassionate = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
			}
		}
	}

	#Come join the revelries, and teach me how you survive in the wilderness
	option = { 
		name = ep3_camp_party.1006.b

		scope:newcomer = {
			add_to_activity = scope:activity
		}

		scope:activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium

		if = {
			limit = {
				NOT = {
					has_trait = lifestyle_physician
				}
			}
			add_trait = lifestyle_physician
		}

		add_trait_xp = {
			trait = lifestyle_physician
			value = { 15 30 }
		}

		stress_impact = {
			arrogant = miniscule_stress_impact_loss
			humble = minor_stress_impact_gain
			diligent = miniscule_stress_impact_loss
			lazy = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
				ai_energy = 1
			}
		}
	}
}

# Solve a riddle
ep3_camp_party.1010 = { 
	type = activity_event
	title = ep3_camp_party.1010.t
	desc = {
		desc = ep3_camp_party.1010.desc
		random_valid = {
			triggered_desc = {
				trigger = { has_character_flag = 1010_first_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_01
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_second_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_02
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_third_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_03
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_fourth_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_04
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_fifth_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_05
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_sixth_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_06
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_seventh_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_07
			}
			triggered_desc = {
				trigger = { has_character_flag = 1010_eighth_riddle_answer }
				desc = ep3_camp_party.1010.desc_riddle_08
			}
		}
		desc = ep3_camp_party.1010.desc_outro
	}
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = thinking
	}
	right_portrait = {
		character = scope:riddler
		animation = drink
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		involved_activity = {
			any_attending_character = {
				count > 1
				this != root
				is_ai = yes
				is_adult = yes
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
			random_attending_character = {
				limit = {
					this != root
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = riddler
			}
		}
		random_list = {
			1 = { add_character_flag = 1010_first_riddle_answer }
			1 = { add_character_flag = 1010_second_riddle_answer }
			1 = { add_character_flag = 1010_third_riddle_answer }
			1 = { add_character_flag = 1010_fourth_riddle_answer }
			1 = { add_character_flag = 1010_fifth_riddle_answer }
			1 = { add_character_flag = 1010_sixth_riddle_answer }
			1 = { add_character_flag = 1010_seventh_riddle_answer }
			1 = { add_character_flag = 1010_eighth_riddle_answer }
		}
	}

	#I'm big brained and know the answer
	option = { 
		name = ep3_camp_party.1010.a

		trigger = {
			OR = {
				has_trait = intellect_good
				has_trait = shrewd
			}
		}

		reverse_add_opinion = {
			target = scope:riddler
			modifier = disappointed_opinion
			opinion = -5
		}

		add_prestige = medium_prestige_gain

		if = {
			limit = {
				has_trait = tourney_participant
			}
			add_trait_xp = {
				trait = tourney_participant
				track = wit
				value = tournament_hastiludes_xp_gain_medium_value
			}
		}
		else = {
			add_trait = tourney_participant
			add_trait_xp = {
				trait = tourney_participant
				track = wit
				value = tournament_hastiludes_xp_gain_medium_value
			}		
		}

		stress_impact = {
			arrogant = medium_stress_impact_loss
			impatient = miniscule_stress_impact_loss
			humble = medium_stress_impact_gain
			patient = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_boldness = 1
			}
		}
	}

	#Hmm, well, what about this guess?
	option = { 
		name = ep3_camp_party.1010.b

		duel = {
			skill = learning
			value = medium_skill_rating
			# Success: You guessed right
			50 = {
				desc = ep3_camp_party.1010.b.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1010.b.success.title #Used for supplying the actual answer
					left_icon = root
					right_icon = scope:riddler

					add_prestige = medium_prestige_gain
					involved_activity = {
						every_attending_character = {
							custom = custom.every_attending_character
							add_opinion = {
								target = root
								modifier = impressed_opinion
								opinion = 5
							}
						}
					}
				}
			}
			# Failure: You guessed wrong
			50 = {
				desc = ep3_camp_party.1010.b.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1010.b.failure
					left_icon = root
					right_icon = scope:riddler

					add_prestige = minor_prestige_loss
					scope:riddler = {
						add_stress = miniscule_stress_loss
					}
				}
			}
		}

		stress_impact = {
			patient = miniscule_stress_impact_loss
			impatient = minor_stress_impact_gain
			gregarious = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 0.5
			}
		}
	}

	#No idea, want a drink?
	option = { 
		name = ep3_camp_party.1010.c

		flavor = ep3_camp_party.1010.c.tt

		involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium		

		stress_impact = {
			arrogant = medium_stress_impact_gain
			impatient = medium_stress_impact_gain
			humble = miniscule_stress_impact_loss
			patient = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
			}
		}
	}
	after = {
		remove_character_flag ?= 1010_first_riddle_answer
		remove_character_flag ?= 1010_second_riddle_answer
		remove_character_flag ?= 1010_third_riddle_answer
		remove_character_flag ?= 1010_fourth_riddle_answer
		remove_character_flag ?= 1010_fifth_riddle_answer
		remove_character_flag ?= 1010_sixth_riddle_answer
		remove_character_flag ?= 1010_seventh_riddle_answer
		remove_character_flag ?= 1010_eighth_riddle_answer
	}
}

# An archery contest breaks out
ep3_camp_party.1015 = { 
	type = activity_event
	title = ep3_camp_party.1015.t
	desc = ep3_camp_party.1015.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = interested
	}
	right_portrait = {
		character = scope:archer
		animation = hunting_shortbow_rest_arrow_default
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		involved_activity = {
			any_attending_character = {
				count > 1
				this != root
				is_ai = yes
				is_adult = yes
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
			random_attending_character = {
				limit = {
					this != root
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = archer
			}
		}

		if = {
			limit = {
				involved_activity = {
					OR = {
						has_activity_option = {
							category = camp_party_option_food
							option = camp_party_food_simple
						}
						has_activity_option = {
							category = camp_party_option_food
							option = camp_party_food_lavish
						}
					}
				}
			}
			involved_activity = {
				random_attending_character = {
					limit = {
						NOR = {
							this = root
							this = scope:archer
						}
						is_ai = yes
						is_adult = yes
					}
					save_scope_as = apple_holder
				}
			}
		}
	}

	#Use apples as targets
	option = { 
		name = ep3_camp_party.1015.a

		trigger = {
			involved_activity = {
				OR = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_simple
					}
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_lavish
					}
				}
				any_attending_character = {
					count > 2
					this != root
					is_ai = yes
					is_adult = yes
				}
			}
		}

		add_internal_flag = special

		flavor = ep3_camp_party.1015.a.tt

		domicile = {
			change_provisions = microscopic_provisions_loss
		}

		duel = {
			skill = prowess
			target = scope:archer
			# Success: You hit
			30 = {
				desc = ep3_camp_party.1015.a.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1015.a.success
					left_icon = root
					right_icon = scope:archer

					add_prestige = major_prestige_gain
					if = {
						limit = {
							has_trait = tourney_participant
						}
						add_trait_xp = {
							trait = tourney_participant
							track = bow
							value = tournament_hastiludes_xp_gain_major_value
						}
					}
					else = {
						add_trait = tourney_participant
						add_trait_xp = {
							trait = tourney_participant
							track = bow
							value = tournament_hastiludes_xp_gain_major_value
						}
					}
					scope:archer = {
						pay_short_term_gold = {
							target = root
							gold = tiny_gold_value
						}
					}
				}
			}
			# Failure: You miss
			40 = {
				desc = ep3_camp_party.1015.a.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1015.a.failure
					left_icon = root
					right_icon = scope:archer

					pay_short_term_gold = {
						target = scope:archer
						gold = tiny_gold_value
					}

					scope:archer = {
						add_prestige = medium_prestige_gain
						if = {
							limit = {
								has_trait = tourney_participant
							}
							add_trait_xp = {
								trait = tourney_participant
								track = bow
								value = tournament_hastiludes_xp_gain_major_value
							}
						}
						else = {
							add_trait = tourney_participant
							add_trait_xp = {
								trait = tourney_participant
								track = bow
								value = tournament_hastiludes_xp_gain_major_value
							}
						}
					}
				}
			}
			# Failure: You REALLY miss
			10 = {
				desc = ep3_camp_party.1015.a.critfailure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1015.a.critfailure
					left_icon = root
					right_icon = scope:apple_holder

					scope:apple_holder = {
						if = {
							limit = {
								NOT = {
									has_trait = one_eyed
								}
							}
							add_trait = one_eyed
						}
						else = {
							increase_wounds_no_death_effect = { REASON = wounds }
						}
						add_opinion = {
							target = root
							modifier = maimed_me
							opinion = -50
						}
					}
				}
			}
		}	

		stress_impact = {
			arrogant = miniscule_stress_impact_loss
			humble = medium_stress_impact_gain
			callous = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = -1
			}
		}
	}

	#Why don't we make this into a hunting competition?
	option = { 
		name = ep3_camp_party.1015.b

		random_list = {
			10 = {
				desc = ep3_camp_party.1015.b.success
				modifier = { #If you're both good
					add = 5
					AND = {
						scope:archer = {
							prowess > 10
						}
						prowess > 10
					}
				}
				modifier = { #If at least one of you is good
					add = 5
					OR = {
						scope:archer = {
							prowess > 10
						}
						prowess > 10
					}
				}

				send_interface_toast = {
					title = ep3_camp_party.1015.b.success
					left_icon = root
					right_icon = scope:archer

					domicile = {
						change_provisions = { miniscule_provisions_gain medium_provisions_gain }
					}
					if = {
						limit = {
							has_trait = lifestyle_hunter
						}
						add_trait_xp = {
							trait = lifestyle_hunter
							track = hunter
							value = tournament_hastiludes_xp_gain_major_value
						}
					}
					else = {
						add_trait = lifestyle_hunter
						add_trait_xp = {
							trait = lifestyle_hunter
							track = hunter
							value = tournament_hastiludes_xp_gain_major_value
						}
					}
				}
			}
			10 = {
				desc = ep3_camp_party.1015.b.failure
				send_interface_toast = {
					title = ep3_camp_party.1015.b.failure
					left_icon = root
					right_icon = scope:archer

					if = {
						limit = {
							has_trait = lifestyle_hunter
						}
						add_trait_xp = {
							trait = lifestyle_hunter
							track = hunter
							value = tournament_hastiludes_xp_gain_medium_value
						}
					}
					else = {
						add_trait = lifestyle_hunter
						add_trait_xp = {
							trait = lifestyle_hunter
							track = hunter
							value = tournament_hastiludes_xp_gain_medium_value
						}
					}

					add_prestige = minor_prestige_loss
					add_stress = minor_stress_gain
				}
			}
			1 = {
				desc = ep3_camp_party.1015.b.critfailure
				send_interface_toast = {
					title = ep3_camp_party.1015.b.critfailure
					left_icon = root
					right_icon = scope:archer

					increase_wounds_no_death_effect = { REASON = wounds }
				}
			}
		}

		stress_impact = {
			arrogant = miniscule_stress_impact_loss
			impatient = miniscule_stress_impact_loss
			humble = minor_stress_impact_gain
			patient = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_boldness = 1
			}
		}
	}

	#Come, then!
	option = { 
		name = ep3_camp_party.1015.c

		trigger = {
			involved_activity = {
				NOR = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_simple
					}
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_lavish
					}
				}
			}
		}

		duel = {
			skill = prowess
			target = scope:archer
			# Success: You win
			50 = {
				desc = ep3_camp_party.1015.c.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1015.c.success
					left_icon = root
					right_icon = scope:archer

					add_prestige = medium_prestige_gain
					if = {
						limit = {
							has_trait = tourney_participant
						}
						add_trait_xp = {
							trait = tourney_participant
							track = bow
							value = tournament_hastiludes_xp_gain_major_value
						}
					}
					else = {
						add_trait = tourney_participant
						add_trait_xp = {
							trait = tourney_participant
							track = bow
							value = tournament_hastiludes_xp_gain_major_value
						}
					}
				}
			}
			# Failure: You lose
			50 = {
				desc = ep3_camp_party.1015.c.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1015.c.failure
					left_icon = root
					right_icon = scope:archer

					add_stress = miniscule_stress_gain
					scope:archer = {
						add_prestige = medium_prestige_gain
					}
				}
			}
		}

		stress_impact = {
			patient = minor_stress_impact_gain
			impatient = miniscule_stress_impact_loss
			brave = miniscule_stress_impact_loss
			craven = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_energy = 1
			}
		}
	}

	#Ah, you're better than me, let's just sit and talk shall we?
	option = { 
		name = ep3_camp_party.1015.d

		involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium		

		reverse_add_opinion = {
			target = scope:archer
			modifier = pleased_opinion
			opinion = 25
		}

		stress_impact = {
			arrogant = minor_stress_impact_gain
			impatient = minor_stress_impact_gain
			humble = miniscule_stress_impact_loss
			patient = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_sociability = 1
			}
		}
	}
}

# A local turns up
ep3_camp_party.1020 = { 
	type = activity_event
	title = ep3_camp_party.1020.t
	desc = {
		desc = ep3_camp_party.1020.opening
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = witch_flag
					}
				}
				desc = ep3_camp_party.1020.witch
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = cannibal_flag
					}
				}
				desc = ep3_camp_party.1020.cannibal
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = mangled_flag
					}
				}
				desc = ep3_camp_party.1020.mangled
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = mystic_flag
					}
				}
				desc = ep3_camp_party.1020.mystic
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = siblings_flag
					}
				}
				desc = ep3_camp_party.1020.siblings
			}
		}
		triggered_desc = {
			trigger = {
				scope:local = {
					NOT = {
						has_character_flag = siblings_flag
					}
				}
			}
			desc = ep3_camp_party.1020.ending
		}
	}
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = shock
	}
	center_portrait = {
		trigger = {
			exists = scope:local_sibling
		}
		character = scope:local_sibling
		animation = sick
		camera = camera_event_left_forward
	}
	right_portrait = {
		character = scope:local
		animation = beg		
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		involved_activity = {
			OR = {
				has_activity_option = {
					category = camp_party_option_food
					option = camp_party_food_simple
				}
				has_activity_option = {
					category = camp_party_option_food
					option = camp_party_food_lavish
				}
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
		}

		random_list = {
			2 = { #Normal pool character
				trigger = {
					any_pool_character = {
						province = root.location
						is_physically_able_ai_adult = yes
						has_no_particular_noble_roots_trigger = yes
					}
				}
				random_pool_character = {
					province = root.location
					limit = {
						is_physically_able_ai_adult = yes
						has_no_particular_noble_roots_trigger = yes
					}
					save_scope_as = local
				}
			}
			1 = {
				create_character = {
					template = bp1_yearly_2021_learning_witch_template
					culture = location.culture
					faith = location.faith
					location = root.location
					save_scope_as = local
				}
				hidden_effect = {
					scope:local = {
						add_character_flag = witch_flag
					}
				}
			}
			1 = {
				create_character = {
					template = generic_peasant_character
					culture = location.culture
					faith = location.faith
					location = root.location
					save_scope_as = local
				}
				hidden_effect = {
					scope:local = {
						add_secret = { type = secret_cannibal }
						add_character_flag = cannibal_flag
					}
				}
			}
			1 = {
				create_character = {
					template = generic_peasant_character
					culture = location.culture
					faith = location.faith
					location = root.location
					age = { 20 30 }
					save_scope_as = local
				}
				hidden_effect = {
					scope:local = {
						random_list = {
							1 = { #Cowhig Croft 'em
								add_trait = one_eyed
								add_trait = one_legged
								add_trait = scarred
								add_trait_xp = {
									trait = scarred
									value = {
										integer_range = {
											min = 50
											max = 100
										}
									}
								}
								add_learning_skill = { 5 15 }
								add_diplomacy_skill = { 5 15 }
								add_character_flag = mangled_flag
							}
							1 = { #'Yes it is', not 'that it be'
								add_trait = lifestyle_mystic
								add_trait_xp = {
									trait = lifestyle_mystic
									value = {
										integer_range = {
											min = 50
											max = 100
										}
									}
								}
								add_trait = lifestyle_herbalist
								set_age = { 35 60 }
								add_character_flag = mystic_flag
							}
							1 = { #Someone suspiciously close to their sibling, whose parents have mysteriously just died...
								create_character = { #Make their dad
									template = generic_peasant_character
									gender = male
									culture = location.culture
									faith = location.faith
									location = root.location
									age = { 50 70 }
									save_scope_as = local_dad
								}
								create_character = { #Make their mum
									template = generic_female_peasant_character
									gender = female
									culture = location.culture
									faith = location.faith
									location = root.location
									age = { 50 70 }
									save_scope_as = local_mum
								}

								scope:local_dad = {
									death = { death_reason = death_mysterious }
								}
								scope:local_mum = {
									death = { death_reason = death_mysterious }
								}

								#Now back to the person at hand
								set_sexuality = bisexual #No, this isn't a statement on the inherently incestuous nature of bisexuals, I just don't want to have to set up all the cascading checks for brother/brother, brother/sister, sister/sister for what is a throwaway part of an event. OK?! (ㆆ_ㆆ)
								add_secret = { type = secret_incest }
								set_father = scope:local_dad
								set_mother = scope:local_mum
								add_character_flag = siblings_flag

								#Make them a good character that you want to have, so giving us plenty of intrigue later on
								random_list = {
									10 = { add_trait = beauty_good_1 }
									10 = { add_trait = beauty_good_2 }
									10 = { add_trait = physique_good_1 }
									10 = { add_trait = physique_good_2 }
									1 = { add_trait = fecund }
									5 = { add_trait = strong }
									5 = { add_trait = shrewd }
								}

								#And now to their sibling
								create_character = {
									template = generic_peasant_character
									culture = location.culture
									faith = location.faith
									location = root.location
									age = { 20 30 }
									save_scope_as = local_sibling
								}
								scope:local_sibling = {
									set_sexuality = bisexual #Same goes here!
									set_father = scope:local_dad
									set_mother = scope:local_mum
									set_relation_lover = { target = scope:local }
									random_list = { #As above
										10 = { add_trait = beauty_good_1 }
										10 = { add_trait = beauty_good_2 }
										10 = { add_trait = physique_good_1 }
										10 = { add_trait = physique_good_2 }
										1 = { add_trait = fecund }
										5 = { add_trait = strong }
										5 = { add_trait = shrewd }
									}
								}

								random_list = { #Did they kill their parents?
									5 = { #First one did
										add_trait = kinslayer_3 
									}
									5 = { #Second one did
										scope:local_sibling = {
											add_trait = kinslayer_3 
										}
									}
									20 = { #They BOTH did!
										add_trait = kinslayer_3
										scope:local_sibling = {
											add_trait = kinslayer_3 
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}

	#Invite them in
	option = { 
		name = ep3_camp_party.1020.a

		domicile = {
			change_provisions = minor_provisions_loss
		}

		add_courtier = scope:local
		reverse_add_opinion = {
			target = scope:local
			modifier = grateful_opinion
			opinion = 50
		}
		if = {
			limit = {
				exists = scope:local_sibling
			}
			add_courtier = scope:local_sibling
			reverse_add_opinion = {
				target = scope:local_sibling
				modifier = grateful_opinion
				opinion = 50
			}
		}

		stress_impact = {
			trusting = miniscule_stress_impact_loss
			paranoid = medium_stress_impact_gain
			gregarious = miniscule_stress_impact_loss
			shy = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
			}
		}
	}

	#Give them food
	option = { 
		name = ep3_camp_party.1020.b

		domicile = {
			change_provisions = miniscule_provisions_loss
		}

		add_piety = medium_piety_gain

		involved_activity = {
			every_attending_character = {
				custom = custom.every_attending_character
				add_opinion = {
					target = root
					modifier = charity_opinion
					opinion = 15
				}
			}
		}

		stress_impact = {
			just = miniscule_stress_impact_loss
			generous = miniscule_stress_impact_loss
			greedy = medium_stress_impact_gain
			arbitrary = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 0.5
			}
		}
	}

	#Something's off about them; turn them away
	option = { 
		name = ep3_camp_party.1020.c

		domicile = {
			change_provisions = miniscule_provisions_gain
		}

		involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium

		trigger_event = ep3_camp_party.1021

		stress_impact = {
			paranoid = medium_stress_impact_loss
			compassionate = medium_stress_impact_gain
			trusting = minor_stress_impact_gain
			callous = minor_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_energy = -1
			}
		}
	}
}

# Resolution event to the previous
ep3_camp_party.1021 = { 
	type = activity_event
	title = ep3_camp_party.1021.t
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					OR = {
						has_trait = callous
						has_trait = paranoid
					}
				}
				desc = ep3_camp_party.1021.callous
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = witch_flag
					}
				}
				desc = ep3_camp_party.1021.witch
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = cannibal_flag
					}
				}
				desc = ep3_camp_party.1021.cannibal
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = mangled_flag
					}
				}
				desc = ep3_camp_party.1021.mangled
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = mystic_flag
					}
				}
				desc = ep3_camp_party.1021.mystic
			}
			triggered_desc = {
				trigger = {
					scope:local = {
						has_character_flag = siblings_flag
					}
				}
				desc = ep3_camp_party.1021.siblings
			}
			triggered_desc = {
				desc = ep3_camp_party.1021.normal
			}
		}
	}
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = { 
				OR = {
					has_trait = callous
					has_trait = paranoid
				}
			}
			animation = dismissal
		}
		triggered_animation = {
			trigger = {
				scope:local = {
					OR = {
						has_character_flag = siblings_flag
						has_character_flag = mystic_flag
					}
				}
			}
			animation = grief
		}
		triggered_animation = {
			trigger = {
				NOR = {
					has_trait = callous
					has_trait = paranoid
				}
			}
			animation = worry
		}
	}
	center_portrait = {
		trigger = {
			exists = scope:local_sibling
		}
		character = scope:local_sibling
		animation = shock
		camera = camera_event_left_forward
	}
	right_portrait = {
		character = scope:local
		animation = anger		
	}
	cooldown = { months = 3 }

	option = { 
		name = {
			trigger = { 
				scope:local = { 
					has_character_flag = siblings_flag
				}
			}
			text = ep3_camp_party.1021.a.face
		}
		name = {
			trigger = { 
				scope:local = { 
					has_character_flag = mystic_flag
				}
			}
			text = ep3_camp_party.1021.a.ill
		}
		name = {
			trigger = { 
				scope:local = { 
					NOR = {
						has_character_flag = siblings_flag
						has_character_flag = mystic_flag
					}
				}
			}
			text = ep3_camp_party.1021.a.sad
		}

		trigger = {
			NOR = {
				has_trait = callous
				has_trait = paranoid
			}
		}

		if = { #If you turn away the witch, they turn one of your people into one
			limit = {
				scope:local = {
					has_character_flag = witch_flag
				}
			}
			hidden_effect = {
				involved_activity = { 
					random_attending_character = {
						limit = {
							this != root
						}
						add_secret = { type = secret_witch }
					}
				}
			}
		}
		else_if = { #Or a cannibal
			limit = {
				scope:local = {
					has_character_flag = cannibal_flag
				}
			}
			hidden_effect = {
				involved_activity = { 
					random_attending_character = {
						limit = {
							this != root
						}
						add_secret = { type = secret_cannibal }
					}
				}
			}		
		}
		else_if = { #If you turn away the mangled man, everyone just feels bad
			limit = {
				scope:local = {
					has_character_flag = mangled_flag
				}
			}
			involved_activity = { 
				every_attending_character = {
					custom = custom.every_attending_character
					add_opinion = {
						target = root
						modifier = guilty_opinion
						opinion = -25
					}
					add_stress = minor_stress_gain
				}
				random_attending_character = {
					limit = {
						NOR = {
							this = root
							has_trait = loyal
							has_trait = sadistic
							has_trait = callous
						}
					}
					random = {
						chance = 75
						add_trait = disloyal
					}
				}
			}
		}
		else_if = { #The mystic poisons you
			limit = {
				scope:local = {
					has_character_flag = mystic_flag
				}
			}
			contract_disease_effect = { DISEASE = ill TREATMENT_EVENT = yes }
		}
		else_if = { #The siblings attack you
			limit = {
				scope:local = {
					has_character_flag = siblings_flag
				}
			}
			random_list = {
				10 = {
					modifier = {
						employs_court_position = court_physician_court_position
						add = 5
					}
					increase_wounds_no_death_effect = { REASON = fight }
				}
				3 = {
					add_trait = one_eyed
				}
			}
		}
		else = {
			if = {
				limit = {
					NOT = {
						has_character_modifier = ep3_uneasy_modifier
					}
				}
				add_character_modifier = {
					modifier = ep3_uneasy_modifier
					years = 3
				}
			}
		}

		stress_impact = {
			base = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
			}
		}
	}

	option = { 
		name = ep3_camp_party.1021.b

		trigger = {
			OR = {
				has_trait = callous
				has_trait = paranoid
			}
		}

		add_stress = medium_stress_loss
	}

	after = {
		scope:local = {
			remove_character_flag = witch_flag
			remove_character_flag = cannibal_flag
			remove_character_flag = mangled_flag
			remove_character_flag = mystic_flag
			remove_character_flag = siblings_flag
		}
	}
}

# Bond with your intent target
ep3_camp_party.1025 = { 
	type = activity_event
	title = ep3_camp_party.1025.t
	desc = ep3_camp_party.1025.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = ecstasy
	}
	right_portrait = {
		character = scope:friend
		animation = storyteller
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		has_activity_intent = befriend_attendee_intent
		intent_target ?= {
			is_alive = yes
			this != root
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
		}
		intent_target = { save_scope_as = friend }
	}

	#No, no, tell me more!
	option = { 
		name = ep3_camp_party.1025.a

		trigger = {
			OR = {
				has_relation_potential_friend = scope:friend
				has_trait = diplomat
				has_trait = gregarious
				diplomacy > 15
				number_of_personality_traits_in_common = {
					target = scope:friend
					value >= 2
				}
				number_of_traits_in_common = {
					target = scope:friend
					value >= 3
				}
			}
		}

		set_relation_friend = {
			target = scope:friend
			reason = friend_listened_to_story
		}
		complete_activity_intent = yes

		stress_impact = {
			arrogant = minor_stress_impact_gain
			humble = minor_stress_impact_loss
			callous = minor_stress_impact_gain
			compassionate = minor_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
			}
		}
	}

	#I do! I did stuff like...
	option = { 
		name = ep3_camp_party.1025.b

		duel = {
			skill = diplomacy
			value = medium_skill_rating
			# Success: You pluck a memory out of thin air
			50 = {
				desc = ep3_camp_party.1025.b.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1025.b.success
					left_icon = root
					right_icon = scope:friend

					progress_towards_friend_effect = {
						REASON = friend_bonded_over_story
						CHARACTER = scope:friend
						OPINION = default_friend_opinion
					}
					if = {
						limit = {
							has_relation_friend = scope:friend
						}
						complete_activity_intent = yes
					}
				}
			}
			# Failure: You had a boring childhood, apparently
			50 = {
				desc = ep3_camp_party.1025.b.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1025.b.failure
					left_icon = root
					right_icon = scope:friend

					reverse_add_opinion = {
						target = scope:friend
						modifier = disappointed_opinion
						opinion = -20
					}
				}
			}
		}

		stress_impact = {
			impatient = miniscule_stress_impact_loss
			deceitful = miniscule_stress_impact_loss
			patient = miniscule_stress_impact_gain
			honest = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_boldness = 1
			}
		}
	}

	#...how about a topic change?
	option = { 
		name = ep3_camp_party.1025.c

		flavor = ep3_camp_party.1025.c.tt

		random = {
			chance = 50
			add_intrigue_lifestyle_xp = medium_lifestyle_xp
		}

		stress_impact = {
			deceitful = miniscule_stress_impact_loss
			honest = miniscule_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_energy = 1
			}
		}
	}
}

# Relieve stress - intent event
ep3_camp_party.1030 = { 
	type = activity_event
	title = ep3_camp_party.1030.t
	desc = ep3_camp_party.1030.desc
	theme = landless_adventurer
	left_portrait = {
		character = root
		animation = drink
	}
	right_portrait = {
		character = scope:reveler
		animation = lantern
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		has_activity_intent = reduce_stress_intent
		involved_activity = {
			any_attending_character = {
				count > 1
				this != root
				is_ai = yes
				is_adult = yes
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
			random_attending_character = {
				limit = {
					this != root
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = reveler
			}
		}
	}

	# Crack out all the reserves lads!
	option = { 
		name = ep3_camp_party.1030.a

		trigger = {
			involved_activity = {
				OR = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_simple
					}
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_lavish
					}
				}
			}
		}

		add_internal_flag = special

		if = {
			limit = {
				has_trait = lifestyle_reveler
			}
			add_trait_xp = {
				trait = lifestyle_reveler
				value = { 10 25 }
			}
		}
		else = {
			add_trait = lifestyle_reveler
			add_trait_xp = {
				trait = lifestyle_reveler
				value = { 10 25 }
			}
		}

		involved_activity = {
			every_attending_character = {
				custom = custom.every_attending_character
				limit = {
					this != root
				}
				add_opinion = {
					target = root
					modifier = pleased_opinion
					opinion = 20
				}
				add_stress = medium_stress_loss
			}
		}

		domicile = {
			change_provisions = medium_provisions_loss
		}

		involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium

		stress_impact = {
			base = major_stress_impact_loss
			temperate = miniscule_stress_impact_gain
			gluttonous = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
				ai_greed = -1
			}
		}
	}

	# Let's live a little - downgraded version of option A
	option = { 
		name = ep3_camp_party.1030.b

		involved_activity = {
			every_attending_character = {
				custom = custom.every_attending_character
				limit = {
					this != root
				}
				add_opinion = {
					target = root
					modifier = pleased_opinion
					opinion = 5
				}
				add_stress = miniscule_stress_loss
			}
		}

		domicile = {
			change_provisions = minor_provisions_loss
		}

		random = {
			chance = 30
			send_interface_toast = {
				title = ep3_camp_party.1030.b.success
				left_icon = root

				add_character_modifier = {
					modifier = ep3_life_of_the_party
					years = 10
				}
			}
		}

		scope:activity = { activity_special_type_progression_variable = { NUM = 10 } }
		custom_tooltip = camp_party_tt_positive_tiny

		stress_impact = {
			base = minor_stress_impact_loss
			gluttonous = miniscule_stress_impact_gain
			temperate = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = -1
			}
		}
	}

	#We should be sensible
	option = { 
		name = ep3_camp_party.1030.c

		add_character_modifier = {
			modifier = ep3_sensible_provisions
			years = 10
		}

		involved_activity = {
			every_attending_character = {
				custom = custom.every_attending_character
				limit = {
					this != root
				}
				add_opinion = {
					target = root
					modifier = disappointed_opinion
					opinion = -5
				}
			}
		}

		stress_impact = {
			temperate = miniscule_stress_impact_loss
			deceitful = miniscule_stress_impact_loss
			honest = miniscule_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = 1
			}
		}
	}
}

# Fell a tree for more firewood
ep3_camp_party.1035 = {
	type = activity_event
	title = ep3_camp_party.1035.t
	desc = ep3_camp_party.1035.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = thinking
	}
	right_portrait = {
		character = scope:treefeller
		animation = aggressive_axe
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		location = {
			NOR = {
				terrain = desert
				terrain = desert_mountains
				terrain = mountains
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		involved_activity = {
			save_scope_as = activity
			random_attending_character = {
				limit = {
					this != root
					is_ai = yes
					is_adult = yes
				}
				save_scope_as = treefeller
			}
		}
	}

	# Burn some old barrels and crates
	option = { 
		name = ep3_camp_party.1035.a

		trigger = {
			involved_activity = {
				OR = {
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_simple
					}
					has_activity_option = {
						category = camp_party_option_food
						option = camp_party_food_lavish
					}
				}
			}
		}

		add_internal_flag = special

		if = {
			limit = {
				NOT = {
					has_trait = shrewd
				}
			}
			random = {
				chance = 25
				send_interface_toast = {
					title = ep3_camp_party.1035.a.success
					left_icon = root

					add_trait = shrewd
				}
			}
		}
		else = {
			add_stewardship_lifestyle_perk_points = 1
		}

		involved_activity = {
			every_attending_character = {
				custom = custom.every_attending_character
				add_character_modifier = {
					modifier = ep3_warm_and_content
					years = 3
				}
			}
		}

		domicile = {
			change_provisions = medium_provisions_loss
		}

		stress_impact = {
			greedy = miniscule_stress_impact_gain
			generous = miniscule_stress_impact_loss
			compassionate = miniscule_stress_impact_loss
			callous = miniscule_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_compassion = 1
				ai_greed = -1
			}
		}
	}

	# Fell a tree
	option = { 
		name = ep3_camp_party.1035.b

		duel = {
			skill = prowess
			value = medium_skill_rating
			# Success: Your story is believed
			50 = {
				desc = ep3_camp_party.1035.b.success
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1035.b.success
					left_icon = root
					right_icon = scope:treefeller

					add_prestige = medium_prestige_gain
					involved_activity = {
						every_attending_character = {
							custom = custom.every_attending_character
							add_character_modifier = {
								modifier = ep3_warm_and_content
								years = 1
							}
						}
					}

					domicile = {
						change_provisions = miniscule_provisions_gain
					}
				}
			}
			# Failure
			50 = {
				desc = ep3_camp_party.1035.b.failure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1035.b.failure
					left_icon = root
					right_icon = scope:treefeller

					add_prestige = minor_prestige_loss
				}
			}
			# Crit Failure
			10 = {
				desc = ep3_camp_party.1035.b.critfailure
				show_chance = yes

				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}

				send_interface_toast = {
					title = ep3_camp_party.1035.b.critfailure
					left_icon = root
					right_icon = scope:treefeller

					add_prestige = medium_prestige_loss
					increase_wounds_no_death_effect = { REASON = accident }
				}
			}
		}

		stress_impact = {
			brave = minor_stress_impact_loss
			craven = minor_stress_impact_gain
			paranoid = miniscule_stress_impact_gain
			trusting = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = 1
			}
		}
	}

	# Scrabble around in the brush for some twigs
	option = { 
		name = ep3_camp_party.1035.c

		domicile = {
			change_provisions = microscopic_provisions_gain
		}

		reverse_add_opinion = {
			target = scope:treefeller
			modifier = disappointed_opinion
			opinion = -20
		}

		stress_impact = {
			temperate = miniscule_stress_impact_loss
			deceitful = miniscule_stress_impact_loss
			honest = miniscule_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = 1
			}
		}
	}
}

# Encounter a wandering merchant
ep3_camp_party.1040 = {
	type = activity_event
	title = ep3_camp_party.1040.t
	desc = ep3_camp_party.1040.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = thinking
	}
	right_portrait = {
		character = scope:merchant
		animation = scheme
	}
	artifact = {
		target = scope:big_artifact
		position = lower_left_portrait
	}
	artifact = {
		target = scope:small_artifact
		position = lower_center_portrait
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		drinks_alcohol_trigger = yes
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		if = {
			limit = {
				any_pool_character = {
					province = root.location
					is_physically_able_ai_adult = yes
					has_no_particular_noble_roots_trigger = yes
				}
			}
			random_pool_character = {
				province = root.location
				limit = {
					is_physically_able_ai_adult = yes
					has_no_particular_noble_roots_trigger = yes
				}
				save_scope_as = merchant
			}
		}
		else = {
			create_character = {
				template = merchant_template
				culture = location.culture
				faith = location.faith
				location = root.location
				save_scope_as = merchant
			}
		}
		scope:merchant = {
			hidden_effect = {
				random_list = { #Generate a big artifact
					10 = {
						random_dummy_gender_effect = yes
						create_artifact_weapon_effect = {
							OWNER = scope:merchant
							CREATOR = scope:dummy_gender
							SET_WEAPON_TYPE = flag:artifact_weapon_type_sword
						}
						hidden_effect = {
							scope:newly_created_artifact ?= {
								save_scope_as = big_artifact
								add_artifact_modifier = artifact_negate_prowess_penalty_add_3_modifier
								set_artifact_rarity = famed
							}
						}
					}
					10 = {
						random_dummy_gender_effect = yes
						create_artifact_regalia_effect = {
							OWNER = scope:merchant
							SMITH = scope:dummy_gender
						}
						hidden_effect = {
							scope:newly_created_artifact ?= {
								save_scope_as = big_artifact
								add_artifact_modifier = artifact_monthly_prestige_add_3_modifier
								set_artifact_rarity = famed
							}
						}
					}
					2 = { #Chance of it being amazing
						random_dummy_gender_effect = yes
						create_artifact_armor_effect = {
							OWNER = scope:merchant
							CREATOR = scope:dummy_gender
							SET_ARMOR_TYPE = flag:armor_type_scale
						}
						hidden_effect = {
							scope:newly_created_artifact ?= {
								save_scope_as = big_artifact
								add_artifact_modifier = artifact_prowess_5_modifier
								add_artifact_modifier = artifact_knight_effectiveness_5_modifier
								add_artifact_modifier = artifact_hard_casualty_modifier_5_modifier
								add_artifact_modifier = artifact_courtier_and_guest_opinion_5_modifier
								set_artifact_rarity = illustrious
								set_artifact_name = resplendent_armour_name
								set_artifact_description = resplendent_armour_desc
							}
						}
					}
				}
				random_list = {
					10 = {
						random_dummy_gender_effect = yes
						create_artifact_brooch_effect = {
							OWNER = scope:owner
							SMITH = scope:dummy_gender
						}
						scope:newly_created_artifact ?= {
							save_scope_as = small_artifact
						}
					}
					10 = {
						random_dummy_gender_effect = yes
						create_artifact_book_effect = {
							OWNER = scope:owner
							CREATOR = scope:dummy_gender
							SET_SUBJECT = flag:no
							SET_TOPIC = flag:no
						}
						scope:newly_created_artifact ?= {
							save_scope_as = small_artifact
						}
					}
				}
			}
		}
	}

	# Buy a big shiny thing
	option = { 
		name = ep3_camp_party.1040.a

		pay_short_term_gold = {
			target = scope:merchant
			gold = major_gold_value
		}

		scope:big_artifact = {
			set_owner = root
		}

		involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium

		stress_impact = {
			greedy = minor_stress_impact_gain
			generous = minor_stress_impact_loss
			temperate = miniscule_stress_impact_gain
			profligate = medium_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = -1
			}
		}
	}

	# Buy a small item
	option = { 
		name = ep3_camp_party.1040.b

		pay_short_term_gold = {
			target = scope:merchant
			gold = tiny_gold_value
		}

		scope:small_artifact = {
			set_owner = root
		}

		scope:activity = { activity_special_type_progression_variable = { NUM = 10 } }
		custom_tooltip = camp_party_tt_positive_tiny

		stress_impact = {
			greedy = miniscule_stress_impact_gain
			generous = miniscule_stress_impact_loss
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = -0.5
			}
		}
	}

	# Tell them to sod off
	option = { 
		name = ep3_camp_party.1040.c

		add_character_modifier = {
			modifier = ep3_responsible_with_money
			years = 10
		}

		reverse_add_opinion = {
			target = scope:merchant
			modifier = disappointed_opinion
			opinion = -20
		}

		stress_impact = {
			temperate = miniscule_stress_impact_loss
			greedy = minor_stress_impact_loss
			generous = minor_stress_impact_gain
			profligate = minor_stress_impact_gain
		}

		ai_chance = {
			base = 100
			ai_value_modifier = {
				ai_greed = 1
			}
		}
	}
}


################################
# Events
################################
# ep3_camp_party.2000 - Choose which same-trait follower to chat with
#

scripted_trigger 2000_adult_ai_follower_trigger = {
	this != root
	is_ai = yes
	is_adult = yes
}

scripted_trigger 2000_suitable_follower_for_conversation_trigger = {
	2000_adult_ai_follower_trigger = yes
	NOR = { 
		has_relation_rival = root
		has_relation_best_friend = root
	}
}

scripted_trigger 2000_has_same_personality_trait_as_root_trigger = {
	has_trait_category = personality
	root = { has_trait = prev }  #The aforementioned trait
}


#Choose which same-trait follower to chat with
ep3_camp_party.2000 = {
	type = activity_event
	title = ep3_camp_party.2000.t
	desc = ep3_camp_party.2000.desc
	theme = landless_adventurer
	override_background = { reference = ep3_campfire }
	left_portrait = {
		character = root
		animation = thinking
	}
	center_portrait = {
		character = scope:first_follower
		animation = drink
	}
	right_portrait = {
		character = scope:second_follower
		animation = happiness
	}
	cooldown = { months = 3 }

	trigger = {
		#Standard checks
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		involved_activity = {
			#At least 3 peeps
			any_attending_character = { count >= 3 }
			#First person with a trait in common with ROOT
			any_attending_character = {
				2000_suitable_follower_for_conversation_trigger = yes
				any_character_trait = {
					2000_has_same_personality_trait_as_root_trigger = yes
					save_temporary_scope_as = trait_check
				}
				save_temporary_scope_as = first_follower_check	
			}
			#Second person with a trait in common with ROOT
			any_attending_character = {
				2000_suitable_follower_for_conversation_trigger = yes
				this != scope:first_follower_check
				#NOT the same trait as the first person
				custom_tooltip = { #This is an error suppression, known by Code already
					text = ep3_camp_party.2000.t
					any_character_trait = {
						2000_has_same_personality_trait_as_root_trigger = yes
						this != scope:trait_check #the trait
					}
				}
				save_temporary_scope_as = second_follower_check
			}
			#Random joe for loc in case we got the deceitful trait
			any_attending_character = {
				2000_adult_ai_follower_trigger = yes
				NOR = { 
					this = scope:first_follower_check
					this = scope:second_follower_check
				}	
			}
		}
	}
	immediate = {
		involved_activity = {
			#First person with a trait in common with ROOT
			random_attending_character = {
				limit = { 
					2000_suitable_follower_for_conversation_trigger = yes
					any_character_trait = { 2000_has_same_personality_trait_as_root_trigger = yes }
				}
				save_scope_as = first_follower
				random_character_trait = {
					limit = { 2000_has_same_personality_trait_as_root_trigger = yes }
					root = {
						set_variable = {
							name = first_follower_trait_var
							value = prev #the trait
						}
					}
				}
			}
			#Second person with a trait in common with ROOT
			random_attending_character = {
				limit = {
					2000_suitable_follower_for_conversation_trigger = yes
					#NOT the same trait as the first person
					any_character_trait = { 
						2000_has_same_personality_trait_as_root_trigger = yes
						NOT = { var:first_follower_trait_var ?= prev } #the trait
					}
					this != scope:first_follower
				}
				save_scope_as = second_follower
				random_character_trait = {
					limit = { 
						2000_has_same_personality_trait_as_root_trigger = yes
						NOT = { var:first_follower_trait_var ?= prev } #the trait
					}
					root = {
						set_variable = {
							name = second_follower_trait_var
							value = prev #the trait
						}
					}
				}
			}
			#Random joe for loc in case we got the deceitful trait
			random_attending_character = {
				limit = {
					2000_adult_ai_follower_trigger = yes
					NOR = { 
						this = scope:first_follower
						this = scope:second_follower
					}
				}
				save_scope_as = other_follower
			}
		}
		#For deceitful loc
		random_dummy_gender_effect = yes
	}
	#Focus on first follower
	option = { 
		name = ep3_camp_party.2000.a
		reverse_add_opinion = {
			target = scope:first_follower
			modifier = camp_party_listened_to_me_opinion
			opinion = 20
		}
		random = {
			chance = 40
			progress_towards_friend_effect = {
				REASON = friend_bonded_over_personalities
				CHARACTER = scope:first_follower
				OPINION = 20
			}
		}
		ai_chance = { base = 100 }
	}
	#Focus on second follower
	option = { 
		name = ep3_camp_party.2000.b
		reverse_add_opinion = {
			target = scope:second_follower
			modifier = camp_party_listened_to_me_opinion
			opinion = 20
		}
		random = {
			chance = 40
			progress_towards_friend_effect = {
				REASON = friend_bonded_over_personalities
				CHARACTER = scope:second_follower
				OPINION = 20
			}
		}
		ai_chance = { base = 100 }
	}
	#Triggered option: Let's debate!
	option = { 
		name = ep3_camp_party.2000.c
		trigger = {
			domicile ?= { has_domicile_building = camp_fire_nightly_debates }
		}
		show_as_unavailable = { always = yes } 
		reason = has_building_camp_fire_nightly_debates
		reverse_add_opinion = {
			target = scope:first_follower
			modifier = camp_party_listened_to_me_opinion
			opinion = 20
		}
		reverse_add_opinion = {
			target = scope:second_follower
			modifier = camp_party_listened_to_me_opinion
			opinion = 20
		}
		random = {
			chance = 20
			progress_towards_friend_effect = {
				REASON = friend_bonded_over_personalities
				CHARACTER = scope:second_follower
				OPINION = 20
			}
		}
		random = {
			chance = 20
			progress_towards_friend_effect = {
				REASON = friend_bonded_over_personalities
				CHARACTER = scope:second_follower
				OPINION = 20
			}
		}
		random = {
			chance = 20
			add_learning_skill = 1
		}
		ai_chance = { base = 100 }
	}
	#Triggered option: celebrate our companionship!
	option = { 
		name = ep3_camp_party.2000.d
		trigger = {
			custom_tooltip = {
				text = ep3_camp_party.2000.d.tt
				domicile ?= { has_domicile_building_or_higher = mess_tent_03 }
			}
		}
		show_as_unavailable = { always = yes }
		reason = has_building_mess_tent_03_or_higher
		reverse_add_opinion = {
			target = scope:first_follower
			modifier = camp_party_reveled_opinion
			opinion = 40
		}
		reverse_add_opinion = {
			target = scope:second_follower
			modifier = camp_party_reveled_opinion
			opinion = 40
		}
		if = {
			limit = {
				NOT = { has_trait = lifestyle_reveler }
			}
			add_trait = lifestyle_reveler
		}
		else_if = {
			limit = {
				has_trait = lifestyle_reveler
				NOT = {
					has_trait_xp = {
						trait = lifestyle_reveler
						value >= 100 #Max
					}
				}
			}
			add_trait_xp = {
				trait = lifestyle_reveler
				value = {
					integer_range = {
					    min = medium_trait_xp
					    max = major_trait_xp
					}
				}
			}
		}
		else_if = {
			limit = { has_lifestyle = diplomacy_lifestyle }
			add_diplomacy_lifestyle_xp = medium_lifestyle_xp
		}
		else = { add_prestige = medium_prestige_gain }
		stress_impact = {
			base = minor_stress_impact_loss
			gluttonous = minor_stress_impact_loss
		}
		involved_activity = { activity_special_type_progression_variable = { NUM = 15 } }
		custom_tooltip = camp_party_tt_positive_medium

		ai_chance = { base = 100 }
	}
	after = {
		remove_variable ?= first_follower_trait_var
		remove_variable ?= second_follower_trait_var
	}
}

ep3_camp_party.2100 = {
	type = activity_event
	title = ep3_camp_party.2100.t
	desc = {
		random_valid = {
			triggered_desc = {
				trigger = { scope:char_spawn_type = flag:porters } #porters - himbos
				desc = ep3_laamps.8200.desc_1
			}
			triggered_desc = {
				trigger = { scope:char_spawn_type = flag:fools } #capering fools - fools 
				desc = ep3_laamps.8200.desc_2
			}
			triggered_desc = {
				trigger = { scope:char_spawn_type = flag:locals } #hangers on - local ethos people 
				desc = ep3_laamps.8200.desc_3
			}
		}
	}
	theme = laamp
	left_portrait = {
		character = root
		triggered_animation = {
			trigger = {
				scope:char_spawn_type = flag:porters
			}
			animation = admiration
		}
		triggered_animation = {
			trigger = {
				scope:char_spawn_type = flag:fools
			}
			animation = laugh
		}
		triggered_animation = {
			trigger = {
				scope:char_spawn_type = flag:locals
			}
			animation = personality_rational
		}
	}
	right_portrait = {
		character = scope:new_person
		triggered_animation = {
			trigger = {
				scope:char_spawn_type = flag:porters
			}
			animation = hero_flex
		}
		triggered_animation = {
			trigger = {
				scope:char_spawn_type = flag:fools
			}
			animation = dancing
		}
		triggered_animation = {
			trigger = {
				scope:char_spawn_type = flag:locals
			}
			animation = beg
		}
		triggered_outfit = {
			trigger = { scope:char_spawn_type = flag:porters }
			outfit_tags = { beggar_rags }
		}
		triggered_outfit = {
			trigger = { scope:char_spawn_type = flag:fools }
			outfit_tags = { jester_outfit }
		}
	}

	override_background = {
		reference = ep3_campfire
	}

	trigger = {
		has_ep3_dlc_trigger = yes
		has_government = landless_adventurer_government
		has_activity_intent = fireside_chat_intent
	}

	weight_multiplier = {
		base = 1
		modifier = {
			add = 0.5
			domicile ?= {
				has_domicile_parameter = camp_recruit_porters_events
			}
		}
		modifier = {
			add = 0.5
			domicile ?= {
				has_domicile_parameter = camp_recruit_fool_events
			} 
		}
		modifier = {
			add = 0.5
			domicile ?= {
				has_domicile_parameter = camp_recruit_locals_events
			}
		}
	}

	immediate = {
		location = {
			save_scope_as = location
		}
		location.county = {
			save_scope_as = location_county
		}
		location.county.holder.top_liege = {
			save_scope_as = location_top_liege
		}
		random_list = {
			1 = {
				save_scope_value_as = {
					name = char_spawn_type
					value = flag:locals
				}
			}
			1 = {
				save_scope_value_as = {
					name = char_spawn_type
					value = flag:porters
				}
			}
			1 = {
				save_scope_value_as = {
					name = char_spawn_type
					value = flag:fools
				}
			}
		}
		
		if = {
			limit = {
				scope:char_spawn_type = flag:porters
			}
			#create a porter himbo
			create_character = {
				location = scope:location
				age = { 18 28 }
				random_traits_list = {
					count = 1
					education_martial_prowess_2 = {}
					education_martial_prowess_3 = {}
				}
				random_traits_list = {
					count = 1
					brave = {}
					diligent = {}
					humble = {}
				}
				random_traits_list = {
					honest = {}
					gregarious = {}
					trusting = {}
					compassionate = {}
					generous = {}
					calm = {}
				}
				random_traits_list = {
					count = 1
					lustful = {}
					chaste = {}
					wrathful = {}
					arrogant = {}
					impatient = {}
					patient = {}
					impatient  = {}
					ambitious = {}
					cynical = {}
					zealous = {}
					stubborn = {}
				}
				random_traits = no
				martial = {
					min_template_low_skill
					max_template_low_skill
				}
				prowess = {
					min_template_high_skill
					max_template_high_skill
				}
				faith = location.faith
				culture = location.culture
				gender_female_chance = {
					add = 25
				}
				save_scope_as = new_person
			}

			hidden_effect = {
				scope:new_person = {
					random_list = {
						2 = {
							add_trait = intellect_bad_2
							add_trait = physique_good_1
							add_trait = strong
						}
						2 = {
							add_trait = strong
						}
						2 = {
							add_trait = strong
							add_trait = giant
						}
						2 = {
							add_trait = intellect_bad_1
							add_trait = giant
						}
						1 = {
							add_trait = giant
							add_trait = physique_good_2
							add_trait = strong
						}
					}
				}
			}
		}
		else_if = {
			limit = {
				scope:char_spawn_type = flag:fools
			}
			create_character = {
				template = poet_template
				culture = location.culture
				faith = location.faith
				location = root.location
				save_scope_as = new_person
			}
			hidden_effect = {
				scope:new_person = {
					add_trait = fecund
					add_trait = lifestyle_traveler
					add_trait = loyal
				} 
			}
		}
		else_if = {
			limit = {
				scope:char_spawn_type = flag:locals
			}
			create_character = {
				template = merchant_template
				culture = location.culture
				faith = location.faith
				location = root.location
				save_scope_as = new_person
			}
			hidden_effect = {
				scope:new_person = {
					random_list = {
						8 = {
							add_trait = shrewd
						}
						1 = {
							add_trait = intellect_good_1
						}
						1 = {
							add_trait = intellect_good_2
						}
					}
				}
			}
		}
	}

	option = { #welcome, weary traveler
		name = ep3_laamps.8200.a
		add_courtier = scope:new_person
		add_character_flag = {
			flag = had_ep3_laamps_8200
			years = 4
		}

		ai_chance = 100

		stress_impact = {
			compassionate = minor_stress_loss
		}
	}

	option = { #please go away
		name = ep3_laamps.8200.b
		add_character_flag = {
			flag = had_ep3_laamps_8200
			years = 2
		}
		scope:new_person = {
			silent_disappearance_effect = yes
		}

		stress_impact = {
			paranoid = medium_stress_loss
			shy = medium_stress_loss
		}
	}
}
