Interaction · Vassal actions
Grant Independence
Grant the recipient independence from your realm they will no longer be your vassal!
What you need
You
To send it
None of these
- You: Is at war with the target
- Is an Independent Ruler
- Is at not War
- You may only grant independence to your Diarch by elevating them to your Tier
- This action may not be taken against the Ceremonial Monarch
To see it in the menu
- The target is not you
The character you target
- Is a vassal of you
- Is landed
Grant Independence is a vassal character interaction in Crusader Kings III. You need: Is an Independent Ruler, Is at not War, You may only grant independence to your Diarch by elevating them to your Tier and 1 more. Accepted automatically. Patch 1.20.1.2, from game/common/character_interactions/00_character_interactions.txt.
Quick answers (2)
- What are the requirements for Grant Independence in CK3?
- You: Is an Independent Ruler, Is at not War, You may only grant independence to your Diarch by elevating them to your Tier and This action may not be taken against the Ceremonial Monarch. (patch 1.20.1.2)
- Will the AI accept Grant Independence?
- Yes: it is accepted automatically.
Will they accept?
The other character has no choice: the game accepts it automatically.
What happens
Effects
- Stress and fulfillment impact: by trait: Ambitious +40, Arrogant +20, Greedy +20
- The character you target:
If
- Any liege or above: Is played by a person
Then
- Every liege or above:
- Where: Is played by a person
- Event vassal_interaction.0023
If
- Any liege or above › Any vassal: Is played by a person
Then
- Every liege or above:
- Where › Any vassal: Is played by a person
- Every vassal:
- Where: Is played by a person
- Event vassal_interaction.0022 (after 3 days)
- Opinion: Granted Independence
add_truce_both_ways = { character = scope:puppet_or_actor days = 3650 name = TRUCE_GRANT_INDEPENDENCE }becomes_independent = { change = scope:change }
If
- You:
Not all of these
- Their culture is the same as that of recipient
- Their faith is the same as that of recipient
- The character you target: Is a powerful vassal of you
- Any character struggle:
involvement = involvedphase_has_catalyst = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal- The character you target: Any character struggle:
Then
- Every character struggle:
- Where:
phase_has_catalyst = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal- The character you target: Any character struggle:
involvement = involvedactivate_struggle_catalyst = { catalyst = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal character = scope:puppet_or_actor }
- Where:
- You:
If
None of these
- Any held title:
is_de_jure_liege_or_above_target = scope:recipient.primary_title
- Any held title:
- Any character struggle:
involvement = involvedphase_has_catalyst = catalyst_independence_from_non_dejure_vassal- The character you target: Any character struggle:
Then
- Every character struggle:
- Where:
phase_has_catalyst = catalyst_independence_from_non_dejure_vassal- The character you target: Any character struggle:
involvement = involvedactivate_struggle_catalyst = { catalyst = catalyst_independence_from_non_dejure_vassal character = scope:puppet_or_actor }
- Where:
If
Then
- Your house:
add_unity_value = { … }
- Your house:
Events it fires: vassal_interaction.0023, vassal_interaction.0022
• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists
Who can use it and sees it (is_available, is_shown) (13 lines of game script)
is_shown = scope:puppet_or_actor ?= {
trigger_if = {
limit = {
is_confederation_member = yes
}
exists = house.house_confederation
}
}
scope:recipient = {
is_vassal_of = scope:puppet_or_actor
is_landed = yes
}
scope:recipient != scope:puppet_or_actorAs written in game/common/character_interactions/00_character_interactions.txt.
Can be sent when (is_valid…) (53 lines of game script)
NOT = {
scope:puppet_or_actor = {
is_at_war_with = scope:recipient
}
}
scope:puppet_or_actor = {
top_liege = this
is_at_war = no
custom_description = {
text = is_at_war_with_another_vassal
object = scope:recipient
NOT = {
scope:puppet_or_actor = {
any_vassal_or_below = {
is_at_war_with = scope:recipient
}
}
}
}
custom_description = {
text = is_de_jure_vassal_check
object = scope:recipient
trigger_if = {
limit = {
scope:puppet_or_actor = {
government_has_mechanic = administrative
}
scope:recipient = {
government_has_flag = government_is_tribal
}
}
}
trigger_else = {
NOT = {
scope:recipient.primary_title = {
any_this_title_or_de_jure_above = {
holder = scope:puppet_or_actor
}
}
}
}
}
custom_tooltip = {
text = can_only_remove_diarch_by_elevating_them.tt
NOT = {
scope:recipient ?= scope:puppet_or_actor.diarch
}
}
}
tgp_blocked_action_against_tenno_trigger = {
ACTOR = scope:puppet_or_actor
TARGET = scope:recipient
}As written in game/common/character_interactions/00_character_interactions.txt.
Effects (on_send, on_accept, on_decline) (196 lines of game script)
on_accept = if = {
limit = {
exists = scope:is_puppet_action
scope:is_puppet_action = yes
}
scope:actor = {
add_character_flag = {
flag = pam_puppet_grant_independence_cooldown
years = 5
}
}
}
scope:puppet_or_actor = {
stress_and_fulfillment_impact = {
ambitious = medium_stress_impact_gain
arrogant = minor_stress_impact_gain
greedy = minor_stress_impact_gain
}
hidden_effect = {
send_interface_toast = {
type = event_toast_effect_neutral
title = grant_vassal_independence_interaction_toast
left_icon = scope:actor
right_icon = scope:recipient
custom_tooltip = grant_vassal_independence_interaction_toast_desc
if = {
limit = {
exists = dynasty
NOT = {
any_held_title = {
is_de_jure_liege_or_above_target = scope:recipient.primary_title
}
}
any_character_struggle = {
involvement = involved
has_struggle_phase_parameter = granting_independence_to_non_dejure_gives_renown
}
}
dynasty = {
add_dynasty_prestige = medium_dynasty_prestige_value
}
}
}
}
}
hidden_effect = {
if = {
limit = {
scope:is_puppet_action ?= yes
}
scope:actor = {
send_interface_toast = {
type = event_toast_effect_neutral
title = grant_vassal_independence_interaction_toast
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
custom_tooltip = grant_vassal_independence_interaction_toast_desc
}
}
}
}
scope:recipient = {
if = {
limit = {
any_liege_or_above = {
is_ai = no
this != scope:puppet_or_actor
}
}
every_liege_or_above = {
limit = {
is_ai = no
this != scope:puppet_or_actor
}
trigger_event = vassal_interaction.0023
}
}
if = {
limit = {
any_liege_or_above = {
any_vassal = {
is_ai = no
NOR = {
this = scope:recipient
this = scope:puppet_or_actor
}
}
}
}
every_liege_or_above = {
limit = {
any_vassal = {
is_ai = no
NOR = {
this = scope:recipient
this = scope:puppet_or_actor
}
}
}
every_vassal = {
limit = {
is_ai = no
this != scope:recipient
}
trigger_event = {
id = vassal_interaction.0022
days = 3
}
}
}
}
add_opinion = {
target = scope:puppet_or_actor
modifier = granted_independence_opinion
}
add_truce_both_ways = {
character = scope:puppet_or_actor
days = 3650
name = TRUCE_GRANT_INDEPENDENCE
}
create_title_and_vassal_change = {
type = independency
save_scope_as = change
add_claim_on_loss = yes
}
becomes_independent = {
change = scope:change
}
resolve_title_and_vassal_change = scope:change
}
scope:puppet_or_actor = {
if = {
limit = {
catalyst_gave_independence_to_powerful_diff_faith_culture_vassal_preliminary_trigger = {
CHAR1 = scope:puppet_or_actor
CHAR2 = scope:recipient
}
any_character_struggle = {
involvement = involved
activate_struggle_catalyst_secondary_character_involvement_either_trigger = {
CATALYST = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal
CHAR = scope:recipient
}
}
}
every_character_struggle = {
involvement = involved
limit = {
activate_struggle_catalyst_secondary_character_involvement_either_trigger = {
CATALYST = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal
CHAR = scope:recipient
}
}
activate_struggle_catalyst = {
catalyst = catalyst_gave_independence_to_powerful_diff_faith_culture_vassal
character = scope:puppet_or_actor
}
}
}
if = {
limit = {
NOT = {
any_held_title = {
is_de_jure_liege_or_above_target = scope:recipient.primary_title
}
}
any_character_struggle = {
involvement = involved
activate_struggle_catalyst_secondary_character_involvement_either_trigger = {
CATALYST = catalyst_independence_from_non_dejure_vassal
CHAR = scope:recipient
}
}
}
every_character_struggle = {
involvement = involved
limit = {
activate_struggle_catalyst_secondary_character_involvement_either_trigger = {
CATALYST = catalyst_independence_from_non_dejure_vassal
CHAR = scope:recipient
}
}
activate_struggle_catalyst = {
catalyst = catalyst_independence_from_non_dejure_vassal
character = scope:puppet_or_actor
}
}
}
}
add_clan_unity_interaction_effect = {
CHARACTER = scope:puppet_or_actor
TARGET = scope:recipient
VALUE = medium_unity_loss
DESC = clan_unity_grant_independence.desc
REVERSE_NON_HOUSE_TARGET = no
}As written in game/common/character_interactions/00_character_interactions.txt.
- Category
- Vassal actions
- In the menu
- under More…
- ID
grant_independence_interaction
Source: game/common/character_interactions/00_character_interactions.txt and the English localisation, Crusader Kings III 1.20.1.2. “You” is the character who sends it (scope:actor, or a puppet acting for you); “the character you target” is the recipient.