namespace = Trib

## RELEASE VASSAL AS PROTECTORATE EVENT CHAIN
#Bounce event, to place Liege in FROM scope
character_event = {
	id = Trib.01
	hide_window = yes
	
	is_triggered_only = yes
	
	immediate = {
		FROM = { letter_event = { id = Trib.02 } }
	}
}

# FROM: Liege, ROOT: Vassal
# Offer release.
letter_event = {
	id = Trib.02
	desc = "EVTDESC_Trib_02"
	border = GFX_event_letter_frame_diplomacy
	
	is_triggered_only = yes

	option = { # Accept to become protectorate
		name = EVTOPT_Trib_4041A
		FROM = { letter_event = { id = Trib.03 days = 3 tooltip = EVTTOOLTIP001 } }
		ai_chance = {
			factor = 100
			modifier = {
				factor = 2
				tier = KING
			}
			modifier = {
				factor = 2
				tier = DUKE
				num_of_duke_titles = 2
			}
			modifier = {
				factor = 4
				num_of_king_titles = 2
			}
		}
	}
	
	option = { # Reject
		name = EVTOPTB_Trib_02
		FROM = { letter_event = { id = Trib.04 days = 3 tooltip = EVTTOOLTIP002 } }
		ai_chance = {
			factor = 1
            modifier = { #craven would reject
				factor = 5
				trait = craven
			}
			modifier = {
				factor = 5
				among_most_powerful_vassals = 2; #A powerful vassal would reject since they have a chance to gain the throne instead
			}
			modifier = {
				factor = 20
				relative_power = { who = ROOT power = 5 }
			}
		}
	}
}

# FROM: Vassal, ROOT: Liege
# Accepted becoming protectorate
letter_event = {
	id = Trib.03
	desc = "EVTDESC_Trib_03"
	border = GFX_event_letter_frame_diplomacy
	
	is_triggered_only = yes
	
	immediate = {
		FROM = {
			set_defacto_liege = THIS
			opinion = { modifier = opinion_granted_independence who = FROM years = 20 }
		}
		make_tributary = {
			who = FROM
			tributary_type = permanent
		}
		hidden_tooltip = {
			add_character_modifier = {
				name = tributary_timer
				duration = 730 #CHANGE
				hidden = yes
			}
		}
	}
	
	option = { #Excellent
		name = EVTOPT_Trib_4002A
		prestige = 20
	}
}

# Liege informed that new holder will accept their decision
letter_event = {
	id = Trib.3205
	desc = EVTDESC_Trib_3205
	
	is_triggered_only = yes
	
	trigger = {
		is_liege_of = FROM
	}

	immediate = {
		FROM = {
			set_defacto_liege = THIS
			opinion = { modifier = opinion_granted_independence who = FROM years = 20 }
		}
		make_tributary = {
			who = FROM
			tributary_type = permanent
		}
		hidden_tooltip = {
			add_character_modifier = {
				name = tributary_timer
				duration = 730 #CHANGE
				hidden = yes
			}
		}
	}
	
	option = {
		name = EXCELLENT
	}
}


# FROM: Vassal, ROOT: Liege
# Rejected becoming protectorate

# Liege offered a favor in return for letting new holder keep title
letter_event = {
	id = Trib.04
	desc = EVTDESC_Trib_3206
	
	is_triggered_only = yes
	
	trigger = {
		is_liege_of = FROM
	}
	
	option = {
		name = EVTOPTA_Trib_3206 #Accept
		ai_chance = {
			factor = 50
		}
		hidden_tooltip = {
			FROM = { letter_event = { id = Trib.3207 days = 3 } }
		}
	}
	option = {
		name = EVTOPTB_Trib_3206 #Refuse
		ai_chance = {
			factor = 50
			}
		log = "---> [Root.GetBestName] has refused the offer of a favor"
		FROM = {
			opinion = { who = ROOT modifier = refused_favor years = 5 }
			letter_event = { id = Trib.3208 tooltip = IS_NOTIFIED days = 3 }
		}
	}
}

# New holder's offer of a favor is accepted
letter_event = {
	id = Trib.3207
	desc = EVTDESC_Trib_3207
	
	is_triggered_only = yes
	
	trigger = {
		vassal_of = FROM
	}

	effect = {
		set_defacto_liege = FROM
	}
	
	option = {
		name = EXCELLENT
		reverse_add_favor = FROM
	}
}

# New holder's offer of a favor is turned down
letter_event = {
	id = Trib.3208
	desc = EVTDESC_Trib_3208
	
	is_triggered_only = yes
	
	trigger = {
		vassal_of = FROM
	}
	
	option = {
		name = EVTOPTA_Trib_3204 #Accept the decision
		ai_chance = {
			factor = 50
			modifier = {
				factor = 0
				holds_favor_on = FROM
			}
			modifier = {
				factor = 2.0
				trait = content
			}
			modifier = {
				factor = 1.5
				trait = humble
			}
			modifier = {
				factor = 0.75
				trait = proud
			}
			modifier = {
				factor = 0.75
				trait = ambitious
			}
			modifier = {
				factor = 0.5
				trait = wroth
			}
		}
		log = "---> [Root.GetBestName] has decided to accept [From.GetTitledFirstNameNoRegnal]'s decision"
		FROM = {
			letter_event = { id = Trib.3205 tooltip = IS_NOTIFIED days = 3 }
		}
	}
	option = {
		name = EVTOPTE_Trib_3204 #Rebel
		trigger = {
			prisoner = no
			NOT = { trait = incapable }
		}
		ai_chance = {
			factor = 5
			modifier = {
				factor = 0
				holds_favor_on = FROM
			}
			modifier = {
				factor = 0
				NOT = { trait = lunatic }
				NOT = { relative_power_to_liege = 0.50 }
			}
			modifier = {
				factor = 0.5
				NOT = { relative_power_to_liege = 0.75 }
			}
			modifier = {
				factor = 3
				among_most_powerful_vassals = 2
			}
			modifier = {
				factor = 1.5
				relative_power_to_liege = 1.0
			}
			modifier = {
				factor = 2.0
				relative_power_to_liege = 1.5
			}
			modifier = {
				factor = 2.5
				relative_power_to_liege = 2.0
			}
			modifier = {
				factor = 0.75
				trait = patient
			}
			modifier = {
				factor = 0.75
				trait = just
			}
			modifier = {
				factor = 2.0
				trait = craven
			}
			modifier = {
				factor = 0
				OR = {
					trait = content
					trait = humble
				}
			}
			modifier = {
				factor = 0
				NOR = {
					trait = brave
					trait = wroth
					trait = ambitious
					trait = lunatic
					trait = possessed
				}
			}
		}
		log = "---> [Root.GetBestName] has decided to rebel rather than submit to [From.GetTitledFirstNameNoRegnal]"
		set_character_flag = resisting_expellation
		tooltip = {
			war = {
				target = FROM
				casus_belli = resist_expellation_cb
			}
		}
		hidden_tooltip = {
			FROM = { letter_event = { id = Trib.3214 days = 3 tooltip = EVTTOOLTIP003 } }
		}
	}
}

# New holder rebels rather than have their title expelled from realm
letter_event = {
	id = Trib.3214
	desc = EVTDESC_Trib_3214
	
	is_triggered_only = yes
	
	trigger = {
		is_liege_of = FROM
	}
	
	option = {
		name = CURSES
		reverse_war = {
			target = FROM
			casus_belli = resist_expellation_cb
		}
	}
}



## ASK AUTONOMOUS EVENT CHAIN

#Bounce event, to place Seeker in FROM scope
character_event = {
	id = Trib.999
	hide_window = yes
	
	is_triggered_only = yes
	
	immediate = {
		FROM = { letter_event = { id = Trib.998 } }
	}
}

# FROM: Seeker, ROOT: Protector
# Seek protection event
letter_event = {
	id = Trib.998
	desc = "EVTDESC_Trib_998"
	border = GFX_event_letter_frame_diplomacy
	
	is_triggered_only = yes

	option = { # Accept tribute
		name = EVTOPT_Trib_4041A
		FROM = { letter_event = { id = Trib.4042 days = 3 } }
		ai_chance = {
			factor = 45
			modifier = {
				factor = 0.2
				FROM = { de_jure_liege = ROOT }
			}
		}
	}
	
	option = { # You're not worth it!
		name = EVTOPT_Trib_4003B
		FROM = { letter_event = { id = Trib.4043 days = 3 } }
		ai_chance = {
			factor = 15
			modifier = {
				factor = 5
				relative_power = { who = FROM power = 10 } # i.e. someone who can't defend themselves
			}
		}
	}
	
}

# FROM: Protecor, ROOT: Seeker
# Accepted tributary
letter_event = {
	id = Trib.4042
	desc = "EVTDESC_Trib_4042"
	border = GFX_event_letter_frame_diplomacy
	
	is_triggered_only = yes
	
	immediate = {
		FROM = {
			make_tributary = {
				who = ROOT
				tributary_type = permanent
			}
		}
	}
	
	option = { #Excellent
		name = EVTOPT_Trib_4002A
		clr_character_flag = asking_autonomous
	}
}

# FROM: Protecor, ROOT: Seeker
# Declined tributary
letter_event = {
	id = Trib.4043
	desc = "EVTDESC_Trib_4043"
	border = GFX_event_letter_frame_diplomacy
	
	is_triggered_only = yes

	option = { #CURSEEEES!
		name = EVTOPT_Trib_4005A
		clr_character_flag = asking_autonomous
	}
}


