﻿namespace = ppr_camp_retreat

# Events for the Camp Retreat activity (ppr_activity_camp_retreat).
# All events are host-only activity events. Score changes go through the
# ppr_camp_retreat_gain_*/loss_* effects (ppr_camp_retreat_effects.txt).
#
# 0001        Arrival: Welcome at the Gate (from ppr_camp_retreat_phase_arrival)
# 1001 - 1007 Mid-retreat events (on_action ppr_camp_retreat_mid_events)
#   1001 Scholars: The Forgotten Manuscript
#   1002 Scholars: Disputation in the Chapter House
#   1003 Pilgrims: The Great Fast
#   1004 Pilgrims: Vigil of the Relics
#   1005 Shared:   Silence Weighs on the Camp
#   1006 Shared:   A Novice Wants to Follow Us
#   1007 Shared:   Quarrel with the Abbot
# 0009        Conclusion (from ppr_camp_retreat_phase_conclusion), carries the outcome log entry

######################################################################
# 0001: Welcome at the Gate
######################################################################
ppr_camp_retreat.0001 = {
	type = activity_event
	title = ppr_camp_retreat.0001.t
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:retreat_location.barony ?= { is_holy_site_of = root.faith }
				}
				desc = ppr_camp_retreat.0001.desc_holy_site
			}
			desc = ppr_camp_retreat.0001.desc_monastery
		}
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:activity = { ppr_camp_retreat_scholars_trigger = yes }
				}
				desc = ppr_camp_retreat.0001.desc_scholars
			}
			desc = ppr_camp_retreat.0001.desc_pilgrims
		}
	}
	theme = faith
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	left_portrait = {
		character = root
		animation = personality_honorable
	}
	right_portrait = {
		character = scope:abbot
		animation = wedding_priest
	}

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			activity_location = { save_scope_as = retreat_location }
		}
		save_scope_as = host
		# The head of the house: the local prelate if there is one of our faith, else a monk of the community.
		if = {
			limit = {
				scope:retreat_location = { has_holding_type = church_holding }
				scope:retreat_location.barony.holder ?= {
					is_ai = yes
					is_adult = yes
					faith = root.faith
					is_imprisoned = no
				}
			}
			scope:retreat_location.barony.holder = { save_scope_as = abbot }
		}
		else = {
			create_character = {
				template = monk_character_template
				location = scope:retreat_location
				faith = root.faith
				culture = scope:retreat_location.culture
				gender_female_chance = root_faith_clergy_gender_female_chance
				save_scope_as = abbot
			}
		}
		scope:activity = {
			set_variable = {
				name = ppr_retreat_abbot
				value = scope:abbot
			}
		}
	}

	# A gift for the house.
	option = {
		name = ppr_camp_retreat.0001.a
		trigger = {
			short_term_gold >= minor_gold_laamps_value
		}
		remove_short_term_gold = minor_gold_laamps_value
		scope:abbot = {
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 20
			}
		}
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		stress_impact = {
			greedy = minor_stress_impact_gain
			generous = minor_stress_impact_loss
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_greed = -0.5
				ai_zeal = 0.5
			}
		}
	}

	# We come as humble guests.
	option = {
		name = ppr_camp_retreat.0001.b
		duel = {
			skill = diplomacy
			value = medium_skill_rating
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.0001.b.success
				send_interface_toast = {
					title = ppr_camp_retreat.0001.b.success
					left_icon = scope:abbot
					scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
					scope:abbot = {
						add_opinion = {
							target = root
							modifier = respect_opinion
							opinion = 15
						}
					}
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.0001.b.failure
				send_interface_toast = {
					title = ppr_camp_retreat.0001.b.failure
					left_icon = scope:abbot
					scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
				}
			}
		}
		stress_impact = {
			humble = minor_stress_impact_loss
			arrogant = minor_stress_impact_gain
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_compassion = 0.5
				ai_boldness = -0.25
			}
		}
	}

	# Our camp is owed hospitality.
	option = {
		name = ppr_camp_retreat.0001.c
		domicile ?= { change_provisions = minor_provisions_gain }
		scope:abbot = {
			add_opinion = {
				target = root
				modifier = insulted_opinion
				opinion = -20
			}
		}
		scope:activity = { ppr_camp_retreat_loss_medium_effect = yes }
		stress_impact = {
			arrogant = minor_stress_impact_loss
			humble = medium_stress_impact_gain
			zealous = minor_stress_impact_gain
		}
		ai_chance = {
			base = 15
			ai_value_modifier = {
				ai_greed = 0.5
				ai_boldness = 0.5
				ai_zeal = -0.5
			}
		}
	}
}

######################################################################
# 1001: The Forgotten Manuscript (Scholars)
######################################################################
ppr_camp_retreat.1001 = {
	type = activity_event
	title = ppr_camp_retreat.1001.t
	desc = ppr_camp_retreat.1001.desc
	theme = learning
	override_background = { reference = ep3_medi_study }
	left_portrait = {
		character = root
		animation = reading
	}
	right_portrait = {
		character = scope:finder
		animation = interested
	}

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		involved_activity = {
			ppr_camp_retreat_scholars_trigger = yes
			NOT = { has_variable = ppr_retreat_had_1001 }
			any_attending_character = { ppr_camp_retreat_attending_follower_trigger = yes }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1001
			random_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				weight = {
					base = 1
					modifier = {
						add = 3
						learning >= decent_skill_rating
					}
				}
				save_scope_as = finder
			}
		}
		save_scope_as = host
	}

	# I will copy it myself, night after night.
	option = {
		name = ppr_camp_retreat.1001.a
		duel = {
			skill = learning
			value = decent_skill_rating
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1001.a.success
				send_interface_toast = {
					title = ppr_camp_retreat.1001.a.success
					left_icon = root
					scope:activity = { ppr_camp_retreat_gain_major_effect = yes }
					add_learning_lifestyle_xp = minor_lifestyle_xp
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1001.a.failure
				send_interface_toast = {
					title = ppr_camp_retreat.1001.a.failure
					left_icon = root
					scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
					add_stress = minor_stress_gain
				}
			}
		}
		stress_impact = {
			diligent = minor_stress_impact_loss
			lazy = medium_stress_impact_gain
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_energy = 0.5
				ai_rationality = 0.5
			}
		}
	}

	# The find is theirs: let them study it.
	option = {
		name = ppr_camp_retreat.1001.b
		scope:finder = {
			add_learning_skill = 1
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 15
			}
		}
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		stress_impact = {
			generous = minor_stress_impact_loss
			arrogant = minor_stress_impact_gain
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_compassion = 0.5
				ai_sociability = 0.5
			}
		}
	}

	# It belongs to the brothers: we return it to its shelf.
	option = {
		name = ppr_camp_retreat.1001.c
		add_piety = minor_piety_gain
		scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
		if = {
			limit = { ppr_camp_retreat_abbot_available_trigger = yes }
			scope:activity.var:ppr_retreat_abbot = {
				add_opinion = {
					target = root
					modifier = grateful_opinion
					opinion = 10
				}
			}
		}
		stress_impact = {
			honest = minor_stress_impact_loss
			greedy = minor_stress_impact_gain
		}
		ai_chance = {
			base = 20
			ai_value_modifier = {
				ai_honor = 0.5
				ai_greed = -0.5
			}
		}
	}
}

######################################################################
# 1002: Disputation in the Chapter House (Scholars)
######################################################################
ppr_camp_retreat.1002 = {
	type = activity_event
	title = ppr_camp_retreat.1002.t
	desc = ppr_camp_retreat.1002.desc
	theme = learning
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	left_portrait = {
		character = root
		animation = debating
	}
	right_portrait = {
		character = scope:abbot
		animation = personality_rational
	}
	lower_left_portrait = scope:champion

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		ppr_camp_retreat_abbot_available_trigger = yes
		involved_activity = {
			ppr_camp_retreat_scholars_trigger = yes
			NOT = { has_variable = ppr_retreat_had_1002 }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1002
			var:ppr_retreat_abbot = { save_scope_as = abbot }
			if = {
				limit = {
					any_attending_character = {
						ppr_camp_retreat_attending_follower_trigger = yes
						learning >= decent_skill_rating
					}
				}
				ordered_attending_character = {
					limit = {
						ppr_camp_retreat_attending_follower_trigger = yes
						learning >= decent_skill_rating
					}
					order_by = learning
					save_scope_as = champion
				}
			}
		}
		save_scope_as = host
	}

	# I take up the challenge myself.
	option = {
		name = ppr_camp_retreat.1002.a
		duel = {
			skill = learning
			target = scope:abbot
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1002.a.success
				send_interface_toast = {
					title = ppr_camp_retreat.1002.a.success
					left_icon = root
					right_icon = scope:abbot
					scope:activity = { ppr_camp_retreat_gain_major_effect = yes }
					add_prestige = minor_prestige_gain
					scope:activity = {
						every_attending_character = {
							limit = { ppr_camp_retreat_attending_follower_trigger = yes }
							custom = ppr_camp_retreat_every_attendee
							add_opinion = {
								target = root
								modifier = impressed_opinion
								opinion = 10
							}
						}
					}
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1002.a.failure
				send_interface_toast = {
					title = ppr_camp_retreat.1002.a.failure
					left_icon = root
					right_icon = scope:abbot
					scope:activity = { ppr_camp_retreat_loss_minor_effect = yes }
					add_prestige = minor_prestige_loss
					add_stress = minor_stress_gain
				}
			}
		}
		stress_impact = {
			shy = minor_stress_impact_gain
			arrogant = minor_stress_impact_loss
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_boldness = 0.5
				ai_rationality = 0.25
			}
		}
	}

	# Let my most learned follower speak for the camp.
	option = {
		name = ppr_camp_retreat.1002.b
		trigger = { exists = scope:champion }
		scope:champion = {
			duel = {
				skill = learning
				target = scope:abbot
				50 = {
					compare_modifier = {
						value = scope:duel_value
						multiplier = 3.5
						min = -49
					}
					min = 5
					desc = ppr_camp_retreat.1002.b.success
					root = {
						send_interface_toast = {
							title = ppr_camp_retreat.1002.b.success
							left_icon = scope:champion
							right_icon = scope:abbot
							scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
							scope:champion = {
								add_opinion = {
									target = root
									modifier = grateful_opinion
									opinion = 15
								}
							}
						}
					}
				}
				50 = {
					compare_modifier = {
						value = scope:duel_value
						multiplier = -3.5
						min = -49
					}
					min = 5
					desc = ppr_camp_retreat.1002.b.failure
					root = {
						send_interface_toast = {
							title = ppr_camp_retreat.1002.b.failure
							left_icon = scope:champion
							right_icon = scope:abbot
							scope:activity = { ppr_camp_retreat_loss_minor_effect = yes }
						}
					}
				}
			}
		}
		stress_impact = {
			humble = minor_stress_impact_loss
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_sociability = 0.5
			}
		}
	}

	# Yield the point gracefully.
	option = {
		name = ppr_camp_retreat.1002.c
		add_piety = minor_piety_gain
		scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
		scope:abbot = {
			add_opinion = {
				target = root
				modifier = respect_opinion
				opinion = 15
			}
		}
		stress_impact = {
			arrogant = medium_stress_impact_gain
			stubborn = minor_stress_impact_gain
			humble = minor_stress_impact_loss
		}
		ai_chance = {
			base = 20
			ai_value_modifier = {
				ai_boldness = -0.5
				ai_compassion = 0.25
			}
		}
	}
}

######################################################################
# 1003: The Great Fast (Pilgrims)
######################################################################
ppr_camp_retreat.1003 = {
	type = activity_event
	title = ppr_camp_retreat.1003.t
	desc = ppr_camp_retreat.1003.desc
	theme = faith
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	left_portrait = {
		character = root
		animation = personality_zealous
	}
	right_portrait = {
		character = scope:abbot
		animation = chaplain
	}

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		involved_activity = {
			ppr_camp_retreat_pilgrims_trigger = yes
			NOT = { has_variable = ppr_retreat_had_1003 }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1003
			if = {
				limit = {
					exists = var:ppr_retreat_abbot
					var:ppr_retreat_abbot = { is_alive = yes }
				}
				var:ppr_retreat_abbot = { save_scope_as = abbot }
			}
		}
		save_scope_as = host
	}

	# The whole camp fasts with the brothers.
	option = {
		name = ppr_camp_retreat.1003.a
		scope:activity = { ppr_camp_retreat_gain_major_effect = yes }
		add_piety = minor_piety_gain
		domicile ?= { change_provisions = miniscule_provisions_gain }
		scope:activity = {
			every_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				custom = ppr_camp_retreat_every_attendee
				add_stress = minor_stress_gain
			}
		}
		stress_impact = {
			gluttonous = major_stress_impact_gain
			temperate = minor_stress_impact_loss
			zealous = minor_stress_impact_loss
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_zeal = 1
				ai_compassion = -0.25
			}
		}
	}

	# I alone keep the fast; the camp eats.
	option = {
		name = ppr_camp_retreat.1003.b
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		add_piety = minor_piety_gain
		stress_impact = {
			gluttonous = medium_stress_impact_gain
			temperate = minor_stress_impact_loss
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_compassion = 0.5
			}
		}
	}

	# The road is penance enough.
	option = {
		name = ppr_camp_retreat.1003.c
		scope:activity = { ppr_camp_retreat_loss_minor_effect = yes }
		scope:activity = {
			every_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				custom = ppr_camp_retreat_every_attendee
				add_stress = minor_stress_loss
			}
		}
		stress_impact = {
			gluttonous = minor_stress_impact_loss
			zealous = medium_stress_impact_gain
		}
		ai_chance = {
			base = 20
			ai_value_modifier = {
				ai_zeal = -1
			}
		}
	}
}

######################################################################
# 1004: Vigil of the Relics (Pilgrims)
######################################################################
ppr_camp_retreat.1004 = {
	type = activity_event
	title = ppr_camp_retreat.1004.t
	desc = ppr_camp_retreat.1004.desc
	theme = faith
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	left_portrait = {
		character = root
		animation = prayer
	}
	right_portrait = {
		character = scope:visionary
		animation = ecstasy
	}

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		involved_activity = {
			ppr_camp_retreat_pilgrims_trigger = yes
			NOT = { has_variable = ppr_retreat_had_1004 }
			any_attending_character = { ppr_camp_retreat_attending_follower_trigger = yes }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1004
			random_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				weight = {
					base = 1
					modifier = {
						add = 3
						has_trait = zealous
					}
					modifier = {
						add = 2
						has_trait = lifestyle_mystic
					}
				}
				save_scope_as = visionary
			}
		}
		save_scope_as = host
	}

	# It is a sign: let the whole camp hear of it.
	option = {
		name = ppr_camp_retreat.1004.a
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		add_piety = minor_piety_gain
		scope:visionary = {
			add_piety = minor_piety_gain
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 15
			}
		}
		stress_impact = {
			cynical = medium_stress_impact_gain
			zealous = minor_stress_impact_loss
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_zeal = 1
			}
		}
	}

	# I question them gently about what they saw.
	option = {
		name = ppr_camp_retreat.1004.b
		duel = {
			skill = learning
			value = medium_skill_rating
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1004.b.success
				send_interface_toast = {
					title = ppr_camp_retreat.1004.b.success
					left_icon = scope:visionary
					scope:activity = { ppr_camp_retreat_gain_major_effect = yes }
					add_piety = medium_piety_gain
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1004.b.failure
				send_interface_toast = {
					title = ppr_camp_retreat.1004.b.failure
					left_icon = scope:visionary
					scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
					scope:visionary = {
						add_opinion = {
							target = root
							modifier = disappointed_opinion
							opinion = -10
						}
					}
				}
			}
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_rationality = 1
			}
		}
	}

	# We keep the vigil in silence until dawn.
	option = {
		name = ppr_camp_retreat.1004.c
		add_piety = minor_piety_gain
		scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
		stress_impact = {
			zealous = minor_stress_impact_loss
			gregarious = minor_stress_impact_gain
		}
		ai_chance = {
			base = 20
			ai_value_modifier = {
				ai_sociability = -0.5
			}
		}
	}
}

######################################################################
# 1005: Silence Weighs on the Camp (shared)
######################################################################
ppr_camp_retreat.1005 = {
	type = activity_event
	title = ppr_camp_retreat.1005.t
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:activity = { ppr_camp_retreat_scholars_trigger = yes }
				}
				desc = ppr_camp_retreat.1005.desc_scholars
			}
			desc = ppr_camp_retreat.1005.desc_pilgrims
		}
		desc = ppr_camp_retreat.1005.desc
	}
	theme = faith
	override_background = { reference = ep3_camp }
	left_portrait = {
		character = root
		animation = worry
	}
	right_portrait = {
		character = scope:grumbler
		animation = anger
	}

	weight_multiplier = {
		base = 1
		modifier = {
			add = 1
			involved_activity ?= { ppr_camp_retreat_strict_rule_trigger = yes }
		}
	}

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		involved_activity = {
			NOT = { has_variable = ppr_retreat_had_1005 }
			any_attending_character = { ppr_camp_retreat_attending_follower_trigger = yes }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1005
			random_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				weight = {
					base = 1
					modifier = {
						add = 2
						OR = {
							has_trait = gregarious
							has_trait = impatient
						}
					}
					modifier = {
						add = 3
						opinion = {
							target = root
							value < 0
						}
					}
				}
				save_scope_as = grumbler
			}
		}
		save_scope_as = host
	}

	# I take them aside and listen.
	option = {
		name = ppr_camp_retreat.1005.a
		duel = {
			skill = diplomacy
			target = scope:grumbler
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1005.a.success
				send_interface_toast = {
					title = ppr_camp_retreat.1005.a.success
					left_icon = scope:grumbler
					scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
					scope:grumbler = {
						add_opinion = {
							target = root
							modifier = respect_opinion
							opinion = 15
						}
					}
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1005.a.failure
				send_interface_toast = {
					title = ppr_camp_retreat.1005.a.failure
					left_icon = scope:grumbler
					scope:activity = { ppr_camp_retreat_loss_minor_effect = yes }
					scope:grumbler = {
						add_opinion = {
							target = root
							modifier = annoyed_opinion
							opinion = -10
						}
					}
				}
			}
		}
		stress_impact = {
			shy = minor_stress_impact_gain
			compassionate = minor_stress_impact_loss
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_compassion = 0.5
				ai_sociability = 0.5
			}
		}
	}

	# The rule is the rule.
	option = {
		name = ppr_camp_retreat.1005.b
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		scope:grumbler = {
			add_opinion = {
				target = root
				modifier = annoyed_opinion
				opinion = -20
			}
		}
		scope:activity = {
			every_attending_character = {
				limit = {
					ppr_camp_retreat_attending_follower_trigger = yes
					this != scope:grumbler
				}
				custom = ppr_camp_retreat_every_attendee
				add_stress = minor_stress_gain
			}
		}
		stress_impact = {
			just = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
			forgiving = minor_stress_impact_gain
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_zeal = 0.5
				ai_compassion = -0.5
			}
		}
	}

	# Let us ease the rule for a day.
	option = {
		name = ppr_camp_retreat.1005.c
		scope:activity = { ppr_camp_retreat_loss_medium_effect = yes }
		scope:grumbler = {
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 10
			}
		}
		scope:activity = {
			every_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				custom = ppr_camp_retreat_every_attendee
				add_stress = minor_stress_loss
			}
		}
		stress_impact = {
			lazy = minor_stress_impact_loss
			diligent = minor_stress_impact_gain
			zealous = minor_stress_impact_gain
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_zeal = -0.5
				ai_compassion = 0.5
			}
		}
	}
}

######################################################################
# 1006: A Novice Wants to Follow Us (shared)
######################################################################
ppr_camp_retreat.1006 = {
	type = activity_event
	title = ppr_camp_retreat.1006.t
	desc = {
		desc = ppr_camp_retreat.1006.desc
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:activity = { ppr_camp_retreat_scholars_trigger = yes }
				}
				desc = ppr_camp_retreat.1006.desc_scholars
			}
			desc = ppr_camp_retreat.1006.desc_pilgrims
		}
	}
	theme = faith
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	left_portrait = {
		character = root
		animation = interested
	}
	right_portrait = {
		character = scope:novice
		animation = beg
	}
	lower_right_portrait = scope:abbot

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		is_ai = no # Avoid creating unrecruited characters for AI camps
		involved_activity = {
			NOT = { has_variable = ppr_retreat_had_1006 }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1006
			if = {
				limit = {
					exists = var:ppr_retreat_abbot
					var:ppr_retreat_abbot = { is_alive = yes }
				}
				var:ppr_retreat_abbot = { save_scope_as = abbot }
			}
		}
		save_scope_as = host
		# Created here, as vanilla does, so that options only show add_courtier.
		create_character = {
			template = monk_character_template
			location = root.location
			faith = root.faith
			culture = root.location.culture
			gender_female_chance = root_faith_clergy_gender_female_chance
			save_scope_as = novice
		}
	}

	# Welcome, and walk with us.
	option = {
		name = ppr_camp_retreat.1006.a
		ppr_camp_events_recruit_effect = {
			CHARACTER = scope:novice
			OPINION = 30
		}
		scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
		if = {
			limit = { exists = scope:abbot }
			scope:abbot = {
				add_opinion = {
					target = root
					modifier = annoyed_opinion
					opinion = -10
				}
			}
		}
		ai_chance = {
			base = 40
		}
	}

	# Only with the abbot's blessing.
	option = {
		name = ppr_camp_retreat.1006.b
		trigger = { exists = scope:abbot }
		duel = {
			skill = diplomacy
			target = scope:abbot
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1006.b.success
				send_interface_toast = {
					title = ppr_camp_retreat.1006.b.success
					left_icon = scope:novice
					right_icon = scope:abbot
					ppr_camp_events_recruit_effect = {
						CHARACTER = scope:novice
						OPINION = 20
					}
					scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1006.b.failure
				send_interface_toast = {
					title = ppr_camp_retreat.1006.b.failure
					left_icon = scope:abbot
					scope:activity = { ppr_camp_retreat_loss_minor_effect = yes }
				}
			}
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_honor = 0.5
			}
		}
	}

	# Your place is here, among your brothers.
	option = {
		name = ppr_camp_retreat.1006.c
		add_piety = minor_piety_gain
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		if = {
			limit = { exists = scope:abbot }
			scope:abbot = {
				add_opinion = {
					target = root
					modifier = grateful_opinion
					opinion = 10
				}
			}
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_zeal = 0.5
			}
		}
	}
}

######################################################################
# 1007: Quarrel with the Abbot (shared)
######################################################################
ppr_camp_retreat.1007 = {
	type = activity_event
	title = ppr_camp_retreat.1007.t
	desc = {
		desc = ppr_camp_retreat.1007.desc
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:activity = { ppr_camp_retreat_scholars_trigger = yes }
				}
				desc = ppr_camp_retreat.1007.desc_scholars
			}
			desc = ppr_camp_retreat.1007.desc_pilgrims
		}
	}
	theme = faith
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	left_portrait = {
		character = root
		animation = worry
	}
	right_portrait = {
		character = scope:abbot
		animation = anger
	}
	lower_left_portrait = scope:culprit

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
		ppr_camp_retreat_abbot_available_trigger = yes
		involved_activity = {
			NOT = { has_variable = ppr_retreat_had_1007 }
			any_attending_character = { ppr_camp_retreat_attending_follower_trigger = yes }
		}
	}

	immediate = {
		involved_activity = {
			save_scope_as = activity
			set_variable = ppr_retreat_had_1007
			var:ppr_retreat_abbot = { save_scope_as = abbot }
			random_attending_character = {
				limit = { ppr_camp_retreat_attending_follower_trigger = yes }
				weight = {
					base = 1
					modifier = {
						add = 2
						OR = {
							has_trait = wrathful
							has_trait = arrogant
							has_trait = gluttonous
							has_trait = drunkard
						}
					}
				}
				save_scope_as = culprit
			}
		}
		save_scope_as = host
	}

	# We will make amends.
	option = {
		name = ppr_camp_retreat.1007.a
		trigger = {
			short_term_gold >= tiny_gold_laamps_value
		}
		remove_short_term_gold = tiny_gold_laamps_value
		scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
		scope:abbot = {
			add_opinion = {
				target = root
				modifier = grateful_opinion
				opinion = 10
			}
		}
		stress_impact = {
			arrogant = minor_stress_impact_gain
			greedy = minor_stress_impact_gain
		}
		ai_chance = {
			base = 40
			ai_value_modifier = {
				ai_honor = 0.5
				ai_greed = -0.5
			}
		}
	}

	# My people are not to blame.
	option = {
		name = ppr_camp_retreat.1007.b
		duel = {
			skill = diplomacy
			target = scope:abbot
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = 3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1007.b.success
				send_interface_toast = {
					title = ppr_camp_retreat.1007.b.success
					left_icon = scope:culprit
					right_icon = scope:abbot
					scope:activity = { ppr_camp_retreat_gain_minor_effect = yes }
					scope:culprit = {
						add_opinion = {
							target = root
							modifier = grateful_opinion
							opinion = 20
						}
					}
				}
			}
			50 = {
				compare_modifier = {
					value = scope:duel_value
					multiplier = -3.5
					min = -49
				}
				min = 5
				desc = ppr_camp_retreat.1007.b.failure
				send_interface_toast = {
					title = ppr_camp_retreat.1007.b.failure
					left_icon = scope:abbot
					right_icon = scope:culprit
					scope:activity = { ppr_camp_retreat_loss_medium_effect = yes }
					scope:abbot = {
						add_opinion = {
							target = root
							modifier = annoyed_opinion
							opinion = -15
						}
					}
					scope:culprit = {
						add_opinion = {
							target = root
							modifier = grateful_opinion
							opinion = 10
						}
					}
				}
			}
		}
		stress_impact = {
			compassionate = minor_stress_impact_loss
			shy = minor_stress_impact_gain
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_boldness = 0.5
				ai_compassion = 0.5
			}
		}
	}

	# The culprit will do penance before the whole house.
	option = {
		name = ppr_camp_retreat.1007.c
		scope:activity = { ppr_camp_retreat_gain_medium_effect = yes }
		scope:abbot = {
			add_opinion = {
				target = root
				modifier = respect_opinion
				opinion = 15
			}
		}
		scope:culprit = {
			add_opinion = {
				target = root
				modifier = annoyed_opinion
				opinion = -20
			}
		}
		stress_impact = {
			just = minor_stress_impact_loss
			compassionate = medium_stress_impact_gain
		}
		ai_chance = {
			base = 30
			ai_value_modifier = {
				ai_zeal = 0.5
				ai_compassion = -0.5
			}
		}
	}
}

######################################################################
# 0009: Conclusion - Leaving the Cloister
######################################################################
ppr_camp_retreat.0009 = {
	type = activity_event
	title = {
		first_valid = {
			triggered_desc = {
				trigger = { scope:activity.var:activity_special_type_progression >= 75 }
				desc = ppr_camp_retreat.0009.t_great
			}
			triggered_desc = {
				trigger = { scope:activity.var:activity_special_type_progression >= 50 }
				desc = ppr_camp_retreat.0009.t_success
			}
			triggered_desc = {
				trigger = { scope:activity.var:activity_special_type_progression >= 25 }
				desc = ppr_camp_retreat.0009.t_middling
			}
			desc = ppr_camp_retreat.0009.t_failure
		}
	}
	desc = {
		first_valid = {
			triggered_desc = {
				trigger = {
					scope:activity = { ppr_camp_retreat_scholars_trigger = yes }
				}
				desc = ppr_camp_retreat.0009.intro_scholars
			}
			desc = ppr_camp_retreat.0009.intro_pilgrims
		}
		first_valid = {
			triggered_desc = {
				trigger = { scope:activity.var:activity_special_type_progression >= 75 }
				desc = ppr_camp_retreat.0009.desc_great
			}
			triggered_desc = {
				trigger = { scope:activity.var:activity_special_type_progression >= 50 }
				desc = ppr_camp_retreat.0009.desc_success
			}
			triggered_desc = {
				trigger = { scope:activity.var:activity_special_type_progression >= 25 }
				desc = ppr_camp_retreat.0009.desc_middling
			}
			desc = ppr_camp_retreat.0009.desc_failure
		}
	}
	theme = faith
	override_background = {
		trigger = { religion = religion:islam_religion }
		reference = temple_mosque
	}
	override_background = {
		trigger = {
			NOT = { religion = religion:islam_religion }
		}
		reference = temple_church
	}
	center_portrait = {
		character = root
		triggered_animation = {
			trigger = { scope:activity.var:activity_special_type_progression >= 50 }
			animation = ecstasy
		}
		triggered_animation = {
			trigger = { scope:activity.var:activity_special_type_progression >= 25 }
			animation = personality_content
		}
		animation = disappointed
	}

	trigger = {
		ppr_camp_retreat_event_host_trigger = yes
	}

	immediate = {
		involved_activity = { save_scope_as = activity }
		save_scope_as = host
		#Reward effects
		ppr_camp_retreat_completed_log_entry_effect = yes
	}

	option = {
		name = {
			trigger = { scope:activity.var:activity_special_type_progression >= 50 }
			text = ppr_camp_retreat.0009.a_good
		}
		name = ppr_camp_retreat.0009.a
		ai_chance = {
			base = 100
		}
	}
}
