#########################################################
#
# Way of Life - Intrigue Events
#
# Written by Henrik Fhraeus
#
# ID Range: WoL.2000 to WoL.2999
#
# Intrigue skill "levels up", first with
# character modifiers: wol_schemer_1 to wol_schemer_2,
# then the Schemer trait.
#
#########################################################

namespace = WoL

# Schemer level up chance
character_event = {
	id = WoL.2000

	is_triggered_only = yes
	hide_window = yes

	has_dlc = "Way of Life"

	immediate = {
		# Chance of trait adjustments
		if = {
			limit = { trait = honest }

			random = {
				chance = 50
				remove_trait_honest_effect = yes
			}
		}
		else = {
			random = {
				chance = 15
				add_trait_deceitful_effect = yes
			}
		}

		# Chance of various Intrigue boosters
		character_event = {
			id = WoL.2002
			days = 7
		}

		# Chance of leveling up Schemer skills
		if = {
			limit = { has_character_modifier = wol_schemer_2 }

			random = {
				chance = 10

				character_event = {
					id = WoL.2003 # Gain the Schemer or Impaler trait
					days = 4
				}
			}
		}
		else_if = {
			limit = { has_character_modifier = wol_schemer_1 }

			random = {
				chance = 20

				remove_character_modifier = wol_schemer_1

				add_character_modifier = {
					name = wol_schemer_2
					duration = -1
				}
			}
		}
		else_if = {
			limit = {
				NOR = {
					trait = master_schemer
					trait = impaler
				}
			}

			random = {
				chance = 50

				add_character_modifier = {
					name = wol_schemer_1
					duration = -1
				}
			}
		}
	}
}

# Chance of Intrigue boosts
character_event = {
	id = WoL.2002
	desc = EVTDESC_WOL_2002
	picture = GFX_evt_whispers
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	trigger = {
		trigger_if = {
			limit = { trait = amateurish_plotter }
			random < 10 # 10% chance
		}
		trigger_else_if = {
			limit = { trait = flamboyant_schemer }
			random < 5 # 5% chance
		}
		trigger_else = {
			trait = intricate_webweaver
			random < 1 # 1% chance
		}
	}

	option = {
		name = EVTOPTA_WOL_81

		trigger_switch = {
			on_trigger = trait

			amateurish_plotter = {
				hidden_effect = { remove_trait = amateurish_plotter }
				add_trait = flamboyant_schemer
			}

			flamboyant_schemer = {
				hidden_effect = { remove_trait = flamboyant_schemer }
				add_trait = intricate_webweaver
			}

			intricate_webweaver = {
				hidden_effect = { remove_trait = intricate_webweaver }
				add_trait = elusive_shadow
			}
		}
	}
}

# Schemer or Impaler trait gained!
character_event = {
	id = WoL.2003
	desc = EVTDESC_WOL_2003
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	trigger = {
		lifestyle_traits < 1
		NOT = { has_character_flag = wol_no_to_intrigue_trait }
	}

	option = {
		name = EVTOPTA_WOL_2003

		remove_character_modifier = wol_schemer_2
		add_trait = master_schemer

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

				random_list = {
					33 = { give_nickname = nick_the_spider }
					33 = { give_nickname = nick_the_whisperer }
					33 = { give_nickname = nick_the_shadow }
				}
			}
		}

	#	log = "WoL.2003: [Root.GetTitledName] achieves the lifestyle Schemer!"

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTB_WOL_2003

		remove_character_modifier = wol_schemer_2
		add_trait = impaler

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

				random_list = {
					25 = { give_nickname = nick_the_cruel }
					25 = { give_nickname = nick_the_terrible }
					25 = { give_nickname = nick_the_impaler }
					25 = { give_nickname = nick_the_devil }
				}
			}
		}

	#	log = "WoL.2003: [Root.GetTitledName] achieves the lifestyle Impaler!"

		ai_chance = {
			factor = 20

			mult_modifier = {
				factor = 0.1
				trait = kind
			}

			mult_modifier = {
				factor = 0.25
				trait = charitable
			}

			mult_modifier = {
				factor = 2
				trait = envious
			}

			mult_modifier = {
				factor = 2
				trait = wroth
			}

			mult_modifier = {
				factor = 100
				trait = cruel
			}
		}
	}

	option = {
		name = EVTOPTC_WOL_2003

		set_character_flag = wol_no_to_intrigue_trait

		ai_chance = { factor = 0 }
	}
}


# "Spy On" Decision event START
character_event = {
	id = WoL.2050
	desc = EVTDESC_WOL_2050
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	only_capable = yes
	prisoner = no

	is_triggered_only = yes # decision_spy_on, way_of_life_decsions.txt

	immediate = {
		save_event_target_as = target_snooper
		set_character_flag = spy_on_confirmed

		FROM = {
			save_event_target_as = target_spy_on
		}
	}

	option = {
		name = EVTOPTA_WOL_2050

		character_event = {
			id = WoL.2060
			days = 30
			random = 60
			tooltip = EVTTOOLTIP_WoL_110
		}

	#	log = "WoL.2050: [Root.GetTitledName] starts spying on [From.GetTitledName]"
	}
}

# Hidden 'outcome tombola' event for the "Spy On" decision
character_event = {
	id = WoL.2060

	is_triggered_only = yes
	hide_window = yes

	only_capable = yes
	prisoner = no

	trigger = {
		OR = {
			has_focus = focus_intrigue
			trait = master_schemer
		}

		has_opinion_modifier = {
			name = opinion_spying_on
			who = event_target:target_spy_on
		}
	}

	fail_trigger_effect = {
		character_event = { id = WoL.2069 } # Clear out any flags, etc
	}

	immediate = {
		if = {
			limit = {
				event_target:target_spy_on = {
					is_alive = no
				}
			}

			character_event = { id = WoL.2061 }
		}
		else_if = {
			limit = {
				event_target:target_spy_on = {
					prisoner = yes
				}
			}

			character_event = { id = WoL.2062 }
		}
		else_if = {
			limit = {
				event_target:target_spy_on = {
					is_incapable = yes
				}
			}

			character_event = { id = WoL.2063 }
		}
		else_if = {
			limit = {
				NOT = { same_realm = event_target:target_spy_on }
			}

			character_event = { id = WoL.2064 }
		}

		repeat_event = {
			id = WoL.2060 # Try again later
			days = 40
			random = 40
		}

		if = {
			limit = {
				event_target:target_spy_on = {
					is_inaccessible_trigger = no
				}
			}

			random_list = {
				300 = { # Nothing happens
					mult_modifier = {
						factor = 0.75

						attribute_diff = {
							attribute = intrigue
							character = event_target:target_spy_on
							value >= 3
						}
					}

					mult_modifier = {
						factor = 0.75

						attribute_diff = {
							attribute = intrigue
							character = event_target:target_spy_on
							value >= 5
						}
					}

					mult_modifier = {
						factor = 0.5

						attribute_diff = {
							attribute = intrigue
							character = event_target:target_spy_on
							value >= 10
						}
					}

					mult_modifier = {
						factor = 2

						attribute_diff = {
							attribute = intrigue
							character = event_target:target_spy_on
							value < -2
						}
					}

					mult_modifier = {
						factor = 3

						attribute_diff = {
							attribute = intrigue
							character = event_target:target_spy_on
							value < -4
						}
					}

					mult_modifier = {
						factor = 4

						attribute_diff = {
							attribute = intrigue
							character = event_target:target_spy_on
							value < -9
						}
					}

					mult_modifier = {
						factor = 0.75
						has_character_modifier = wol_schemer_1
					}

					mult_modifier = {
						factor = 0.5
						has_character_modifier = wol_schemer_2
					}

					mult_modifier = {
						factor = 0.2
						trait = master_schemer
					}

					mult_modifier = {
						factor = 1.5
						event_target:target_spy_on = { has_character_modifier = wol_schemer_1 }
					}

					mult_modifier = {
						factor = 3
						event_target:target_spy_on = { has_character_modifier = wol_schemer_2 }
					}

					mult_modifier = {
						factor = 5
						event_target:target_spy_on = { trait = master_schemer }
					}

					# CK2Plus
					mult_modifier = {
						factor = 0.75
						has_character_modifier = plot_assisted_spying
					}

					mult_modifier = {
						factor = 0.60
						has_character_modifier = plot_assisted_spying2
					}

					mult_modifier = {
						factor = 0.45
						has_character_modifier = plot_assisted_spying3
					}

					mult_modifier = {
						factor = 0.30
						has_character_modifier = plot_assisted_spying4
					}

					mult_modifier = {
						factor = 0.15
						has_character_modifier = plot_assisted_spying5
					}

					random = {
						chance = 25
						character_event = { id = WoL.2065 } # Time to give up?
					}
				}

				100 = { # Plot uncovered
					trigger = {
						event_target:target_spy_on = {
							OR = {
								AND = {
									has_plot = yes
									NOT = { plot_is_known_by = ROOT }
								}

								any_backed_character = {
									has_plot = yes
									NOT = { plot_is_known_by = ROOT }
								}
							}
						}
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					event_target:target_spy_on = {
						if = {
							limit = {
								has_plot = yes
								NOT = { plot_is_known_by = ROOT }
							}

							save_event_target_as = uncovered_plotter
						}
						else = {
							random_backed_character = {
								limit = {
									has_plot = yes
									NOT = { plot_is_known_by = ROOT }
								}

								save_event_target_as = uncovered_plotter
							}
						}
					}

					character_event = { id = WoL.2071 }
				}

				100 = { # Plot assisted - CK2Plus
					trigger = {
						OR = {
							AND = {
								has_plot = yes
								plot_target_char = { character = event_target:target_spy_on }
								NOR = {
									has_character_modifier = plot_assisted_spying
									has_character_modifier = plot_assisted_spying2
									has_character_modifier = plot_assisted_spying3
									has_character_modifier = plot_assisted_spying4
									has_character_modifier = plot_assisted_spying5
								}
							}
							any_backed_character = {
								plot_target_char = { character = event_target:target_spy_on }
								NOR = {
									has_character_modifier = plot_assisted_spying
									has_character_modifier = plot_assisted_spying2
									has_character_modifier = plot_assisted_spying3
									has_character_modifier = plot_assisted_spying4
									has_character_modifier = plot_assisted_spying5
								}
							}
						}
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					character_event = { id = Plus.1500 }
				}

				30 = { # Discovers real father
					trigger = {
						event_target:target_spy_on = {
							is_father_real_father = no

							NOR = {
								trait = bastard
								trait = legit_bastard
								is_child_of = ROOT
								real_father = { character = ROOT }

								# Already done this once
								reverse_has_opinion_modifier = {
									name = opinion_spy_discovered_father
									who = ROOT
								}
							}
						}
					}

					character_event = { id = WoL.2000 days = 1 } # Chance of levelling up Intrigue skills

					character_event = { id = Plus.1505 }
				}

				30 = { # Discovers lover
					mult_modifier = {
						factor = 2
						OR = {
							is_married = event_target:target_spy_on
							is_consort = event_target:target_spy_on
						}
					}

					trigger = {
						NOR = {
							# Already done this once
							has_opinion_modifier = {
								name = opinion_spy_discovered_lover
								who = event_target:target_spy_on
							}
						}

						event_target:target_spy_on = {
							is_married = event_target:target_spy_on
							has_lover = yes

							NOR = {
								has_character_modifier = adulteress
								has_character_modifier = adulterer
								has_character_modifier = incestuous_adulteress
								has_character_modifier = incestuous_adulterer
								has_character_modifier = adulterous_priest
								has_character_modifier = cradle_robber
								has_character_modifier = known_sodomite
								has_character_modifier = known_sodomite_pagan
							}

							any_lover = {
								NOR = {
									is_consort = event_target:target_spy_on
									is_married = event_target:target_spy_on
								}

								OR = {
									is_married = yes
									same_sex = event_target:target_spy_on
									is_close_relative = event_target:target_spy_on
									is_priest = yes
									trait = monk
									trait = nun

									age_diff = {
										who = event_target:target_spy_on
										years >= 25
									}
								}
							}
						}
					}

					character_event = { id = WoL.2000 days = 1 } # Chance of levelling up Intrigue skills

					character_event = { id = Plus.1515 }
				}

				30 = { # Chance to enflame rivalry
					trigger = {
						NOT = {
							# Already done this once
							has_opinion_modifier = {
								name = opinion_spy_enflamed_rivalry
								who = event_target:target_spy_on
							}
						}

						event_target:target_spy_on = {
							is_ruler = yes

							top_liege = {
								any_realm_lord = {
									has_regent = no

									OR = {
										real_tier = event_target:target_spy_on
										vassal_of = event_target:target_spy_on
									}

									reverse_opinion = { who = event_target:target_spy_on value < 0 }
									opinion = { who = event_target:target_spy_on value < 0 }

									NOR = {
										character = event_target:target_spy_on
										character = ROOT
										is_rival = event_target:target_spy_on

									}
								}
							}
						}
					}

					mult_modifier = {
						factor = 2

						event_target:target_spy_on = {
							OR = {
								trait = envious
								trait = wroth
								trait = proud
								trait = cruel
							}
						}
					}

					mult_modifier = {
						factor = 0.5

						event_target:target_spy_on = {
							OR = {
								trait = humble
								trait = content
								trait = kind
							}
						}
					}

					character_event = { id = WoL.2000 days = 1 } # Chance of levelling up Intrigue skills

					character_event = { id = Plus.1525 }
				}

				30 = { # Chance to reduce relations with liege
					trigger = {
						NOT = {
							# Already done this once
							has_opinion_modifier = {
								name = opinion_spy_enflamed_rivalry
								who = event_target:target_spy_on
							}
						}

						event_target:target_spy_on = {
							independent = no

							NOR = {
								vassal_of = ROOT
								is_rival = liege
							}

							OR = {
								opinion = { who = liege value < 0 }
								reverse_opinion = { who = liege value < 0 }
							}
						}
					}

					mult_modifier = {
						factor = 2

						event_target:target_spy_on = {
							OR = {
								trait = envious
								trait = wroth
								trait = proud
								trait = cruel
							}
						}
					}

					mult_modifier = {
						factor = 0.5

						event_target:target_spy_on = {
							OR = {
								trait = humble
								trait = content
								trait = kind
							}
						}
					}

					character_event = { id = WoL.2000 days = 1 } # Chance of levelling up Intrigue skills

					character_event = { id = Plus.1540 }
				}

				30 = { # Adultery of spouse or consort uncovered
					trigger = {
						event_target:target_spy_on = {
							OR = {
								is_married = ROOT
								is_consort = ROOT

								any_lover = {
									OR = {
										is_married = ROOT
										is_consort = ROOT
									}
								}
							}

							trigger_if = {
								limit = {
									OR = {
										is_married = ROOT
										is_consort = ROOT
									}
								}

								any_lover = {
									NOT = { character = ROOT }
								}
							}
						}
					}

					mult_modifier = {
						factor = 0.05

						event_target:target_spy_on = {
							OR = {
								has_character_modifier = wol_court_tomcat
								has_character_modifier = wol_court_vixen
							}
						}
					}

					mult_modifier = {
						factor = 0.05

						event_target:target_spy_on = {
							any_lover = {
								OR = {
									has_character_modifier = wol_court_tomcat
									has_character_modifier = wol_court_vixen
									has_character_modifier = wol_schemer_2
									trait = master_schemer
								}

								NOT = { character = ROOT }
							}
						}
					}

					mult_modifier = {
						factor = 0.1

						event_target:target_spy_on = {
							any_lover = {
								has_character_modifier = wol_schemer_1
								NOT = { character = ROOT }
							}
						}
					}

					mult_modifier = {
						factor = 2

						event_target:target_spy_on = {
							trigger_if = {
								limit = { is_lover = ROOT }
								num_of_lovers >= 3
							}
							trigger_else = {
								num_of_lovers >= 2
							}
						}
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					if = {
						limit = {
							event_target:target_spy_on = {
								OR = {
									is_married = ROOT
									is_consort = ROOT
								}
							}
						}

						event_target:target_spy_on = {
							save_event_target_as = cheating_spouse

							random_lover = {
								limit = {
									NOT = { character = ROOT }
								}

								save_event_target_as = adulterer
							}
						}
					}
					else = {
						event_target:target_spy_on = {
							save_event_target_as = adulterer

							random_lover = {
								limit = {
									OR = {
										is_married = ROOT
										is_consort = ROOT
									}
								}

								save_event_target_as = cheating_spouse
							}
						}
					}

					set_character_flag = spy_spouse_affair
					character_event = { id = WoL.1003 } # wol_lover_events.txt
				}

				1000 = { # Treason charges & blackmail. Allows imprisonment or faction prevention/joining.
					trigger = {
						always = no # Disabled in CK2Plus - Use plot instead

						OR = {
							event_target:target_spy_on = { independent = no }

							# Already done this once
							NOT = {
								has_opinion_modifier = {
									who = event_target:target_spy_on
									name = opinion_spy_blackmailed
								}
							}
						}
					}

					mult_modifier = {
						factor = 3

						event_target:target_spy_on = {
							society_is_criminal = yes
							NOT = { same_society_as = ROOT }
						}
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					character_event = { id = WoL.2080 }
				}

				10 = { # Chance to slander
					trigger = {
						event_target:target_spy_on = {
							NOT = { has_character_modifier = vicious_rumors }
						}

						NOT = { # Hasn't already done it
							has_opinion_modifier = {
								name = opinion_spy_rumors
								who = event_target:target_spy_on
							}
						}
					}

					mult_modifier = {
						factor = 0.5

						OR = {
							trait = temperate
							trait = just
							trait = honest
							trait = kind
						}
					}

					mult_modifier = {
						factor = 3

						event_target:target_spy_on = {
							OR = {
								has_character_modifier = incestuous_adulterer
								has_character_modifier = incestuous_adulteress
								has_character_modifier = adulterer
								has_character_modifier = adulteress
								has_character_modifier = known_sodomite
								has_character_modifier = known_sodomite_pagan
								has_character_modifier = cradle_robber
								has_character_modifier = adulterous_priest
								trait = hedonist
								trait = drunkard
								# trait = impaler
								trait = decadent
								# trait = inbred
								# trait = dwarf
								trait = homosexual
								# trait = gluttonous
								trait = bastard
								trait = legit_bastard
								trait = lunatic
								trait = possessed
								trait = cynical
							}
						}
					}

					# CK2Plus
					mult_modifier = {
						factor = 2.0

						OR = {
							trait = lustful
							trait = cruel
							trait = wroth
							trait = craven
						}
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					character_event = { id = WoL.2100 }
				}

				400 = { # Chance to murder the target
					trigger = {
						always = no # Disabled in CK2Plus - Use murder plots instead
						intrigue >= event_target:target_spy_on

						OR = {
							trait = master_schemer
							has_character_modifier = wol_schemer_1
							has_character_modifier = wol_schemer_2
						}
					}

					mult_modifier = {
						factor = 0.25
						has_character_modifier = wol_schemer_1
					}

					mult_modifier = {
						factor = 0.5
						has_character_modifier = wol_schemer_2
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					character_event = { id = WoL.2110 }
				}

				400 = { # Chance to abduct the target
					trigger = {
						always = no # Disabled in CK2Plus - Use plot instead
						intrigue >= event_target:target_spy_on

						OR = {
							trait = master_schemer
							has_character_modifier = wol_schemer_1
							has_character_modifier = wol_schemer_2
						}
					}

					mult_modifier = {
						factor = 0.25
						has_character_modifier = wol_schemer_1
					}

					mult_modifier = {
						factor = 0.5
						has_character_modifier = wol_schemer_2
					}

					character_event = {
						id = WoL.2000 # Chance of levelling up Intrigue skills
						days = 1
					}

					character_event = { id = WoL.2120 }
				}
			}
		}
	}
}


# My target has died!
character_event = {
	id = WoL.2061
	desc = EVTDESC_WOL_2061
	picture = GFX_evt_death
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	immediate = {
		character_event = { id = WoL.2069 }
	}

	option = {
		name = EVTOPTA_WOL_2061
	}
}

# My target has been imprisoned!
character_event = {
	id = WoL.2062
	desc = EVTDESC_WOL_2062
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	immediate = {
		character_event = { id = WoL.2069 }
	}

	option = {
		name = EVTOPTA_WOL_2061
	}
}

# My target has become incapable!
character_event = {
	id = WoL.2063
	desc = EVTDESC_WOL_2063
	picture = GFX_evt_illness
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	immediate = {
		character_event = { id = WoL.2069 }
	}

	option = {
		name = EVTOPTA_WOL_2061
	}
}

# My target is not longer in the same realm
character_event = {
	id = WoL.2064
	desc = EVTDESC_WOL_2064
	picture = GFX_evt_courier
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	immediate = {
		character_event = { id = WoL.2069 }
	}

	option = {
		name = EVTOPTA_WOL_2061
	}
}

# My efforts are not bearing fruit. Give up?
character_event = {
	id = WoL.2065
	desc = EVTDESC_WOL_2065
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2065 # Give up

		character_event = {
			id = WoL.2069
			tooltip = EVTTOOLTIP_STOP_SPYING
		}
	}

	option = {
		name = EVTOPTB_WOL_2065 # Keep spying

		custom_tooltip = { text = EVTTOOLTIP_CONTINUE_SPYING }

		ai_chance = { factor = 10 }
	}
}

# End of "Spy On" event to clear out flags, etc
character_event = {
	id = WoL.2069

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		remove_opinion = {
			name = opinion_spying_on
			who = event_target:target_spy_on
		}

		add_character_modifier = {
			name = spying_timer
			years = 1
			hidden = yes
		}

		clear_delayed_event = { id = WoL.2060 }

		clr_character_flag = charge_illegitimate
		clr_character_flag = charge_heretic
		clr_character_flag = charge_infidel
		clr_character_flag = charge_deviant
		clr_character_flag = charge_traitor
		clr_character_flag = charge_slanderer
		clr_character_flag = spy_on_confirmed
	}
}

# Plot uncovered
character_event = {
	id = WoL.2071
	picture = GFX_evt_shadowy_cabal
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:plot_target

	desc = {
		trigger = {
			event_target:target_spy_on = { character = event_target:uncovered_plotter }
			NOT = { is_plot_target_of = event_target:uncovered_plotter }
		}
		text = EVTDESC_WOL_2071
	}
	desc = {
		trigger = {
			event_target:target_spy_on = { NOT = { character = event_target:uncovered_plotter } }
			NOT = { is_plot_target_of = event_target:uncovered_plotter }
		}
		text = EVTDESC_WOL_2071_B
	}
	desc = {
		trigger = { is_plot_target_of = event_target:uncovered_plotter }
		text = EVTDESC_WOL_2071_C
	}

	is_triggered_only = yes

	immediate = {
		event_target:uncovered_plotter = {
			plot_target_char = {
				save_event_target_as = plot_target

				if = {
					limit = {
						OR = {
							character = ROOT
							is_married = ROOT
							is_child_of = ROOT
						}
					}

					ROOT = {
						opinion = {
							name = devious_plotter
							who = event_target:uncovered_plotter
							years = 10
						}
					}
				}
			}
		}

	#	log = "WoL.2071: [Root.GetTitledName] unveils [From.GetTitledName]'s plot to [From.GetPlot]!"
	}

	option = {
		name = EVTOPTC_WOL_2071 # Attempt to blackmail

		trigger = {
			event_target:uncovered_plotter = {
				plot_target_char = {
					NOR = {
						character = ROOT
						is_married = ROOT
						is_child_of = ROOT
					}
				}
			}
		}

		event_target:uncovered_plotter = {
			show_scope_change = no

			reveal_plot = ROOT

			letter_event = {
				id = 7260
				days = 1
				tooltip = EVTTOOLTIP7260
			}
		}

		if = {
			limit = { trait = honest }
			remove_trait = honest
		}
		else_if = {
			limit = { NOT = { trait = deceitful } }

			random = {
				chance = 50
				add_trait = deceitful
			}
		}

		ai_chance = {
			factor = 100

			trigger = {
				NOR = {
					trait = kind
					trait = honest
					trait = just
					trait = content
				}
			}

			mult_modifier = {
				factor = 3
				trait = greedy
			}

			mult_modifier = {
				factor = 2

				OR = {
					trait = envious
					trait = deceitful
					trait = ambitious
				}
			}
		}
	}

	option = {
		name = EVTOPTD_WOL_2071 # Quietly let the target know

		trigger = {
			event_target:uncovered_plotter = {
				NOT = { plot_is_known_by = event_target:plot_target }

				plot_target_char = {
					NOR = {
						character = ROOT
						is_married = ROOT
						is_child_of = ROOT
					}
				}
			}
		}

		event_target:uncovered_plotter = {
			show_scope_change = no

			reveal_plot = ROOT
		}

		event_target:plot_target = {
			show_scope_change = no

			letter_event = {
				id = WoL.2072
				days = 1
				tooltip = EVTTOOLTIP_INFORM_TARGET
			}

			tooltip = {
				opinion = {
					name = opinion_grateful
					who = ROOT
					years = 5
				}
			}
		}

		ai_chance = {
			factor = 100

			trigger = {
				opinion = {
					who = event_target:plot_target
					value >= -25
				}
			}

			mult_modifier = {
				factor = 0.5

				OR = {
					trait = cruel
					trait = deceitful
					trait = greedy
				}
			}

			mult_modifier = {
				factor = 2

				OR = {
					trait = kind
					trait = honest
					trait = just
				}
			}

			mult_modifier = {
				factor = 0.5

				opinion = {
					who = event_target:plot_target
					value >= 0
				}
			}

			mult_modifier = {
				factor = 2

				opinion = {
					who = event_target:plot_target
					value >= 25
				}
			}

			mult_modifier = {
				factor = 3

				opinion = {
					who = event_target:plot_target
					value >= 50
				}
			}

			mult_modifier = {
				factor = 5

				opinion = {
					who = event_target:plot_target
					value >= 75
				}
			}
		}
	}

	option = {
		name = EVTOPTA_WOL_2071 # I shall keep this information to myself

		event_target:uncovered_plotter = {
			show_scope_change = no

			reveal_plot = ROOT
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTB_WOL_2071 # Great, now stop spying

		custom_tooltip = {
			text = EVTTOOLTIP_STOP_SPYING

			character_event = { id = WoL.2069 } # Clear out flags and end spying

			event_target:uncovered_plotter = {
				reveal_plot = ROOT
			}
		}

		ai_chance = { factor = 50 }
	}
}

# Target informed of plot
letter_event = {
	id = WoL.2072
	desc = EVTDESC_WOL_2072
	border = GFX_event_letter_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2072

		opinion = {
			name = opinion_grateful
			who = FROM
			years = 5
		}

		event_target:uncovered_plotter = { reveal_plot = yes }

		opinion = {
			name = devious_plotter
			who = event_target:uncovered_plotter
			years = 10
		}

		if = {
			limit = { NOT = { vassal_of = event_target:uncovered_plotter }  }

			liege = {
				show_scope_change = no

				opinion = {
					name = devious_plotter
					who = event_target:uncovered_plotter
					years = 10
				}
			}
		}
	}
}

### DIRT UNCOVERED

# Dirt uncovered: blackmail or expose to give imprisonment reasons
character_event = {
	id = WoL.2080
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	immediate = {
		hidden_effect = {
			if = {
				limit = {
					event_target:target_spy_on = {
						society_is_criminal = yes
						society_is_devil_worshiper = no
						NOT = { same_society_as = ROOT }
					}
				}

				set_character_flag = charge_secret_society
			}
			else_if = {
				limit = {
					event_target:target_spy_on = {
						society_is_criminal = yes
						society_is_devil_worshiper = yes
						NOT = { same_society_as = ROOT }
					}
				}

				set_character_flag = charge_witch
			}
			else_if = {
				limit = {
					event_target:target_spy_on = {
						is_father_real_father = no

						NOR = {
							trait = bastard
							trait = legit_bastard
						}
					}
				}

				set_character_flag = charge_illegitimate
			}
			else_if = {
				limit = {
					event_target:target_spy_on = {
						OR = {
							trait = cynical

							AND = {
								trait = mutazilite
								liege = { trait = ashari }
							}

							AND = {
								trait = ashari
								liege = { trait = mutazilite }
							}

							AND = {
								religion_group = liege

								NOR = {
									religion = liege
									religion_group = pagan_group
									religion_group = indian_group
								}
							}
						}
					}
				}

				set_character_flag = charge_heretic
			}
			else_if = {
				limit = {
					event_target:target_spy_on = {
						trigger_if = {
							limit = { religion_group = liege }

							religion_group = pagan_group
							NOT = { religion = liege }
						}
					}
				}

				set_character_flag = charge_infidel
			}
			else_if = {
				limit = {
					event_target:target_spy_on = {
						OR = {
							trait = decadent
							trait = hedonist
							trait = homosexual
							trait = possessed
							trait = lunatic
							trait = arbitrary
							trait = cruel
							trait = impaler
							trait = master_seducer
							trait = master_seductress
							has_character_modifier = incestuous_adulterer
							has_character_modifier = incestuous_adulteress
							has_character_modifier = adulterer
							has_character_modifier = adulteress
							has_character_modifier = known_sodomite
							has_character_modifier = cradle_robber
							has_character_modifier = adulterous_priest
						}
					}
				}

				set_character_flag = charge_deviant
			}
			else = {
				random_list = {
					10 = { set_character_flag = charge_traitor }
					90 = { set_character_flag = charge_slanderer }
				}
			}
		}
	}

	desc = {
		text = EVTDESC_WOL_2080
		trigger = { has_character_flag = charge_slanderer }
	}
	desc = {
		text = EVTDESC_WOL_2080_BASTARD
		trigger = { has_character_flag = charge_illegitimate }
	}
	desc = {
		text = EVTDESC_WOL_2080_HERETIC
		trigger = { has_character_flag = charge_heretic }
	}
	desc = {
		text = EVTDESC_WOL_2080_INFIDEL
		trigger = { has_character_flag = charge_infidel }
	}
	desc = {
		text = EVTDESC_WOL_2080_DEVIANT
		trigger = { has_character_flag = charge_deviant }
	}
	desc = {
		text = EVTDESC_WOL_2080_TRAITOR
		trigger = { has_character_flag = charge_traitor }
	}
	desc = {
		text = EVTDESC_WOL_2080_CULTIST
		trigger = { has_character_flag = charge_secret_society }
	}
	desc = {
		text = EVTDESC_WOL_2080_DW
		trigger = { has_character_flag = charge_witch }
	}

	option = { # Inform liege
		name = EVTOPTA_WOL_2080

		trigger = {
			NOT = { is_liege_of = event_target:target_spy_on }

			event_target:target_spy_on = {
				independent = no

				liege = {
					NOT = { war_with = ROOT }
					is_adult = yes
					is_incapable = no
					is_inaccessible_trigger = no
				}
			}
		}

		custom_tooltip = {
			text = EVTOPTC_WOL_2080_TOOLTIP

			event_target:target_spy_on = {
				liege = {
					character_event = { id = WoL.2082 }
				}
			}

			opinion = {
				who = event_target:target_spy_on
				name = opinion_spy_blackmailed
			}
		}

		# Mudslinger achievement check event
		character_event = { id = steam.020 }

		ai_chance = { factor = 100 }
	}

	option = { # Expose and denounce!
		name = {
			text = EVTOPTB_WOL_2080
			trigger = {
				NOR = {
					has_character_flag = charge_illegitimate
					has_character_flag = charge_traitor
					has_character_flag = charge_witch
				}
			}
		}
		name = {
			text = EVTOPTB_WOL_2080_HARSH
			trigger = {
				OR = {
					has_character_flag = charge_illegitimate
					has_character_flag = charge_traitor
					has_character_flag = charge_witch
				}
			}
		}

		trigger = { is_liege_of = event_target:target_spy_on }

		opinion = {
			who = event_target:target_spy_on
			name = opinion_spy_blackmailed
		}

		event_target:target_spy_on = {
			show_scope_change = no

			character_event = {
				id = WoL.2081
				tooltip = EVTOPTB_WOL_2080_TOOLTIP
			}
		}

		if = {
			limit = { has_character_flag = charge_secret_society }

			opinion = {
				name = opinion_charge_cultist
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_witch }

			opinion = {
				name = opinion_charge_dw
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_illegitimate }

			opinion = {
				name = opinion_charge_illegitimate
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_heretic }

			opinion = {
				name = opinion_charge_heresiarch
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_infidel }

			opinion = {
				name = opinion_charge_infidel
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_deviant }

			opinion = {
				name = opinion_charge_deviant
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_traitor }

			opinion = {
				name = opinion_charge_traitor
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = { has_character_flag = charge_slanderer }

			opinion = {
				name = opinion_charge_slanderer
				who = event_target:target_spy_on
				years = 2
			}
		}

	#	log = "WoL.2080: [Root.GetTitledName] slanders [target_spy_on.GetTitledName]!"

		clr_character_flag = charge_illegitimate
		clr_character_flag = charge_heretic
		clr_character_flag = charge_infidel
		clr_character_flag = charge_deviant
		clr_character_flag = charge_traitor
		clr_character_flag = charge_slanderer
		clr_character_flag = charge_secret_society
		clr_character_flag = charge_witch

		# Mudslinger achievement check event
		character_event = { id = steam.020 }

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTC_WOL_2080 # Blackmail to prevent factionalism

		trigger = {
			is_liege_of = event_target:target_spy_on

			event_target:target_spy_on = {
				is_playable = yes

				NOT = {
					has_opinion_modifier = {
						who = liege
						name = opinion_coerced_into_leaving_faction
					}
				}
			}
		}

		opinion = {
			name = opinion_spy_blackmailed
			who = event_target:target_spy_on
		}

		event_target:target_spy_on = {
			show_scope_change = no

			character_event = {
				id = WoL.2086
				tooltip = EVTOPTC_WOL_2080_TOOLTIP
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 10

				event_target:target_spy_on = {
					in_faction = yes
				}
			}
		}
	}

	option = {
		name = EVTOPTD_WOL_2080 # Blackmail to join my factions

		trigger = {
			same_liege = event_target:target_spy_on

			event_target:target_spy_on = {
				is_playable = yes
				ai = yes

				NOR = {
					vassal_of = ROOT

					has_opinion_modifier = {
						who = ROOT
						name = opinion_coerced_into_joining_faction
					}
				}
			}
		}

		custom_tooltip = { text = EVTOPTD_WOL_2080_TOOLTIP }

		opinion = {
			name = opinion_spy_blackmailed
			who = event_target:target_spy_on
		}

		event_target:target_spy_on = {
			character_event = { id = WoL.2089 }
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTE_WOL_2080 # Keep to myself

		custom_tooltip = {
			text = EVTOPTE_WOL_2080_TOOLTIP

			clr_character_flag = charge_illegitimate
			clr_character_flag = charge_heretic
			clr_character_flag = charge_infidel
			clr_character_flag = charge_deviant
			clr_character_flag = charge_traitor
			clr_character_flag = charge_slanderer
			clr_character_flag = charge_secret_society
			clr_character_flag = charge_witch
		}
	}

	option = {
		name = EVTOPTF_WOL_2080 # Keep to myself and end spying

		custom_tooltip = {
			text = EVTOPTF_WOL_2080_TOOLTIP

			character_event = { id = WoL.2069 } # Clear out flags and end spying

			clr_character_flag = charge_illegitimate
			clr_character_flag = charge_heretic
			clr_character_flag = charge_infidel
			clr_character_flag = charge_deviant
			clr_character_flag = charge_traitor
			clr_character_flag = charge_slanderer
			clr_character_flag = charge_secret_society
			clr_character_flag = charge_witch
		}
	}
}

# Dirt uncovered: target exposed, notification
character_event = {
	id = WoL.2081
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	desc = {
		text = EVTDESC_WOL_2081
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_dishonorable }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_BASTARD
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_illegitimate }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_TRAITOR
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_traitor }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_HERETIC
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_heretic }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_INFIDEL
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_infidel }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_DEVIANT
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_deviant }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_DW
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_witch }
		}
	}
	desc = {
		text = EVTDESC_WOL_2081_CULTIST
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_secret_society }
		}
	}

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2081 # Lies and slander!

		opinion = {
			name = opinion_slandered
			who = event_target:target_snooper
			years = 2
		}
	}
}

# Dirt uncovered: liege of target given the information
character_event = {
	id = WoL.2082
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	desc = {
		text = EVTDESC_WOL_2082
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_slanderer }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_BASTARD
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_illegitimate }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_HERETIC
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_heretic }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_INFIDEL
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_infidel }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_DEVIANT
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_deviant }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_TRAITOR
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_traitor }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_DW
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_witch }
		}
	}
	desc = {
		text = EVTDESC_WOL_2082_CULTIST
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_secret_society }
		}
	}

	is_triggered_only = yes

	option = { # Expose and denounce!
		name = {
			text = EVTOPTB_WOL_2080
			trigger = {
				event_target:target_snooper = {
					NOR = {
						has_character_flag = charge_illegitimate
						has_character_flag = charge_traitor
						has_character_flag = charge_witch
					}
				}
			}
		}
		name = {
			text = EVTOPTB_WOL_2080_HARSH
			trigger = {
				event_target:target_snooper = {
					OR = {
						has_character_flag = charge_illegitimate
						has_character_flag = charge_traitor
						has_character_flag = charge_witch
					}
				}
			}
		}

	#	log = "WoL.2082: [Root.GetTitledName] slanders [target_spy_on.GetTitledName]!"

		if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_witch
				}
			}

			opinion = {
				name = opinion_charge_dw
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_secret_society
				}
			}

			opinion = {
				name = opinion_charge_cultist
				who = event_target:target_spy_on
				years = 2
			}
		}

		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_illegitimate
				}
			}

			opinion = {
				name = opinion_charge_illegitimate
				who = event_target:target_spy_on
				years = 2
			}
		}

		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_heretic
				}
			}

			opinion = {
				name = opinion_charge_heresiarch
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_infidel
				}
			}

			opinion = {
				name = opinion_charge_infidel
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_deviant
				}
			}

			opinion = {
				name = opinion_charge_deviant
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_traitor
				}
			}

			opinion = {
				name = opinion_charge_traitor
				who = event_target:target_spy_on
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_slanderer
				}
			}

			opinion = {
				name = opinion_charge_slanderer
				who = event_target:target_spy_on
				years = 2
			}
		}

		event_target:target_spy_on = {
			character_event = { id = WoL.2081 }
		}

		hidden_effect = {
			event_target:target_snooper = {
				character_event = {
					id = WoL.2083 # Notify spy
					days = 3
				}

				clr_character_flag = charge_illegitimate
				clr_character_flag = charge_heretic
				clr_character_flag = charge_infidel
				clr_character_flag = charge_deviant
				clr_character_flag = charge_traitor
				clr_character_flag = charge_slanderer
				clr_character_flag = charge_witch
				clr_character_flag = charge_secret_society
			}
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTC_WOL_2080 # Blackmail to prevent factionalism

		trigger = {
			event_target:target_spy_on = {
				is_playable = yes

				NOT = {
					has_opinion_modifier = {
						who = liege
						name = opinion_coerced_into_leaving_faction
					}
				}
			}
		}

		custom_tooltip = {
			text = EVTOPTC_WOL_2080_TOOLTIP

			event_target:target_spy_on = {
				character_event = { id = WoL.2086 }
			}

			event_target:target_snooper = {
				character_event = {
					id = WoL.2084 # Notify spy of blackmail
					days = 3
				}
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 10

				event_target:target_spy_on = {
					in_faction = yes
				}
			}
		}
	}

	option = {
		name = EVTOPTE_WOL_2080 # Keep to myself

		custom_tooltip = {
			text = EVTOPTE_WOL_2082_TOOLTIP

			hidden_effect = {
				event_target:target_snooper = {
					clr_character_flag = charge_illegitimate
					clr_character_flag = charge_heretic
					clr_character_flag = charge_infidel
					clr_character_flag = charge_deviant
					clr_character_flag = charge_traitor
					clr_character_flag = charge_slanderer
					clr_character_flag = charge_witch
					clr_character_flag = charge_secret_society

					character_event = {
						id = WoL.2085 # Notify spy that no action was taken
						days = 3
					}
				}
			}
		}
	}
}

# Dirt uncovered: liege thanks spy and tells of denouncement
character_event = {
	id = WoL.2083
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue
	desc = EVTDESC_WOL_2083

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2083
	}
}

# Dirt uncovered: liege thanks spy and tells of blackmail
character_event = {
	id = WoL.2084
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue
	desc = EVTDESC_WOL_2084

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2084
	}
}

# Dirt uncovered: liege thanks spy, and tells of no further action
character_event = {
	id = WoL.2085
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue
	desc = EVTDESC_WOL_2085

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2085
	}
}


# Dirt uncovered: target threatened with blackmail to stay out of factions
character_event = {
	id = WoL.2086
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	desc = {
		text = EVTDESC_WOL_2086
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_dishonorable }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_BASTARD
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_illegitimate }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_TRAITOR
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_traitor }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_HERETIC
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_heretic }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_INFIDEL
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_infidel }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_DEVIANT
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_deviant }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_DW
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_witch }
		}
	}
	desc = {
		text = EVTDESC_WOL_2086_CULTIST
		trigger = {
			event_target:target_snooper = { has_character_flag = charge_secret_society }
		}
	}

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2086 # Agree

		hidden_effect = {
			event_target:target_snooper = {
				clr_character_flag = charge_illegitimate
				clr_character_flag = charge_heretic
				clr_character_flag = charge_infidel
				clr_character_flag = charge_deviant
				clr_character_flag = charge_traitor
				clr_character_flag = charge_slanderer
				clr_character_flag = charge_witch
				clr_character_flag = charge_secret_society
			}
		}

		opinion = {
			name = opinion_coerced_into_leaving_faction
			who = liege
			years = 100
		}

	#	log = "WoL.2086: [Root.GetTitledName] blackmailed to stay out of factions by [target_snooper.GetTitledName]!"

		FROM = {
			character_event = {
				id = WoL.2087
				days = 3
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 5
				trait = craven
			}

			mult_modifier = {
				factor = 3
				trait = proud
			}

			mult_modifier = {
				factor = 3
				trait = content
			}

			mult_modifier = {
				factor = 2
				trait = trusting
			}

			mult_modifier = {
				factor = 2
				trait = patient
			}
		}
	}

	option = {
		name = EVTOPTB_WOL_2086 # Never!

		opinion = {
			name = opinion_slandered
			who = FROM
			years = 2
		}

		FROM = {
			character_event = {
				id = WoL.2088
				days = 3
			}
		}

		tooltip = {
			if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_witch
					}
				}

				reverse_opinion = {
					name = opinion_charge_dw
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_secret_society
					}
				}

				reverse_opinion = {
					name = opinion_charge_cultist
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_illegitimate
					}
				}

				reverse_opinion = {
					name = opinion_charge_illegitimate
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_heretic
					}
				}

				reverse_opinion = {
					name = opinion_charge_heresiarch
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_infidel
					}
				}

				reverse_opinion = {
					name = opinion_charge_infidel
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_deviant
					}
				}

				reverse_opinion = {
					name = opinion_charge_deviant
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_traitor
					}
				}

				reverse_opinion = {
					name = opinion_charge_traitor
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_slanderer
					}
				}

				reverse_opinion = {
					name = opinion_charge_slanderer
					who = FROM
					years = 2
				}
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 3
				trait = brave
			}

			mult_modifier = {
				factor = 3
				trait = wroth
			}

			mult_modifier = {
				factor = 3
				trait = ambitious
			}
		}
	}
}

# Dirt uncovered: blackmailer notified of factionalism prevention
character_event = {
	id = WoL.2087
	desc = EVTDESC_WOL_2087
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EXCELLENT
	}
}

# Dirt uncovered: blackmailer notified of factionalism prevention refusal
character_event = {
	id = WoL.2088
	desc = EVTDESC_WOL_2088
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2088

	#	log = "WoL.2088: [Root.GetTitledName] slanders [From.GetTitledName] after failed blackmail!"

		if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_witch
				}
			}

			opinion = {
				name = opinion_charge_dw
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_secret_society
				}
			}

			opinion = {
				name = opinion_charge_cultist
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_illegitimate
				}
			}

			opinion = {
				name = opinion_charge_illegitimate
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_heretic
				}
			}

			opinion = {
				name = opinion_charge_heresiarch
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_infidel
				}
			}

			opinion = {
				name = opinion_charge_infidel
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_deviant
				}
			}

			opinion = {
				name = opinion_charge_deviant
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_traitor
				}
			}

			opinion = {
				name = opinion_charge_traitor
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_slanderer
				}
			}

			opinion = {
				name = opinion_charge_slanderer
				who = FROM
				years = 2
			}
		}

		hidden_effect = {
			event_target:target_snooper = {
				clr_character_flag = charge_illegitimate
				clr_character_flag = charge_heretic
				clr_character_flag = charge_infidel
				clr_character_flag = charge_deviant
				clr_character_flag = charge_traitor
				clr_character_flag = charge_slanderer
				clr_character_flag = charge_witch
				clr_character_flag = charge_secret_society
			}
		}
	}
}

# Dirt uncovered: target threatened with blackmail to join factions
character_event = {
	id = WoL.2089
	desc = OK # AI only
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = OK # Agree

		hidden_effect = {
			event_target:target_snooper = {
				clr_character_flag = charge_illegitimate
				clr_character_flag = charge_heretic
				clr_character_flag = charge_infidel
				clr_character_flag = charge_deviant
				clr_character_flag = charge_traitor
				clr_character_flag = charge_slanderer
				clr_character_flag = charge_witch
				clr_character_flag = charge_secret_society
			}
		}

		opinion = {
			name = opinion_coerced_into_joining_faction
			who = FROM
			years = 100
		}

		FROM = {
			character_event = {
				id = WoL.2090
				days = 3
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 5
				trait = craven
			}

			mult_modifier = {
				factor = 3
				trait = proud
			}

			mult_modifier = {
				factor = 3
				trait = content
			}

			mult_modifier = {
				factor = 2
				trait = trusting
			}

			mult_modifier = {
				factor = 2
				trait = patient
			}
		}
	}

	option = {
		name = OK # Never!

		opinion = {
			name = opinion_slandered
			who = FROM
			years = 2
		}

		FROM = {
			character_event = {
				id = WoL.2091
				days = 3
			}
		}

		tooltip = {
			if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_witch
					}
				}

				reverse_opinion = {
					name = opinion_charge_dw
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_secret_society
					}
				}

				reverse_opinion = {
					name = opinion_charge_cultist
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_illegitimate
					}
				}

				reverse_opinion = {
					name = opinion_charge_illegitimate
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_heretic
					}
				}

				reverse_opinion = {
					name = opinion_charge_heresiarch
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_infidel
					}
				}

				reverse_opinion = {
					name = opinion_charge_infidel
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_deviant
					}
				}

				reverse_opinion = {
					name = opinion_charge_deviant
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_traitor
					}
				}

				reverse_opinion = {
					name = opinion_charge_traitor
					who = FROM
					years = 2
				}
			}
			else_if = {
				limit = {
					event_target:target_snooper = {
						has_character_flag = charge_slanderer
					}
				}

				reverse_opinion = {
					name = opinion_charge_slanderer
					who = FROM
					years = 2
				}
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 3
				trait = brave
			}

			mult_modifier = {
				factor = 3
				trait = wroth
			}

			mult_modifier = {
				factor = 3
				trait = ambitious
			}
		}
	}
}

# Dirt uncovered: blackmailer notified of faction join
character_event = {
	id = WoL.2090
	desc = EVTDESC_WOL_2090
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EXCELLENT
	}
}

# Dirt uncovered: blackmailer notified of faction join refusal
character_event = {
	id = WoL.2091
	desc = EVTDESC_WOL_2091
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2088

		if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_witch
				}
			}

			opinion = {
				name = opinion_charge_dw
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_secret_society
				}
			}

			opinion = {
				name = opinion_charge_cultist
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_illegitimate
				}
			}

			opinion = {
				name = opinion_charge_illegitimate
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_heretic
				}
			}

			opinion = {
				name = opinion_charge_heresiarch
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_infidel
				}
			}

			opinion = {
				name = opinion_charge_infidel
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_deviant
				}
			}

			opinion = {
				name = opinion_charge_deviant
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_traitor
				}
			}

			opinion = {
				name = opinion_charge_traitor
				who = FROM
				years = 2
			}
		}
		else_if = {
			limit = {
				event_target:target_snooper = {
					has_character_flag = charge_slanderer
				}
			}

			opinion = {
				name = opinion_charge_slanderer
				who = FROM
				years = 2
			}
		}

		hidden_effect = {
			event_target:target_snooper = {
				clr_character_flag = charge_illegitimate
				clr_character_flag = charge_heretic
				clr_character_flag = charge_infidel
				clr_character_flag = charge_deviant
				clr_character_flag = charge_traitor
				clr_character_flag = charge_slanderer
				clr_character_flag = charge_witch
				clr_character_flag = charge_secret_society
			}
		}
	}
}

### SMEAR CAMPAIGN

# Spy gets a chance to start a smear campaign against the target
character_event = {
	id = WoL.2100
	picture = GFX_evt_whispers
	border = GFX_event_normal_frame_intrigue

	desc = {
		trigger = {
			event_target:target_spy_on = {
				OR = {
					has_character_modifier = known_sodomite
					has_character_modifier = known_sodomite_pagan
					has_character_modifier = incestuous_adulterer
					has_character_modifier = incestuous_adulteress
					has_character_modifier = adulterer
					has_character_modifier = adulteress
					has_character_modifier = cradle_robber
					has_character_modifier = adulterous_priest
					trait = homosexual
					trait = hedonist
				}
			}
		}
		text = EVTDESC_WOL_2100_DEVIANT
	}
	desc = {
		trigger = {
			event_target:target_spy_on = {
				trait = decadent
			}
		}
		text = EVTDESC_WOL_2100_DECADENT
	}
	desc = {
		trigger = {
			event_target:target_spy_on = {
				OR = {
					trait = lunatic
					trait = possessed
				}
			}
		}
		text = EVTDESC_WOL_2100_INSANE
	}
	desc = {
		trigger = {
			event_target:target_spy_on = {
				trait = cynical
			}
		}
		text = EVTDESC_WOL_2100_HERETIC
	}
	desc = {
		trigger = {
			event_target:target_spy_on = {
				trait = drunkard
			}
		}
		text = EVTDESC_WOL_2100_DRUNK
	}
	desc = {
		trigger = {
			event_target:target_spy_on = {
				OR = {
					trait = bastard
					trait = legit_bastard
				}
			}
		}
		text = EVTDESC_WOL_2100_BASTARD
	}
	desc = {
		trigger = {
			event_target:target_spy_on = {
				NOR = {
					has_character_modifier = incestuous_adulterer
					has_character_modifier = incestuous_adulteress
					has_character_modifier = adulterer
					has_character_modifier = adulteress
					has_character_modifier = known_sodomite
					has_character_modifier = known_sodomite_pagan
					has_character_modifier = cradle_robber
					has_character_modifier = adulterous_priest
					trait = homosexual
					trait = hedonist
					trait = drunkard
					trait = decadent
					trait = bastard
					trait = legit_bastard
					trait = lunatic
					trait = possessed
					trait = cynical
				}
			}
		}
		text = EVTDESC_WOL_2100
	}

	is_triggered_only = yes

	immediate = {
		opinion = {
			who = event_target:target_spy_on
			name = opinion_spy_rumors
		}

		if = {
			limit = {
				event_target:target_spy_on = {
					NOR = {
						has_character_modifier = incestuous_adulterer
						has_character_modifier = incestuous_adulteress
						has_character_modifier = adulterer
						has_character_modifier = adulteress
						has_character_modifier = known_sodomite
						has_character_modifier = known_sodomite_pagan
						has_character_modifier = cradle_robber
						has_character_modifier = adulterous_priest
						trait = homosexual
						trait = hedonist
						trait = drunkard
						trait = decadent
						trait = bastard
						trait = legit_bastard
						trait = lunatic
						trait = possessed
						trait = cynical
					}
				}
			}

			random_list = {
				10 = { set_character_flag = rumor_1 }
				10 = { set_character_flag = rumor_2 }
				10 = { set_character_flag = rumor_3 }
				10 = { set_character_flag = rumor_4 }
				10 = { set_character_flag = rumor_5 }
				10 = { set_character_flag = rumor_6 }
				10 = { set_character_flag = rumor_7 }
				10 = { set_character_flag = rumor_8 }
			}
		}
	}

	option = {
		name = {
			text = EVTOPTA_WOL_2100_1
			trigger = { has_character_flag = rumor_1 }
		}
		name = {
			text = EVTOPTA_WOL_2100_2
			trigger = { has_character_flag = rumor_2 }
		}
		name = {
			text = EVTOPTA_WOL_2100_3
			trigger = { has_character_flag = rumor_3 }
		}
		name = {
			text = EVTOPTA_WOL_2100_4
			trigger = { has_character_flag = rumor_4 }
		}
		name = {
			text = EVTOPTA_WOL_2100_5
			trigger = { has_character_flag = rumor_5 }
		}
		name = {
			text = EVTOPTA_WOL_2100_6
			trigger = { has_character_flag = rumor_6 }
		}
		name = {
			text = EVTOPTA_WOL_2100_7
			trigger = { has_character_flag = rumor_7 }
		}
		name = {
			text = EVTOPTA_WOL_2100_8
			trigger = { has_character_flag = rumor_8 }
		}
		name = {
			text = EVTOPTA_WOL_2100_9
			trigger = {
				NOR = {
					has_character_flag = rumor_1
					has_character_flag = rumor_2
					has_character_flag = rumor_3
					has_character_flag = rumor_4
					has_character_flag = rumor_5
					has_character_flag = rumor_6
					has_character_flag = rumor_7
					has_character_flag = rumor_8
				}
			}
		}

		event_target:target_spy_on = {
			show_scope_change = no

			add_character_modifier = {
				name = vicious_rumors
				years = 5
			}
		}

		# Mudslinger achievement check event
		character_event = { id = steam.020 }

	#	log = "WoL.2100: [Root.GetTitledName] spreads vicious rumors about [target_spy_on.GetTitledName]!"

		random = {
			chance = 25

			mult_modifier = {
				factor = 0.75

				attribute_diff = {
					attribute = intrigue
					character = event_target:target_spy_on
					value >= 3
				}
			}

			mult_modifier = {
				factor = 0.75

				attribute_diff = {
					attribute = intrigue
					character = event_target:target_spy_on
					value >= 5
				}
			}

			mult_modifier = {
				factor = 0.5

				attribute_diff = {
					attribute = intrigue
					character = event_target:target_spy_on
					value >= 10
				}
			}

			mult_modifier = {
				factor = 1.5

				attribute_diff = {
					attribute = intrigue
					character = event_target:target_spy_on
					value < -2
				}
			}

			mult_modifier = {
				factor = 2

				attribute_diff = {
					attribute = intrigue
					character = event_target:target_spy_on
					value < -4
				}
			}

			mult_modifier = {
				factor = 2

				attribute_diff = {
					attribute = intrigue
					character = event_target:target_spy_on
					value < -9
				}
			}

			mult_modifier = {
				factor = 0.75
				has_character_modifier = wol_schemer_1
			}

			mult_modifier = {
				factor = 0.5
				has_character_modifier = wol_schemer_2
			}

			mult_modifier = {
				factor = 0.2
				trait = master_schemer
			}

			mult_modifier = {
				factor = 1.5
				event_target:target_spy_on = { has_character_modifier = wol_schemer_1 }
			}

			mult_modifier = {
				factor = 3
				event_target:target_spy_on = { has_character_modifier = wol_schemer_2 }
			}

			mult_modifier = {
				factor = 5
				event_target:target_spy_on = { trait = master_schemer }
			}

			event_target:target_spy_on = {
				show_scope_change = no

				character_event = {
					id = WoL.2101 # Target finds out about it
					days = 3
					tooltip = EVTTOOLTIP_WOL_2101
				}
			}
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTB_WOL_2100 # Nah
	}

	option = {
		name = EVTOPTC_WOL_2100 # End my spying

		character_event = { id = WoL.2069 } # Clear out flags and end spying

		ai_chance = { factor = 50 }
	}

	after = {
		clr_character_flag = rumor_1
		clr_character_flag = rumor_2
		clr_character_flag = rumor_3
		clr_character_flag = rumor_4
		clr_character_flag = rumor_5
		clr_character_flag = rumor_6
		clr_character_flag = rumor_7
		clr_character_flag = rumor_8
	}
}

# Target finds out about the vicious rumours
character_event = {
	id = WoL.2101
	desc = EVTDESC_WOL_2101
	picture = GFX_evt_whispers
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2101

		opinion = {
			who = FROM
			name = opinion_slandered
			years = 5
		}
	}
}

# Spy gets a chance to murder the target!
character_event = {
	id = WoL.2110
	desc = EVTDESC_WOL_2110
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2110 # Kill!

		wealth = -5

		event_target:target_spy_on = {
			show_scope_change = no

			character_event = {
				id = WoL.2111 # Target is attacked
				days = 7
				tooltip = EVTTOOLTIP_WOL_2111
			}
		}

		ai_chance = {
			factor = 100

			trigger = {
				# No use for vassals to kill other vassals
				trigger_if = {
					limit = { same_liege = event_target:target_spy_on }
					is_foe = event_target:target_spy_on
				}
			}

			mult_modifier = {
				factor = 0.1
				wealth < 5
			}

			mult_modifier = {
				factor = 2
				trait = arbitrary
			}

			mult_modifier = {
				factor = 3
				trait = cruel
			}

			mult_modifier = {
				factor = 10
				is_foe = event_target:target_spy_on
			}

			mult_modifier = {
				factor = 0.1
				trait = just
			}

			mult_modifier = {
				factor = 0.25

				event_target:target_spy_on = {
					vassal_of = ROOT
					in_faction = no
					NOT = { is_foe = ROOT }
				}
			}
		}
	}

	option = {
		name = EVTOPTB_WOL_2110 # Do nothing

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 2
				trait = just
			}

			mult_modifier = {
				factor = 3
				trait = kind
			}

			mult_modifier = {
				factor = 5
				is_friend = event_target:target_spy_on
			}
		}
	}
}

character_event = {
	id = WoL.2111
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue

	desc = {
		text = EVTDESC_WOL_2111_DEATH
		trigger = {
			OR = {
				has_character_flag = spy_death
				has_character_flag = spy_death_known
			}
		}
	}
	desc = {
		text = EVTDESC_WOL_2111_WOUNDED
		trigger = {
			OR = {
				has_character_flag = spy_wounded
				has_character_flag = spy_wounded_known
			}
		}
	}
	desc = {
		text = EVTDESC_WOL_2111_LIVES
		trigger = {
			OR = {
				has_character_flag = spy_lives
				has_character_flag = spy_lives_known
			}
		}
	}

	is_triggered_only = yes
	hide_from = yes

	immediate = {
		random_list = {
			1000 = { # Dies, murderer unknown
				mult_modifier = {
					factor = 0.01

					OR = {
						trait = paranoid
						trait = master_schemer
						has_character_modifier = seduced_loyal_bodyguard
						has_character_modifier = seduced_loyal_spy_maid
					}
				}

				set_character_flag = spy_death
			}

			1000 = { # Dies, murderer known
				mult_modifier = {
					factor = 0.01

					OR = {
						trait = paranoid
						trait = master_schemer
						has_character_modifier = seduced_loyal_bodyguard
						has_character_modifier = seduced_loyal_spy_maid
					}
				}

				set_character_flag = spy_death_known
			}

			500 = { # Wounded, assailant unknown
				set_character_flag = spy_wounded
			}

			500 = { # Wounded, assailant known
				set_character_flag = spy_wounded_known
			}

			500 = { # Lives, assailant unknown
				set_character_flag = spy_lives
			}

			500 = { # Lives, assailant known
				set_character_flag = spy_lives_known
			}
		}

		if = {
			limit = { multiplayer = yes }

			trigger_switch = {
				on_trigger = has_character_flag

				spy_death = {
					death = {
						death_reason = death_murder_unknown
						killer = event_target:target_snooper
					}
				}

				spy_death_known = {
					death = {
						death_reason = death_murder
						killer = event_target:target_snooper
					}
				}
			}
		}
	}

	option = {
		name = EVTOPT_WOL_2111_DEATH

		trigger = { has_character_flag = spy_death }

		event_target:target_snooper = {
			character_event = { id = WoL.2069 } # Clear out flags and end spying
			character_event = { id = WoL.2112 } # Notify killer
		}

		if = {
			limit = { multiplayer = yes }

			tooltip = {
				death = {
					death_reason = death_murder_unknown
					killer = event_target:target_snooper
				}
			}
		}
		else = {
			death = {
				death_reason = death_murder_unknown
				killer = event_target:target_snooper
			}
		}
	}

	option = {
		name = EVTOPT_WOL_2111_DEATH_KNOWN

		trigger = { has_character_flag = spy_death_known }

		save_event_target_as = target_victim

		event_target:target_snooper = {
			character_event = { id = WoL.2069 } # Clear out flags and end spying
			character_event = { id = 10 } # Discovered murder -> consequences
			character_event = { id = WoL.2113 } # Notify killer
		}

		if = {
			limit = { multiplayer = yes }

			tooltip = {
				death = {
					death_reason = death_murder
					killer = event_target:target_snooper
				}
			}
		}
		else = {
			death = {
				death_reason = death_murder
				killer = event_target:target_snooper
			}
		}
	}

	option = {
		name = EVTOPT_WOL_2111_UNKNOWN

		trigger = { has_character_flag = spy_wounded }

		add_trait_silently_wounded_effect = yes

		event_target:target_snooper = {
			character_event = { id = WoL.2114 } # Notify attacker
		}

		clr_character_flag = spy_wounded
	}

	option = {
		name = EVTOPT_WOL_2111_KNOWN

		trigger = { has_character_flag = spy_wounded_known }

		add_trait_silently_wounded_effect = yes
		save_event_target_as = target_victim

		event_target:target_snooper = {
			character_event = { id = 11 } # Consequences of discovery
			character_event = { id = WoL.2115 } # Notify attacker
		}

		clear_event_target = target_victim
		clr_character_flag = spy_wounded_known
	}

	option = {
		name = EVTOPT_WOL_2111_UNKNOWN

		trigger = { has_character_flag = spy_lives }

		event_target:target_snooper = {
			character_event = { id = WoL.2116 } # Notify attacker
		}

		clr_character_flag = spy_lives
	}

	option = {
		name = EVTOPT_WOL_2111_KNOWN

		trigger = { has_character_flag = spy_lives_known }

		save_event_target_as = target_victim

		event_target:target_snooper = {
			character_event = { id = 11 } # Consequences of discovery
			character_event = { id = WoL.2117 } # Notify attacker
		}

		clear_event_target = target_victim
		clr_character_flag = spy_lives_known
	}
}

# Killer notified of success - not discovered
character_event = {
	id = WoL.2112
	desc = EVTDESC_WOL_2112
	picture = GFX_evt_death
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2112
	}
}

# Killer notified of success - discovered
character_event = {
	id = WoL.2113
	desc = EVTDESC_WOL_2113
	picture = GFX_evt_death
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2113
	}
}


# Killer notified of wounding - not discovered
character_event = {
	id = WoL.2114
	desc = EVTDESC_WOL_2114
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2112
	}
}

# Killer notified of wounding - discovered
character_event = {
	id = WoL.2115
	desc = EVTDESC_WOL_2115
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2115
	}
}

# Killer notified of failure - not discovered
character_event = {
	id = WoL.2116
	desc = EVTDESC_WOL_2116
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2112
	}
}

# Killer notified of failure - discovered
character_event = {
	id = WoL.2117
	desc = EVTDESC_WOL_2117
	picture = GFX_evt_shadow
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2117
	}
}

# Spy gets a chance to abduct the target!
character_event = {
	id = WoL.2120
	desc = EVTDESC_WOL_2120
	picture = GFX_evt_bandits
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:target_spy_on

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2120

		wealth = -5

		event_target:target_spy_on = {
			show_scope_change = no

			character_event = {
				id = WoL.2121
				days = 3
				tooltip = EVTTOOLTIP_WOL_2121
			}
		}

		ai_chance = {
			factor = 1

			trigger = {
				wealth >= 5

				# No use for vassals to imprison other vassals
				trigger_if = {
					limit = { same_liege = event_target:target_spy_on }
					is_foe = event_target:target_spy_on
				}
			}

			mult_modifier = {
				factor = 0.1
				trait = just
			}

			mult_modifier = {
				factor = 2
				trait = arbitrary
			}

			mult_modifier = {
				factor = 3
				trait = cruel
			}

			mult_modifier = {
				factor = 0.25

				event_target:target_spy_on = {
					vassal_of = ROOT
					in_faction = no
					NOT = { is_foe = ROOT }
				}
			}

			mult_modifier = {
				factor = 0.1
				wealth < 10
			}
		}
	}

	option = {
		name = EVTOPTB_WOL_2120
	}
}

# Target gets abducted... or not.
character_event = {
	id = WoL.2121
	desc = EVTDESC_WOL_2121
	picture = GFX_evt_bandits
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	immediate = {
		random = {
			chance = 50

			mult_modifier = {
				factor = 0.1

				OR = {
					trait = paranoid
					trait = master_schemer
					has_character_modifier = seduced_loyal_bodyguard
					has_character_modifier = seduced_loyal_spy_maid
				}
			}

			set_character_flag = spy_success
		}
	}

	option = {
		name = EVTOPT_WOL_2121_CAUGHT

		trigger = { has_character_flag = spy_success }

		imprison = event_target:target_snooper

		hidden_effect = {
			event_target:target_snooper = {
				character_event = { id = WoL.2122 }
			}

			if = {
				limit = {
					event_target:target_snooper = {
						de_facto_liege = ROOT
					}
				}

				opinion = {
					who = event_target:target_snooper
					years = 10
					name = opinion_regicide_traitor
				}
			}
		}

		clr_character_flag = spy_success
	}

	option = {
		name = EVTOPT_WOL_2121

		trigger = { NOT = { has_character_flag = spy_success } }

		event_target:target_snooper = {
			character_event = { id = WoL.2123 }
		}
	}
}

# Target gets abducted!
character_event = {
	id = WoL.2122
	desc = EVTDESC_WOL_2122
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	immediate = {
		character_event = { id = WoL.2069 } # Clear out any flags, etc
	}

	option = {
		name = EXCELLENT
	}
}

# Abduction fails
character_event = {
	id = WoL.2123
	desc = EVTDESC_WOL_2123
	picture = GFX_evt_bandits
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2123
	}
}

#############################################
# "Free from Captivity" Decision event START
#############################################

# Free Prisoner start
character_event = {
	id = WoL.2200
	desc = EVTDESC_WOL_2200
	picture = GFX_evt_jailbreak
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes # decision_break_free, way_of_life_decisions.txt

	only_capable = yes
	prisoner = no

	immediate = {
		set_character_flag = freeing_prisoner
		save_event_target_as = target_rescuer

		FROM = {
			save_event_target_as = target_captive
		}
	}

	option = {
		name = EVTOPTA_WOL_2200

		character_event = {
			id = WoL.2210
			days = 20
			random = 20
			tooltip = EVTTOOLTIP_WoL_110
		}

	#	log = "WoL.2200: [target_rescuer.GetTitledName] starts planning to liberate [target_captive.GetTitledName] from prison"
	}
}

# Free Forced Concubine start
character_event = {
	id = WoL.2201
	desc = EVTDESC_WOL_2201
	picture = GFX_evt_jailbreak
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes # decision_break_free, way_of_life_decisions.txt

	only_capable = yes
	prisoner = no

	immediate = {
		set_character_flag = freeing_concubine
		save_event_target_as = target_rescuer

		FROM = {
			save_event_target_as = target_captive
		}
	}

	option = {
		name = EVTOPTA_WOL_2200

		character_event = {
			id = WoL.2210
			days = 20
			random = 20
			tooltip = EVTTOOLTIP_WoL_110
		}

	#	log = "WoL.2201: [target_rescuer.GetTitledName] starts planning to liberate [target_captive.GetTitledName] from concubinage"
	}
}

# Hidden 'outcome tombola' event for the "Liberate" decision
character_event = {
	id = WoL.2210

	is_triggered_only = yes
	hide_window = yes

	only_capable = yes
	prisoner = no

	trigger = {
		OR = {
			has_focus = focus_intrigue
			trait = master_schemer
		}

		has_opinion_modifier = {
			who = event_target:target_captive
			name = opinion_breaking_out
		}
	}

	fail_trigger_effect = {
		character_event = { id = WoL.2219 } # Clear out any flags, etc
	}

	immediate = {
		if = {
			limit = {
				event_target:target_captive = {
					is_alive = no
				}
			}

			character_event = { id = WoL.2211 }
		}
		else_if = {
			limit = {
				event_target:target_captive = {
					is_incapable = yes
				}
			}

			character_event = { id = WoL.2212 }
		}
		else_if = {
			limit = {
				has_character_flag = freeing_prisoner

				event_target:target_captive = {
					prisoner = no
				}
			}

			character_event = { id = WoL.2213 }
		}
		else_if = {
			limit = {
				has_character_flag = has_liberation_agent

				event_target:target_agent = {
					OR = {
						is_alive = no
						prisoner = yes
						is_incapable = yes
					}
				}
			}

			character_event = { id = WoL.2230 }
			clear_event_target = target_agent
			clr_character_flag = has_liberation_agent
		}

		random_list = {
			1 = { # Nothing happens
				repeat_event = {
					id = WoL.2210 # Try again later
					days = 30
					random = 60
				}
			}

			100 = { # Courtier contacted
				trigger = {
					NOT = { has_character_flag = has_liberation_agent }
				}

				event_target:target_captive = {
					random_host_courtier = {
						limit = {
							is_ruler = no
							is_adult = yes
							is_ill = no
							is_incapable = no
							prisoner = no
							in_command = no
							NOT = { character = PREVPREV }

							OR = {
								trait = arbitrary
								trait = greedy

								personal_opinion_diff = {
									first = ROOT
									second = liege
									value >= 5
								}

								personal_opinion_diff = {
									first = PREVPREV
									second = liege
									value >= 5
								}
							}

							NOT = {
								reverse_has_opinion_modifier = {
									name = opinion_disappointed
									who = ROOT
								}
							}
						}

						save_event_target_as = target_agent
					}
				}

				if = {
					limit = {
						event_target:target_agent = { always = yes }
					}

					character_event = { id = WoL.2221 } # Make plans
				}
				else = {
					character_event = { id = WoL.2232 } # Unable to find willing agent
				}
			}

			100 = { # Liberation attempt
				trigger = {
					has_character_flag = has_liberation_agent
				}

				event_target:target_agent = {
					character_event = { id = WoL.2222 }
				}
			}

			100 = { # Agent wants more money
				trigger = {
					has_character_flag = has_liberation_agent

					event_target:target_agent = {
						OR = {
							trait = greedy
							trait = arbitrary
							trait = deceitful
							trait = cruel
						}

						NOR = {
							is_lover = ROOT
							is_friend = ROOT
						}
					}
				}

				letter_event = { id = WoL.2231 }
			}
		}
	}
}

# My target has died!
character_event = {
	id = WoL.2211
	desc = EVTOPTA_WOL_2211
	picture = GFX_evt_death
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes
	show_from_from_from = yes

	immediate = {
		character_event = { id = WoL.2219 }
	}

	option = {
		name = EVTOPTA_WOL_2211
	}
}

# My target has become incapable!
character_event = {
	id = WoL.2212
	desc = EVTDESC_WOL_2212
	picture = GFX_evt_illness
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes
	show_from_from_from = yes

	immediate = {
		character_event = { id = WoL.2219 }
	}

	option = {
		name = EVTOPTA_WOL_2211
	}
}

# My target is not longer a prisoner anymore
character_event = {
	id = WoL.2213
	desc = EVTDESC_WOL_2213
	picture = GFX_evt_courier
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes
	show_from_from_from = yes

	immediate = {
		character_event = { id = WoL.2219 }
	}

	option = {
		name = EVTOPTA_WOL_2211
	}
}

# End of "Liberate" event to clear out flags, etc
character_event = {
	id = WoL.2219

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		remove_opinion = {
			name = opinion_breaking_out
			who = event_target:target_captive
		}

		clr_character_flag = freeing_prisoner
		clr_character_flag = freeing_concubine
		clr_character_flag = has_liberation_agent
	}
}

# Contact approached. Make plans.
character_event = {
	id = WoL.2221
	desc = EVTDESC_WOL_2221
	picture = GFX_evt_courtiers_talking
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2221 # Will do it for free

		trigger = {
			event_target:target_agent = {
				NOT = { trait = greedy }

				personal_opinion_diff = {
					first = ROOT
					second = liege
					value >= 20
				}

				personal_opinion_diff = {
					first = event_target:target_agent
					second = liege
					value >= 20
				}
			}
		}

		set_character_flag = has_liberation_agent

		character_event = {
			id = WoL.2210 # Back to the tombola
			days = 30
			random = 60
		}

		ai_chance = { factor = 1000 }
	}

	option = {
		name = EVTOPTB_WOL_2221 # Will do it for a bribe

		trigger = {
			event_target:target_agent = {
				OR = {
					trait = greedy

					personal_opinion_diff = {
						first = ROOT
						second = liege
						value < 20
					}

					personal_opinion_diff = {
						first = event_target:target_captive
						second = liege
						value < 20
					}
				}
			}
		}

		transfer_scaled_wealth = {
			to = event_target:target_agent
			value = 1
			min = 10
			max = 10
		}

		set_character_flag = has_liberation_agent

		character_event = {
			id = WoL.2210 # Back to the tombola
			days = 30
			random = 60
		}
	}

	option = {
		name = EVTOPTC_WOL_2221 # Will do it for love
		tooltip_info = master_seducer

		trigger = {
			trait = master_seducer

			event_target:target_agent = {
				prefers_men_trigger = yes
			}
		}

		set_character_flag = has_liberation_agent

		character_event = {
			id = WoL.2210 # Back to the tombola
			days = 30
			random = 60
		}

		ai_chance = { factor = 10000 }
	}

	option = {
		name = EVTOPTC_WOL_2221 # Will do it for love
		tooltip_info = master_seductress

		trigger = {
			trait = master_seductress

			event_target:target_agent = {
				prefers_men_trigger = no
			}
		}

		set_character_flag = has_liberation_agent

		character_event = {
			id = WoL.2210 # Back to the tombola
			days = 30
			random = 60
		}

		ai_chance = { factor = 10000 }
	}

	option = {
		name = EVTOPTD_WOL_2221 # Abort

		character_event = { id = WoL.2219 }
		clear_event_target = target_agent

		ai_chance = { factor = 0 }
	}
}

# Agent attemps liberation
character_event = {
	id = WoL.2222

	is_triggered_only = yes
	hide_window = yes

	immediate = {
		event_target:target_agent = {
			character_event = {
				id = WoL.2000 # Level up chance
				days = 3
			}
		}

		random_list = {
			100 = { # Success!
				mult_modifier = {
					factor = 1.5

					liege = {
						attribute_diff = {
							attribute = intrigue
							character = event_target:target_agent
							value < -2
						}
					}
				}

				mult_modifier = {
					factor = 1.5

					liege = {
						attribute_diff = {
							attribute = intrigue
							character = event_target:target_agent
							value < -5
						}
					}
				}

				mult_modifier = {
					factor = 2

					liege = {
						attribute_diff = {
							attribute = intrigue
							character = event_target:target_agent
							value < -9
						}
					}
				}

				event_target:target_captive = {
					character_event = { id = WoL.2223 }
				}
			}

			100 = { # Failure
				mult_modifier = {
					factor = 1.5

					liege = {
						attribute_diff = {
							attribute = intrigue
							character = event_target:target_agent
							value >= 3
						}
					}
				}

				mult_modifier = {
					factor = 1.5

					liege = {
						attribute_diff = {
							attribute = intrigue
							character = event_target:target_agent
							value >= 6
						}
					}
				}

				mult_modifier = {
					factor = 2

					liege = {
						attribute_diff = {
							attribute = intrigue
							character = event_target:target_agent
							value >= 10
						}
					}
				}

				event_target:target_captive = {
					character_event = { id = WoL.2226 }
				}

				event_target:target_agent = {
					imprison = liege
				}
			}
		}
	}
}

# Prisoner freed
character_event = {
	id = WoL.2223
	desc = EVTDESC_WOL_2223
	picture = GFX_evt_jailbreak
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2223 # Freedom!

		host = {
			character_event = { id = WoL.2224 } # Notify jailor
		}

		if = {
			limit = {
				prisoner = no
				is_consort = yes
				is_senior_consort_party = no

				event_target:target_agent = {
					has_character_flag = freeing_concubine
				}
			}

			consort = {
				show_scope_change = no

				remove_consort = ROOT
			}

			move_character = event_target:target_agent
		}

		event_target:target_agent = {
			character_event = { id = WoL.2219 } # Clean up
			character_event = { id = WoL.2225 } # Notify liberator
		}

		if = {
			limit = { prisoner = yes }
			imprison = no
		}

		opinion = {
			name = opinion_grateful
			who = event_target:target_rescuer
			years = 10
		}

		opinion = {
			name = opinion_grateful
			who = event_target:target_agent
			years = 10
		}
	}
}

# Prisoner freed - jailor notified
character_event = {
	id = WoL.2224
	picture = GFX_evt_jailbreak
	border = GFX_event_normal_frame_intrigue

	desc = {
		text = EVTDESC_WOL_2224
		trigger = {
			event_target:target_captive = {
				prisoner = yes
			}
		}
	}
	desc = {
		text = EVTDESC_WOL_2224_CONSORT
		trigger = {
			event_target:target_captive = {
				prisoner = no
				is_female = yes
			}
		}
	}
	desc = {
		text = EVTDESC_WOL_2224_CONSORT_MALE
		trigger = {
			event_target:target_captive = {
				prisoner = no
				is_female = no
			}
		}
	}

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2224
	}
}

# Prisoner freed - liberator notified
character_event = {
	id = WoL.2225
	desc = EVTDESC_WOL_2225
	picture = GFX_evt_jailbreak
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EXCELLENT

		opinion = {
			name = opinion_grateful
			who = event_target:target_agent
			years = 10
		}
	}
}

# Prisoner - failed escape attempt
character_event = {
	id = WoL.2226
	desc = EVTDESC_WOL_2226
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2226

		hidden_effect = {
			add_character_modifier = {
				name = failed_escape
				years = 5
			}

			host = {
				character_event = { id = WoL.2227 } # Notify jailor
			}

			event_target:target_agent = {
				character_event = { id = WoL.2219 } # Clean up
				character_event = { id = WoL.2229 } # Notify the would-be liberator
			}
		}
	}
}

# Jailor - failed escape attempt
character_event = {
	id = WoL.2227
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	desc = {
		text = EVTDESC_WOL_2227
		trigger = { event_target:target_captive = { prisoner = yes } }
	}
	desc = {
		text = EVTDESC_WOL_2227_CONSORT
		trigger = { event_target:target_captive = { prisoner = no } }
	}

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2227 # To the oubliette!

		trigger = {
			event_target:target_captive = {
				prisoner = yes
				NOT = { has_character_modifier = the_oubliette }
			}
		}

		opinion = {
			name = opinion_traitor
			who = event_target:target_agent
		}

		event_target:target_captive = {
			show_scope_change = no

			add_character_modifier = {
				name = the_oubliette
				duration = -1
			}

			hidden_effect = {
				remove_character_modifier = house_arrest
				remove_character_modifier = the_dungeon
			}

			character_event = {
				id = WoL.2228 # Notify prisoner
				days = 3
			}
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 5
				trait = cruel
			}

			mult_modifier = {
				factor = 5
				trait = impaler
			}
		}
	}

	option = {
		name = EVTOPTB_WOL_2227 # Tighten security

		opinion = {
			name = opinion_traitor
			who = event_target:target_agent
		}

		ai_chance = {
			factor = 100

			mult_modifier = {
				factor = 5
				trait = kind
			}
		}
	}
}

# Prisoner - thrown in the oubliette
character_event = {
	id = WoL.2228
	desc = EVTDESC_WOL_2228
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2228
	}
}

# Escape fails - liberator notified
character_event = {
	id = WoL.2229
	desc = EVTDESC_WOL_2229
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2229

		opinion = {
			name = opinion_grateful
			who = event_target:target_agent
			years = 10
		}
	}
}

# My agent is no longer able to help
character_event = {
	id = WoL.2230
	desc = EVTDESC_WOL_2230
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes
	show_from_from_from = yes

	ai = no

	option = {
		name = EVTOPTA_WOL_2230
	}
}

# My agent wants more money
letter_event = {
	id = WoL.2231
	desc = EVTDESC_WOL_2231
	border = GFX_event_letter_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2231 # Pay

		transfer_scaled_wealth = {
			to = event_target:target_agent
			value = 1
			min = 10
			max = 10
		}

		character_event = {
			id = WoL.2210 # Back to the tombola
			days = 30
			random = 60
		}

		ai_chance = {
			factor = 10

			mult_modifier = {
				factor = 0.1
				trait = greedy
			}
		}
	}

	option = {
		name = EVTOPTA_WOL_2230 # Find another agent

		hidden_effect = {
			opinion = {
				name = opinion_disappointed
				who = event_target:target_agent
				years = 3
			}

			clear_event_target = target_agent
			clr_character_flag = has_liberation_agent

			character_event = {
				id = WoL.2210 # Back to the tombola
				days = 30
				random = 60
			}
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTC_WOL_2231 # Abort the plan

		character_event = { id = WoL.2219 } # Clear out any flags, etc
	}
}

# Unable to find a willing agent
character_event = {
	id = WoL.2232
	desc = EVTDESC_WOL_2232
	picture = GFX_evt_into_the_dungeon
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes
	show_from_from_from = yes

	option = {
		name = EVTOPTA_WOL_2232 # Keep looking

		character_event = {
			id = WoL.2210 # Back to the tombola
			days = 30
			random = 60
		}
	}

	option = {
		name = EVTOPTB_WOL_2232 # Give up

		character_event = { id = WoL.2219 } # Clear out any flags, etc

		ai_chance = { factor = 10 }
	}
}


########################################
# RANDOM INTRIGUE EVENTS
########################################

# Your spymaster is plotting!
character_event = {
	id = WoL.2300
	desc = EVTDESC_WOL_2300
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes # on_focus_pulse, random_events

	only_playable = yes
	only_capable = yes
	prisoner = no

	trigger = {
		has_focus = focus_intrigue
		has_regent = no
		in_command_trigger = no
		job_spymaster = { always = yes }

		OR = {
			trait = paranoid

			job_spymaster = {
				trigger_if = {
					limit = { has_plot = yes }
					NOT = { plot_is_known_by = ROOT }
				}
				trigger_else = {
					any_backed_character = {
						has_plot = yes
						NOT = { plot_is_known_by = ROOT }
					}
				}

				NOT = { has_character_flag = spymaster_noticed_liege }
			}
		}
	}

	weight_multiplier = {
		factor = 1

		mult_modifier = {
			factor = 4

			trait = master_schemer
			NOT = { trait = paranoid }
		}

		mult_modifier = {
			factor = 2

			has_character_modifier = wol_schemer_2
			NOT = { trait = paranoid }
		}

		mult_modifier = {
			factor = 1.33

			has_character_modifier = wol_schemer_1
			NOT = { trait = paranoid }
		}

		mult_modifier = {
			factor = 2

			has_character_modifier = seduced_loyal_spy_maid
			NOT = { trait = paranoid }
		}

		mult_modifier = {
			factor = 2

			attribute_diff = {
				attribute = intrigue
				character = job_spymaster
				value >= 4
			}
		}

		mult_modifier = {
			factor = 2

			attribute_diff = {
				attribute = intrigue
				character = job_spymaster
				value >= 9
			}
		}

		mult_modifier = {
			factor = 0.5

			attribute_diff = {
				attribute = intrigue
				character = job_spymaster
				value <= -5
			}
		}

		mult_modifier = {
			factor = 0.5

			attribute_diff = {
				attribute = intrigue
				character = job_spymaster
				value <= -10
			}
		}

		mult_modifier = {
			factor = 0.25

			trait = paranoid

			job_spymaster = {
				NOR = {
					AND = {
						has_plot = yes
						NOT = { plot_is_known_by = ROOT }
					}

					any_backed_character = {
						has_plot = yes
						NOT = { plot_is_known_by = ROOT }
					}
				}
			}
		}
	}

	immediate = {
		job_spymaster = {
			save_event_target_as = intrigue_spymaster
		}
	}

	option = {
		name = EVTOPTA_WOL_2300 # Spy on the spymaster

		hidden_effect = {
			random_list = {
				200 = { # Plot uncovered, spymaster arrested
					trigger = {
						job_spymaster = {
							trigger_if = {
								limit = { has_plot = yes }
								NOT = { plot_is_known_by = ROOT }
							}
							trigger_else = {
								any_backed_character = {
									has_plot = yes
									NOT = { plot_is_known_by = ROOT }
								}
							}
						}
					}

					job_spymaster = {
						if = {
							limit = {
								has_plot = yes
								NOT = { plot_is_known_by = ROOT }
							}

							save_event_target_as = target_plotter
						}
						else = {
							random_backed_character = {
								limit = {
									has_plot = yes
									NOT = { plot_is_known_by = ROOT }
								}

								save_event_target_as = target_plotter
							}
						}
					}

					character_event = {
						id = WoL.2302
						days = 3
						random = 7
					}
				}

				50 = { # Nothing discovered
					character_event = {
						id = WoL.2304
						days = 7
						random = 7
					}
				}

				50 = { # Spymaster notices
					job_spymaster = {
						character_event = {
							id = WoL.2305
							days = 3
							random = 7
						}
					}
				}
			}
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTB_WOL_2300 # I trust him/her

		ai_chance = {
			factor = 1

			mult_modifier = {
				factor = 300
				trait = trusting
			}
		}
	}
}

# Spying on Spymaster - plot uncovered
character_event = {
	id = WoL.2302
	desc = EVTDESC_WOL_2302
	picture = GFX_evt_shadowy_cabal
	border = GFX_event_normal_frame_intrigue
	portrait = event_target:plot_target

	is_triggered_only = yes

	immediate = {
		event_target:target_plotter = {
			reveal_plot = ROOT

			plot_target_char = {
				save_event_target_as = plot_target
			}
		}

		character_event = {
			id = WoL.2000 # Chance of levelling up Intrigue skills
			days = 1
		}
	}

	option = {
		name = EVTOPTA_WOL_2302 # Arrest the spymaster!

		trigger = {
			event_target:target_plotter = {
				OR = {
					has_plot = plot_kill_character
					has_plot = plot_kill_spouse
				}
			}
		}

		event_target:intrigue_spymaster = {
			show_scope_change = no

			imprison = ROOT
			character_event = { id = WoL.2303 }
		}

		if = {
			limit = {
				event_target:target_plotter = {
					plot_target_char = {
						OR = {
							character = ROOT
							is_close_relative = ROOT
						}
					}
				}
			}

			opinion = {
				name = opinion_traitor
				who = event_target:intrigue_spymaster
			}
		}

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTB_WOL_2302 # Let them plot...

		if = {
			limit = {
				event_target:target_plotter = {
					OR = {
						has_plot = plot_kill_character
						has_plot = plot_kill_spouse
					}

					plot_target_char = {
						OR = {
							character = ROOT
							is_close_relative = ROOT
						}
					}
				}
			}

			opinion = {
				name = opinion_traitor
				who = event_target:intrigue_spymaster
			}
		}

		ai_chance = { factor = 1 }
	}
}

# Spying on Spymaster - arrest notification
character_event = {
	id = WoL.2303
	desc = EVTDESC_WOL_2303
	picture = GFX_evt_shadowy_cabal
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	ai = no

	option = {
		name = DAMNATION
	}
}

# Spying on Spymaster - nothing found
character_event = {
	id = WoL.2304
	desc = EVTDESC_WOL_2304
	picture = GFX_evt_shadowy_cabal
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2304

		ai_chance = { factor = 100 }
	}

	option = {
		name = EVTOPTB_WOL_2304 # Replace

		job_spymaster = {
			show_scope_change = no

			remove_title = job_spymaster
		}

		ai_chance = {
			factor = 10

			mult_modifier = {
				factor = 50
				trait = paranoid
			}
		}
	}
}

# Spying on Spymaster - Spymaster notices
character_event = {
	id = WoL.2305
	desc = EVTDESC_WOL_2305
	picture = GFX_evt_eavesdropping
	border = GFX_event_normal_frame_intrigue

	is_triggered_only = yes

	option = {
		name = EVTOPTA_WOL_2305

		set_character_flag = spymaster_noticed_liege

		FROM = {
			character_event = { id = WoL.2304 }
		}
	}
}