5687 lines
136 KiB
Text
5687 lines
136 KiB
Text
|
|
#######################################################################
|
|
# EFFECT LIST
|
|
#######################################################################
|
|
# !!! Remember to add all new effects with a short description here !!!
|
|
#######################################################################
|
|
|
|
notify_puppeteer_of_outcome_effect = {
|
|
if = {
|
|
limit = {
|
|
exists = scope:actor
|
|
exists = scope:puppet_or_actor
|
|
scope:is_puppet_action ?= yes
|
|
scope:actor != scope:recipient
|
|
}
|
|
scope:actor = {
|
|
send_interface_toast = {
|
|
type = $TYPE$
|
|
title = $TITLE$
|
|
left_icon = scope:puppet_or_actor
|
|
right_icon = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
blackmail_interaction_effect = {
|
|
if = {
|
|
limit = { NOT = { exists = scope:puppet_or_actor } }
|
|
scope:actor = { save_scope_as = puppet_or_actor }
|
|
}
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = { exists = scope:target }
|
|
blackmail_target_with_secret_effect = { SECRET = scope:target TARGET = scope:recipient }
|
|
reverse_add_opinion = {
|
|
modifier = blackmailing_me_opinion
|
|
target = scope:recipient
|
|
}
|
|
}
|
|
if = {
|
|
limit = { has_government = administrative_government }
|
|
if = {
|
|
limit = {
|
|
scope:target = { is_criminal_for = scope:recipient }
|
|
}
|
|
change_influence = medium_influence_gain
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:target = { is_shunned_for = scope:recipient }
|
|
}
|
|
change_influence = minor_influence_gain
|
|
}
|
|
else = { change_influence = miniscule_influence_gain }
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
compassionate = medium_stress_impact_gain
|
|
trusting = medium_stress_impact_gain
|
|
honest = minor_stress_impact_gain
|
|
just = minor_stress_impact_gain
|
|
forgiving = minor_stress_impact_gain
|
|
}
|
|
}
|
|
scope:target = {
|
|
if = {
|
|
limit = {
|
|
exists = var:promised_not_to_reveal
|
|
var:promised_not_to_reveal = scope:puppet_or_actor
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = broke_promise
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:recipient = { #Nudge towards rivalry
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_relation_rival = scope:puppet_or_actor
|
|
has_relation_potential_rival = scope:puppet_or_actor
|
|
}
|
|
}
|
|
set_relation_potential_rival = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
|
|
torture_blind_castrate_disfigure_opinion_effect = {
|
|
if = {
|
|
limit = { NOT = { exists = scope:puppet_or_actor } }
|
|
scope:actor = { save_scope_as = puppet_or_actor }
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
modifier = $VERB$_me
|
|
target = scope:puppet_or_actor
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_opinion_modifier = {
|
|
modifier = grateful_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
remove_opinion = {
|
|
modifier = grateful_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
primary_spouse ?= { is_alive = yes }
|
|
NOT = { primary_spouse = { this = scope:puppet_or_actor } }
|
|
}
|
|
primary_spouse = { add_to_list = family_of_tortured }
|
|
}
|
|
every_close_family_member = {
|
|
limit = { this != scope:puppet_or_actor }
|
|
add_to_list = family_of_tortured
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_in_list = {
|
|
list = family_of_tortured
|
|
count = 1
|
|
always = yes
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = family_of_tortured
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = $VERB$_family_member
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_in_list = {
|
|
list = family_of_tortured
|
|
count > 1
|
|
always = yes
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = family_of_tortured
|
|
custom = all_close_family_and_spouses
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = $VERB$_family_member
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
torture_interaction_actor_effect = {
|
|
if = {
|
|
limit = { NOT = { exists = scope:puppet_or_actor } }
|
|
scope:actor = { save_scope_as = puppet_or_actor }
|
|
}
|
|
scope:puppet_or_actor = {
|
|
###SECRETS###
|
|
custom_tooltip = torture_interaction_actor_effects.secrets.tt
|
|
|
|
|
|
###STRESS###
|
|
|
|
#Stress loss if they are my rival I hate them
|
|
if = {
|
|
limit = { has_relation_rival = scope:recipient }
|
|
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = sadistic
|
|
has_trait = vengeful
|
|
has_trait = compassionate
|
|
has_trait = forgiving
|
|
}
|
|
}
|
|
add_stress = medium_stress_loss
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
sadistic = major_stress_impact_loss
|
|
vengeful = massive_stress_impact_loss
|
|
compassionate = minor_stress_impact_gain
|
|
forgiving = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
else_if = { # Torturing infidels is relaxing
|
|
limit = {
|
|
has_trait = zealous
|
|
scope:puppet_or_actor.faith != scope:recipient.faith
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = sadistic
|
|
has_trait = compassionate
|
|
has_trait = forgiving
|
|
}
|
|
}
|
|
add_stress = medium_stress_loss
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
sadistic = major_stress_impact_loss
|
|
compassionate = minor_stress_impact_gain
|
|
forgiving = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOT = {
|
|
has_trait = sadistic
|
|
}
|
|
scope:recipient = {
|
|
OR = {
|
|
is_child_of = scope:puppet_or_actor
|
|
is_grandchild_of = scope:puppet_or_actor
|
|
is_great_grandchild_of = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
base = medium_stress_impact_loss
|
|
compassionate = massive_stress_impact_gain
|
|
craven = major_stress_impact_gain
|
|
just = medium_stress_impact_gain
|
|
forgiving = major_stress_impact_gain
|
|
generous = medium_stress_impact_gain
|
|
trusting = minor_stress_impact_gain
|
|
content = minor_stress_impact_gain
|
|
family_first = minor_stress_impact_gain
|
|
}
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
sadistic = medium_stress_impact_loss
|
|
compassionate = major_stress_impact_gain
|
|
craven = major_stress_impact_gain
|
|
just = medium_stress_impact_gain
|
|
forgiving = medium_stress_impact_gain
|
|
generous = medium_stress_impact_gain
|
|
trusting = minor_stress_impact_gain
|
|
content = minor_stress_impact_gain
|
|
}
|
|
}
|
|
|
|
###DREAD###
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
OR = {
|
|
is_powerful_vassal_of = scope:puppet_or_actor # Is your powerful vassal
|
|
AND = { # Is an Emperor
|
|
exists = primary_title
|
|
primary_title.tier >= tier_empire
|
|
}
|
|
target_is_vassal_or_below = scope:puppet_or_actor # Your liege/s
|
|
scope:puppet_or_actor.faith.religious_head = scope:recipient # Your head of faith
|
|
}
|
|
}
|
|
}
|
|
add_dread = torture_interaction_massive_dread_gain
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
OR = {
|
|
AND = { # Is your vassal, and higher than Baron
|
|
is_vassal_of = scope:puppet_or_actor
|
|
primary_title.tier > tier_barony
|
|
}
|
|
AND = { # Is a King
|
|
exists = primary_title
|
|
primary_title.tier >= tier_kingdom
|
|
}
|
|
}
|
|
}
|
|
}
|
|
add_dread = torture_interaction_major_dread_gain
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
OR = {
|
|
scope:puppet_or_actor = { # Torturing close family of your vassals is dreadful...
|
|
any_vassal = {
|
|
is_close_family_of = scope:recipient
|
|
}
|
|
}
|
|
scope:puppet_or_actor = { # Torturing close family of your liege/s is the same...
|
|
any_liege_or_above = {
|
|
is_close_family_of = scope:recipient
|
|
}
|
|
}
|
|
AND = { # Peer Vassals
|
|
exists = primary_title
|
|
primary_title.tier > tier_barony
|
|
liege ?= scope:puppet_or_actor.liege
|
|
}
|
|
AND = { # Is a Duke
|
|
exists = primary_title
|
|
primary_title.tier >= tier_duchy
|
|
}
|
|
}
|
|
}
|
|
}
|
|
add_dread = torture_interaction_medium_dread_gain
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
OR = {
|
|
is_spouse_of = scope:puppet_or_actor # Your own spouse
|
|
is_close_or_extended_family_of = scope:puppet_or_actor # Your own family
|
|
AND = {
|
|
exists = primary_title
|
|
primary_title.tier >= tier_county # Is a Count
|
|
}
|
|
scope:puppet_or_actor = { # Torturing extended family of your vassals is dreadful...
|
|
any_vassal = {
|
|
is_extended_family_of = scope:recipient
|
|
}
|
|
}
|
|
scope:puppet_or_actor = { # Torturing extended family of your liege/s is the same...
|
|
any_liege_or_above = {
|
|
is_extended_family_of = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
add_dread = torture_interaction_minor_dread_gain
|
|
}
|
|
|
|
|
|
###OPINIONS###
|
|
torture_blind_castrate_disfigure_opinion_effect = { VERB = tortured }
|
|
|
|
###CHURCH OPINION & PIETY###
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
rite ?= { rite_has_parameter = torturing_prisoners_grants_piety }
|
|
|
|
# Divine Retribution cancels out faith-based penalties
|
|
has_perk = divine_retribution_perk
|
|
}
|
|
}
|
|
add_piety = medium_piety_loss
|
|
|
|
if = {
|
|
limit = {
|
|
any_learning_councillor = {
|
|
opinion = {
|
|
target = scope:recipient
|
|
value >= neutral_opinion
|
|
}
|
|
}
|
|
}
|
|
random_learning_councillor = {
|
|
add_opinion = {
|
|
modifier = impious_opinion
|
|
opinion = -10
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
rite ?= { rite_has_parameter = torturing_prisoners_grants_piety }
|
|
}
|
|
add_piety = medium_piety_gain
|
|
}
|
|
}
|
|
}
|
|
|
|
torturer_interaction_recipient_effect = {
|
|
scope:recipient = {
|
|
add_character_modifier = {
|
|
modifier = recently_tortured
|
|
years = 5
|
|
}
|
|
|
|
# Poetry does not cause lunacy.
|
|
if = {
|
|
limit = {
|
|
NOT = { scope:torture_method = flag:poetry }
|
|
}
|
|
random = {
|
|
chance = 5
|
|
modifier = {
|
|
scope:puppet_or_actor = { has_trait = torturer }
|
|
add = 10
|
|
}
|
|
add_trait = lunatic_1
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
rite ?= { rite_has_parameter = reduced_stress_from_torture }
|
|
has_personal_tenet_flag = reduced_stress_from_torture
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_playable_character = yes } # Only playable characters have spiritual fulfillment
|
|
change_spiritual_fulfillment = medium_spiritual_fulfillment_value
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = craven
|
|
has_trait = brave
|
|
}
|
|
}
|
|
add_stress = massive_stress_impact_gain
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
craven = monumental_stress_gain
|
|
brave = medium_stress_impact_gain
|
|
}
|
|
}
|
|
|
|
if = { # Remove the flag blocking other prison interactions
|
|
limit = { has_character_flag = is_being_tortured }
|
|
remove_character_flag = is_being_tortured
|
|
}
|
|
|
|
torture_memory_effect = {
|
|
VICTIM = scope:recipient
|
|
TORTURER = scope:puppet_or_actor
|
|
TYPE = torture
|
|
}
|
|
}
|
|
}
|
|
|
|
illegal_imprisonment_dread_effect = {
|
|
###DREAD###
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_imprisonment_reason = scope:recipient
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
is_spouse_of = scope:recipient
|
|
is_close_family_of = scope:recipient
|
|
scope:recipient = { tier_or_related_liege_tier_greater_or_equal_trigger = { TIER = tier_kingdom } }
|
|
}
|
|
}
|
|
add_dread = medium_dread_gain
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
scope:recipient = { tier_or_related_liege_tier_equal_trigger = { TIER = tier_duchy } }
|
|
scope:recipient = { tier_or_related_liege_tier_equal_trigger = { TIER = tier_county } }
|
|
}
|
|
}
|
|
add_dread = minor_dread_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
blind_castrate_and_disfigure_effect = {
|
|
###STRESS##
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = { has_relation_rival = scope:recipient }
|
|
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = sadistic #Extra stress
|
|
has_trait = vengeful #Extra stress
|
|
has_trait = compassionate #Lessened impact
|
|
has_trait = forgiving #Lessened impact
|
|
}
|
|
}
|
|
add_stress = medium_stress_loss
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
sadistic = major_stress_impact_loss
|
|
vengeful = major_stress_impact_loss
|
|
compassionate = minor_stress_impact_gain
|
|
forgiving = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
#Regular stress
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
sadistic = minor_stress_impact_loss
|
|
compassionate = massive_stress_impact_gain
|
|
craven = major_stress_impact_gain
|
|
just = medium_stress_impact_gain
|
|
forgiving = medium_stress_impact_gain
|
|
generous = medium_stress_impact_gain
|
|
trusting = minor_stress_impact_gain
|
|
gregarious = minor_stress_impact_gain
|
|
calm = minor_stress_impact_gain
|
|
content = minor_stress_impact_gain
|
|
honest = minor_stress_impact_gain
|
|
}
|
|
}
|
|
|
|
###DREAD###
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
is_spouse_of = scope:recipient
|
|
is_close_family_of = scope:recipient
|
|
scope:recipient = { tier_or_related_liege_tier_greater_or_equal_trigger = { TIER = tier_kingdom } } #Kingdom & empire
|
|
}
|
|
}
|
|
add_dread = major_dread_gain
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
scope:recipient = { tier_or_related_liege_tier_equal_trigger = { TIER = tier_duchy } }
|
|
scope:recipient = { tier_or_related_liege_tier_equal_trigger = { TIER = tier_county } }
|
|
}
|
|
}
|
|
add_dread = medium_dread_gain
|
|
}
|
|
else = {
|
|
add_dread = minor_dread_gain
|
|
}
|
|
}
|
|
}
|
|
|
|
blind_opinion_effect = {
|
|
###OPINIONS###
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
modifier = blinded_me
|
|
target = scope:actor
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
exists = primary_spouse
|
|
NOT = { primary_spouse = { this = scope:actor } }
|
|
}
|
|
primary_spouse = { add_to_list = family_of_blinded }
|
|
}
|
|
every_close_family_member = {
|
|
limit = { this != scope:actor }
|
|
add_to_list = family_of_blinded
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_in_list = {
|
|
list = family_of_blinded
|
|
count = 1
|
|
always = yes
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = family_of_blinded
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = blinded_family_member
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_in_list = {
|
|
list = family_of_blinded
|
|
count > 1
|
|
always = yes
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = family_of_blinded
|
|
custom = all_close_family_and_spouses
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = blinded_family_member
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
blind_castrated_disfigured_recipient_support_effect = { #To be used in other effects
|
|
random = {
|
|
chance = 5
|
|
add_trait = lunatic_1
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = craven
|
|
has_trait = brave
|
|
}
|
|
}
|
|
add_stress = major_stress_impact_gain
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
craven = massive_stress_gain
|
|
brave = medium_stress_impact_gain
|
|
}
|
|
}
|
|
add_character_flag = { #TO make sure that they don't get spammed about the release
|
|
flag = block_for_prison_release_notification
|
|
days = 2
|
|
}
|
|
|
|
release_from_prison = yes
|
|
if = {
|
|
limit = {
|
|
scope:recruit ?= yes
|
|
}
|
|
scope:actor = {
|
|
add_courtier = scope:recipient
|
|
}
|
|
}
|
|
|
|
if = { # Remove the flag blocking other prison interactions
|
|
limit = { has_character_flag = is_being_tortured }
|
|
remove_character_flag = is_being_tortured
|
|
}
|
|
}
|
|
|
|
blind_recipient_effect = {
|
|
scope:recipient = {
|
|
if = {
|
|
limit = { scope:actor = { is_ai = no } }
|
|
add_trait_force_tooltip = blind #This is because we want to show a blinded portrait it prison.1020 for players, then we add the trait in the immediate but we still want a tooltip
|
|
}
|
|
else = {
|
|
add_trait = blind
|
|
}
|
|
torture_memory_effect = {
|
|
VICTIM = scope:recipient
|
|
TORTURER = scope:actor
|
|
TYPE = blind
|
|
}
|
|
add_character_modifier = {
|
|
modifier = recently_blinded
|
|
years = 1
|
|
}
|
|
blind_castrated_disfigured_recipient_support_effect = yes
|
|
}
|
|
}
|
|
|
|
castrate_recipient_effect = {
|
|
scope:recipient = {
|
|
if = {
|
|
limit = {
|
|
age < 12
|
|
}
|
|
ep3_child_castration_effect = yes
|
|
}
|
|
else = {
|
|
ep3_youth_castration_effect = yes
|
|
}
|
|
blind_castrated_disfigured_recipient_support_effect = yes
|
|
}
|
|
}
|
|
|
|
disfigure_recipient_effect = {
|
|
scope:recipient = {
|
|
if = {
|
|
limit = { scope:actor = { is_ai = no } }
|
|
#This is because we want to show a blinded portrait it prison.1030 for players, then we add the trait in the immediate but we still want a tooltip
|
|
add_trait_force_tooltip = disfigured
|
|
}
|
|
else = {
|
|
add_trait = disfigured
|
|
}
|
|
torture_memory_effect = {
|
|
VICTIM = scope:recipient
|
|
TORTURER = scope:actor
|
|
TYPE = disfigured
|
|
}
|
|
add_character_modifier = {
|
|
modifier = recently_disfigured
|
|
years = 1
|
|
}
|
|
blind_castrated_disfigured_recipient_support_effect = yes
|
|
}
|
|
}
|
|
|
|
maimed_recipient_effect = {
|
|
scope:recipient = {
|
|
if = {
|
|
limit = { scope:maim_type = flag:arm }
|
|
if = {
|
|
limit = { scope:actor = { is_ai = no } }
|
|
#This is because we want to show a blinded portrait it prison.1030 for players, then we add the trait in the immediate but we still want a tooltip
|
|
apply_maimed_trait_and_modifier_effect = yes
|
|
}
|
|
else = { apply_maimed_trait_and_modifier_effect = yes }
|
|
torture_memory_effect = {
|
|
VICTIM = scope:recipient
|
|
TORTURER = scope:actor
|
|
TYPE = maim_arm
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:maim_type = flag:leg }
|
|
if = {
|
|
limit = { scope:actor = { is_ai = no } }
|
|
#This is because we want to show a blinded portrait it prison.1030 for players, then we add the trait in the immediate but we still want a tooltip
|
|
add_trait_force_tooltip = one_legged
|
|
}
|
|
else = { add_trait = one_legged }
|
|
torture_memory_effect = {
|
|
VICTIM = scope:recipient
|
|
TORTURER = scope:actor
|
|
TYPE = maim_leg
|
|
}
|
|
add_character_modifier = {
|
|
modifier = recently_maimed_modifier
|
|
years = 1
|
|
}
|
|
}
|
|
blind_castrated_disfigured_recipient_support_effect = yes
|
|
}
|
|
}
|
|
|
|
war_for_imprison_effect = {
|
|
$LIEGE$ = { save_temporary_scope_as = liege_temp }
|
|
$REBEL$ = {
|
|
save_temporary_scope_as = rebel_temp
|
|
save_scope_value_as = {
|
|
name = war_for_imprisonment_flavour
|
|
value = yes
|
|
}
|
|
start_war = {
|
|
casus_belli = refused_liege_demand_war
|
|
target = scope:liege_temp
|
|
}
|
|
}
|
|
# Disgruntled vassals
|
|
if = {
|
|
limit = {
|
|
scope:liege_temp = { NOT = { has_imprisonment_reason = scope:rebel_temp } }
|
|
}
|
|
scope:liege_temp = {
|
|
every_vassal = { #Vassals joining the rebel.
|
|
limit = {
|
|
vassal_would_join_rebel_faction_base_trigger = yes
|
|
OR = {
|
|
#Lovers and friends always back rebel (unless also lovers/friends of the liege)
|
|
vassal_would_join_rebel_faction_relation_trigger = yes
|
|
#Vassals that either like recipient or have high honor will rally if the liege is being tyrannical.
|
|
AND = {
|
|
# Special imprisonment checks
|
|
NOT = {
|
|
scope:liege_temp = { has_imprisonment_reason = scope:rebel_temp }
|
|
}
|
|
# If they can't join a faction against the liege they should not revolt
|
|
vassal_would_join_rebel_faction_tyranny_trigger = yes
|
|
}
|
|
#And finally, vassals that really hate their liege will join regardless (provided that they also do not hate recipient).
|
|
AND = {
|
|
OR = {
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -25
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -50
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -75
|
|
}
|
|
}
|
|
}
|
|
OR = {
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -40
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -20
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# TGP bloc members follow their leader
|
|
trigger_if = {
|
|
limit = { exists = house.house_confederation.leading_house.house_head }
|
|
house.house_confederation.leading_house.house_head = this
|
|
}
|
|
}
|
|
add_to_list = joining_vassals
|
|
}
|
|
}
|
|
}
|
|
# Bloc members join despite legality
|
|
bloc_member_join_war_effect = yes
|
|
every_in_list = {
|
|
list = joining_vassals
|
|
vassal_join_rebel_war_effect = yes
|
|
}
|
|
every_player = {
|
|
limit = { is_vassal_of = scope:liege_temp }
|
|
scope:liege_temp = {
|
|
save_scope_as = actor
|
|
save_scope_as = puppet_or_actor
|
|
}
|
|
scope:rebel_temp = { save_scope_as = recipient }
|
|
trigger_event = char_interaction.0232
|
|
}
|
|
scope:rebel_temp = {
|
|
add_opinion = {
|
|
target = scope:liege_temp
|
|
modifier = attempted_arrest_opinion
|
|
}
|
|
}
|
|
}
|
|
|
|
vassal_join_rebel_war_effect = {
|
|
save_temporary_scope_as = joining_vassal
|
|
scope:liege_temp = { custom_tooltip = tooltip_fellow_vassal_joins_war } #The war has not started when viewing the interaction
|
|
hidden_effect = {
|
|
scope:rebel_temp = {
|
|
every_character_war = {
|
|
limit = {
|
|
using_cb = refused_liege_demand_war
|
|
casus_belli = {
|
|
primary_attacker = scope:rebel_temp
|
|
primary_defender = scope:liege_temp
|
|
}
|
|
}
|
|
add_to_list = war_to_join
|
|
}
|
|
}
|
|
every_in_list = {
|
|
list = war_to_join
|
|
limit = {
|
|
# Bloc members are already pulled in by bloc_member_join_war_effect above
|
|
NOT = { is_participant = scope:joining_vassal }
|
|
}
|
|
hidden_effect = { set_called_to = scope:joining_vassal }
|
|
add_attacker = scope:joining_vassal
|
|
}
|
|
}
|
|
hidden_effect = {
|
|
scope:liege_temp = {
|
|
add_opinion = {
|
|
target = scope:joining_vassal
|
|
modifier = rebellious_vassal_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
vassal_revocation_tyranny_effect = { #Despite its name this is referenced when _retracting_ vassals.
|
|
if = {
|
|
limit = { exists = scope:use_strife_not_tyranny }
|
|
# If you have revocation reason, we allow that.
|
|
if = {
|
|
limit = { has_revoke_title_reason = scope:recipient }
|
|
consume_revoke_title_reason = scope:recipient
|
|
}
|
|
else_if = { #Admin liege revoking from admin vassal
|
|
limit = {
|
|
government_has_mechanic = administrative
|
|
scope:recipient = {
|
|
government_has_mechanic = administrative
|
|
}
|
|
}
|
|
}
|
|
else = { change_strife_opinion = major_strife_gain }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
vassal_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
}
|
|
# Special Legitimacy loss if you're revoking without a reason
|
|
if = {
|
|
limit = { has_legitimacy = yes }
|
|
add_legitimacy = minor_legitimacy_loss
|
|
}
|
|
add_tyranny = {
|
|
value = revoke_vassal_tyranny_gain
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_imprisoned = yes
|
|
NOT = { is_imprisoned_by = scope:puppet_or_actor }
|
|
}
|
|
NOT = {
|
|
scope:puppet_or_actor = { has_revoke_title_reason = scope:recipient }
|
|
}
|
|
}
|
|
multiply = 2
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_revoke_title_reason = scope:recipient
|
|
}
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_VASSAL_DESC
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
rite = {
|
|
OR = {
|
|
rite_has_parameter = pluralism_righteous_revocation_tyranny_reduced
|
|
rite_has_parameter = pluralism_fundamentalist_revocation_tyranny_minimal
|
|
}
|
|
}
|
|
faith = {
|
|
faith_hostility_level = {
|
|
target = scope:recipient.faith
|
|
value >= faith_hostile_level
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
rite = { rite_has_parameter = pluralism_fundamentalist_revocation_tyranny_minimal }
|
|
faith = {
|
|
faith_hostility_level = {
|
|
target = scope:recipient.faith
|
|
value = faith_hostile_level
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_HOSTILE_INFIDEL_VASSAL
|
|
}
|
|
else = {
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_EVIL_INFIDEL_VASSAL
|
|
}
|
|
every_vassal = {
|
|
limit = {
|
|
faith = scope:recipient.faith
|
|
}
|
|
custom = INFIDEL_REVOCATION_OPINION
|
|
add_opinion = {
|
|
modifier = angry_opinion
|
|
target = scope:puppet_or_actor
|
|
opinion = {
|
|
value = revoke_vassal_tyranny_gain
|
|
multiply = -1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
revocation_tyranny_effect = {
|
|
save_scope_as = liege_temp_scope
|
|
if = {
|
|
limit = { exists = scope:use_strife_not_tyranny }
|
|
# If you have revocation reason, we allow that.
|
|
if = {
|
|
limit = { has_revoke_title_reason = $VASSAL$ }
|
|
consume_revoke_title_reason = $VASSAL$
|
|
}
|
|
else = { change_strife_opinion = major_strife_gain }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = $VASSAL$ }
|
|
}
|
|
add_tyranny = revoke_title_tyranny_gain
|
|
# Special Legitimacy loss if you're revoking without a reason
|
|
if = {
|
|
limit = {
|
|
has_legitimacy = yes
|
|
NOT = {
|
|
scope:landed_title ?= {
|
|
duchy = scope:liege_temp_scope.capital_county.duchy
|
|
}
|
|
}
|
|
}
|
|
add_legitimacy = medium_legitimacy_loss
|
|
}
|
|
|
|
#If my culture is different from the recipients
|
|
if = {
|
|
limit = {
|
|
NOT = { culture = $VASSAL$.culture }
|
|
}
|
|
$VASSAL$.culture = {
|
|
change_cultural_acceptance = {
|
|
target = scope:liege_temp_scope.culture
|
|
value = revoke_title_culture_acceptance_impact
|
|
desc = cultural_acceptance_loss_revokation
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
title_revocation_is_admin_governor_trigger = { VASSAL = $VASSAL$ }
|
|
}
|
|
custom_description = {
|
|
text = IS_ALLOWED_TO_REVOKE_ADMIN_GOVERNMENT
|
|
subject = scope:liege_temp_scope
|
|
object = $VASSAL$
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
exists = scope:landed_title
|
|
has_claim_on = scope:landed_title
|
|
}
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_TITLE_FOR_CLAIM_DESC
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_revoke_title_reason = scope:recipient
|
|
}
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_TITLE_DESC
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
rite = {
|
|
OR = {
|
|
rite_has_parameter = pluralism_righteous_revocation_tyranny_reduced
|
|
rite_has_parameter = pluralism_fundamentalist_revocation_tyranny_minimal
|
|
}
|
|
}
|
|
faith = {
|
|
faith_hostility_level = {
|
|
target = scope:recipient.faith
|
|
value >= faith_hostile_level
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
rite = { rite_has_parameter = pluralism_fundamentalist_revocation_tyranny_minimal }
|
|
faith = {
|
|
faith_hostility_level = {
|
|
target = scope:recipient.faith
|
|
value = faith_hostile_level
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_HOSTILE_INFIDEL_TITLE
|
|
}
|
|
else = {
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_EVIL_INFIDEL_TITLE
|
|
}
|
|
every_vassal = {
|
|
limit = {
|
|
faith = scope:recipient.faith
|
|
}
|
|
custom = INFIDEL_REVOCATION_OPINION
|
|
add_opinion = {
|
|
modifier = angry_opinion
|
|
target = scope:puppet_or_actor
|
|
opinion = {
|
|
value = revoke_title_tyranny_gain
|
|
multiply = -1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
war_for_revoke_effect = {
|
|
$LIEGE$ = { save_temporary_scope_as = liege_temp }
|
|
$REBEL$ = {
|
|
save_temporary_scope_as = rebel_temp
|
|
save_scope_value_as = {
|
|
name = war_for_revocation_flavour
|
|
value = yes
|
|
}
|
|
start_war = {
|
|
casus_belli = refused_liege_demand_war
|
|
target = scope:liege_temp
|
|
}
|
|
}
|
|
scope:liege_temp = {
|
|
# Disgruntled vassals
|
|
if = {
|
|
limit = {
|
|
NOT = { has_revoke_title_reason = scope:rebel_temp }
|
|
}
|
|
every_vassal = { #Vassals joining the rebel.
|
|
custom = vassals_joining_war_tt
|
|
limit = {
|
|
vassal_would_join_rebel_faction_base_trigger = yes
|
|
OR = {
|
|
#Lovers and friends always back rebel (unless also lovers/friends of the liege)
|
|
vassal_would_join_rebel_faction_relation_trigger = yes
|
|
#Vassals that either like recipient or have high honor will rally if the liege is being tyrannical.
|
|
AND = {
|
|
# Special retraction checks
|
|
scope:liege_temp = {
|
|
NOR = {
|
|
has_revoke_title_reason = scope:rebel_temp
|
|
AND = {
|
|
government_has_mechanic = administrative
|
|
scope:rebel_temp = { is_governor = yes }
|
|
trigger_if = {
|
|
limit = { has_legitimacy = yes }
|
|
meets_legitimacy_expectation_of = prev
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = { exists = scope:landed_title }
|
|
has_claim_on = scope:landed_title
|
|
}
|
|
}
|
|
}
|
|
# If they can't join a faction against the liege they should not revolt
|
|
vassal_would_join_rebel_faction_tyranny_trigger = yes
|
|
}
|
|
#And finally, vassals that really hate their liege will join regardless (provided that they also do not hate recipient).
|
|
AND = {
|
|
OR = {
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -25
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -50
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -75
|
|
}
|
|
}
|
|
}
|
|
OR = {
|
|
#default threshold
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -50
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -25
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= 0
|
|
}
|
|
}
|
|
#If tyrannical, the default threshold will be reached if at this level
|
|
AND = {
|
|
scope:liege_temp = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = scope:rebel_temp }
|
|
}
|
|
OR = {
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -30 #revoke_title_tyranny_gain adds -20
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -10
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# TGP bloc members follow their leader
|
|
trigger_if = {
|
|
limit = { exists = house.house_confederation.leading_house.house_head }
|
|
house.house_confederation.leading_house.house_head = this
|
|
}
|
|
}
|
|
add_to_list = joining_vassals
|
|
}
|
|
}
|
|
}
|
|
# Bloc members join despite legality
|
|
bloc_member_join_war_effect = yes
|
|
every_in_list = {
|
|
list = joining_vassals
|
|
vassal_join_rebel_war_effect = yes
|
|
}
|
|
every_player = {
|
|
limit = { is_vassal_of = scope:liege_temp }
|
|
scope:rebel_temp = { save_scope_as = recipient }
|
|
scope:liege_temp = {
|
|
save_scope_as = actor
|
|
save_scope_as = puppet_or_actor
|
|
}
|
|
trigger_event = char_interaction.0232
|
|
}
|
|
scope:rebel_temp = {
|
|
add_opinion = {
|
|
target = scope:liege_temp
|
|
modifier = attempted_arrest_opinion
|
|
}
|
|
}
|
|
}
|
|
|
|
war_for_retraction_effect = {
|
|
$LIEGE$ = { save_temporary_scope_as = liege_temp }
|
|
$SUBVASSAL$ = { save_temporary_scope_as = subvassal_temp }
|
|
$REBEL$ = {
|
|
save_temporary_scope_as = rebel_temp
|
|
save_scope_value_as = {
|
|
name = war_for_retraction_flavour
|
|
value = yes
|
|
}
|
|
start_war = {
|
|
casus_belli = refused_liege_demand_war
|
|
target = scope:liege_temp
|
|
}
|
|
}
|
|
scope:liege_temp = {
|
|
every_vassal = { #Vassals joining the rebel.
|
|
limit = {
|
|
vassal_would_join_rebel_faction_base_trigger = yes
|
|
OR = {
|
|
#Lovers and friends always back rebel (unless also lovers/friends of the liege)
|
|
vassal_would_join_rebel_faction_relation_trigger = yes
|
|
#Vassals that either like recipient or have high honor will rally if the liege is being tyrannical (taking away de jure vassal).
|
|
AND = {
|
|
# Special revocation checks
|
|
scope:liege_temp = {
|
|
NOR = {
|
|
has_revoke_title_reason = scope:rebel_temp
|
|
AND = {
|
|
government_has_mechanic = administrative
|
|
scope:rebel_temp = { is_governor = yes }
|
|
trigger_if = {
|
|
limit = { has_legitimacy = yes }
|
|
meets_legitimacy_expectation_of = prev
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:rebel_temp = {
|
|
any_held_title = { is_de_jure_liege_or_above_target = scope:subvassal_temp.primary_title }
|
|
}
|
|
# If they can't join a faction against the liege they should not revolt
|
|
vassal_would_join_rebel_faction_tyranny_trigger = yes
|
|
}
|
|
#And finally, vassals that really hate their liege will join regardless (provided that they also do not hate rebel).
|
|
AND = {
|
|
OR = {
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -25
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -50
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:rebel_temp
|
|
value >= -75
|
|
}
|
|
}
|
|
}
|
|
OR = {
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -40
|
|
}
|
|
AND = {
|
|
has_game_rule = hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= -20
|
|
}
|
|
}
|
|
AND = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:liege_temp = { is_ai = no }
|
|
opinion = {
|
|
target = scope:liege_temp
|
|
value <= 0
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# TGP bloc members follow their leader
|
|
trigger_if = {
|
|
limit = { exists = house.house_confederation.leading_house.house_head }
|
|
house.house_confederation.leading_house.house_head = this
|
|
}
|
|
}
|
|
add_to_list = joining_vassals
|
|
}
|
|
}
|
|
# Bloc members join despite legality
|
|
bloc_member_join_war_effect = yes
|
|
every_in_list = {
|
|
list = joining_vassals
|
|
vassal_join_rebel_war_effect = yes
|
|
}
|
|
every_player = {
|
|
limit = { is_vassal_of = scope:liege_temp }
|
|
trigger_event = char_interaction.0232
|
|
}
|
|
scope:rebel_temp = {
|
|
add_opinion = {
|
|
target = scope:liege_temp
|
|
modifier = attempted_arrest_opinion
|
|
}
|
|
}
|
|
}
|
|
|
|
bloc_member_join_war_effect = {
|
|
if = {
|
|
limit = {
|
|
exists = scope:rebel_temp.house.house_confederation
|
|
trigger_if = {
|
|
limit = { exists = scope:liege_temp.house.house_confederation }
|
|
NOT = { scope:rebel_temp = scope:liege_temp.house.house_confederation.leading_house.house_head }
|
|
}
|
|
}
|
|
scope:rebel_temp.top_liege = {
|
|
every_vassal = {
|
|
limit = {
|
|
highest_held_title_tier > tier_barony
|
|
house.house_confederation ?= scope:rebel_temp.house.house_confederation
|
|
NOT = { this = scope:liege_temp }
|
|
}
|
|
add_to_list = joining_vassals
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
kick_from_court_interaction_warning_tooltip_effect = {
|
|
save_temporary_scope_as = kicked
|
|
if = {
|
|
limit = { is_councillor_of = scope:puppet_or_actor }
|
|
custom_tooltip = kick_from_court_councillor_warning_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_claim = {
|
|
useful_courtier_or_guest_claim_trigger = { RULER = scope:puppet_or_actor }
|
|
}
|
|
}
|
|
random_claim = {
|
|
limit = {
|
|
useful_courtier_or_guest_claim_trigger = { RULER = scope:puppet_or_actor }
|
|
tier = tier_kingdom
|
|
}
|
|
alternative_limit = {
|
|
useful_courtier_or_guest_claim_trigger = { RULER = scope:puppet_or_actor }
|
|
tier = tier_duchy
|
|
}
|
|
alternative_limit = {
|
|
useful_courtier_or_guest_claim_trigger = { RULER = scope:puppet_or_actor }
|
|
tier = tier_county
|
|
}
|
|
save_scope_as = kicked_claim
|
|
}
|
|
custom_tooltip = kick_from_court_claimant_warning_tt
|
|
}
|
|
if = {
|
|
limit = { is_commanding_army = yes }
|
|
custom_tooltip = kick_from_court_commander_warning_tt
|
|
}
|
|
if = {
|
|
limit = { is_knight_of = scope:puppet_or_actor }
|
|
custom_tooltip = kick_from_court_knight_warning_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:kicked = {
|
|
has_any_court_position = yes
|
|
any_court_position_employer = { this = scope:puppet_or_actor }
|
|
}
|
|
}
|
|
custom_tooltip = kick_from_court_holds_court_title_warning_tt
|
|
}
|
|
}
|
|
|
|
kick_from_court_interaction_effect = {
|
|
select_and_move_to_pool_effect = yes
|
|
|
|
add_opinion = {
|
|
modifier = kicked_me_from_court
|
|
target = scope:actor
|
|
}
|
|
kick_from_court_interaction_warning_tooltip_effect = yes
|
|
|
|
every_close_family_member = {
|
|
limit = { NOT = { any_in_list = { list = kicked_relatives_list this = prev } } }
|
|
add_to_list = kicked_relatives_list
|
|
}
|
|
|
|
scope:actor = {
|
|
if = {
|
|
limit = { has_government = landless_adventurer_government }
|
|
every_courtier = {
|
|
limit = {
|
|
is_adult = yes
|
|
NOR = {
|
|
is_close_family_of = scope:recipient
|
|
has_any_moderate_bad_relationship_with_character_trigger = { CHARACTER = scope:recipient }
|
|
}
|
|
}
|
|
custom = custom.every_adult_follower
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = kicked_follower_from_camp_opinion
|
|
opinion = -5
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
every_relation = {
|
|
type = rival
|
|
limit = { is_courtier_of = scope:actor }
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = kicked_rival_from_camp_opinion
|
|
opinion = 30
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
disinherit_effect = {
|
|
save_scope_as = disinherited
|
|
#Rivalry
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_relation_rival = $DISINHERITOR$
|
|
}
|
|
OR = {
|
|
age >= 8
|
|
AND = {
|
|
age < 8
|
|
$DISINHERITOR$ = {
|
|
is_adult = no
|
|
}
|
|
}
|
|
}
|
|
OR = {
|
|
ai_vengefulness >= low_positive_ai_value
|
|
ai_greed >= low_positive_ai_value
|
|
}
|
|
NOR = {
|
|
has_trait = craven
|
|
has_trait = forgiving
|
|
has_trait = content
|
|
has_trait = humble
|
|
}
|
|
}
|
|
set_relation_rival = {
|
|
target = $DISINHERITOR$
|
|
reason = rival_disinherited
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = forgiving
|
|
has_trait = content
|
|
has_trait = humble
|
|
}
|
|
}
|
|
progress_towards_rival_effect = {
|
|
CHARACTER = $DISINHERITOR$
|
|
REASON = rival_disinherited
|
|
OPINION = 0
|
|
}
|
|
}
|
|
|
|
#Gain rivalry with primary heir if one of your other heirs
|
|
if = {
|
|
limit = {
|
|
is_heir_of = $DISINHERITOR$
|
|
$DISINHERITOR$.primary_heir ?= {
|
|
NOR = {
|
|
this = scope:disinherited
|
|
has_any_good_relationship_with_character_trigger = { CHARACTER = scope:disinherited }
|
|
is_allied_to = scope:disinherited
|
|
is_child_of = scope:disinherited
|
|
}
|
|
}
|
|
}
|
|
#Rivalry
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_relation_rival = $DISINHERITOR$.primary_heir
|
|
}
|
|
OR = {
|
|
age >= 8
|
|
AND = {
|
|
age < 8
|
|
$DISINHERITOR$.primary_heir ?= {
|
|
is_adult = no
|
|
}
|
|
}
|
|
}
|
|
OR = {
|
|
ai_vengefulness >= low_positive_ai_value
|
|
ai_greed >= low_positive_ai_value
|
|
}
|
|
NOR = {
|
|
has_trait = craven
|
|
has_trait = forgiving
|
|
has_trait = content
|
|
has_trait = humble
|
|
}
|
|
}
|
|
set_relation_rival = {
|
|
target = $DISINHERITOR$.primary_heir
|
|
reason = rival_disinherited
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = forgiving
|
|
has_trait = content
|
|
has_trait = humble
|
|
}
|
|
}
|
|
progress_towards_rival_effect = {
|
|
CHARACTER = $DISINHERITOR$.primary_heir
|
|
REASON = rival_disinherited
|
|
OPINION = 0
|
|
}
|
|
}
|
|
}
|
|
#Gain rivalry with new primary heir if your primary heir
|
|
else_if = {
|
|
limit = {
|
|
is_primary_heir_of = $DISINHERITOR$
|
|
$DISINHERITOR$.primary_title = {
|
|
any_title_heir = {
|
|
$DISINHERITOR$.primary_title = {
|
|
place_in_line_of_succession = {
|
|
target = prev
|
|
value = 2
|
|
}
|
|
}
|
|
NOR = {
|
|
this = scope:disinherited
|
|
has_any_good_relationship_with_character_trigger = { CHARACTER = scope:disinherited }
|
|
is_allied_to = scope:disinherited
|
|
is_child_of = scope:disinherited
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$DISINHERITOR$.primary_title = {
|
|
random_title_heir = {
|
|
limit = {
|
|
$DISINHERITOR$.primary_title = {
|
|
place_in_line_of_succession = {
|
|
target = prev
|
|
value = 2
|
|
}
|
|
}
|
|
}
|
|
save_scope_as = new_primary_heir
|
|
}
|
|
}
|
|
#Rivalry
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_relation_rival = scope:new_primary_heir
|
|
}
|
|
OR = {
|
|
ai_vengefulness >= low_positive_ai_value
|
|
ai_greed >= low_positive_ai_value
|
|
}
|
|
NOR = {
|
|
has_trait = craven
|
|
has_trait = forgiving
|
|
has_trait = content
|
|
has_trait = humble
|
|
}
|
|
OR = {
|
|
age >= 8
|
|
AND = {
|
|
age < 8
|
|
scope:new_primary_heir ?= {
|
|
is_adult = no
|
|
}
|
|
}
|
|
}
|
|
}
|
|
set_relation_rival = {
|
|
target = scope:new_primary_heir
|
|
reason = rival_disinherited
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOR = {
|
|
has_trait = forgiving
|
|
has_trait = content
|
|
has_trait = humble
|
|
}
|
|
}
|
|
progress_towards_rival_effect = {
|
|
CHARACTER = scope:new_primary_heir
|
|
REASON = rival_disinherited
|
|
OPINION = 0
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_heir_of = $DISINHERITOR$
|
|
NOT = {
|
|
has_trait = disputed_heritage
|
|
}
|
|
$DISINHERITOR$ = {
|
|
any_vassal = {
|
|
vassal_stance = courtly
|
|
}
|
|
}
|
|
}
|
|
$DISINHERITOR$ = {
|
|
custom_tooltip = courtly_vassal_disapproves_disinheriting
|
|
hidden_effect = {
|
|
every_vassal = {
|
|
vassal_stance = courtly
|
|
add_opinion = {
|
|
target = $DISINHERITOR$
|
|
modifier = courtly_disinherit_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
add_trait = disinherited
|
|
add_opinion = {
|
|
modifier = disinherited_opinion
|
|
target = $DISINHERITOR$
|
|
}
|
|
house = {
|
|
every_house_member = {
|
|
limit = {
|
|
NOT = { house = $DISINHERITOR$.house }
|
|
}
|
|
custom = all_house_members
|
|
add_opinion = {
|
|
modifier = disinherited_house_member_opinion
|
|
target = $DISINHERITOR$
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = dynasty
|
|
NOT = { $DISINHERITOR$ = dynasty.dynast }
|
|
}
|
|
$DISINHERITOR$.dynasty.dynast = {
|
|
add_opinion = {
|
|
target = $DISINHERITOR$
|
|
modifier = fp1_usurped_my_authority_opinion
|
|
years = 20
|
|
}
|
|
}
|
|
}
|
|
hidden_effect = { #Nudge towards rivalry
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_relation_rival = $DISINHERITOR$
|
|
has_relation_potential_rival = $DISINHERITOR$
|
|
}
|
|
}
|
|
set_relation_potential_rival = $DISINHERITOR$
|
|
}
|
|
}
|
|
}
|
|
|
|
restore_inheritance_effect = {
|
|
remove_trait = disinherited
|
|
if = {
|
|
limit = {
|
|
has_opinion_modifier = {
|
|
modifier = disinherited_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
remove_opinion = {
|
|
modifier = disinherited_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
house = {
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
any_house_member = {
|
|
this != scope:recipient
|
|
has_opinion_modifier = {
|
|
modifier = disinherited_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
}
|
|
every_house_member = {
|
|
custom = all_house_members
|
|
remove_opinion = {
|
|
modifier = disinherited_house_member_opinion
|
|
target = scope:puppet_or_actor
|
|
single = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
this != scope:puppet_or_actor
|
|
}
|
|
add_opinion = {
|
|
modifier = restored_inheritance_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
house = {
|
|
every_house_member = {
|
|
limit = {
|
|
this != scope:recipient
|
|
this != scope:puppet_or_actor
|
|
}
|
|
custom = all_house_members
|
|
add_opinion = {
|
|
modifier = restored_house_member_inheritance_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
}
|
|
#Remove nithing status, if applicable.
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { has_character_modifier = nithing_fp1_modifier }
|
|
remove_character_modifier = nithing_fp1_modifier
|
|
}
|
|
}
|
|
}
|
|
|
|
denounce_effect = {
|
|
add_trait = denounced
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_relation_rival = $ACTOR$
|
|
}
|
|
}
|
|
#Rivalry
|
|
set_relation_rival = {
|
|
target = $ACTOR$
|
|
reason = rival_denounced
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
$ACTOR$ = {
|
|
has_hook_of_type = {
|
|
target = $RECIPIENT$
|
|
type = house_head_hook
|
|
}
|
|
}
|
|
}
|
|
$ACTOR$ = {
|
|
remove_hook = {
|
|
target = $RECIPIENT$
|
|
type = house_head_hook
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_opinion_modifier = {
|
|
target = $ACTOR$
|
|
modifier = forgave_denounced_opinion
|
|
}
|
|
}
|
|
custom_tooltip = forgiven_changed_to_denounced
|
|
hidden_effect = {
|
|
remove_opinion = {
|
|
target = $ACTOR$
|
|
modifier = forgave_denounced_opinion
|
|
}
|
|
add_opinion = {
|
|
modifier = denounced_opinion
|
|
target = $ACTOR$
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
add_opinion = {
|
|
modifier = denounced_opinion
|
|
target = $ACTOR$
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
NOT = { is_close_family_of = $ACTOR$ }
|
|
}
|
|
house = {
|
|
every_house_member = {
|
|
limit = {
|
|
NOT = { house = $ACTOR$.house }
|
|
}
|
|
custom = all_house_members
|
|
add_opinion = {
|
|
modifier = denounced_house_member_opinion
|
|
target = $ACTOR$
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
forgive_effect = {
|
|
remove_trait = denounced
|
|
custom_tooltip = denounced_change_to_forgiven
|
|
hidden_effect = {
|
|
remove_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = denounced_opinion
|
|
}
|
|
add_opinion = {
|
|
modifier = forgave_denounced_opinion
|
|
target = scope:puppet_or_actor
|
|
opinion = -25
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
NOT = { is_close_family_of = scope:puppet_or_actor }
|
|
}
|
|
house = {
|
|
every_house_member = {
|
|
limit = {
|
|
house != scope:puppet_or_actor.house
|
|
}
|
|
custom = all_house_members
|
|
add_opinion = {
|
|
modifier = forgave_house_member_opinion
|
|
target = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
|
|
}
|
|
}
|
|
|
|
dynast_claim_title_effect = {
|
|
scope:puppet_or_actor = {
|
|
add_unpressed_claim = scope:target
|
|
stress_and_fulfillment_impact = {
|
|
content = minor_stress_impact_gain
|
|
generous = minor_stress_impact_gain
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = claimed_my_title_opinion
|
|
opinion = -50
|
|
}
|
|
}
|
|
}
|
|
|
|
dynast_end_dynasty_wars_effect = {
|
|
scope:puppet_or_actor.dynasty = {
|
|
add_dynasty_prestige = medium_dynasty_prestige_loss
|
|
}
|
|
|
|
scope:recipient = {
|
|
every_character_war = {
|
|
limit = {
|
|
primary_defender != scope:puppet_or_actor
|
|
primary_attacker = scope:recipient
|
|
primary_defender.dynasty = scope:recipient.dynasty
|
|
}
|
|
primary_defender = {
|
|
trigger_event = char_interaction.0071
|
|
}
|
|
end_war = white_peace
|
|
}
|
|
}
|
|
}
|
|
|
|
educate_child_interaction_effect = {
|
|
scope:ward = {
|
|
# Culture/faith conversion + university gold/tooltips
|
|
education_flags_tooltips_effect = yes
|
|
}
|
|
# Travel setup
|
|
ward_depart_effect = yes
|
|
}
|
|
|
|
education_flags_tooltips_effect = {
|
|
#Convert culture
|
|
if = {
|
|
limit = { always = scope:convert_culture }
|
|
scope:ward = {
|
|
add_character_flag = {
|
|
flag = convert_culture
|
|
years = 10
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:ward.age < 11 }
|
|
custom_description = {
|
|
text = "educate_child_option_convert_culture_effect"
|
|
subject = scope:ward
|
|
object = scope:guardian.culture
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:ward.age >= 11
|
|
scope:ward.age < 14
|
|
}
|
|
custom_description = {
|
|
text = "educate_child_option_convert_culture_likely_effect"
|
|
subject = scope:ward
|
|
object = scope:guardian.culture
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:ward.age >= 14 }
|
|
custom_description = {
|
|
text = "educate_child_option_convert_culture_unlikely_effect"
|
|
subject = scope:ward
|
|
object = scope:guardian.culture
|
|
}
|
|
}
|
|
}
|
|
#Convert faith
|
|
if = {
|
|
limit = { always = scope:convert_faith }
|
|
scope:ward = {
|
|
add_character_flag = {
|
|
flag = convert_faith
|
|
years = 10
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:ward.age < 11 }
|
|
custom_description = {
|
|
text = "educate_child_option_convert_faith_effect"
|
|
subject = scope:ward
|
|
object = scope:guardian.rite
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:ward.age >= 11
|
|
scope:ward.age < 14
|
|
}
|
|
custom_description = {
|
|
text = "educate_child_option_convert_faith_likely_effect"
|
|
subject = scope:ward
|
|
object = scope:guardian.rite
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:ward.age >= 14 }
|
|
custom_description = {
|
|
text = "educate_child_option_convert_faith_unlikely_effect"
|
|
subject = scope:ward
|
|
object = scope:guardian.rite
|
|
}
|
|
}
|
|
}
|
|
|
|
# Knowledge
|
|
if = {
|
|
limit = {
|
|
always = scope:send_to_university
|
|
OR = {
|
|
scope:recipient = {
|
|
OR = {
|
|
any_realm_province = {
|
|
is_higher_studies_location = yes
|
|
save_temporary_scope_as = university
|
|
}
|
|
any_realm_county = {
|
|
has_county_modifier = pandidakterion_university_modifier
|
|
# Save the province, not the county, because scope:university is only read by a province-scoped trigger
|
|
title_province ?= { save_temporary_scope_as = university }
|
|
}
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
this = scope:secondary_actor
|
|
any_realm_province = {
|
|
is_higher_studies_location = yes
|
|
save_temporary_scope_as = university
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
remove_short_term_gold = {
|
|
value = monumental_gold_value
|
|
if = {
|
|
limit = { house = { has_house_modifier = ep3_eparch_university_influence_modifier } }
|
|
multiply = {
|
|
value = 1
|
|
subtract = university_cost_reduction_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:university ?= {
|
|
is_province_valid_confucian_education_trigger = yes
|
|
}
|
|
NOT = {
|
|
scope:guardian = {
|
|
has_trait = confucian_education
|
|
}
|
|
}
|
|
}
|
|
add_character_modifier = studying_confucian_education_modifier
|
|
}
|
|
add_character_modifier = studying_at_university_modifier
|
|
}
|
|
# Confucian Education trait
|
|
if = {
|
|
limit = {
|
|
scope:guardian = {
|
|
has_trait = confucian_education
|
|
}
|
|
scope:send_to_university = no
|
|
}
|
|
add_character_modifier = studying_confucian_education_modifier
|
|
custom_tooltip = studying_confucian_education_disciple
|
|
}
|
|
}
|
|
|
|
educate_child_event_effect = {
|
|
scope:ward = {
|
|
#Set relation and move character
|
|
set_relation_guardian = scope:guardian
|
|
|
|
if = {
|
|
limit = {
|
|
scope:guardian = { is_playable_character = yes }
|
|
scope:ward = { is_playable_character = no }
|
|
scope:guardian != scope:ward.host
|
|
}
|
|
visit_court_of = scope:guardian
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:guardian = { is_playable_character = no }
|
|
scope:ward = { is_playable_character = yes }
|
|
scope:ward != scope:guardian.host
|
|
}
|
|
scope:guardian = {
|
|
visit_court_of = scope:ward
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:guardian = { is_playable_character = no }
|
|
scope:ward = { is_playable_character = no }
|
|
exists = scope:guardian.host
|
|
scope:guardian.host != scope:ward.host
|
|
}
|
|
visit_court_of = scope:guardian.host
|
|
}
|
|
}
|
|
|
|
#Opinions
|
|
guardian_add_opinion_effect = { GUARDIAN = scope:guardian WARD_LIEGE = scope:ward_liege WARD = scope:ward }
|
|
}
|
|
|
|
call_dynasty_member_to_war_interaction_effect = {
|
|
if = {
|
|
limit = {
|
|
exists = scope:target
|
|
}
|
|
|
|
scope:target = {
|
|
hidden_effect = {
|
|
set_called_to = scope:recipient
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_attacker = scope:puppet_or_actor
|
|
}
|
|
add_attacker = scope:recipient
|
|
}
|
|
else = {
|
|
add_defender = scope:recipient
|
|
}
|
|
}
|
|
|
|
scope:puppet_or_actor.dynasty = {
|
|
add_dynasty_prestige = medium_dynasty_prestige_loss
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = { always = scope:hook }
|
|
scope:puppet_or_actor = {
|
|
use_hook = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
|
|
offer_vassalization_interaction_effect = {
|
|
create_title_and_vassal_change = {
|
|
type = swear_fealty
|
|
save_scope_as = change
|
|
}
|
|
scope:recipient = {
|
|
change_liege = {
|
|
liege = scope:puppet_or_actor
|
|
change = scope:change
|
|
}
|
|
add_opinion = {
|
|
modifier = became_vassal
|
|
target = scope:puppet_or_actor
|
|
opinion = 10
|
|
}
|
|
}
|
|
resolve_title_and_vassal_change = scope:change
|
|
|
|
# Special terms for feudal contracts
|
|
scope:recipient = {
|
|
if = {
|
|
limit = {
|
|
government_has_flag = government_is_feudal
|
|
}
|
|
if = {
|
|
limit = { scope:high_obligations ?= yes }
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 3 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 3 }
|
|
}
|
|
}
|
|
custom_tooltip = high_obligations_taxes
|
|
custom_tooltip = high_obligations_levies
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 1 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = low_obligations_taxes
|
|
custom_tooltip = low_obligations_levies
|
|
}
|
|
else_if = {
|
|
limit = { scope:religious_exemption ?= yes }
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 2 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 1 }
|
|
vassal_contract_set_obligation_level = { type = religious_rights level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_obligations_taxes
|
|
custom_tooltip = low_obligations_levies
|
|
custom_tooltip = religious_protection_tt
|
|
}
|
|
else = {
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 2 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_obligations_taxes
|
|
custom_tooltip = normal_obligations_levies
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
government_has_flag = government_is_clan
|
|
scope:religious_exemption_clan ?= yes
|
|
}
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = religious_rights level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = religious_protection_tt
|
|
}
|
|
}
|
|
|
|
# Struggle catalysts.
|
|
hidden_effect = {
|
|
fp3_struggle_apply_independent_vassalage_catalyst_effect = {
|
|
NEW_LIEGE = scope:puppet_or_actor
|
|
NEW_VASSAL = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
|
|
# Effect to start a tributary relationship from a war
|
|
# root-scope is the Suzerain
|
|
# $TRIBUTARY$ = the new tributary
|
|
# $SUZERAIN$ = their suzerain
|
|
# $WAR$ = required war scope
|
|
start_tributary_from_war_effect = {
|
|
$WAR$ ?= { save_scope_as = tributary_war }
|
|
if = {
|
|
limit = { NOT = { exists = $WAR$ } }
|
|
error_log = "Tried to call start_tributary_from_war_effect without a valid war scope!"
|
|
}
|
|
save_scope_value_as = {
|
|
name = high_obligations
|
|
value = yes
|
|
}
|
|
start_tributary_interaction_effect = {
|
|
TRIBUTARY = $TRIBUTARY$
|
|
SUZERAIN = $SUZERAIN$
|
|
}
|
|
}
|
|
|
|
@starting_subject_standing_value = 10
|
|
|
|
# Effect to start a tributary relationship, can be called directly without a war or from start_tributary_from_war_effect
|
|
# $TRIBUTARY$ = the new tributary
|
|
# $SUZERAIN$ = their suzerain
|
|
start_tributary_interaction_effect = {
|
|
# Setup truces depending on how the tributary relationship was created
|
|
$TRIBUTARY$ = { save_scope_as = tributary_loc }
|
|
$SUZERAIN$ = { save_scope_as = suzerain_loc }
|
|
|
|
#Mandala Tributaries
|
|
if = {
|
|
limit = {
|
|
should_be_mandala_tributary_trigger = {
|
|
SUZERAIN = $SUZERAIN$
|
|
TRIBUTARY = $TRIBUTARY$
|
|
}
|
|
trigger_if = {
|
|
limit = { exists = scope:tributary_war }
|
|
$SUZERAIN$ = {
|
|
AND = {
|
|
house = { has_house_head_parameter = can_make_mandala_tributaries_via_war }
|
|
is_house_head = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$TRIBUTARY$ = {
|
|
if = {
|
|
limit = { government_has_flag = government_is_tribal }
|
|
start_tributary = {
|
|
contract_group = tributary_mandala_tribal
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_taxes
|
|
level = 3
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_prestige
|
|
level = 2
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_levies
|
|
level = 3
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = high_mandala_tribute_taxes
|
|
custom_tooltip = high_mandala_tribute_prestige
|
|
custom_tooltip = high_mandala_tribute_levies
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_taxes
|
|
level = 0
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_prestige
|
|
level = 0
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_levies
|
|
level = 0
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = exempt_mandala_tribute_taxes
|
|
custom_tooltip = low_mandala_tribute_prestige
|
|
custom_tooltip = exempt_mandala_tribute_levies
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_taxes
|
|
level = 2
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_prestige
|
|
level = 2
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_levies
|
|
level = 1
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = normal_mandala_tribute_taxes
|
|
custom_tooltip = normal_mandala_tribute_prestige
|
|
custom_tooltip = low_mandala_tribute_levies
|
|
}
|
|
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_suzerain_war_participation_guarantee
|
|
level = 1
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
start_tributary = {
|
|
contract_group = tributary_mandala
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_taxes
|
|
level = 3
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_piety
|
|
level = 2
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_levies
|
|
level = 3
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = high_mandala_tribute_taxes
|
|
custom_tooltip = high_mandala_tribute_piety
|
|
custom_tooltip = high_mandala_tribute_levies
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_taxes
|
|
level = 0
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_piety
|
|
level = 0
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_levies
|
|
level = 0
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = exempt_mandala_tribute_taxes
|
|
custom_tooltip = low_mandala_tribute_piety
|
|
custom_tooltip = exempt_mandala_tribute_levies
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_taxes
|
|
level = 2
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_piety
|
|
level = 2
|
|
}
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_government_levies
|
|
level = 1
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = normal_mandala_tribute_taxes
|
|
custom_tooltip = normal_mandala_tribute_piety
|
|
custom_tooltip = low_mandala_tribute_levies
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
tributary_contract_set_obligation_level = {
|
|
type = mandala_suzerain_war_participation_guarantee
|
|
level = 1
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# Wanua Tributaries
|
|
else_if = {
|
|
limit = {
|
|
should_be_wanua_tributary_trigger = {
|
|
SUZERAIN = $SUZERAIN$
|
|
TRIBUTARY = $TRIBUTARY$
|
|
}
|
|
}
|
|
$TRIBUTARY$ = {
|
|
start_tributary = {
|
|
contract_group = tributary_wanua
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = barter_goods_obligations
|
|
level = barter_goods_high
|
|
}
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 2 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = prestige_transfer_normal }
|
|
}
|
|
}
|
|
custom_tooltip = high_wanua_tribute_barter_goods
|
|
custom_tooltip = high_subjugated_tribute_taxes
|
|
custom_tooltip = normal_subjugated_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = barter_goods_obligations
|
|
level = barter_goods_low
|
|
}
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = prestige_transfer_none }
|
|
}
|
|
}
|
|
custom_tooltip = low_wanua_tribute_barter_goods
|
|
custom_tooltip = low_subjugated_tribute_taxes
|
|
custom_tooltip = none_subjugated_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = {
|
|
type = barter_goods_obligations
|
|
level = barter_goods_medium
|
|
}
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = prestige_transfer_normal }
|
|
}
|
|
}
|
|
custom_tooltip = medium_wanua_tribute_barter_goods
|
|
custom_tooltip = low_subjugated_tribute_taxes
|
|
custom_tooltip = normal_subjugated_tribute_prestige
|
|
}
|
|
}
|
|
}
|
|
# Nomadic Tributaries
|
|
else_if = {
|
|
limit = {
|
|
$SUZERAIN$ = { has_government = nomad_government }
|
|
}
|
|
$TRIBUTARY$ = {
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_government = nomad_government
|
|
has_government = herder_government
|
|
}
|
|
}
|
|
start_tributary = {
|
|
contract_group = tributary_nomadic
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
}
|
|
else = {
|
|
start_tributary = {
|
|
contract_group = tributary_settled
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
}
|
|
|
|
# Special terms depending on which options were set
|
|
if = { # settled tributary
|
|
limit = {
|
|
NOR = {
|
|
has_government = nomad_government
|
|
has_government = herder_government
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 2 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_levies level = 2 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = high_feudal_tribute_taxes
|
|
custom_tooltip = high_feudal_tribute_levies
|
|
custom_tooltip = high_nomad_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 0 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_levies level = 0 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = low_feudal_tribute_taxes
|
|
custom_tooltip = low_feudal_tribute_levies
|
|
custom_tooltip = none_nomad_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_levies level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_feudal_tribute_taxes
|
|
custom_tooltip = normal_feudal_tribute_levies
|
|
custom_tooltip = normal_nomad_tribute_prestige
|
|
}
|
|
}
|
|
else = { # nomadic tributary
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = nomad_government_herd level = 3 } #herd_tax_high
|
|
tributary_contract_set_obligation_level = { type = nomad_government_prestige level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = high_nomad_tribute_herd
|
|
custom_tooltip = high_nomad_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = nomad_government_herd level = 1 } #herd_tax_low
|
|
tributary_contract_set_obligation_level = { type = nomad_government_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = low_nomad_tribute_herd
|
|
custom_tooltip = none_nomad_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = nomad_government_herd level = 2 } #herd_tax_normal
|
|
tributary_contract_set_obligation_level = { type = nomad_government_prestige level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_nomad_tribute_herd
|
|
custom_tooltip = normal_nomad_tribute_prestige
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
tributary_contract_set_obligation_level = { type = suzerain_war_participation_guarantee level = 0 }
|
|
tributary_contract_set_obligation_level = { type = tributary_war_participation_obligation level = 0 }
|
|
custom_tooltip = no_tributary_war_obligations
|
|
custom_tooltip = no_suzerain_guarantee
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
$SUZERAIN$ = { OR = { has_government = steppe_admin_government has_government = administrative_government has_government = feudal_government has_government = clan_government } }
|
|
}
|
|
$TRIBUTARY$ = {
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_government = nomad_government
|
|
has_government = herder_government
|
|
}
|
|
}
|
|
start_tributary = {
|
|
contract_group = tributary_steppe
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
}
|
|
else = {
|
|
start_tributary = {
|
|
contract_group = tributary_settled
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
}
|
|
|
|
# Special terms depending on which options were set
|
|
if = { # settled tributary
|
|
limit = {
|
|
NOR = {
|
|
has_government = nomad_government
|
|
has_government = herder_government
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 2 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_levies level = 2 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = high_feudal_tribute_taxes
|
|
custom_tooltip = high_feudal_tribute_levies
|
|
custom_tooltip = high_nomad_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 0 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_levies level = 0 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = low_feudal_tribute_taxes
|
|
custom_tooltip = low_feudal_tribute_levies
|
|
custom_tooltip = none_nomad_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_levies level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_feudal_tribute_taxes
|
|
custom_tooltip = normal_feudal_tribute_levies
|
|
custom_tooltip = normal_nomad_tribute_prestige
|
|
}
|
|
}
|
|
else = { # steppe tributary
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 2 }
|
|
tributary_contract_set_obligation_level = { type = nomad_government_prestige level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = high_nomad_tribute_herd
|
|
custom_tooltip = high_nomad_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 1 }
|
|
tributary_contract_set_obligation_level = { type = nomad_government_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = low_nomad_tribute_herd
|
|
custom_tooltip = none_nomad_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 2 }
|
|
tributary_contract_set_obligation_level = { type = nomad_government_prestige level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_nomad_tribute_herd
|
|
custom_tooltip = normal_nomad_tribute_prestige
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_tributary = yes # suppress error logging
|
|
government_has_flag = government_is_nomadic
|
|
NOT = { government_has_flag = government_is_herder }
|
|
}
|
|
tributary_contract_set_obligation_level = { type = suzerain_war_participation_guarantee level = 0 }
|
|
tributary_contract_set_obligation_level = { type = tributary_war_participation_obligation level = 1 }
|
|
custom_tooltip = tributary_war_obligations
|
|
custom_tooltip = no_suzerain_guarantee
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
is_tributary = yes # suppress error logging
|
|
}
|
|
tributary_contract_set_obligation_level = { type = suzerain_war_participation_guarantee level = 0 }
|
|
tributary_contract_set_obligation_level = { type = tributary_war_participation_obligation level = 0 }
|
|
custom_tooltip = no_tributary_war_obligations
|
|
custom_tooltip = no_suzerain_guarantee
|
|
}
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
$SUZERAIN$ = {
|
|
has_government = celestial_government
|
|
highest_held_title_tier >= tier_hegemony
|
|
}
|
|
}
|
|
$TRIBUTARY$ = {
|
|
start_tributary = {
|
|
contract_group = tributary_celestial
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = celestial_tribute_gold level = 2 }
|
|
tributary_contract_set_obligation_level = { type = celestial_tribute_prestige level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_celestial_tribute_taxes
|
|
custom_tooltip = normal_celestial_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = celestial_tribute_gold level = 0 }
|
|
tributary_contract_set_obligation_level = { type = celestial_tribute_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = no_celestial_tribute_taxes
|
|
custom_tooltip = no_celestial_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = celestial_tribute_gold level = 1 }
|
|
tributary_contract_set_obligation_level = { type = celestial_tribute_prestige level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = low_celestial_tribute_taxes
|
|
custom_tooltip = low_celestial_tribute_prestige
|
|
}
|
|
|
|
add_subject_standing = @starting_subject_standing_value
|
|
custom_tooltip = expected_to_pay_tribute
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
$SUZERAIN$ = { highest_held_title_tier = tier_hegemony }
|
|
}
|
|
$TRIBUTARY$ = {
|
|
start_tributary = {
|
|
contract_group = tributary_hegemonic
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:high_obligations ?= yes
|
|
exists = scope:tributary_war
|
|
}
|
|
}
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = hegemonic_tribute_gold level = 2 }
|
|
tributary_contract_set_obligation_level = { type = hegemonic_tribute_prestige level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_hegemonic_tribute_taxes
|
|
custom_tooltip = normal_hegemonic_tribute_prestige
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = hegemonic_tribute_gold level = 0 }
|
|
tributary_contract_set_obligation_level = { type = hegemonic_tribute_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = no_hegemonic_tribute_taxes
|
|
custom_tooltip = no_hegemonic_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = hegemonic_tribute_gold level = 1 }
|
|
tributary_contract_set_obligation_level = { type = hegemonic_tribute_prestige level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = low_hegemonic_tribute_taxes
|
|
custom_tooltip = low_hegemonic_tribute_prestige
|
|
}
|
|
|
|
add_subject_standing = @starting_subject_standing_value
|
|
custom_tooltip = expected_to_pay_tribute
|
|
}
|
|
}
|
|
else = { # subjugated tributary
|
|
$TRIBUTARY$ = {
|
|
start_tributary = {
|
|
contract_group = tributary_subjugated
|
|
suzerain = $SUZERAIN$
|
|
}
|
|
if = {
|
|
limit = { scope:low_obligations ?= yes }
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 1 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = low_subjugated_tribute_taxes
|
|
custom_tooltip = none_subjugated_tribute_prestige
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { is_tributary = yes } # suppress error logging
|
|
hidden_effect = {
|
|
tributary_contract_set_obligation_level = { type = default_tributary_taxes level = 2 }
|
|
tributary_contract_set_obligation_level = { type = default_tributary_prestige level = 1 }
|
|
tributary_contract_set_obligation_level = { type = suzerain_war_participation_guarantee level = 1 }
|
|
tributary_contract_set_obligation_level = { type = tributary_war_participation_obligation level = 0 }
|
|
}
|
|
}
|
|
custom_tooltip = high_subjugated_tribute_taxes
|
|
custom_tooltip = normal_subjugated_tribute_prestige
|
|
}
|
|
custom_tooltip = suzerain_guarantee
|
|
custom_tooltip = no_tributary_war_obligations
|
|
}
|
|
}
|
|
setup_tributary_truces_effect = { SUZERAIN = $SUZERAIN$ TRIBUTARY = $TRIBUTARY$ }
|
|
}
|
|
|
|
@truce_duration_war_default = 15
|
|
@truce_duration_war_mandala = 5
|
|
@truce_duration_negotiated_default = 5
|
|
@truce_duration_negotiated_celestial = 25
|
|
|
|
setup_tributary_truces_effect = {
|
|
# Setup truces depending on how the tributary relationship was created
|
|
$TRIBUTARY$ = { save_scope_as = tributary_loc }
|
|
$SUZERAIN$ = { save_scope_as = suzerain_loc }
|
|
|
|
if = {
|
|
limit = { exists = scope:tributary_war } # this will exist if invoked from start_tributary_from_war_effect
|
|
$TRIBUTARY$ = {
|
|
if = {
|
|
limit = { should_be_mandala_tributary_trigger = { SUZERAIN = $SUZERAIN$ TRIBUTARY = $TRIBUTARY$ } }
|
|
add_truce_one_way = {
|
|
character = $SUZERAIN$
|
|
years = @truce_duration_war_mandala
|
|
war = scope:tributary_war
|
|
result = defeat
|
|
}
|
|
}
|
|
else = {
|
|
add_truce_one_way = {
|
|
character = $SUZERAIN$
|
|
years = @truce_duration_war_default
|
|
war = scope:tributary_war
|
|
result = defeat
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
$TRIBUTARY$ = {
|
|
if = {
|
|
limit = { $SUZERAIN$ = { government_has_flag = government_is_celestial } }
|
|
add_truce_both_ways = {
|
|
character = $SUZERAIN$
|
|
years = @truce_duration_negotiated_celestial
|
|
name = TRUCE_TRIBUTARY
|
|
}
|
|
}
|
|
else = {
|
|
add_truce_both_ways = {
|
|
character = $SUZERAIN$
|
|
years = @truce_duration_negotiated_default
|
|
name = TRUCE_TRIBUTARY
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
offer_fealty_interaction_effect = {
|
|
create_title_and_vassal_change = {
|
|
type = swear_fealty
|
|
save_scope_as = change
|
|
}
|
|
scope:puppet_or_actor = {
|
|
change_liege = {
|
|
liege = scope:recipient
|
|
change = scope:change
|
|
}
|
|
|
|
stress_and_fulfillment_impact = {
|
|
ambitious = medium_stress_impact_gain
|
|
arrogant = medium_stress_impact_gain
|
|
}
|
|
}
|
|
resolve_title_and_vassal_change = scope:change
|
|
|
|
scope:puppet_or_actor = {
|
|
# Special terms for feudal contracts
|
|
if = {
|
|
limit = {
|
|
government_has_flag = government_is_feudal
|
|
}
|
|
if = {
|
|
limit = { scope:high_obligations = yes }
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 3 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 3 }
|
|
}
|
|
}
|
|
custom_tooltip = high_obligations_taxes
|
|
custom_tooltip = high_obligations_levies
|
|
}
|
|
else_if = {
|
|
limit = { scope:low_obligations = yes }
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 1 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = low_obligations_taxes
|
|
custom_tooltip = low_obligations_levies
|
|
}
|
|
else_if = {
|
|
limit = { scope:religious_taxation = yes }
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 3 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 2 }
|
|
vassal_contract_set_obligation_level = { type = religious_rights level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = high_obligations_taxes
|
|
custom_tooltip = normal_obligations_levies
|
|
if = {
|
|
limit = { scope:recipient.faith = { has_doctrine_parameter = unlock_jizya_contract } }
|
|
custom_tooltip = jizya_religious_protection_tt
|
|
}
|
|
else = { custom_tooltip = religious_protection_tt }
|
|
}
|
|
else = {
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = feudal_government_taxes level = 2 }
|
|
vassal_contract_set_obligation_level = { type = feudal_government_levies level = 2 }
|
|
}
|
|
}
|
|
custom_tooltip = normal_obligations_taxes
|
|
custom_tooltip = normal_obligations_levies
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
government_has_flag = government_is_clan
|
|
scope:religious_exemption_clan = yes
|
|
}
|
|
hidden_effect = {
|
|
if = {
|
|
limit = { top_liege != this } # To avoid errors during tooltip generation (prior to the contract being generated)
|
|
vassal_contract_set_obligation_level = { type = religious_rights level = 1 }
|
|
}
|
|
}
|
|
custom_tooltip = religious_protection_tt
|
|
}
|
|
}
|
|
|
|
# Struggle catalysts.
|
|
hidden_effect = {
|
|
fp3_struggle_apply_independent_vassalage_catalyst_effect = {
|
|
NEW_LIEGE = scope:recipient
|
|
NEW_VASSAL = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
call_ally_interaction_effect = {
|
|
if = {
|
|
limit = {
|
|
exists = scope:target
|
|
scope:recipient = {
|
|
NOR = {
|
|
is_at_war_with = scope:target.primary_defender
|
|
is_at_war_with = scope:target.primary_attacker
|
|
}
|
|
}
|
|
}
|
|
call_ally_interaction_event_effect = yes
|
|
|
|
}
|
|
}
|
|
|
|
#So that we can show a tooltip in the event about them responding
|
|
call_ally_interaction_event_effect = {
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
scope:actor = {
|
|
any_home_court_hostage = {
|
|
warden ?= { is_attacker_in_war = scope:target }
|
|
}
|
|
}
|
|
scope:target = {
|
|
any_war_attacker = {
|
|
any_warden_hostage = { home_court ?= scope:actor }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = hostage_execution_warning_tt
|
|
}
|
|
scope:target = {
|
|
hidden_effect = {
|
|
set_called_to = scope:recipient
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_attacker = scope:actor
|
|
}
|
|
add_attacker = scope:recipient
|
|
scope:actor = {
|
|
#Check for Mandala first
|
|
if = {
|
|
limit = {
|
|
government_has_flag = government_is_mandala
|
|
scope:recipient = { is_tributary_of = scope:actor }
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient.primary_title.tier = tier_barony
|
|
}
|
|
add_piety = {
|
|
add = minor_piety_loss
|
|
multiply = 2
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient.primary_title.tier = tier_county
|
|
}
|
|
add_piety = {
|
|
add = medium_piety_loss
|
|
multiply = 2
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient.primary_title.tier = tier_duchy
|
|
}
|
|
add_piety = {
|
|
add = major_piety_loss
|
|
multiply = 2
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient.primary_title.tier = tier_kingdom
|
|
}
|
|
add_piety = {
|
|
add = massive_piety_loss
|
|
multiply = 1.5
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient.primary_title.tier = tier_empire
|
|
}
|
|
add_piety = {
|
|
add = monumental_piety_loss
|
|
multiply = 1.5
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:recipient.primary_title.tier = tier_hegemony
|
|
}
|
|
add_piety = {
|
|
add = monumental_piety_loss
|
|
multiply = 2.5
|
|
}
|
|
}
|
|
}
|
|
#Then do everything else
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
has_relation_blood_brother = scope:recipient
|
|
}
|
|
}
|
|
if = { # PAM - Peace of God PT discount
|
|
limit = {
|
|
scope:actor = {
|
|
faith = scope:recipient.faith
|
|
has_personal_tenet_flag = tenet_peace_of_god_cheaper_ally_call
|
|
faith = {
|
|
faith_hostility_level = {
|
|
target = scope:target.primary_defender.faith
|
|
value >= faith_hostile_level
|
|
}
|
|
}
|
|
}
|
|
}
|
|
pam_peace_of_god_personal_tenet_cheaper_alliance_call_effect = yes
|
|
}
|
|
else = {
|
|
add_prestige = {
|
|
value = 0
|
|
subtract = scope:recipient.tier_scaled_prestige_value
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
add_defender = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
|
|
pam_peace_of_god_personal_tenet_cheaper_alliance_call_effect = {
|
|
add_prestige = {
|
|
value = 0
|
|
subtract = scope:recipient.tier_scaled_prestige_value
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
|
|
seduce_interaction_stress_effect = {
|
|
if = {
|
|
limit = {
|
|
NOT = {
|
|
scope:recipient = {
|
|
is_consort_of = scope:puppet_or_actor
|
|
}
|
|
}
|
|
OR = {
|
|
scope:puppet_or_actor = {
|
|
is_male = yes
|
|
rite = { NOT = { rite_has_parameter = adultery_male_accepted } }
|
|
}
|
|
scope:puppet_or_actor = {
|
|
is_female = yes
|
|
rite = { NOT = { rite_has_parameter = adultery_female_accepted } }
|
|
}
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
stress_and_fulfillment_impact = {
|
|
chaste = medium_stress_impact_gain
|
|
zealous = minor_stress_impact_gain
|
|
honest = minor_stress_impact_gain
|
|
just = minor_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:puppet_or_actor = {
|
|
stress_and_fulfillment_impact = {
|
|
chaste = medium_stress_impact_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
retract_vassal_interaction_effect = {
|
|
scope:puppet_or_actor = {
|
|
vassal_revocation_tyranny_effect = yes
|
|
if = {
|
|
limit = {
|
|
vassal_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
generous = medium_stress_impact_gain
|
|
just = medium_stress_impact_gain
|
|
}
|
|
}
|
|
else = {
|
|
stress_and_fulfillment_impact = {
|
|
generous = medium_stress_impact_gain
|
|
forgiving = minor_stress_impact_gain
|
|
}
|
|
}
|
|
consume_revoke_title_reason = scope:recipient
|
|
}
|
|
create_title_and_vassal_change = {
|
|
type = revoked
|
|
save_scope_as = change
|
|
add_claim_on_loss = no
|
|
}
|
|
|
|
scope:secondary_recipient = {
|
|
change_liege = {
|
|
liege = scope:puppet_or_actor
|
|
change = scope:change
|
|
}
|
|
}
|
|
|
|
resolve_title_and_vassal_change = scope:change
|
|
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = retracted_vassal
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
always = scope:hook
|
|
scope:puppet_or_actor ?= { has_hook = scope:recipient }
|
|
}
|
|
scope:puppet_or_actor = { use_hook = scope:recipient }
|
|
}
|
|
}
|
|
|
|
ask_for_pardon_interaction_effect = {
|
|
scope:puppet_or_actor = {
|
|
every_liege_or_above = {
|
|
if = {
|
|
limit = { has_imprisonment_reason = scope:puppet_or_actor }
|
|
send_interface_toast = {
|
|
title = ask_for_pardon_interaction_accept_toast
|
|
left_icon = scope:recipient
|
|
consume_imprisonment_reasons = scope:puppet_or_actor
|
|
}
|
|
}
|
|
if = {
|
|
limit = { has_banish_reason = scope:puppet_or_actor }
|
|
send_interface_toast = {
|
|
title = ask_for_pardon_interaction_accept_toast
|
|
left_icon = scope:recipient
|
|
consume_banish_reasons = scope:puppet_or_actor
|
|
}
|
|
}
|
|
if = {
|
|
limit = { has_execute_reason = scope:puppet_or_actor }
|
|
send_interface_toast = {
|
|
title = ask_for_pardon_interaction_accept_toast
|
|
left_icon = scope:recipient
|
|
consume_execute_reasons = scope:puppet_or_actor
|
|
}
|
|
}
|
|
if = {
|
|
limit = { has_revoke_title_reason = scope:puppet_or_actor }
|
|
send_interface_toast = {
|
|
title = ask_for_pardon_interaction_accept_toast
|
|
left_icon = scope:recipient
|
|
consume_revoke_title_reason = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
stubborn = minor_stress_impact_gain
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
always = scope:hook
|
|
scope:puppet_or_actor = { # TO make sure you still have a hook on them
|
|
has_usable_hook = scope:recipient
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
use_hook = scope:recipient
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = {
|
|
tgp_is_any_minister = yes
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
OR = {
|
|
liege = {
|
|
has_extra_criminal_reason_against_trigger = {
|
|
CRIMINAL = scope:recipient
|
|
}
|
|
}
|
|
is_close_or_extended_family_of = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
change_strife_opinion = massive_strife_gain
|
|
if = {
|
|
limit = {
|
|
NOT = { scope:hook ?= yes }
|
|
}
|
|
situation:dynastic_cycle = {
|
|
trigger_situation_catalyst = {
|
|
catalyst = catalyst_minister_pardoned_dangerous_criminal
|
|
character = scope:puppet_or_actor
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
government_has_flag = government_has_influence
|
|
}
|
|
change_influence = {
|
|
value = minor_influence_gain
|
|
multiply = scope:recipient.highest_held_title_tier
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
revoke_title_interaction_effect = {
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
faith = scope:puppet_or_actor.faith
|
|
government_has_flag = government_is_theocracy
|
|
}
|
|
scope:puppet_or_actor != scope:puppet_or_actor.faith.religious_head
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_piety = major_piety_loss
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:puppet_or_actor.faith.religious_head
|
|
}
|
|
scope:puppet_or_actor.faith.religious_head = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = impious_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:puppet_or_actor.faith.religious_head
|
|
scope:recipient = scope:puppet_or_actor.faith.religious_head
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_piety_level = -2
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier != tier_barony
|
|
scope:recipient = {
|
|
NOT = { government_has_flag = government_is_herder }
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
revocation_tyranny_effect = { VASSAL = scope:recipient }
|
|
title_revocation_stress_effect = { VASSAL = scope:recipient }
|
|
consume_revoke_title_reason = scope:recipient
|
|
}
|
|
scope:recipient = {
|
|
if = {
|
|
limit = {
|
|
NOT = { exists = scope:administrative_revocation }
|
|
is_landed_or_landless_administrative = no
|
|
}
|
|
add_pressed_claim = scope:landed_title
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_a_faction_member = yes
|
|
}
|
|
add_joined_faction_discontent = 25
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = { scope:landed_title.tier = tier_county }
|
|
scope:landed_title = {
|
|
change_county_control = {
|
|
value = -30
|
|
if = {
|
|
limit = {
|
|
scope:recipient.culture != scope:puppet_or_actor.culture
|
|
scope:recipient.culture = this.culture
|
|
}
|
|
multiply = 1.5
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient.faith != scope:puppet_or_actor.faith
|
|
scope:recipient.faith = this.faith
|
|
}
|
|
multiply = 1.5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
scope:puppet_or_actor.culture = { has_cultural_parameter = penalty_for_revoking_titles_from_house_members }
|
|
exists = scope:puppet_or_actor.house
|
|
exists = scope:recipient.house
|
|
scope:puppet_or_actor.house = scope:recipient.house
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_county
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_prestige = medium_prestige_loss
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_duchy
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_prestige = major_prestige_loss
|
|
}
|
|
}
|
|
else_if = { #Empire
|
|
limit = {
|
|
scope:landed_title.tier = tier_kingdom
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_prestige = massive_prestige_loss
|
|
}
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
scope:puppet_or_actor.culture = { has_cultural_parameter = penalty_for_revoking_titles_from_close_family }
|
|
exists = scope:puppet_or_actor
|
|
exists = scope:recipient
|
|
scope:puppet_or_actor = {
|
|
is_close_family_of = scope:recipient
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_county
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_prestige = medium_prestige_loss
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_duchy
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_prestige = major_prestige_loss
|
|
}
|
|
}
|
|
else_if = { #Empire
|
|
limit = {
|
|
scope:landed_title.tier = tier_kingdom
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_prestige = massive_prestige_loss
|
|
}
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
scope:puppet_or_actor.culture = { has_cultural_parameter = piety_penalty_for_revoking_titles_from_house_members }
|
|
exists = scope:puppet_or_actor.house
|
|
exists = scope:recipient.house
|
|
scope:puppet_or_actor.house = scope:recipient.house
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_county
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_piety = medium_piety_loss
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_duchy
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_piety = major_piety_loss
|
|
}
|
|
}
|
|
else = { #Can't revoke empire titles anyway
|
|
limit = {
|
|
scope:landed_title.tier = tier_kingdom
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_piety = massive_piety_loss
|
|
}
|
|
}
|
|
}
|
|
|
|
# If we're a clan this interaction affects unity
|
|
if = {
|
|
limit = {
|
|
scope:puppet_or_actor = { government_has_flag = government_is_clan }
|
|
scope:recipient = { government_has_flag = government_is_clan }
|
|
exists = scope:puppet_or_actor.house
|
|
exists = scope:recipient.house
|
|
scope:puppet_or_actor.house = scope:recipient.house
|
|
scope:landed_title.tier >= tier_county
|
|
}
|
|
scope:puppet_or_actor.house = {
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_county
|
|
}
|
|
save_scope_value_as = {
|
|
name = revoke_title_unity_loss
|
|
value = minor_unity_loss
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_duchy
|
|
}
|
|
save_scope_value_as = {
|
|
name = revoke_title_unity_loss
|
|
value = medium_unity_loss
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:landed_title.tier = tier_kingdom
|
|
}
|
|
save_scope_value_as = {
|
|
name = revoke_title_unity_loss
|
|
value = major_unity_loss
|
|
}
|
|
}
|
|
if = {
|
|
limit = { exists = scope:revoke_title_unity_loss }
|
|
add_clan_unity_interaction_effect = {
|
|
CHARACTER = scope:puppet_or_actor
|
|
TARGET = scope:recipient
|
|
VALUE = scope:revoke_title_unity_loss
|
|
DESC = clan_unity_title_revoked.desc
|
|
REVERSE_NON_HOUSE_TARGET = no
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# EP3 - Become Adventurer - Revocation
|
|
scope:recipient = {
|
|
if = {
|
|
limit = {
|
|
has_ep3_dlc_trigger = yes
|
|
is_valid_for_laampdom = yes
|
|
}
|
|
# Plus for our memory variable.
|
|
clear_saved_scope = lost_primary_title
|
|
primary_title = { save_scope_as = lost_primary_title }
|
|
custom_tooltip = {
|
|
text = laamp_may_become_adventurer_tt
|
|
trigger_event = {
|
|
id = ep3_laamps.0041
|
|
delayed = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
NOT = { exists = scope:revoke_title_interaction }
|
|
}
|
|
custom_tooltip = IS_ALLOWED_TO_REVOKE_TITLE_BARONY_DESC
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = {
|
|
any_vassal = {
|
|
vassal_stance = barons_and_minor_landholders
|
|
}
|
|
}
|
|
custom_tooltip = barons_and_minor_landholders_disapproves_baron_revocations
|
|
hidden_effect = {
|
|
every_vassal = {
|
|
vassal_stance = barons_and_minor_landholders
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = barons_and_minor_landholders_disapproves_baron_revocations_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = {
|
|
scope:hook = yes
|
|
scope:recipient = { is_alive = yes }
|
|
}
|
|
use_hook = scope:recipient
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:hook_liege ?= yes
|
|
scope:intermediary ?= { is_alive = yes }
|
|
}
|
|
use_hook = scope:intermediary
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = { government_has_flag = government_is_herder }
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
opinion = -10 # Herders don't care much
|
|
modifier = revoked_title
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = revoked_title
|
|
}
|
|
if = { #If they recently imprisoned you, or asked for your excommunication, they become your rival
|
|
limit = {
|
|
OR = {
|
|
has_opinion_modifier = {
|
|
target = scope:puppet_or_actor
|
|
modifier = released_from_prison
|
|
}
|
|
AND = {
|
|
exists = var:requested_my_excommunication
|
|
var:requested_my_excommunication = scope:puppet_or_actor
|
|
}
|
|
}
|
|
NOT = {
|
|
has_relation_rival = scope:puppet_or_actor
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_relation_potential_rival = scope:puppet_or_actor
|
|
}
|
|
remove_relation_potential_rival = scope:puppet_or_actor
|
|
}
|
|
set_relation_rival = {
|
|
target = scope:puppet_or_actor
|
|
reason = rival_revoked_title_reversed
|
|
}
|
|
}
|
|
else = {
|
|
progress_towards_rival_effect = {
|
|
CHARACTER = scope:puppet_or_actor
|
|
REASON = rival_revoked_title_progress
|
|
OPINION = 0
|
|
}
|
|
}
|
|
# HOUSE RELATION
|
|
house ?= {
|
|
if = {
|
|
limit = { NOT = { this = scope:puppet_or_actor.house } }
|
|
change_house_relation_effect = {
|
|
HOUSE = scope:puppet_or_actor.house
|
|
VALUE = house_relation_damage_medium_value
|
|
REASON = title_revocation
|
|
CHAR = scope:puppet_or_actor
|
|
TARGET_CHAR = scope:recipient
|
|
TITLE = scope:landed_title
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# Penalty for taking the Party Baron's last title. I mean, come on...
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
has_character_flag = is_party_baron
|
|
NOT = {
|
|
any_held_title = {
|
|
this != scope:landed_title
|
|
}
|
|
}
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
add_character_modifier = {
|
|
modifier = party_baron_ended_the_party_modifier
|
|
years = 10
|
|
}
|
|
random_owned_story = {
|
|
type = story_party_baron
|
|
end_story = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
call_house_member_to_war_interaction_effect = {
|
|
if = {
|
|
limit = {
|
|
exists = scope:target
|
|
}
|
|
|
|
scope:target = {
|
|
hidden_effect = {
|
|
set_called_to = scope:recipient
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_attacker = scope:puppet_or_actor
|
|
}
|
|
add_attacker = scope:recipient
|
|
}
|
|
else = {
|
|
add_defender = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = { always = scope:hook }
|
|
scope:puppet_or_actor = {
|
|
use_hook = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
|
|
sun_trial_interaction_piety_effect = {
|
|
#Imprisoner gets piety
|
|
add_piety = {
|
|
value = minor_piety_value
|
|
if = {
|
|
limit = { has_execute_reason = scope:recipient }
|
|
add = minor_piety_value
|
|
}
|
|
if = {
|
|
limit = { has_banish_reason = scope:recipient }
|
|
add = miniscule_piety_value
|
|
}
|
|
if = {
|
|
limit = { has_revoke_title_reason = scope:recipient }
|
|
add = miniscule_piety_value
|
|
}
|
|
}
|
|
}
|
|
|
|
declaration_of_repentance_interaction_effect = {
|
|
if = {
|
|
limit = { scope:declaration_hook = yes }
|
|
scope:puppet_or_actor = {
|
|
use_hook = scope:recipient
|
|
}
|
|
}
|
|
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = {
|
|
scope:declaration_hook = no
|
|
NOT = { rite ?= { rite_has_parameter = tenet_purgatory_absolution_costs_less_prestige } }
|
|
}
|
|
#Lose a ton of prestige (e.g., Henry's Walk to Canossa)
|
|
add_prestige = massive_prestige_loss
|
|
add_prestige_level = -1
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:declaration_hook = no
|
|
}
|
|
add_prestige = major_prestige_loss
|
|
}
|
|
|
|
#Character cannot be excommunicated again for 10 years.
|
|
remove_trait = excommunicated
|
|
clear_excommunication_tracking_effect = yes
|
|
add_character_modifier = {
|
|
modifier = excommunication_recently_lifted
|
|
years = 10
|
|
}
|
|
|
|
stress_and_fulfillment_impact = {
|
|
cynical = minor_stress_impact_gain
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
add_prestige = major_prestige_gain
|
|
add_opinion = {
|
|
modifier = repentant_opinion
|
|
target = scope:puppet_or_actor
|
|
opinion = 10
|
|
}
|
|
}
|
|
scope:puppet_or_actor = {
|
|
if = {
|
|
limit = {
|
|
any_character_situation = {
|
|
situation_type = the_christian_church
|
|
}
|
|
situation:the_christian_church ?= {
|
|
situation_top_has_catalyst = catalyst_declaration_of_repentance
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
highest_held_title_tier >= tier_kingdom
|
|
}
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_declaration_of_repentance }
|
|
}
|
|
else = {
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_declaration_of_repentance_minor }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
seek_indulgences_interaction_effect = {
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_kinslayer_3 # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = kinslayer_3
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:kinslayer_3 GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_major_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = kinslayer_3
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_kinslayer_3
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_kinslayer_2 # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = kinslayer_2
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:kinslayer_2 GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_medium_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = kinslayer_2
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_kinslayer_2
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_witch # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = witch
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:witch GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_medium_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = witch
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_witch
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_deviant # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = deviant
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:deviant GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_medium_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = deviant
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_deviant
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_sodomite # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = sodomite
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:sodomite GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_medium_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = sodomite
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_sodomite
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_kinslayer_1 # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = kinslayer_1
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:kinslayer_1 GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_minor_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = kinslayer_1
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_kinslayer_1
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_adulterer # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = adulterer
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:adulterer GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_minor_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = adulterer
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_adulterer
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
OR = {
|
|
has_character_flag = seek_indulgences_removed_fornicator # For the post-interaction letter event
|
|
AND = {
|
|
has_trait = fornicator
|
|
trait_is_shunned_or_criminal_in_rite_trigger = { RITE = rite TRAIT = trait:fornicator GENDER_CHARACTER = scope:actor }
|
|
}
|
|
}
|
|
}
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_minor_criminal_trait_value
|
|
}
|
|
remove_trait_force_tooltip = fornicator
|
|
add_character_flag = {
|
|
flag = seek_indulgences_removed_fornicator
|
|
days = 30
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { has_trait = gallowsbait }
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_minor_criminal_trait_value
|
|
}
|
|
if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = gallowsbait
|
|
track = bandit
|
|
value >= wipe_slate_min_xp_to_remove_trait_value
|
|
}
|
|
}
|
|
add_trait_xp = {
|
|
trait = gallowsbait
|
|
track = bandit
|
|
value = -40
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = gallowsbait
|
|
track = trickster
|
|
value >= wipe_slate_min_xp_to_remove_trait_value
|
|
}
|
|
}
|
|
add_trait_xp = {
|
|
trait = gallowsbait
|
|
track = trickster
|
|
value = -40
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = gallowsbait
|
|
track = thief
|
|
value >= wipe_slate_min_xp_to_remove_trait_value
|
|
}
|
|
}
|
|
add_trait_xp = {
|
|
trait = gallowsbait
|
|
track = thief
|
|
value = -40
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = gallowsbait
|
|
track = poacher
|
|
value >= wipe_slate_min_xp_to_remove_trait_value
|
|
}
|
|
}
|
|
add_trait_xp = {
|
|
trait = gallowsbait
|
|
track = poacher
|
|
value = -40
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
has_trait_xp = {
|
|
trait = gallowsbait
|
|
track = marauder
|
|
value >= wipe_slate_min_xp_to_remove_trait_value
|
|
}
|
|
}
|
|
add_trait_xp = {
|
|
trait = gallowsbait
|
|
track = marauder
|
|
value = -40
|
|
}
|
|
}
|
|
else = { remove_trait = gallowsbait }
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
pam_antipope_is_sponsored_by_trigger = { SPONSOR = scope:actor }
|
|
}
|
|
}
|
|
send_interface_message = {
|
|
title = petition_antipope_indulgences_interaction_title
|
|
right_icon = scope:recipient
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_antipope_buy_piety_value
|
|
}
|
|
add_piety = {
|
|
value = medium_piety_gain
|
|
if = { # More Piety during the Saeculum Obscurum phase
|
|
limit = {
|
|
situation:the_christian_church ?= {
|
|
has_situation_top_phase_parameter = the_christian_church_better_indulgences
|
|
}
|
|
}
|
|
add = medium_piety_gain
|
|
}
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
pay_treasury_or_gold = {
|
|
target = scope:recipient
|
|
value = seek_indulgences_buy_piety_value
|
|
}
|
|
add_piety = {
|
|
value = medium_piety_gain
|
|
if = { # More Piety during the Saeculum Obscurum phase
|
|
limit = {
|
|
situation:the_christian_church ?= {
|
|
has_situation_top_phase_parameter = the_christian_church_better_indulgences
|
|
}
|
|
}
|
|
add = medium_piety_gain
|
|
}
|
|
}
|
|
}
|
|
change_spiritual_fulfillment = major_spiritual_fulfillment_value
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:recipient
|
|
modifier = pleased_opinion
|
|
opinion = 25
|
|
}
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
greedy = minor_stress_impact_gain
|
|
cynical = minor_stress_impact_gain
|
|
}
|
|
}
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
|
|
add_character_modifier = {
|
|
modifier = pam_granted_indulgences_modifier_small
|
|
years = 5
|
|
desc = granted_indulgences_effect_tt
|
|
}
|
|
custom_tooltip = granted_indulgences_ai_personality_effect_tt
|
|
custom_tooltip = granted_indulgences_ai_war_effect_tt
|
|
custom_tooltip = granted_indulgences_ai_scheme_effect_tt
|
|
}
|
|
else = {
|
|
add_character_modifier = {
|
|
modifier = pam_granted_indulgences_modifier_small
|
|
years = 5
|
|
desc = granted_indulgences_player_scheme_effect_tt
|
|
}
|
|
custom_tooltip = granted_indulgences_player_scheme_effect_tt
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = pam_granted_indulgences_modifier
|
|
years = 10
|
|
desc = granted_indulgences_effect_tt
|
|
}
|
|
custom_tooltip = granted_indulgences_ai_personality_effect_tt
|
|
custom_tooltip = granted_indulgences_ai_war_effect_tt
|
|
custom_tooltip = granted_indulgences_ai_scheme_effect_tt
|
|
}
|
|
else = {
|
|
add_character_modifier = {
|
|
modifier = pam_granted_indulgences_modifier
|
|
years = 10
|
|
desc = granted_indulgences_player_scheme_effect_tt
|
|
}
|
|
custom_tooltip = granted_indulgences_player_scheme_effect_tt
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
any_character_situation = {
|
|
situation_type = the_christian_church
|
|
}
|
|
}
|
|
situation:the_christian_church ?= {
|
|
situation_top_has_catalyst = catalyst_seek_indulgences
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
highest_held_title_tier >= tier_kingdom
|
|
}
|
|
}
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_seek_indulgences }
|
|
}
|
|
else = {
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_seek_indulgences_minor }
|
|
}
|
|
}
|
|
}
|
|
|
|
hof_ask_for_gold_interaction_effect = {
|
|
scope:recipient = {
|
|
if = {
|
|
limit = {
|
|
has_treasury = yes
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
government_has_flag = government_is_theocracy
|
|
}
|
|
}
|
|
# Theocrats receiving Treasury should should get it as Treasury (it's still church money)
|
|
pay_treasury_or_gold = {
|
|
target = scope:actor
|
|
value = hof_ask_for_gold_request_value
|
|
}
|
|
}
|
|
else = {
|
|
# Non-Theocrats receiving Treasury should should receive it as Gold, even if they have Treasury (ex: Admin)
|
|
pay_treasury_to_gold = {
|
|
target = scope:actor
|
|
value = hof_ask_for_gold_request_value
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
# Gold sent is always received as Gold (it is not "church money" as a concept)
|
|
pay_short_term_gold = {
|
|
target = scope:actor
|
|
gold = hof_ask_for_gold_request_value
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = requested_money_opinion
|
|
opinion = -20
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
trigger_if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
OR = {
|
|
ai_honor < 0
|
|
ai_zeal < low_negative_ai_value
|
|
}
|
|
}
|
|
intrigue > high_skill_rating
|
|
NOT = {
|
|
any_hooked_character = {
|
|
this = scope:actor
|
|
}
|
|
}
|
|
}
|
|
add_hook = {
|
|
type = favor_hook
|
|
target = scope:actor
|
|
}
|
|
custom_tooltip = ask_for_gold_hook_tt
|
|
add_piety = {
|
|
value = miniscule_piety_gain
|
|
multiply = scope:actor.highest_held_title_tier
|
|
}
|
|
}
|
|
else = {
|
|
add_piety = {
|
|
value = minor_piety_gain
|
|
multiply = scope:actor.highest_held_title_tier
|
|
}
|
|
}
|
|
}
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
scope:hook = no
|
|
}
|
|
add_piety = major_piety_loss
|
|
}
|
|
if = {
|
|
limit = { always = scope:hook }
|
|
use_hook = scope:recipient
|
|
}
|
|
if = {
|
|
limit = {
|
|
any_vassal = {
|
|
vassal_stance = zealot
|
|
}
|
|
}
|
|
custom_tooltip = zealot_vassal_disapproves_asking_hof_for_gold
|
|
hidden_effect = {
|
|
every_vassal = {
|
|
vassal_stance = zealot
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = zealot_disapproves_of_asking_hof_for_gold_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_landed = yes
|
|
}
|
|
situation:the_christian_church ?= {
|
|
situation_participant_group:christian_regular_main_power_rulers = {
|
|
participant_group_has_character = scope:actor
|
|
}
|
|
OR = {
|
|
situation_current_phase = reform_phase
|
|
situation_current_phase = concord_phase
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_modifier_small
|
|
years = 5
|
|
desc = ask_for_gold_modifier_ai_behavior_tt
|
|
}
|
|
custom_tooltip = ask_for_gold_modifier_ai_behavior_tt
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_modifier_small
|
|
years = 5
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_modifier
|
|
years = 10
|
|
desc = ask_for_gold_modifier_ai_behavior_tt
|
|
}
|
|
custom_tooltip = ask_for_gold_modifier_ai_behavior_tt
|
|
}
|
|
else = {
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = modifier_provided_by_christian_situation_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
situation:the_christian_church ?= {
|
|
situation_participant_group:christian_regular_main_power_rulers = {
|
|
participant_group_has_character = scope:actor
|
|
}
|
|
OR = {
|
|
situation_current_phase = crusade_phase
|
|
situation_current_phase = conversion_phase
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_zeal_modifier_small
|
|
years = 5
|
|
desc = ask_for_gold_zeal_modifier_ai_behavior_tt
|
|
}
|
|
custom_tooltip = ask_for_gold_zeal_modifier_ai_behavior_tt
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_zeal_modifier_small
|
|
years = 5
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_zeal_modifier
|
|
years = 10
|
|
desc = ask_for_gold_zeal_modifier_ai_behavior_tt
|
|
}
|
|
custom_tooltip = ask_for_gold_zeal_modifier_ai_behavior_tt
|
|
}
|
|
else = {
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_zeal_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = modifier_provided_by_christian_situation_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
situation:the_christian_church ?= {
|
|
situation_participant_group:christian_regular_main_power_rulers = {
|
|
participant_group_has_character = scope:actor
|
|
}
|
|
OR = {
|
|
situation_current_phase = fragile_unity_phase
|
|
situation_current_phase = saeculum_obscurum_phase
|
|
situation_current_phase = investiture_crisis_phase
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_crisis_modifier_small
|
|
years = 5
|
|
desc = ask_for_gold_crisis_modifier_ai_behavior_tt
|
|
}
|
|
custom_tooltip = ask_for_gold_crisis_modifier_ai_behavior_tt
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_crisis_modifier_small
|
|
years = 5
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_crisis_modifier
|
|
years = 10
|
|
desc = ask_for_gold_crisis_modifier_ai_behavior_tt
|
|
}
|
|
custom_tooltip = ask_for_gold_crisis_modifier_ai_behavior_tt
|
|
}
|
|
else = {
|
|
add_character_modifier = {
|
|
modifier = ask_for_gold_crisis_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = modifier_provided_by_christian_situation_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
government_is_religious_trigger = no
|
|
any_character_situation = {
|
|
situation_type = the_christian_church
|
|
}
|
|
situation:the_christian_church ?= {
|
|
situation_top_has_catalyst = catalyst_ask_for_gold
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
highest_held_title_tier >= tier_kingdom
|
|
}
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_ask_for_gold }
|
|
}
|
|
else = {
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_ask_for_gold_minor }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
hof_ask_for_gold_refusal_effect = {
|
|
clerical_interaction_refusal_major_effect = yes
|
|
}
|
|
|
|
hof_ask_for_claim_interaction_effect = {
|
|
scope:secondary_recipient = {
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = claimed_my_title_opinion
|
|
opinion = -60
|
|
}
|
|
}
|
|
scope:actor = {
|
|
add_piety = {
|
|
value = claim_piety_value
|
|
multiply = -1
|
|
}
|
|
if = {
|
|
limit = { always = scope:claim_hook }
|
|
use_hook = scope:recipient
|
|
}
|
|
add_pressed_claim = scope:target
|
|
}
|
|
}
|
|
|
|
vassal_claim_liege_title_interaction_effect = {
|
|
scope:puppet_or_actor = {
|
|
add_unpressed_claim = scope:target
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:puppet_or_actor
|
|
modifier = claimed_my_title_opinion
|
|
opinion = -50
|
|
}
|
|
}
|
|
}
|
|
|
|
convert_at_war_interaction_effect = {
|
|
scope:puppet_or_actor = {
|
|
save_scope_as = convert_at_war
|
|
every_character_war = {
|
|
limit = {
|
|
primary_defender = scope:puppet_or_actor
|
|
primary_attacker = scope:recipient
|
|
using_non_ghw_holy_war_cb_trigger = yes
|
|
}
|
|
set_variable = {
|
|
name = invalidate_defender_faith_change #This variable will invalidate the war and send proper invalidation message
|
|
value = yes
|
|
}
|
|
show_as_tooltip = { end_war = invalidated }
|
|
}
|
|
|
|
faith = { save_scope_as = old_faith }
|
|
rite = { save_scope_as = old_rite }
|
|
|
|
if = {
|
|
limit = {
|
|
NOT = { rite = scope:recipient.rite }
|
|
}
|
|
convert_to_rite_with_consequences_effect = { RITE = scope:recipient.rite }
|
|
trigger_event = faith_conversion.0003
|
|
}
|
|
|
|
stress_and_fulfillment_impact = {
|
|
zealous = medium_stress_impact_gain
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
add_piety_experience = major_piety_value
|
|
}
|
|
}
|
|
|
|
demand_conversion_vassal_ruler_interaction_effect = {
|
|
demand_conversion_interaction_effect = yes
|
|
hidden_effect = {
|
|
if = {
|
|
limit = {
|
|
exists = scope:recipient.capital_county
|
|
scope:recipient.capital_county.faith = scope:recipient.faith
|
|
}
|
|
save_scope_value_as = {
|
|
name = convert_capital
|
|
value = yes
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
exists = scope:hook
|
|
scope:hook = yes
|
|
scope:puppet_or_actor = { has_usable_hook = scope:recipient }
|
|
}
|
|
scope:puppet_or_actor = {
|
|
use_hook = scope:recipient
|
|
}
|
|
}
|
|
#Negative opinions
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
modifier = demanded_my_conversion_opinion
|
|
target = scope:puppet_or_actor
|
|
opinion = -10
|
|
}
|
|
}
|
|
}
|
|
|
|
demand_conversion_player_ruler_interaction_effect = {
|
|
demand_conversion_interaction_effect = yes
|
|
|
|
if = {
|
|
limit = {
|
|
scope:demand_conversion_hook = yes
|
|
}
|
|
scope:puppet_or_actor = {
|
|
use_hook = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
|
|
title_revocation_stress_effect = {
|
|
if = {
|
|
limit = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = $VASSAL$ }
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
generous = medium_stress_impact_gain
|
|
just = medium_stress_impact_gain
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
NOT = { has_revoke_title_reason = $VASSAL$ }
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
generous = minor_stress_impact_gain
|
|
forgiving = minor_stress_impact_gain
|
|
}
|
|
}
|
|
else = {
|
|
# No stress gain if you have a reason
|
|
}
|
|
}
|
|
|
|
revoke_holy_order_lease_effect = {
|
|
$TARGET$ = {
|
|
faith = {
|
|
random_faith_holy_order = {
|
|
limit = {
|
|
leader = $TARGET$
|
|
}
|
|
save_scope_as = holy_order
|
|
}
|
|
}
|
|
primary_title = {
|
|
save_scope_as = holy_order_title
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
scope:holy_order = {
|
|
num_leased_titles = 1
|
|
title = $BARONY$.lessee_title
|
|
}
|
|
}
|
|
custom_tooltip = destroy_holy_order_warning
|
|
}
|
|
|
|
$TARGET$ = {
|
|
hidden_effect = { #Nudge towards rivalry
|
|
if = {
|
|
limit = {
|
|
NOR = {
|
|
has_relation_rival = $CHARACTER$
|
|
has_relation_potential_rival = $CHARACTER$
|
|
}
|
|
}
|
|
set_relation_potential_rival = $CHARACTER$
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
NOT = { this = $CHARACTER$ }
|
|
}
|
|
add_opinion = {
|
|
target = $CHARACTER$
|
|
modifier = revoked_order_lease_opinion
|
|
opinion = -50
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
$TARGET$.rite.head_of_rite ?= {
|
|
NOR = {
|
|
this = $TARGET$
|
|
this = $CHARACTER$
|
|
this = faith.religious_head
|
|
}
|
|
}
|
|
}
|
|
$TARGET$.rite.head_of_rite ?= {
|
|
add_opinion = {
|
|
modifier = revoked_order_lease_opinion
|
|
target = $CHARACTER$
|
|
opinion = -30
|
|
}
|
|
}
|
|
}
|
|
|
|
faith = {
|
|
if = {
|
|
limit = {
|
|
exists = religious_head
|
|
NOT = { religious_head = $CHARACTER$ }
|
|
}
|
|
religious_head = {
|
|
if = {
|
|
limit = {
|
|
rite = $TARGET$.rite
|
|
}
|
|
add_opinion = {
|
|
modifier = revoked_order_lease_opinion
|
|
target = $CHARACTER$
|
|
opinion = -30
|
|
}
|
|
}
|
|
|
|
#military order opinion gets lost
|
|
if = {
|
|
limit = {
|
|
has_opinion_modifier = {
|
|
target = $CHARACTER$
|
|
modifier = founded_holy_order_opinion
|
|
}
|
|
$TARGET$ = {
|
|
government_has_flag = government_is_military_holy_order
|
|
}
|
|
}
|
|
remove_opinion = {
|
|
target = $CHARACTER$
|
|
modifier = founded_holy_order_opinion
|
|
}
|
|
}
|
|
#monastic order opinion gets lost
|
|
if = {
|
|
limit = {
|
|
has_opinion_modifier = {
|
|
target = $CHARACTER$
|
|
modifier = founded_monastic_order_opinion
|
|
}
|
|
$TARGET$ = {
|
|
government_has_flag = government_is_monastic_holy_order
|
|
}
|
|
}
|
|
remove_opinion = {
|
|
target = $CHARACTER$
|
|
modifier = founded_monastic_order_opinion
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
$CHARACTER$ = {
|
|
send_interface_message = {
|
|
type = holy_order_lease_revoked_message
|
|
title = revoke_leased_title_interaction_notification
|
|
right_icon = $TARGET$
|
|
|
|
|
|
$BARONY$ = {
|
|
save_scope_as = barony
|
|
county = {
|
|
#Scaled development loss based on level of holding
|
|
change_development_level = revoking_lease_development_cost
|
|
}
|
|
}
|
|
|
|
# Zealous costs stress if same-faith.
|
|
if = {
|
|
limit = { $CHARACTER$.faith = $TARGET$.faith }
|
|
if = {
|
|
limit = {
|
|
has_personal_tenet_flag = leasing_to_military_order_give_spiritual_fulfillment_personal
|
|
}
|
|
change_spiritual_fulfillment = major_spiritual_fulfillment_loss
|
|
}
|
|
stress_and_fulfillment_impact = {
|
|
zealous = massive_stress_impact_gain
|
|
generous = medium_stress_impact_gain
|
|
order_member = minor_stress_impact_gain
|
|
}
|
|
|
|
# if called from interaction or decision, use cost for better visibility
|
|
if = {
|
|
limit = { NOT = { exists = scope:cost_paid } }
|
|
add_piety = {
|
|
value = 0
|
|
subtract = cancel_holy_order_piety_cost
|
|
}
|
|
}
|
|
# No spiritual fulfillment loss if the order's rite is heretical to the revoker
|
|
if = {
|
|
limit = {
|
|
trigger_if = {
|
|
limit = {
|
|
exists = $CHARACTER$.rite
|
|
exists = $TARGET$.rite
|
|
}
|
|
$TARGET$.rite = {
|
|
save_temporary_scope_as = revoked_order_rite
|
|
}
|
|
$CHARACTER$.rite = {
|
|
"divergence(scope:revoked_order_rite)" < faith.heresy_threshold
|
|
}
|
|
}
|
|
}
|
|
change_spiritual_fulfillment = massive_spiritual_fulfillment_loss
|
|
}
|
|
}
|
|
else_if = {
|
|
# Bit less but still some if you view the other faith as astray.
|
|
limit = {
|
|
$CHARACTER$.faith = {
|
|
faith_hostility_level = {
|
|
target = $TARGET$.faith
|
|
value <= faith_astray_level
|
|
}
|
|
}
|
|
}
|
|
change_spiritual_fulfillment = medium_spiritual_fulfillment_loss
|
|
stress_and_fulfillment_impact = {
|
|
zealous = major_stress_impact_gain
|
|
generous = medium_stress_impact_gain
|
|
}
|
|
# if called from interaction or decision, use cost for better visibility
|
|
if = {
|
|
limit = { NOT = { exists = scope:cost_paid } }
|
|
add_piety = {
|
|
value = 0
|
|
subtract = cancel_astray_holy_order_piety_cost
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
if = {
|
|
limit = { exists = $CHARACTER$.faith.religious_head }
|
|
$CHARACTER$.faith.religious_head = {
|
|
add_opinion = {
|
|
modifier = pleased_opinion
|
|
target = $CHARACTER$
|
|
opinion = 20
|
|
}
|
|
}
|
|
}
|
|
|
|
add_piety = {
|
|
value = 250
|
|
}
|
|
$TARGET$.faith = {
|
|
save_scope_as = target_faith
|
|
}
|
|
$TARGET$ = {
|
|
custom_tooltip = {
|
|
text = lease_loss_fervor_gain_tt
|
|
scope:target_faith = {
|
|
# Fires once per revoked lease with no cooldown, so it has to stay small.
|
|
change_fervor = {
|
|
value = small_fervor_gain
|
|
desc = fervor_gain_holy_order_expelled_by_force
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
# If the county has the same faith than the HO, locals are unhappy
|
|
$BARONY$ = {
|
|
if = {
|
|
limit = { title_province.county.faith = $TARGET$.faith }
|
|
title_province.county = {
|
|
add_county_modifier = {
|
|
modifier = lost_holy_order_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
$BARONY$.county.holder = {
|
|
NOT = {
|
|
this = $CHARACTER$
|
|
}
|
|
faith = $TARGET$.faith
|
|
trigger_if = {
|
|
limit = {
|
|
exists = rite
|
|
exists = $TARGET$.rite
|
|
}
|
|
$TARGET$.rite = {
|
|
save_temporary_scope_as = revoked_order_rite
|
|
}
|
|
rite = {
|
|
"divergence(scope:revoked_order_rite)" < faith.heresy_threshold
|
|
}
|
|
}
|
|
this = scope:holy_order.holy_order_patron
|
|
}
|
|
}
|
|
$BARONY$.county.holder = {
|
|
add_opinion = {
|
|
modifier = revoked_order_lease_opinion
|
|
target = $CHARACTER$
|
|
opinion = -40
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# revoke_lease clears $BARONY$.lessee, so it must run after all $TARGET$ (= scope:barony.lessee) checks above.
|
|
$BARONY$ = {
|
|
revoke_lease = yes
|
|
}
|
|
}
|
|
|
|
revoke_holy_order_duel_victor_apply_effects_effect = {
|
|
scope:sc_victor = {
|
|
add_stress = major_stress_loss
|
|
add_prestige = major_prestige_gain
|
|
}
|
|
}
|
|
|
|
add_clan_unity_interaction_effect = {
|
|
if = {
|
|
limit = { # Check if unity is relevant
|
|
$CHARACTER$ = { government_has_flag = government_is_clan }
|
|
$TARGET$ = { government_has_flag = government_is_clan }
|
|
exists = $CHARACTER$.house
|
|
exists = $TARGET$.house
|
|
$CHARACTER$.house = $TARGET$.house
|
|
trigger_if = {
|
|
limit = {
|
|
exists = scope:actor
|
|
exists = scope:recipient
|
|
scope:actor != scope:recipient
|
|
}
|
|
NOT = { $CHARACTER$ = $TARGET$ } # As a safety, let's make sure that we are not interacting with ourselves
|
|
}
|
|
}
|
|
|
|
apply_clan_unity_interaction_effect = {
|
|
CHARACTER = $CHARACTER$
|
|
TARGET = $TARGET$
|
|
DESC = $DESC$
|
|
VALUE = $VALUE$
|
|
VALUE_REVERSED = no
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { # Only apply reversed effect for the house head to keep the gauge in check
|
|
$REVERSE_NON_HOUSE_TARGET$ = yes
|
|
|
|
$CHARACTER$ = { government_has_flag = government_is_clan }
|
|
$CHARACTER$.house ?= {
|
|
house_head = $CHARACTER$
|
|
}
|
|
OR = {
|
|
AND = {
|
|
exists = $TARGET$.house
|
|
NOT = { $CHARACTER$.house = $TARGET$.house }
|
|
}
|
|
$TARGET$ = { is_lowborn = yes }
|
|
}
|
|
}
|
|
apply_clan_unity_interaction_effect = {
|
|
CHARACTER = $CHARACTER$
|
|
TARGET = $TARGET$
|
|
DESC = $DESC$
|
|
VALUE = $VALUE$
|
|
VALUE_REVERSED = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
apply_clan_unity_interaction_effect = {
|
|
# Save scopes for localisation
|
|
$CHARACTER$ = { save_scope_as = unity_character }
|
|
$TARGET$ = { save_scope_as = unity_target }
|
|
|
|
$CHARACTER$.house = {
|
|
save_scope_as = character_house
|
|
|
|
add_unity_value = {
|
|
value = {
|
|
value = $VALUE$
|
|
if = { # House heads have a larger impact on unity
|
|
limit = { house_head = $CHARACTER$ }
|
|
multiply = unity_house_head_multiplier_value
|
|
}
|
|
if = {
|
|
limit = { $VALUE_REVERSED$ = yes }
|
|
multiply = -1
|
|
}
|
|
}
|
|
character = $CHARACTER$
|
|
desc = $DESC$
|
|
}
|
|
}
|
|
|
|
# Notify human players if they are not involved!
|
|
if = {
|
|
limit = {
|
|
trigger_if = {
|
|
limit = { $VALUE$ >= 0 }
|
|
$VALUE$ >= major_unity_value
|
|
}
|
|
trigger_else = {
|
|
$VALUE$ <= major_unity_value
|
|
}
|
|
}
|
|
# Notify human players if they are not involved!
|
|
notify_players_about_unity_change_effect = {
|
|
CHARACTER = $CHARACTER$
|
|
TARGET = $TARGET$
|
|
DESC = $DESC$
|
|
}
|
|
}
|
|
}
|
|
|
|
diarch_declare_recipient_criminal_effect = {
|
|
scope:actor = {
|
|
# First we process the diarch.
|
|
## Players get a different tooltip, since they don't want to see opinion.
|
|
if = {
|
|
limit = { is_ai = no }
|
|
custom_tooltip = diarch_imprison_reason_for_player.tt
|
|
hidden_effect = {
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = treasonous_disobeyed_diarch
|
|
}
|
|
}
|
|
}
|
|
## AI use the standard opinion flow.
|
|
else = {
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = treasonous_disobeyed_diarch
|
|
}
|
|
}
|
|
# Then their liege.
|
|
liege = {
|
|
# Same flow: players get a different tooltip so that they don't see opinion.
|
|
if = {
|
|
limit = { is_ai = no }
|
|
custom_tooltip = ADD_OPINION_EFFECT_I_HAVE_IMPRISONMENT_REASON_UNUSABLE
|
|
hidden_effect = {
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = treasonous_disobeyed_diarch
|
|
}
|
|
}
|
|
}
|
|
# But AI just get opinion.
|
|
else = {
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = treasonous_disobeyed_diarch
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
diarch_declare_claim_war_effect = {
|
|
start_war = {
|
|
casus_belli = claim_cb
|
|
target = scope:recipient
|
|
claimant = scope:actor
|
|
target_title = scope:landed_title
|
|
}
|
|
}
|
|
|
|
diarch_declare_vassalisation_war_effect = {
|
|
start_war = {
|
|
casus_belli = diarch_vassalisation_cb
|
|
target = scope:recipient
|
|
target_title = scope:secondary_recipient.primary_title
|
|
}
|
|
}
|
|
|
|
make_criminal_effect = {
|
|
random_list = {
|
|
10 = {
|
|
trigger = {
|
|
trait_is_criminal_in_rite_trigger = {
|
|
TRAIT = trait:adulterer
|
|
GENDER_CHARACTER = root
|
|
RITE = root.rite
|
|
}
|
|
NOT = { has_trait = adulterer }
|
|
}
|
|
add_trait = adulterer
|
|
}
|
|
10 = {
|
|
trigger = {
|
|
trait_is_criminal_in_rite_trigger = {
|
|
TRAIT = trait:kinslayer_3
|
|
GENDER_CHARACTER = root
|
|
RITE = root.rite
|
|
}
|
|
NOT = { has_trait = kinslayer_3 }
|
|
}
|
|
add_trait = kinslayer_3
|
|
}
|
|
10 = {
|
|
trigger = {
|
|
trait_is_criminal_in_rite_trigger = {
|
|
TRAIT = trait:witch
|
|
GENDER_CHARACTER = root
|
|
RITE = root.rite
|
|
}
|
|
NOT = { has_trait = witch }
|
|
}
|
|
add_trait = witch
|
|
}
|
|
10 = {
|
|
trigger = {
|
|
trait_is_criminal_in_rite_trigger = {
|
|
TRAIT = trait:cannibal
|
|
GENDER_CHARACTER = root
|
|
RITE = root.rite
|
|
}
|
|
NOT = { has_trait = cannibal }
|
|
}
|
|
add_trait = cannibal
|
|
}
|
|
10 = {
|
|
trigger = {
|
|
trait_is_criminal_in_rite_trigger = {
|
|
TRAIT = trait:deviant
|
|
GENDER_CHARACTER = root
|
|
RITE = root.rite
|
|
}
|
|
NOT = { has_trait = deviant }
|
|
}
|
|
add_trait = deviant
|
|
}
|
|
10 = {
|
|
trigger = {
|
|
trait_is_criminal_in_rite_trigger = {
|
|
TRAIT = trait:fornicator
|
|
GENDER_CHARACTER = root
|
|
RITE = root.rite
|
|
}
|
|
NOT = { has_trait = fornicator }
|
|
}
|
|
add_trait = fornicator
|
|
}
|
|
}
|
|
}
|
|
|
|
clear_hostile_actions_lock_flag_effect = {
|
|
if = {
|
|
limit = { has_character_flag = flag_hostile_actions_disabled_delay }
|
|
remove_character_flag = flag_hostile_actions_disabled_delay
|
|
}
|
|
}
|
|
|
|
ep3_hof_ask_for_influence_interaction_effect = {
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
domicile ?= {
|
|
has_domicile_parameter = influence_gain_from_hof_support_6
|
|
}
|
|
}
|
|
change_influence = ep3_requested_faith_support_6_value
|
|
custom_tooltip = requested_faith_support_domicile_tt
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
domicile ?= {
|
|
has_domicile_parameter = influence_gain_from_hof_support_5
|
|
}
|
|
}
|
|
change_influence = ep3_requested_faith_support_5_value
|
|
custom_tooltip = requested_faith_support_domicile_tt
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
domicile ?= {
|
|
has_domicile_parameter = influence_gain_from_hof_support_4
|
|
}
|
|
}
|
|
change_influence = ep3_requested_faith_support_4_value
|
|
custom_tooltip = requested_faith_support_domicile_tt
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
domicile ?= {
|
|
has_domicile_parameter = influence_gain_from_hof_support_3
|
|
}
|
|
}
|
|
change_influence = ep3_requested_faith_support_3_value
|
|
custom_tooltip = requested_faith_support_domicile_tt
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
domicile ?= {
|
|
has_domicile_parameter = influence_gain_from_hof_support_2
|
|
}
|
|
}
|
|
change_influence = ep3_requested_faith_support_2_value
|
|
custom_tooltip = requested_faith_support_domicile_tt
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
domicile ?= {
|
|
has_domicile_parameter = influence_gain_from_hof_support_1
|
|
}
|
|
}
|
|
change_influence = ep3_requested_faith_support_1_value
|
|
custom_tooltip = requested_faith_support_domicile_tt
|
|
}
|
|
else = {
|
|
change_influence = ep3_requested_faith_support_0_value
|
|
}
|
|
house = {
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = no
|
|
}
|
|
}
|
|
add_house_modifier = {
|
|
modifier = ep3_requested_faith_support_modifier
|
|
years = 10
|
|
desc = cleric_influence_behavior_tt
|
|
}
|
|
}
|
|
else = {
|
|
add_house_modifier = {
|
|
modifier = ep3_requested_faith_support_modifier_small
|
|
years = 10
|
|
desc = cleric_influence_behavior_tt
|
|
}
|
|
}
|
|
|
|
custom_tooltip = cleric_influence_behavior_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
reverse_add_opinion = {
|
|
target = scope:recipient
|
|
modifier = requested_influence_opinion
|
|
opinion = -30
|
|
}
|
|
}
|
|
}
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
scope:hook = no
|
|
}
|
|
add_piety = massive_piety_loss
|
|
}
|
|
if = {
|
|
limit = { always = scope:hook }
|
|
use_hook = scope:recipient
|
|
}
|
|
if = {
|
|
limit = {
|
|
situation:the_christian_church ?= {
|
|
situation_participant_group:christian_regular_main_power_rulers = {
|
|
participant_group_has_character = scope:actor
|
|
}
|
|
situation_top_has_catalyst = catalyst_ask_for_influence
|
|
}
|
|
}
|
|
situation:the_christian_church = { trigger_situation_catalyst = catalyst_ask_for_influence }
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
is_ai = yes
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = helpful_opinion
|
|
opinion = 50
|
|
}
|
|
}
|
|
top_liege = {
|
|
every_vassal_or_below = {
|
|
custom = custom.every_non_actor_house_vassal
|
|
limit = {
|
|
NOR = {
|
|
house ?= scope:actor.house
|
|
this = scope:recipient
|
|
}
|
|
}
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = church_favoring_another_house_opinion
|
|
opinion = -25
|
|
}
|
|
}
|
|
}
|
|
house ?= {
|
|
set_variable = {
|
|
name = cleric_support
|
|
value = scope:recipient
|
|
years = 10
|
|
}
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
if = {
|
|
limit = { exists = scope:actor.house }
|
|
custom_tooltip = clerical_influence_investment_bonus_tt
|
|
add_to_variable_list = {
|
|
name = cleric_houses_support
|
|
target = scope:actor.house
|
|
years = 10
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
trigger_if = {
|
|
limit = {
|
|
is_ai = yes
|
|
}
|
|
OR = {
|
|
ai_honor < 0
|
|
ai_zeal < low_negative_ai_value
|
|
}
|
|
}
|
|
intrigue > decent_skill_rating
|
|
NOT = {
|
|
any_hooked_character = {
|
|
this = scope:actor
|
|
}
|
|
}
|
|
}
|
|
add_hook = {
|
|
type = favor_hook
|
|
target = scope:actor
|
|
}
|
|
custom_tooltip = ask_for_gold_hook_tt
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
OR = {
|
|
AND = {
|
|
is_independent_ruler = yes
|
|
highest_held_title_tier >= tier_kingdom
|
|
}
|
|
house = { is_dominant_family = yes }
|
|
}
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = strong_clerical_influence_cleric_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
scope:actor.house = {
|
|
is_powerful_family = yes
|
|
}
|
|
}
|
|
add_character_modifier = {
|
|
modifier = clerical_influence_cleric_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
else = {
|
|
add_character_modifier = {
|
|
modifier = weak_clerical_influence_cleric_modifier
|
|
years = 10
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
is_ai = no
|
|
}
|
|
custom_tooltip = 3_family_support_warning_tt
|
|
}
|
|
}
|
|
}
|
|
|
|
torture_memory_effect = {
|
|
$VICTIM$ = {
|
|
create_character_memory = {
|
|
type = tortured_memory
|
|
participants = { torturer = $TORTURER$ }
|
|
}
|
|
ordered_memory = {
|
|
memory_type = tortured_memory
|
|
limit = {
|
|
any_memory_participant = { this = $TORTURER$ }
|
|
}
|
|
order_by = memory_creation_date
|
|
save_scope_as = tortured_memory
|
|
set_variable = {
|
|
name = type
|
|
value = flag:$TYPE$
|
|
}
|
|
}
|
|
}
|
|
$TORTURER$ = {
|
|
create_character_memory = {
|
|
type = torturer_memory
|
|
participants = { victim = $VICTIM$ }
|
|
}
|
|
ordered_memory = {
|
|
memory_type = torturer_memory
|
|
limit = {
|
|
any_memory_participant = { this = $VICTIM$ }
|
|
}
|
|
order_by = memory_creation_date
|
|
save_scope_as = torturer_memory
|
|
set_variable = {
|
|
name = type
|
|
value = flag:$TYPE$
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
ai_religious_request_blocker_effect = {
|
|
scope:recipient = {
|
|
if = {
|
|
limit = { # AI is requesting from a Player - we don't restrict AI-to-AI
|
|
is_ai = no
|
|
scope:puppet_or_actor = { is_ai = yes }
|
|
}
|
|
# A player Head of Faith receives this at most once every three years, whatever the asker's tier
|
|
add_character_flag = { flag = $INTERACTION$_received_cooldown years = 3 }
|
|
# Not a switch, because unlisted tiers made the blocker always pass and barred emperors
|
|
if = {
|
|
limit = { scope:puppet_or_actor = { highest_held_title_tier >= tier_kingdom } }
|
|
scope:puppet_or_actor = { add_character_flag = { flag = hof_request_cooldown years = 1 } }
|
|
}
|
|
else_if = {
|
|
limit = { scope:puppet_or_actor = { highest_held_title_tier = tier_duchy } }
|
|
scope:puppet_or_actor = { add_character_flag = { flag = hof_request_cooldown years = 2 } }
|
|
}
|
|
else = {
|
|
scope:puppet_or_actor = { add_character_flag = { flag = hof_request_cooldown years = 4 } }
|
|
}
|
|
}
|
|
}
|
|
}
|