Interaction · Landless adventurer actions
Change War Alignment
Switch sides in a War
What you need
You
- Is at War
- You have a Adventurer Government
The character you target
To send it
- If any character war: You already switched sides in this War
To see it in the menu
- Any war ally:
- Any character war:
- Is not war leader in the war against you
- Not: The war’s casus belli is Great Holy War
- Not: The war’s casus belli is Great Holy War
- Any war participant:
Change War Alignment is a landless adventurer character interaction in Crusader Kings III. Accepted automatically. Patch 1.20.1.2, from game/common/character_interactions/06_ep3_laamp_interactions.txt.
Quick answers (1)
- Will the AI accept Change War Alignment?
- Yes: it is accepted automatically.
Will they accept?
The other character has no choice: the game accepts it automatically.
What happens
Effects
- Every character active contract:
- Where: Task contract war is scope:war
complete_task_contract = failure_standard
- The war:
If
is_defender = scope:secondary_recipient
Then
add_defender = scope:actor
Otherwise
add_attacker = scope:actor
- Every character war:
- Where:
One of these
- Has the target as the war's attacker
or
Has the target as the war's defender
remove_participant = scope:actor
- Where:
add_prestige = { … }If
NOT = { has_contact = scope:secondary_recipient }
Then
add_contact = scope:secondary_recipient
If
- Is allied to the target
Then
break_alliance = scope:recipient
- Stress and fulfillment impact: +80, and by trait: Disloyal -30, Ambitious -15, Arrogant -15, Callous -5, Arbitrary -5, Just +20, Humble +40, Content +40, Loyal +80
- The character you target:
If
- Does not have you as friend
- Does not have you as best friend
- Does not have you as rival
- Does not have you as nemesis
- Does not have you as potential rival
Then
set_relation_potential_rival = scope:actor
- Opinion: Turned Against Me in a War
- The other character:
- Opinion: Switched to My Side in a War
- If played by the AI: Pay gold to you
- The character you target › Every character war:
- Only some of them (the filter is in the script below)
If
- Has the target as the war's attacker
Then
primary_defender = { … }
Otherwise
primary_attacker = { … }
• 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) (20 lines of game script)
is_available = is_at_war = yes
has_government = landless_adventurer_government
is_shown = scope:recipient = {
this != scope:actor
any_war_ally = {
this = scope:actor
}
any_character_war = {
NOT = {
is_war_leader = scope:actor
}
NOR = {
using_cb = undirected_great_holy_war
using_cb = directed_great_holy_war
}
any_war_participant = {
this = scope:recipient
}
}
}As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
Can be sent when (is_valid…) (16 lines of game script)
scope:recipient = {
trigger_if = {
limit = {
any_character_war = {
has_variable_list = already_switched_side
}
}
custom_tooltip = {
text = laamp_war_change_sides_interaction.already_switched_side
is_target_in_variable_list = {
name = already_switched_side
target = scope:actor
}
}
}
}As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
Effects (on_send, on_accept, on_decline) (257 lines of game script)
on_accept = scope:recipient = {
save_scope_as = betrayed_leader
}
scope:secondary_recipient = {
save_scope_as = new_leader
}
scope:actor = {
frankokratia_remove__war_leader_var_effect = yes
if = {
limit = {
any_character_war = {
using_cb = crusading_claim_cb
any_war_participant = {
this = scope:recipient
}
any_war_participant = {
any_owned_story = {
type = frankokratia_story
NOT = {
any_in_list = {
variable = frankokratia_leaders
this = scope:actor
}
}
}
}
any_war_defender = {
this = scope:actor
}
}
}
random_character_war = {
limit = {
any_war_participant = {
any_owned_story = {
type = frankokratia_story
NOT = {
any_in_list = {
variable = frankokratia_leaders
this = scope:actor
}
}
}
}
any_war_defender = {
this = scope:actor
}
}
random_war_participant = {
limit = {
any_owned_story = {
type = frankokratia_story
NOT = {
any_in_list = {
variable = frankokratia_leaders
this = scope:actor
}
}
}
}
random_owned_story = {
type = frankokratia_story
limit = {
NOT = {
any_in_list = {
variable = frankokratia_leaders
this = scope:actor
}
}
}
add_to_variable_list = {
name = frankokratia_leaders
target = scope:actor
}
}
}
}
}
random_character_war = {
limit = {
OR = {
primary_attacker = scope:recipient
primary_defender = scope:recipient
}
OR = {
primary_attacker = scope:secondary_recipient
primary_defender = scope:secondary_recipient
}
}
save_scope_as = war
}
if = {
limit = {
scope:war = {
using_non_ghw_holy_war_cb_trigger = yes
}
scope:recipient.faith = scope:actor.faith
}
add_piety_level = -1
}
every_character_active_contract = {
limit = {
var:task_contract_war = scope:war
}
complete_task_contract = failure_standard
}
if = {
limit = {
has_variable = owed_contract_assistance_war
scope:recipient = {
is_participant_in_war = scope:actor.var:owed_contract_assistance_war
}
}
remove_variable = owed_contract_assistance_war
remove_variable = owed_contract_assistance_contribution
remove_variable = owed_contract_assistance_gold
}
}
scope:war = {
hidden_effect = {
remove_participant = scope:actor
}
if = {
limit = {
is_defender = scope:secondary_recipient
}
add_defender = scope:actor
}
else = {
add_attacker = scope:actor
}
}
scope:actor = {
every_character_war = {
limit = {
OR = {
primary_attacker = scope:recipient
primary_defender = scope:recipient
}
this != scope:war
}
remove_participant = scope:actor
}
}
scope:actor = {
add_prestige = {
value = -250
multiply = {
value = scope:recipient.highest_held_title_tier
add = -1
}
}
if = {
limit = {
scope:recipient.highest_held_title_tier >= tier_kingdom
}
add_prestige_level = -1
}
if = {
limit = {
NOT = {
has_contact = scope:secondary_recipient
}
}
add_contact = scope:secondary_recipient
}
if = {
limit = {
is_allied_to = scope:recipient
}
break_alliance = scope:recipient
}
stress_and_fulfillment_impact = {
base = major_stress_impact_gain
disloyal = medium_stress_impact_loss
ambitious = minor_stress_impact_loss
arrogant = minor_stress_impact_loss
callous = miniscule_stress_impact_loss
arbitrary = miniscule_stress_impact_loss
just = minor_stress_impact_gain
humble = medium_stress_impact_gain
content = medium_stress_impact_gain
loyal = major_stress_impact_gain
}
}
scope:recipient = {
if = {
limit = {
can_set_relation_potential_rival_trigger = {
CHARACTER = scope:actor
}
}
set_relation_potential_rival = scope:actor
}
add_opinion = {
modifier = switched_sides_in_war
target = scope:actor
}
}
scope:secondary_recipient = {
add_opinion = {
modifier = switched_to_my_side
target = scope:actor
}
if = {
limit = {
is_ai = yes
}
pay_short_term_gold = {
target = scope:actor
gold = major_gold_value
}
}
}
scope:recipient = {
every_character_war = {
limit = {
OR = {
primary_attacker = scope:recipient
primary_defender = scope:recipient
}
NOT = {
is_war_leader = scope:actor
}
NOR = {
using_cb = undirected_great_holy_war
using_cb = directed_great_holy_war
}
any_war_participant = {
this = scope:recipient
}
NOR = {
primary_attacker = scope:secondary_recipient
primary_defender = scope:secondary_recipient
}
}
if = {
limit = {
primary_attacker = scope:recipient
}
primary_defender = {
add_opinion = {
modifier = left_war_early
opinion = 40
target = scope:actor
}
}
}
else = {
primary_attacker = {
add_opinion = {
modifier = left_war_early
opinion = 20
target = scope:actor
}
# … (cut here; the rest is in the file)As written in game/common/character_interactions/06_ep3_laamp_interactions.txt.
- Category
- Landless adventurer actions
- Again on the same character
- after 3 years
- In the menu
- main list
- ID
laamp_war_change_sides_interaction
Source: game/common/character_interactions/06_ep3_laamp_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.