1572 lines
39 KiB
Text
1572 lines
39 KiB
Text
revoke_title_interaction = {
|
|
category = interaction_category_vassal
|
|
common_interaction = no
|
|
highlighted_reason = HIGHLIGHTED_HAS_REVOKE_TITLE_REASON
|
|
notification_text = REVOKE_TITLE_PROPOSAL
|
|
interface_priority = 110
|
|
|
|
name = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:actor = {
|
|
government_allows = administrative
|
|
}
|
|
scope:recipient = {
|
|
government_allows = administrative
|
|
}
|
|
}
|
|
desc = revoke_governorship_interaction
|
|
}
|
|
desc = revoke_title_interaction
|
|
}
|
|
}
|
|
|
|
desc = {
|
|
first_valid = {
|
|
triggered_desc = {
|
|
trigger = {
|
|
scope:actor = {
|
|
government_allows = administrative
|
|
}
|
|
scope:recipient = {
|
|
government_allows = administrative
|
|
}
|
|
}
|
|
desc = revoke_governorship_interaction_desc
|
|
}
|
|
desc = revoke_title_interaction_desc
|
|
}
|
|
}
|
|
|
|
icon = {
|
|
trigger = {
|
|
scope:actor = {
|
|
government_allows = administrative
|
|
}
|
|
scope:recipient = {
|
|
government_allows = administrative
|
|
}
|
|
}
|
|
reference = revoke_governorship
|
|
}
|
|
icon = revoke_title
|
|
|
|
special_interaction = revoke_title_interaction
|
|
interface = revoke_title
|
|
target_type = title
|
|
target_filter = recipient_domain_titles
|
|
ai_maybe = yes
|
|
can_send_despite_rejection = yes
|
|
popup_on_receive = yes
|
|
pause_on_receive = yes
|
|
|
|
interface_priority = 60
|
|
ai_min_reply_days = 4
|
|
ai_max_reply_days = 9
|
|
|
|
on_decline_summary = general_rebellion_decline_summary
|
|
|
|
# actor character giving the titles
|
|
# recipient character receiving the titles
|
|
|
|
is_shown = {
|
|
scope:recipient = {
|
|
NOT = { government_has_flag = government_is_herder } # They have their own interaction without cooldowns/maluses
|
|
is_landed_or_landless_administrative = yes
|
|
# should be shown but be disabled for indirect vassals
|
|
target_is_liege_or_above = scope:actor
|
|
# is_vassal_of = scope:actor
|
|
}
|
|
}
|
|
|
|
is_valid_showing_failures_only = {
|
|
title_revocation_standard_valid_showing_failures_only_trigger = yes
|
|
# Plus make sure there's a legal right to revoke.
|
|
scope:actor = {
|
|
trigger_if = {
|
|
limit = { government_has_flag = government_is_tribal }
|
|
custom_description = {
|
|
text = "has_law_allowing_title_revocation_tribal"
|
|
has_realm_law_flag = title_revocation_allowed
|
|
}
|
|
}
|
|
trigger_else_if = {
|
|
limit = { government_is_japanese_trigger = yes }
|
|
custom_description = {
|
|
text = "has_law_allowing_title_revocation_soryo"
|
|
has_realm_law_flag = title_revocation_allowed
|
|
}
|
|
}
|
|
trigger_else_if = {
|
|
limit = { government_allows = administrative }
|
|
}
|
|
trigger_else = {
|
|
custom_description = {
|
|
text = "has_law_allowing_title_revocation_crown"
|
|
has_realm_law_flag = title_revocation_allowed
|
|
}
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
vassal_contract_has_flag = vassal_contract_cannot_revoke_titles
|
|
}
|
|
}
|
|
custom_description = {
|
|
text = vassal_contract_forbids_revocation
|
|
scope:recipient = {
|
|
NOT = { vassal_contract_has_flag = vassal_contract_cannot_revoke_titles }
|
|
}
|
|
}
|
|
}
|
|
trigger_if = {
|
|
limit = {
|
|
scope:recipient = {
|
|
vassal_contract_has_flag = admin_cannot_revoke_titles_without_cause
|
|
}
|
|
scope:actor = {
|
|
NOT = { has_revoke_title_reason = scope:recipient }
|
|
}
|
|
}
|
|
custom_tooltip = {
|
|
text = admin_contract_forbids_revocation_desc
|
|
scope:recipient = {
|
|
NOT = { vassal_contract_has_flag = admin_cannot_revoke_titles_without_cause }
|
|
}
|
|
}
|
|
}
|
|
# And uhh... the sensible check.
|
|
scope:recipient = {
|
|
is_vassal_of = scope:actor
|
|
NOT = { has_strong_hook = scope:actor }
|
|
trigger_if = { # If admin, they need to hold a title that isn't their noble family title
|
|
limit = { government_allows = administrative }
|
|
custom_tooltip = {
|
|
text = admin_no_valid_appointment
|
|
any_held_title = { is_landless_type_title = no }
|
|
}
|
|
}
|
|
}
|
|
custom_tooltip = {
|
|
text = cannot_take_overt_hostile_actions_against_diarch.tt
|
|
NOT = { scope:recipient ?= scope:actor.diarch }
|
|
}
|
|
custom_tooltip = {
|
|
text = protected_from_revocation.tt
|
|
NOT = { scope:recipient = { has_character_flag = titles_protected } }
|
|
}
|
|
}
|
|
|
|
can_send = {
|
|
scope:actor = {
|
|
custom_description = {
|
|
text = "character_interactions_hostile_actions_disabled_delay"
|
|
NOT = { has_character_flag = flag_hostile_actions_disabled_delay }
|
|
}
|
|
}
|
|
scope:recipient ?= {
|
|
custom_tooltip = {
|
|
text = petition_liege_house_fief_allowed_flag_tt
|
|
trigger_if = {
|
|
limit = {
|
|
government_has_flag = government_is_japan_feudal
|
|
var:petition_liege_house_fief_allowed_flag ?= scope:actor
|
|
}
|
|
NOT = {
|
|
ask_for_pardon_available_trigger = { ACTOR = scope:recipient }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
# TGP
|
|
tgp_ceremonial_title_revoke_restriction_trigger = yes
|
|
}
|
|
|
|
# Highlighted in the interaction menu when right-clicking a character
|
|
is_highlighted = {
|
|
OR = {
|
|
scope:actor = {
|
|
has_revoke_title_reason = scope:recipient
|
|
}
|
|
scope:recipient = {
|
|
any_held_title = {
|
|
scope:actor = {
|
|
has_claim_on = prev
|
|
}
|
|
}
|
|
NOT = {
|
|
any_ally = {
|
|
this = scope:actor
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
can_be_picked_title = {
|
|
scope:target = {
|
|
title_revocation_standard_can_pick_title_trigger = yes
|
|
trigger_if = {
|
|
limit = {
|
|
scope:actor = { government_allows = administrative }
|
|
scope:recipient = { government_allows = administrative }
|
|
}
|
|
custom_description = {
|
|
text = "admin_revoke_primary_tier_only"
|
|
subject = scope:actor
|
|
object = scope:target
|
|
scope:target.tier = scope:recipient.highest_held_title_tier
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
has_valid_target = {
|
|
scope:target = {
|
|
NOR = {
|
|
is_noble_family_title = yes
|
|
is_nomad_title = yes
|
|
}
|
|
}
|
|
}
|
|
|
|
#Use hook
|
|
send_option = {
|
|
is_valid = {
|
|
scope:actor = {
|
|
has_usable_hook = scope:recipient
|
|
}
|
|
}
|
|
flag = hook
|
|
localization = SCHEME_HOOK
|
|
}
|
|
should_use_extra_icon = {
|
|
scope:actor = { has_usable_hook = scope:recipient }
|
|
}
|
|
extra_icon = "gfx/interface/icons/character_interactions/hook_icon.dds"
|
|
|
|
send_options_exclusive = no
|
|
|
|
on_send = {
|
|
scope:actor = {
|
|
add_character_flag = {
|
|
flag = flag_hostile_actions_disabled_delay
|
|
days = 10
|
|
}
|
|
}
|
|
}
|
|
|
|
cost = {
|
|
# Usually, this action is free, but during certain diarchies, we want it to cost.
|
|
prestige = liege_diarchy_surcharge_interaction_revoke_title_interaction_value
|
|
|
|
# Admin has to pay an influence cost unless they have a revocation reason on the recipient
|
|
influence = {
|
|
value = 0
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
government_allows = administrative
|
|
NOT = { has_revoke_title_reason = scope:recipient }
|
|
}
|
|
scope:recipient.highest_held_title_tier >= tier_county
|
|
}
|
|
scope:recipient ?= {
|
|
if = {
|
|
limit = {
|
|
any_held_title = {
|
|
title_tier = kingdom
|
|
is_landless_type_title = no
|
|
is_noble_family_title = no
|
|
}
|
|
}
|
|
add = {
|
|
add = {
|
|
value = scope:recipient.massive_influence_value
|
|
multiply = 3
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_KINGDOM_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_held_title = {
|
|
title_tier = duchy
|
|
is_landless_type_title = no
|
|
is_noble_family_title = no
|
|
}
|
|
}
|
|
add = {
|
|
add = scope:recipient.massive_influence_value
|
|
desc = GOVERNOR_RESIGNATION_DUCHY_COST
|
|
}
|
|
}
|
|
else = {
|
|
add = {
|
|
add = scope:recipient.major_influence_value
|
|
desc = concept_county
|
|
}
|
|
}
|
|
if = {
|
|
limit = { house ?= { is_powerful_family = yes } }
|
|
add = {
|
|
value = scope:recipient.massive_influence_value
|
|
desc = GOVERNOR_RESIGNATION_POWERFUL_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { house ?= { is_dominant_family = yes } }
|
|
add = {
|
|
value = scope:recipient.monumental_influence_value
|
|
desc = GOVERNOR_RESIGNATION_DOMINANT_COST
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:recipient.governor_efficiency < 1 }
|
|
add = {
|
|
value = -100
|
|
add = {
|
|
value = scope:recipient.governor_efficiency
|
|
multiply = 100
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_EFFICIENCY_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:recipient.governor_efficiency > 1 }
|
|
add = {
|
|
value = -100
|
|
add = {
|
|
value = scope:recipient.governor_efficiency
|
|
multiply = 100
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_EFFICIENCY_COST
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
influence_level != 1
|
|
}
|
|
add = {
|
|
value = {
|
|
value = influence_level
|
|
subtract = 1
|
|
}
|
|
multiply = 50
|
|
desc = GOVERNOR_RESIGNATION_INFLUENCE_LEVEL_COST
|
|
}
|
|
}
|
|
multiply = 1.25
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = {
|
|
scope:recipient.top_liege ?= this
|
|
any_character_situation = {
|
|
OR = {
|
|
situation_type = natural_disaster_earthquake
|
|
situation_type = natural_disaster_flood
|
|
}
|
|
has_situation_top_phase_parameter = natural_disaster_governorships_more_easily_revoked
|
|
any_participant_group = {
|
|
participant_group_type = affected_vassal
|
|
participant_group_has_character = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
}
|
|
multiply = {
|
|
value = 0.5
|
|
desc = vassal_in_disaster_situation
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = { has_realm_law_flag = manor_reform_law }
|
|
}
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
on_auto_accept = {
|
|
scope:recipient = {
|
|
trigger_event = char_interaction.0200
|
|
}
|
|
}
|
|
|
|
on_accept = {
|
|
save_scope_value_as = {
|
|
name = revoke_title_interaction
|
|
value = yes
|
|
}
|
|
if = { # Safety flag to ensure admin revocations behave properly
|
|
limit = {
|
|
scope:actor = { government_allows = administrative }
|
|
scope:recipient = { government_allows = administrative }
|
|
}
|
|
save_scope_value_as = {
|
|
name = administrative_revocation
|
|
value = yes
|
|
}
|
|
}
|
|
scope:actor = {
|
|
if = { # Admin has to pay an influence cost unless they have a revocation reason on the recipient
|
|
limit = {
|
|
government_allows = administrative
|
|
NOT = { has_revoke_title_reason = scope:recipient }
|
|
scope:recipient = {
|
|
highest_held_title_tier >= tier_county
|
|
}
|
|
}
|
|
show_as_tooltip = { # Actual cost is deducted in the the interaction cost
|
|
change_influence = {
|
|
scope:recipient ?= {
|
|
if = {
|
|
limit = {
|
|
any_held_title = {
|
|
title_tier = kingdom
|
|
is_landless_type_title = no
|
|
is_noble_family_title = no
|
|
}
|
|
}
|
|
add = {
|
|
add = {
|
|
value = scope:recipient.massive_influence_value
|
|
multiply = 3
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_KINGDOM_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_held_title = {
|
|
title_tier = duchy
|
|
is_landless_type_title = no
|
|
is_noble_family_title = no
|
|
}
|
|
}
|
|
add = {
|
|
add = scope:recipient.massive_influence_value
|
|
desc = GOVERNOR_RESIGNATION_DUCHY_COST
|
|
}
|
|
}
|
|
else = {
|
|
add = {
|
|
add = scope:recipient.major_influence_value
|
|
desc = concept_county
|
|
}
|
|
}
|
|
if = {
|
|
limit = { house ?= { is_powerful_family = yes } }
|
|
add = {
|
|
value = scope:recipient.massive_influence_value
|
|
desc = GOVERNOR_RESIGNATION_POWERFUL_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { house ?= { is_dominant_family = yes } }
|
|
add = {
|
|
value = scope:recipient.monumental_influence_value
|
|
desc = GOVERNOR_RESIGNATION_DOMINANT_COST
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:recipient.governor_efficiency < 1 }
|
|
add = {
|
|
value = -100
|
|
add = {
|
|
value = scope:recipient.governor_efficiency
|
|
multiply = 100
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_EFFICIENCY_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:recipient.governor_efficiency > 1 }
|
|
add = {
|
|
value = -100
|
|
add = {
|
|
value = scope:recipient.governor_efficiency
|
|
multiply = 100
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_EFFICIENCY_COST
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
influence_level != 1
|
|
}
|
|
add = {
|
|
value = {
|
|
value = influence_level
|
|
subtract = 1
|
|
}
|
|
multiply = 50
|
|
desc = GOVERNOR_RESIGNATION_INFLUENCE_LEVEL_COST
|
|
}
|
|
}
|
|
}
|
|
multiply = -1.25
|
|
if = {
|
|
limit = { has_realm_law_flag = manor_reform_law }
|
|
multiply = 0.5
|
|
}
|
|
}
|
|
}
|
|
}
|
|
trigger_event = char_interaction.0199
|
|
}
|
|
revoke_title_interaction_effect = yes
|
|
|
|
if = {
|
|
limit = {
|
|
scope:actor = { has_character_flag = flag_hostile_actions_disabled_delay }
|
|
}
|
|
scope:actor = { remove_character_flag = flag_hostile_actions_disabled_delay }
|
|
}
|
|
|
|
# Harrying logic.
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
character_is_valid_for_harrying_of_the_north_trigger = yes
|
|
scope:recipient = {
|
|
character_is_valid_for_harrying_of_the_north_trigger = yes
|
|
is_important_or_vip_struggle_character = yes
|
|
}
|
|
culture != scope:recipient.culture
|
|
}
|
|
global_var:harrying_of_the_north = { save_scope_as = story }
|
|
if = {
|
|
limit = {
|
|
character_is_valid_norman_for_harrying_of_the_north_trigger = yes
|
|
scope:recipient = { character_is_valid_anglo_saxon_for_harrying_of_the_north_trigger = yes }
|
|
}
|
|
ep3_increase_pacification_effect = { AMOUNT = harrying_minor_increase_value }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
character_is_valid_anglo_saxon_for_harrying_of_the_north_trigger = yes
|
|
scope:recipient = { character_is_valid_norman_for_harrying_of_the_north_trigger = yes }
|
|
}
|
|
ep3_increase_resistance_effect = { AMOUNT = harrying_minor_increase_value }
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
on_decline = {
|
|
scope:actor = {
|
|
if = { # Admin has to pay an influence cost unless they have a revocation reason on the recipient
|
|
limit = {
|
|
government_allows = administrative
|
|
NOT = { has_revoke_title_reason = scope:recipient }
|
|
scope:recipient = {
|
|
highest_held_title_tier >= tier_county
|
|
}
|
|
NOT = { has_realm_law_flag = manor_reform_law }
|
|
}
|
|
show_as_tooltip = { # Actual cost is deducted in the the interaction cost
|
|
change_influence = {
|
|
scope:recipient ?= {
|
|
if = {
|
|
limit = {
|
|
any_held_title = {
|
|
title_tier = kingdom
|
|
is_landless_type_title = no
|
|
is_noble_family_title = no
|
|
}
|
|
}
|
|
add = {
|
|
add = {
|
|
value = scope:recipient.massive_influence_value
|
|
multiply = 3
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_KINGDOM_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
any_held_title = {
|
|
title_tier = duchy
|
|
is_landless_type_title = no
|
|
is_noble_family_title = no
|
|
}
|
|
}
|
|
add = {
|
|
add = scope:recipient.massive_influence_value
|
|
desc = GOVERNOR_RESIGNATION_DUCHY_COST
|
|
}
|
|
}
|
|
else = {
|
|
add = {
|
|
add = scope:recipient.major_influence_value
|
|
desc = concept_county
|
|
}
|
|
}
|
|
if = {
|
|
limit = { house ?= { is_powerful_family = yes } }
|
|
add = {
|
|
value = scope:recipient.massive_influence_value
|
|
desc = GOVERNOR_RESIGNATION_POWERFUL_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { house ?= { is_dominant_family = yes } }
|
|
add = {
|
|
value = scope:recipient.monumental_influence_value
|
|
desc = GOVERNOR_RESIGNATION_DOMINANT_COST
|
|
}
|
|
}
|
|
if = {
|
|
limit = { scope:recipient.governor_efficiency < 1 }
|
|
add = {
|
|
value = -100
|
|
add = {
|
|
value = scope:recipient.governor_efficiency
|
|
multiply = 100
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_EFFICIENCY_COST
|
|
}
|
|
}
|
|
else_if = {
|
|
limit = { scope:recipient.governor_efficiency > 1 }
|
|
add = {
|
|
value = -100
|
|
add = {
|
|
value = scope:recipient.governor_efficiency
|
|
multiply = 100
|
|
}
|
|
desc = GOVERNOR_RESIGNATION_EFFICIENCY_COST
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
influence_level != 1
|
|
}
|
|
add = {
|
|
value = {
|
|
value = influence_level
|
|
subtract = 1
|
|
}
|
|
multiply = 50
|
|
desc = GOVERNOR_RESIGNATION_INFLUENCE_LEVEL_COST
|
|
}
|
|
}
|
|
}
|
|
multiply = -1.25
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:landed_title.tier != tier_barony
|
|
NOT = {
|
|
scope:recipient = { government_has_flag = government_is_herder }
|
|
}
|
|
}
|
|
scope:actor = {
|
|
revocation_tyranny_effect = { VASSAL = scope:recipient }
|
|
title_revocation_stress_effect = { VASSAL = scope:recipient }
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:recipient = { government_has_flag = government_is_herder }
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:actor
|
|
opinion = -10 # Herders don't care much
|
|
modifier = revoked_title
|
|
}
|
|
}
|
|
}
|
|
else = {
|
|
war_for_revoke_effect = {
|
|
LIEGE = scope:actor
|
|
REBEL = scope:recipient
|
|
}
|
|
scope:recipient = {
|
|
add_opinion = {
|
|
target = scope:actor
|
|
modifier = revoked_title
|
|
}
|
|
}
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor = { has_realm_law_flag = vassal_refusal_is_treason }
|
|
NOT = {
|
|
scope:recipient = { government_has_flag = government_is_herder }
|
|
}
|
|
}
|
|
scope:actor = {
|
|
add_opinion = {
|
|
target = scope:recipient
|
|
modifier = treasonous_revoke_refusal
|
|
}
|
|
}
|
|
}
|
|
|
|
# Harrying logic.
|
|
scope:actor = {
|
|
if = {
|
|
limit = {
|
|
character_is_valid_for_harrying_of_the_north_trigger = yes
|
|
scope:recipient = {
|
|
character_is_valid_for_harrying_of_the_north_trigger = yes
|
|
is_important_or_vip_struggle_character = yes
|
|
}
|
|
culture != scope:recipient.culture
|
|
}
|
|
global_var:harrying_of_the_north = { save_scope_as = story }
|
|
if = {
|
|
limit = {
|
|
character_is_valid_norman_for_harrying_of_the_north_trigger = yes
|
|
scope:recipient = { character_is_valid_anglo_saxon_for_harrying_of_the_north_trigger = yes }
|
|
}
|
|
ep3_increase_resistance_effect = { AMOUNT = harrying_minor_increase_value }
|
|
}
|
|
else_if = {
|
|
limit = {
|
|
character_is_valid_anglo_saxon_for_harrying_of_the_north_trigger = yes
|
|
scope:recipient = { character_is_valid_norman_for_harrying_of_the_north_trigger = yes }
|
|
}
|
|
ep3_increase_pacification_effect = { AMOUNT = harrying_minor_increase_value }
|
|
}
|
|
}
|
|
}
|
|
|
|
if = {
|
|
limit = {
|
|
scope:actor = { has_character_flag = flag_hostile_actions_disabled_delay }
|
|
}
|
|
scope:actor = { remove_character_flag = flag_hostile_actions_disabled_delay }
|
|
}
|
|
}
|
|
|
|
auto_accept = {
|
|
scope:recipient = {
|
|
calc_true_if = {
|
|
amount >= 1
|
|
custom_description = {
|
|
text = "baron_revocation"
|
|
highest_held_title_tier = tier_barony
|
|
}
|
|
custom_description = {
|
|
text = "prisoner_revocation"
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
custom_description = {
|
|
text = "spending_hook"
|
|
subject = scope:actor
|
|
object = scope:recipient
|
|
scope:hook = yes
|
|
scope:actor = { has_strong_hook = scope:recipient }
|
|
}
|
|
custom_description = {
|
|
text = "foreign_prison_revocation"
|
|
subject = scope:actor
|
|
object = scope:recipient
|
|
scope:recipient = {
|
|
is_imprisoned = yes
|
|
NOT = { is_imprisoned_by = scope:actor }
|
|
}
|
|
}
|
|
custom_tooltip = {
|
|
text = "has_admin_gov"
|
|
scope:actor = { government_allows = administrative }
|
|
scope:recipient = {
|
|
government_allows = administrative
|
|
highest_held_title_tier = tier_county
|
|
is_ai = yes
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
ai_accept = {
|
|
base = 0 # Try to make it 0 for most interactions
|
|
|
|
modifier = {
|
|
has_game_rule = hard_difficulty
|
|
scope:actor = { is_ai = no }
|
|
add = -50
|
|
desc = game_rule_base_value
|
|
}
|
|
|
|
modifier = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:actor = { is_ai = no }
|
|
add = -100
|
|
desc = game_rule_base_value
|
|
}
|
|
|
|
modifier = {
|
|
has_game_rule = hard_difficulty
|
|
scope:actor = { is_ai = yes }
|
|
add = 50
|
|
}
|
|
|
|
modifier = {
|
|
has_game_rule = very_hard_difficulty
|
|
scope:actor = { is_ai = yes }
|
|
add = 100
|
|
}
|
|
|
|
modifier = {
|
|
scope:hook = yes
|
|
add = 40
|
|
desc = SCHEME_WEAK_HOOK_USED
|
|
}
|
|
|
|
modifier = {
|
|
scope:recipient = {
|
|
government_has_flag = government_is_herder
|
|
}
|
|
add = 40
|
|
desc = MIGRATION_INTERACTION_HERDER
|
|
}
|
|
|
|
opinion_modifier = { # Opinion Factor
|
|
who = scope:recipient
|
|
opinion_target = scope:actor
|
|
multiplier = 0.8
|
|
desc = AI_OPINION_REASON
|
|
}
|
|
|
|
modifier = {
|
|
add = 20
|
|
scope:actor = {
|
|
has_realm_law_flag = vassal_refusal_is_treason
|
|
}
|
|
desc = AI_REFUSAL_IS_TREASON
|
|
}
|
|
|
|
modifier = {
|
|
add = 20
|
|
scope:recipient = {
|
|
has_trait = trusting
|
|
}
|
|
desc = TAKE_THE_VOWS_TRUSTING
|
|
}
|
|
|
|
modifier = {
|
|
add = 20
|
|
scope:recipient = {
|
|
has_trait = content
|
|
}
|
|
desc = INTERACTION_CONTENT
|
|
}
|
|
|
|
modifier = {
|
|
add = 20
|
|
scope:actor.current_military_strength > scope:recipient.current_military_strength
|
|
scope:recipient = {
|
|
has_trait = craven
|
|
}
|
|
desc = INTERACTION_CRAVEN
|
|
}
|
|
|
|
modifier = {
|
|
exists = scope:actor.primary_title.title_capital_county
|
|
OR = {
|
|
scope:landed_title = scope:actor.primary_title.title_capital_county
|
|
scope:landed_title = scope:actor.primary_title.title_capital_county.de_jure_liege
|
|
}
|
|
add = 50
|
|
desc = AI_TITLE_IS_REALM_CAPITAL
|
|
}
|
|
|
|
modifier = {
|
|
exists = scope:actor.primary_title.title_capital_county
|
|
NOR = {
|
|
scope:landed_title = scope:actor.primary_title.title_capital_county
|
|
scope:landed_title = scope:actor.primary_title.title_capital_county.de_jure_liege
|
|
}
|
|
scope:landed_title.de_jure_liege = scope:actor.primary_title.title_capital_county.de_jure_liege
|
|
add = 30
|
|
desc = AI_TITLE_IS_IN_CAPITAL_DUCHY
|
|
}
|
|
|
|
modifier = {
|
|
add = 30
|
|
scope:actor = {
|
|
has_claim_on = scope:landed_title
|
|
}
|
|
desc = AI_LIEGE_HAS_CLAIM_ON_TITLE
|
|
}
|
|
|
|
ai_value_modifier = {
|
|
who = scope:recipient
|
|
ai_greed = {
|
|
if = {
|
|
limit = {
|
|
scope:recipient = { NOT = { ai_greed = 0 } }
|
|
}
|
|
value = -0.75
|
|
}
|
|
}
|
|
ai_honor = {
|
|
if = {
|
|
limit = {
|
|
scope:recipient = { #If AI is honorable and the law compels to obey the liege, AI will be more likely to obey.
|
|
ai_honor > 0
|
|
}
|
|
scope:actor = {
|
|
has_realm_law_flag = vassal_refusal_is_treason
|
|
}
|
|
}
|
|
value = 0.5
|
|
}
|
|
}
|
|
}
|
|
modifier = { #I am a King!
|
|
desc = offer_vassalization_interaction_aibehavior_hightier_tt
|
|
trigger = {
|
|
scope:recipient = { highest_held_title_tier = tier_kingdom }
|
|
}
|
|
add = -20
|
|
}
|
|
modifier = { #Title is part of vassal's primary title de-jure. Not relevant for Admin.
|
|
add = -25
|
|
NOT = { scope:recipient = { government_allows = administrative } }
|
|
scope:recipient.primary_title.tier > tier_county
|
|
OR = {
|
|
scope:recipient.primary_title = {
|
|
is_de_jure_liege_or_above_target = scope:landed_title
|
|
}
|
|
scope:recipient.primary_title = scope:landed_title
|
|
}
|
|
desc = AI_REFUSAL_IS_DE_JURE_UNDER
|
|
}
|
|
modifier = {
|
|
add = intimidated_halved_reason_value
|
|
scope:recipient = {
|
|
has_dread_level_towards = {
|
|
target = scope:actor
|
|
level = 1
|
|
}
|
|
}
|
|
desc = INTIMIDATED_REASON
|
|
}
|
|
modifier = {
|
|
add = cowed_halved_reason_value
|
|
scope:recipient = {
|
|
has_dread_level_towards = {
|
|
target = scope:actor
|
|
level = 2
|
|
}
|
|
}
|
|
desc = COWED_REASON
|
|
}
|
|
modifier = { #Comparative military strength.
|
|
desc = offer_vassalization_interaction_aibehavior_power_tt
|
|
add = {
|
|
value = 1
|
|
subtract = {
|
|
value = scope:recipient.current_military_strength
|
|
divide = { value = scope:actor.current_military_strength min = 1 }
|
|
}
|
|
multiply = 50
|
|
max = 20
|
|
}
|
|
}
|
|
modifier = { # Legalistic tradition
|
|
desc = tradition_legalistic_name
|
|
scope:actor = {
|
|
has_revoke_title_reason = scope:recipient
|
|
culture = { has_cultural_parameter = vassals_more_likely_accept_punishments }
|
|
}
|
|
add = legalistic_vassal_punishment_acceptance
|
|
}
|
|
modifier = { # AI Mongols, tyranny wars just delay the inevitable fun!
|
|
scope:actor = {
|
|
is_ai = yes
|
|
OR = {
|
|
has_trait = greatest_of_khans
|
|
has_character_modifier = the_great_khan_modifier
|
|
ai_should_get_conqueror_bonuses = yes
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
is_ai = yes
|
|
}
|
|
add = 500
|
|
}
|
|
modifier = {
|
|
add = -25
|
|
scope:recipient = {
|
|
culture = { has_cultural_parameter = vassals_more_likely_to_refuse_demands }
|
|
}
|
|
desc = VASSALS_REFUSAL_indomitable_azatani
|
|
}
|
|
}
|
|
|
|
# AI
|
|
ai_targets = {
|
|
ai_recipients = vassals
|
|
}
|
|
ai_frequency = 0 # This is handled via code instead; see REVOKE_TITLE_TICK in the AI defines. All the logic for *if* to send a revoke though is scripted below
|
|
|
|
ai_potential = {
|
|
has_realm_law_flag = title_revocation_allowed
|
|
primary_title.tier >= tier_county
|
|
}
|
|
|
|
ai_will_do = {
|
|
base = -1000
|
|
|
|
# We want to avoid tyranny unless we've got a good reason
|
|
# And even if we can avoid tyranny we don't want to revoke just because we can, so this only gets us to -10
|
|
# Certain characters will revoke despite tyranny, if their rationality is sufficiently low
|
|
modifier = {
|
|
scope:actor = {
|
|
OR = {
|
|
NOT = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
}
|
|
AND = {
|
|
ai_rationality <= very_high_negative_ai_value
|
|
OR = {
|
|
has_trait = lunatic
|
|
has_trait = possessed
|
|
has_trait = arbitrary
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
add = 990
|
|
}
|
|
# Only certain rulers won't revoke vassals who have revolted against them
|
|
modifier = {
|
|
scope:actor = {
|
|
ai_compassion <= 75
|
|
ai_greed >= -50
|
|
ai_honor <= 50
|
|
scope:recipient = {
|
|
is_imprisoned = yes
|
|
trigger_if = {
|
|
limit = {
|
|
NOT = { has_dlc_feature = landless_playable }
|
|
}
|
|
# Be kinder to players if they'd get game overed.
|
|
is_ai = yes
|
|
}
|
|
opinion = {
|
|
target = scope:actor
|
|
value <= 0
|
|
}
|
|
}
|
|
NOT = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
}
|
|
OR = {
|
|
has_opinion_modifier = {
|
|
modifier = rebellious_vassal_opinion
|
|
target = scope:recipient
|
|
}
|
|
has_opinion_modifier = {
|
|
modifier = vassal_lost_faction_revolt_war
|
|
target = scope:recipient
|
|
}
|
|
has_opinion_modifier = {
|
|
modifier = vassal_wp_faction_revolt_war
|
|
target = scope:recipient
|
|
}
|
|
}
|
|
}
|
|
add = {
|
|
value = 100
|
|
add = scope:actor.ai_greed
|
|
add = {
|
|
value = scope:actor.ai_honor
|
|
multiply = -1
|
|
}
|
|
if = {
|
|
limit = {
|
|
scope:actor.ai_vengefulness > 0
|
|
}
|
|
add = scope:actor.ai_vengefulness
|
|
}
|
|
}
|
|
}
|
|
# Vengeful AI's want to revoke
|
|
modifier = {
|
|
scope:actor = {
|
|
ai_vengefulness > 0
|
|
scope:recipient = {
|
|
is_imprisoned = yes
|
|
}
|
|
NOT = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
}
|
|
}
|
|
add = {
|
|
value = scope:actor.ai_vengefulness
|
|
multiply = 2
|
|
}
|
|
}
|
|
# Always revoke preferred capital and capital duchy
|
|
modifier = {
|
|
years_from_game_start >= 3
|
|
OR = {
|
|
scope:actor = {
|
|
is_at_war = no
|
|
OR = {
|
|
AND = {
|
|
has_treasury = no
|
|
gold > 0
|
|
}
|
|
AND = {
|
|
has_treasury = yes
|
|
treasury > 0
|
|
}
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
}
|
|
scope:actor = { # The HRE doesn't need endless civil wars
|
|
NOT = {
|
|
primary_title = title:e_hre
|
|
}
|
|
}
|
|
exists = scope:actor.primary_title.title_capital_county
|
|
OR = {
|
|
scope:landed_title = scope:actor.primary_title.title_capital_county
|
|
scope:landed_title = scope:actor.primary_title.title_capital_county.de_jure_liege
|
|
}
|
|
NAND = { # Don't revoke player titles tyranically, it must be possible to play and succeed as Ulm!
|
|
scope:landed_title.holder = {
|
|
is_ai = no
|
|
}
|
|
scope:actor = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
}
|
|
}
|
|
add = 1100
|
|
}
|
|
# If below domain limit, try to revoke counties in your capital duchy despite tyranny, sometimes
|
|
modifier = {
|
|
years_from_game_start >= 3
|
|
OR = {
|
|
scope:actor = {
|
|
is_at_war = no
|
|
OR = {
|
|
AND = {
|
|
has_treasury = no
|
|
gold > 0
|
|
}
|
|
AND = {
|
|
has_treasury = yes
|
|
treasury > 0
|
|
}
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
}
|
|
scope:actor = { # The HRE doesn't need endless civil wars
|
|
NOT = {
|
|
primary_title = title:e_hre
|
|
}
|
|
}
|
|
scope:actor.domain_size < scope:actor.domain_limit
|
|
scope:actor.primary_title.tier > tier_county
|
|
trigger_if = {
|
|
limit = {
|
|
scope:actor = {
|
|
title_revocation_is_tyrannical_trigger = { VASSAL = scope:recipient }
|
|
domain_size > 3
|
|
}
|
|
}
|
|
scope:actor = {
|
|
NOR = {
|
|
has_trait = generous
|
|
has_trait = just
|
|
}
|
|
}
|
|
}
|
|
exists = scope:actor.primary_title.title_capital_county
|
|
OR = {
|
|
scope:actor.primary_title.title_capital_county.holder = scope:actor # You have your de jure capital already
|
|
NOT = {
|
|
scope:actor.primary_title.title_capital_county.holder.top_liege = scope:actor.top_liege # Or your De Jure capital isn't in your realm
|
|
}
|
|
}
|
|
scope:landed_title.tier = tier_county # Only Counties
|
|
OR = { # The AI gives away wrong-holding counties almost instantly, so we restrict to counties with holdings they can hold
|
|
scope:landed_title.title_province = { has_holding_type = castle_holding } # Everyone is valid for castles
|
|
AND = {
|
|
scope:actor = {
|
|
government_has_flag = government_is_tribal
|
|
}
|
|
scope:landed_title.title_province = { has_holding_type = tribal_holding }
|
|
}
|
|
AND = {
|
|
scope:actor = {
|
|
government_has_flag = government_is_republic
|
|
}
|
|
scope:landed_title.title_province = { has_holding_type = city_holding }
|
|
}
|
|
AND = {
|
|
scope:actor = {
|
|
OR = {
|
|
government_has_flag = government_is_clan
|
|
government_has_flag = government_is_theocracy
|
|
}
|
|
}
|
|
scope:landed_title.title_province = { has_holding_type = church_holding }
|
|
}
|
|
}
|
|
OR = { # And the capital duchy, if it exists at all
|
|
AND = {
|
|
exists = scope:actor.primary_title.title_capital_county.de_jure_liege.holder
|
|
scope:actor.primary_title.title_capital_county.de_jure_liege.holder = scope:actor
|
|
}
|
|
AND = {
|
|
exists = scope:actor.primary_title.title_capital_county.de_jure_liege.holder
|
|
scope:actor.primary_title.title_capital_county.de_jure_liege.holder.top_liege != scope:actor.top_liege
|
|
}
|
|
scope:actor.primary_title.title_capital_county.de_jure_liege = {
|
|
is_title_created = no
|
|
}
|
|
}
|
|
|
|
scope:landed_title.de_jure_liege = scope:actor.primary_title.title_capital_county.de_jure_liege # Under the same Duchy as your capital
|
|
|
|
scope:recipient = { # Not from players
|
|
is_ai = yes
|
|
}
|
|
|
|
OR = { # Tyranny tolerance is based on rationality
|
|
AND = {
|
|
scope:actor.ai_rationality < 0
|
|
scope:actor.tyranny <= 15 # Don't go crazy with tyranny, just a bit is fine
|
|
}
|
|
AND = {
|
|
scope:actor.ai_rationality >= 0
|
|
scope:actor.ai_rationality < 50
|
|
scope:actor.tyranny <= 5 # Don't go crazy with tyranny, just a bit is fine
|
|
}
|
|
AND = {
|
|
scope:actor.ai_rationality >= 50
|
|
scope:actor.tyranny <= 0 # Don't go crazy with tyranny, just a bit is fine
|
|
}
|
|
AND = {
|
|
scope:actor.ai_rationality >= 0
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
scope:actor = { has_revoke_title_reason = scope:recipient }
|
|
}
|
|
AND = {
|
|
scope:actor.ai_rationality < 0
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
}
|
|
}
|
|
# To do this, the target must be weak or willing in some way
|
|
OR = {
|
|
scope:actor.current_military_strength > scope:recipient.current_military_strength # Must be stronger
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
}
|
|
scope:recipient = {
|
|
OR = {
|
|
AND = {
|
|
scope:recipient.primary_title.tier <= tier_county
|
|
scope:actor.primary_title.tier >= tier_duchy
|
|
}
|
|
has_trait = craven
|
|
has_trait = content
|
|
has_trait = trusting
|
|
has_dread_level_towards = {
|
|
target = scope:actor
|
|
level >= 1
|
|
}
|
|
opinion = { target = scope:actor value >= 40 }
|
|
is_imprisoned_by = scope:actor
|
|
scope:actor = { has_revoke_title_reason = scope:recipient }
|
|
}
|
|
}
|
|
|
|
add = 1100
|
|
}
|
|
# Revoke counties we're dejure liege of if below domain limit
|
|
modifier = {
|
|
scope:actor.domain_size < scope:actor.domain_limit
|
|
scope:landed_title.tier = tier_county
|
|
scope:landed_title.de_jure_liege.holder = scope:actor
|
|
add = 500
|
|
}
|
|
# Revoke appropriate baronies if below domain limit, it's tyranny free
|
|
modifier = {
|
|
scope:actor.domain_size < scope:actor.domain_limit
|
|
scope:recipient = { highest_held_title_tier = tier_barony }
|
|
scope:landed_title.tier = tier_barony
|
|
OR = {
|
|
scope:landed_title.title_province = { has_holding_type = castle_holding }
|
|
scope:landed_title.title_province = { has_holding_type = temple_citadel_holding }
|
|
AND = {
|
|
OR = {
|
|
scope:actor = { government_has_flag = government_is_clan }
|
|
scope:actor = { government_has_flag = government_is_theocracy }
|
|
scope:actor = { government_has_flag = government_is_mandala }
|
|
scope:actor.faith = { has_doctrine_parameter = lay_clergy }
|
|
}
|
|
scope:landed_title.title_province = { has_holding_type = church_holding }
|
|
}
|
|
AND = {
|
|
OR = {
|
|
scope:actor = { government_has_flag = government_is_republic }
|
|
scope:actor = { government_has_flag = government_is_administrative }
|
|
scope:actor = { government_has_flag = government_is_celestial }
|
|
scope:actor = { government_has_flag = government_is_steppe_admin }
|
|
scope:actor = { government_has_flag = government_is_meritocratic }
|
|
scope:actor = { government_has_flag = government_is_japan_administrative }
|
|
}
|
|
scope:landed_title.title_province = { has_holding_type = city_holding }
|
|
}
|
|
}
|
|
add = 1100
|
|
}
|
|
# Revoke from vassals of the wrong faith if you can do it without tyranny
|
|
modifier = {
|
|
scope:actor.faith != scope:recipient.faith
|
|
scope:recipient.primary_title.tier > tier_barony
|
|
OR = {
|
|
scope:actor.faith.religion != scope:recipient.faith.religion
|
|
scope:actor.ai_zeal >= low_negative_ai_value
|
|
NOT = {
|
|
scope:actor.faith = { has_doctrine = doctrine_pluralism_pluralistic }
|
|
}
|
|
}
|
|
OR = { # Chill a bit until you've dealth with the ones already in your prison
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
NOT = {
|
|
any_vassal = {
|
|
faith != scope:actor.faith
|
|
primary_title.tier > tier_barony
|
|
is_imprisoned_by = scope:actor
|
|
time_in_prison = { years < 1 }
|
|
}
|
|
}
|
|
}
|
|
add = 100
|
|
}
|
|
# Revoke from characters you dislike if you can do it without tyranny
|
|
modifier = {
|
|
scope:actor = {
|
|
OR = {
|
|
has_relation_rival = scope:recipient
|
|
has_relation_nemesis = scope:recipient
|
|
}
|
|
}
|
|
add = 100
|
|
}
|
|
# Slight preference for higher-tier titles
|
|
modifier = {
|
|
add = scope:landed_title.tier
|
|
}
|
|
# Do not revoke titles from certain characters
|
|
modifier = {
|
|
scope:actor = {
|
|
OR = {
|
|
has_relation_friend = scope:recipient
|
|
has_relation_best_friend = scope:recipient
|
|
has_relation_lover = scope:recipient
|
|
has_relation_soulmate = scope:recipient
|
|
is_parent_of = scope:recipient
|
|
is_grandparent_of = scope:recipient
|
|
is_great_grandparent_of = scope:recipient
|
|
}
|
|
}
|
|
add = -5000
|
|
}
|
|
# Do not revoke titles when the chance of success if exceedingly low
|
|
modifier = {
|
|
NOR = {
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
scope:recipient = {
|
|
highest_held_title_tier = tier_barony
|
|
}
|
|
}
|
|
scope:actor = {
|
|
OR = {
|
|
AND = {
|
|
has_treasury = no
|
|
OR = {
|
|
gold < minimum_ai_gold_value_for_tyranny_wars
|
|
AND = {
|
|
scope:actor.current_military_strength < scope:recipient.current_military_strength
|
|
gold < comfortable_ai_gold_value_for_tyranny_wars
|
|
}
|
|
}
|
|
}
|
|
AND = {
|
|
has_treasury = yes
|
|
OR = {
|
|
gold < minimum_ai_treasury_value_for_tyranny_wars
|
|
AND = {
|
|
scope:actor.current_military_strength < scope:recipient.current_military_strength
|
|
treasury < comfortable_ai_treasury_value_for_tyranny_wars
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
add = -2000
|
|
}
|
|
|
|
modifier = { # The AI will always use a Hook if they can
|
|
scope:hook = yes
|
|
add = 1
|
|
}
|
|
|
|
modifier = { # The AI shouldn't ruin the player's fun
|
|
add = -5000
|
|
scope:recipient = { has_character_flag = is_party_baron }
|
|
}
|
|
|
|
modifier = { # Avoid triggering Tyranny wars mid-war
|
|
factor = 0
|
|
scope:actor = {
|
|
is_at_war = yes
|
|
}
|
|
NOR = {
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
scope:recipient = {
|
|
highest_held_title_tier = tier_barony
|
|
}
|
|
}
|
|
}
|
|
|
|
# Clan Government: Avoid revoking titles from house members if the AI wants to have high unity
|
|
modifier = {
|
|
scope:actor = {
|
|
government_has_flag = government_is_clan
|
|
exists = house
|
|
ai_wants_high_unity = yes
|
|
}
|
|
scope:recipient = {
|
|
government_has_flag = government_is_clan
|
|
house ?= scope:actor.house
|
|
}
|
|
add = -1000
|
|
}
|
|
|
|
modifier = { # Avoid triggering Tyranny wars mid-grand activity
|
|
factor = 0
|
|
scope:actor = {
|
|
has_ongoing_grand_activity_trigger = yes
|
|
}
|
|
NOR = {
|
|
scope:recipient = {
|
|
is_imprisoned_by = scope:actor
|
|
}
|
|
scope:recipient = {
|
|
highest_held_title_tier = tier_barony
|
|
}
|
|
}
|
|
}
|
|
|
|
# Admin Government: Do not revoke titles from your house unless it's really needed
|
|
modifier = {
|
|
scope:actor = { government_allows = administrative }
|
|
exists = scope:recipient.house
|
|
scope:actor.house ?= scope:recipient.house
|
|
add = -500
|
|
}
|
|
# Admin rulers should be less likely to revoke titles without a revocation reason, as they should prefer to depose governors
|
|
modifier = {
|
|
scope:actor = {
|
|
government_allows = administrative
|
|
NOT = { has_revoke_title_reason = scope:recipient }
|
|
}
|
|
scope:recipient = {
|
|
NOT = { highest_held_title_tier = tier_barony }
|
|
government_allows = administrative
|
|
trigger_if = {
|
|
limit = {
|
|
scope:actor = { has_government = japan_administrative_government }
|
|
}
|
|
highest_held_title_tier >= tier_county
|
|
}
|
|
trigger_else = { highest_held_title_tier >= tier_duchy }
|
|
}
|
|
factor = { # Honorable AI's will never revoke titles without a reason
|
|
value = 0
|
|
if = {
|
|
limit = {
|
|
ai_honor < 0
|
|
}
|
|
add = 0.5
|
|
}
|
|
}
|
|
}
|
|
|
|
# Japanese Admin wants to revoke Japanese Feudal if they have a reason
|
|
modifier = {
|
|
add = 5000
|
|
scope:actor = {
|
|
government_has_flag = government_is_japan_administrative
|
|
exists = house
|
|
has_revoke_title_reason = scope:recipient
|
|
NOT = { has_relation_friend = scope:recipient }
|
|
}
|
|
scope:recipient = {
|
|
government_has_flag = government_is_japan_feudal
|
|
is_imprisoned = yes
|
|
house != scope:actor.house
|
|
}
|
|
}
|
|
# And Japanese Feudal wants to revoke Japanese Admin if they have a reason
|
|
modifier = {
|
|
add = 5000
|
|
scope:actor = {
|
|
government_has_flag = government_is_japan_feudal
|
|
exists = house
|
|
has_revoke_title_reason = scope:recipient
|
|
NOT = { has_relation_friend = scope:recipient }
|
|
}
|
|
scope:recipient = {
|
|
government_has_flag = government_is_japan_administrative
|
|
is_imprisoned = yes
|
|
house != scope:actor.house
|
|
}
|
|
}
|
|
|
|
# TGP Be more careful with blocs generally
|
|
house_bloc_tyranny_war_modifiers = yes
|
|
|
|
#Don't revoke titles from the frankokratia leader
|
|
modifier = {
|
|
scope:recipient = {
|
|
any_owned_story = {
|
|
type = frankokratia_story
|
|
NOT = { has_variable = franko_war_complete }
|
|
}
|
|
}
|
|
factor = 0
|
|
}
|
|
}
|
|
}
|