Interaction · Vassal actions
Offer Vassalage
Ask the recipient to become your Vassal
What you need
You
To send it
- If holds China › Dynastic Cycle:
NOT = { situation_current_phase = situation_dynastic_cycle_phase_instability }If
situation_current_phase = situation_dynastic_cycle_phase_stability_advancement
Then
- The character you target: … is not Celestial
The character you target
To send it
- Is at not War
- Is not a member of a Confederation
- If a Tributary: Was recently granted independence
To see it in the menu
- Is a ruler
One of these
One of these
All of these
- Is an Independent Ruler
- Is not a Tributary
or
Is a tributary of you or of your suzerains
- Their government does not have the cannot be vassal or liege flag
- Their government is not unplayable
Offer Vassalage is a vassal character interaction in Crusader Kings III. The character you target needs: Is at not War and Is not a member of a Confederation. The AI weighs it. Reasons the AI weighs include Your claim is illegitimate (-10), You have True Ruler (+20), Virtuoso Arbitrator (+25) and 61 more. It costs Influence (varies), Piety (varies). Patch 1.20.1.2, from game/common/character_interactions/00_character_interactions.txt.
Quick answers (3)
- What are the requirements for Offer Vassalage in CK3?
- The character you target: Is at not War and Is not a member of a Confederation. (patch 1.20.1.2)
- How do I get the AI to accept Offer Vassalage?
- The AI weighs it. Its reasons: Your claim is illegitimate -10, You have True Ruler +20, Virtuoso Arbitrator +25, You have a reputation as a fair ruler +20, Previously swayed during the Iranian Intermezzo +20, You have the flame of persia Modifier +20, The recipient is impressed by the Court Grandeur of your Diplomatic Court, Your Level of Devotion, Inspection Bonus +5, Inspection Bonus +10, Successful Inspection +10, Inspection Focus: Vassal Acceptance +10, Your low Legitimacy -25, Your low Legitimacy -50, Your low Legitimacy -75, Your high Legitimacy +25, Your high Legitimacy +50, Your high Legitimacy +75, You were crowned by the Clergy +25, Their Head of Faith thinks well of you, Cultural Acceptance, They is part of an Isolationist Culture -20, You are of a different Faith, You are of a different Faith, You are of a different Faith, Intimidated by you, Terrified of you, They is your Friend +10, They is your Best Friend +20, They is your Lover +10, They is your Soulmate +20, They is your Rival -100, They is your Nemesis -1,000, They belongs to your Dynasty +5, You speak the … Language +5, The recipient … of the … Tier, You recently Waged War -50, They fought for Independence against me -200, Their realm is distant from yours -100, Their realm is distant from yours -250, Their realm is remote from yours -500, They is part of the Iberian Struggle and you are not -35, They is a Claimant to … -20, Major difference in our Tiers, You … a Hegemony Tier Ruler +10, You are Allies +20, You are their Rightful Liege +20, You are not their Rightful Liege -20, Encircled by your Realm, Your Powerful Vassals Opinion of you (max +20), You are just a child -5, Spending Influence +25, You are Bankrupt -100, Historical … ties to Bureaucratic Government +30, Head of Faith -500, Cowed by predecessor's beheading +200, The recipient is Obedient to you +20, Love Thy Neighbour +15, You are at or above your Vassal Limit -1,000, You are not Tribal -20, You are Tribal -20, The recipient is Nomadic -50, You are not Nomadic -75, You are Nomadic -75, Difference in your Military Strength (max +20), Ambitious -20, Paranoid -20, Arrogant -20, Fickle -10, Stubborn -10, Trusting +5, Content +5, Religious Exemption +60, Religious Exemption +30, Low Feudal Obligations +30, High Feudal Obligations -40, Is already a Tributary -35, Mandalas prefer to be Tributaries -25, Your Mandala Radiance (max +200) and The recipient's Realm Size.
- How much does Offer Vassalage cost?
- Influence (varies), Piety (varies) (patch 1.20.1.2).
Will they accept?
The AI adds these up and accepts above zero. Reasons in italics are the script's, with no label in the game.
| Reason | Amount |
|---|---|
| Base | -50 |
| Your claim is illegitimate | -10 |
You have True Rulerwhen
| +20 |
Virtuoso Arbitratorwhen
| +25 |
You have a reputation as a fair rulerwhen
| +20 |
Previously swayed during the Iranian Intermezzowhen
| +20 |
You have the flame of persia Modifierwhen
| +20 |
The recipient is impressed by the Court Grandeur of your Diplomatic Courtwhen
| varies |
Your Level of Devotionwhen
| varies |
Inspection Bonuswhen
| +5 |
Inspection Bonuswhen
| +10 |
Successful Inspectionwhen
| +10 |
| Inspection Focus: Vassal Acceptance | +10 |
Your low Legitimacywhen
| -25 |
Your low Legitimacywhen
| -50 |
Your low Legitimacywhen
| -75 |
Your high Legitimacywhen
| +25 |
Your high Legitimacywhen
| +50 |
Your high Legitimacywhen
| +75 |
You were crowned by the Clergywhen
| +25 |
Their Head of Faith thinks well of youwhen
| varies |
Cultural Acceptancewhen
| offer_vassalage_acceptance_value |
They is part of an Isolationist Culturewhen
| -20 |
You are of a different Faithwhen
| varies |
You are of a different Faithwhen
| varies |
You are of a different Faithwhen
| varies |
Intimidated by youwhen
| intimidated_external_reason_value |
Terrified of youwhen
| cowed_external_reason_value |
Their opinion of you × 0.7when
| varies |
Their opinion of you × 0.35when
| varies |
They is your Friendwhen
| +10 |
They is your Best Friendwhen
| +20 |
They is your Loverwhen
| +10 |
They is your Soulmatewhen
| +20 |
They is your Rivalwhen
| -100 |
They is your Nemesiswhen
| -1,000 |
They belongs to your Dynastywhen
| +5 |
You speak the … Languagewhen
| +5 |
| The recipient … of the … Tier | varies |
You recently Waged Warwhen
| -50 |
They fought for Independence against mewhen
| -200 |
Their realm is distant from yourswhen
| -100 |
Their realm is distant from yourswhen
| -250 |
Their realm is remote from yourswhen
| -500 |
They is part of the Iberian Struggle and you are notwhen
| -35 |
They is a Claimant to …when
| -20 |
Major difference in our Tierswhen
| varies |
| You … a Hegemony Tier Ruler | +10 |
You are Allieswhen
| +20 |
You are their Rightful Liegewhen
| +20 |
You are not their Rightful Liegewhen
| -20 |
Encircled by your Realmwhen
| varies |
Your Powerful Vassals Opinion of you (max +20)when
| varies |
You are just a childwhen
| -5 |
Spending Influencewhen
| +25 |
You are Bankruptwhen
| -100 |
Historical … ties to Bureaucratic Governmentwhen
| +30 |
A scripted reasonwhen
| -50 |
Head of Faithwhen
| -500 |
Cowed by predecessor's beheadingwhen
| +200 |
The recipient is Obedient to youwhen
| +20 |
Love Thy Neighbourwhen
| +15 |
You are at or above your Vassal Limitwhen
| -1,000 |
You are not Tribalwhen
| -20 |
You are Tribalwhen
| -20 |
The recipient is Nomadicwhen
| -50 |
| You are not Nomadic | -75 |
You are Nomadicwhen
| -75 |
| Difference in your Military Strength (max +20) | varies |
| Ambitious | -20 |
| Paranoid | -20 |
| Arrogant | -20 |
| Fickle | -10 |
| Stubborn | -10 |
| Trusting | +5 |
| Content | +5 |
Religious Exemptionwhen
| +60 |
Religious Exemptionwhen
| +30 |
Low Feudal Obligationswhen
| +30 |
High Feudal Obligationswhen
| -40 |
Is already a Tributarywhen
| -35 |
Mandalas prefer to be Tributarieswhen
| -25 |
Your Mandala Radiance (max +200)when
| scope:actor.mandala_radiance_value |
The recipient's Realm Sizewhen
| varies |
Their opinion of youwhen
| varies |
Acceptance (ai_accept) (248 lines of game script)
base = -50
offer_vassalization_interaction_ai_acceptance_general = yes
modifier = {
desc = obedient_interaction_reason
trigger = {
is_obedient_to = scope:actor
}
add = 20
}
modifier = {
desc = tenet_love_thy_neighbour_boon_reason
trigger = {
scope:actor = {
has_personal_tenet_flag = tenet_love_thy_neighbour_vassalage_acceptance
}
}
add = 15
}
modifier = {
desc = offer_vassalization_interaction_aibehavior_vassal_limit_tt
trigger = {
scope:actor = {
vassal_limit_available < 1
}
}
add = {
value = -1000
}
}
modifier = {
desc = interaction_tribal_vs_nontribal
trigger = {
scope:recipient = {
government_has_flag = government_is_tribal
}
scope:actor = {
NOT = {
government_has_flag = government_is_tribal
}
}
}
add = -20
}
modifier = {
desc = interaction_nontribal_vs_tribal
trigger = {
scope:actor = {
government_has_flag = government_is_tribal
}
scope:recipient = {
NOT = {
government_has_flag = government_is_tribal
}
}
}
add = -20
}
modifier = {
desc = interaction_is_nomadic
trigger = {
scope:recipient = {
government_has_flag = government_is_nomadic
}
scope:actor = {
government_has_flag = government_is_nomadic
}
}
add = -50
}
modifier = {
desc = interaction_nomadic_vs_nonnomadic
trigger = {
scope:recipient = {
government_has_flag = government_is_nomadic
}
scope:actor = {
NOT = {
government_has_flag = government_is_nomadic
}
}
}
add = -75
}
modifier = {
desc = interaction_nonnomadic_vs_nomadic
trigger = {
scope:actor = {
government_has_flag = government_is_nomadic
}
scope:recipient = {
NOT = {
government_has_flag = government_is_nomadic
}
}
}
add = -75
}
modifier = {
desc = offer_vassalization_interaction_aibehavior_power_tt
add = {
value = 1
subtract = {
value = scope:recipient.max_military_strength
divide = {
value = scope:actor.current_military_strength
min = 1
}
}
multiply = 20
ceiling = yes
}
}
modifier = {
desc = TAKE_THE_VOWS_AMBITIOUS
trigger = {
scope:recipient = {
has_trait = ambitious
}
}
add = -20
}
modifier = {
desc = INTERACTION_PARANOID
trigger = {
scope:recipient = {
has_trait = paranoid
}
}
add = -20
}
modifier = {
desc = INTERACTION_ARROGANT
trigger = {
scope:recipient = {
has_trait = arrogant
}
}
add = -20
}
modifier = {
desc = INTERACTION_FICKLE
trigger = {
scope:recipient = {
has_trait = fickle
}
}
add = -10
}
modifier = {
desc = INTERACTION_STUBBORN
trigger = {
scope:recipient = {
has_trait = stubborn
}
}
add = -10
}
modifier = {
desc = TAKE_THE_VOWS_TRUSTING
trigger = {
scope:recipient = {
has_trait = trusting
}
}
add = 5
}
modifier = {
desc = INTERACTION_CONTENT
trigger = {
scope:recipient = {
has_trait = content
}
}
add = 5
}
modifier = {
add = 60
scope:recipient = {
government_has_flag = government_is_feudal
}
scope:religious_exemption = yes
desc = CONTRACT_RELIGIOUS_EXEMPTION_REASON
}
modifier = {
add = 30
scope:recipient = {
government_has_flag = government_is_clan
}
scope:religious_exemption_clan = yes
desc = CONTRACT_RELIGIOUS_EXEMPTION_REASON
}
modifier = {
add = 30
scope:recipient = {
government_has_flag = government_is_feudal
}
scope:low_obligations = yes
desc = CONTRACT_LOW_TAXES_REASON
}
modifier = {
add = -40
scope:recipient = {
government_has_flag = government_is_feudal
}
scope:high_obligations = yes
desc = CONTRACT_HIGH_TAXES_REASON
}
modifier = {
scope:recipient = {
is_tributary_of = scope:actor
}
scope:actor = {
government_has_flag = government_is_mandala
}
add = -35
desc = is_tributary_of_me_mandala
}
modifier = {
scope:recipient = {
government_has_flag = government_is_mandala
}
scope:actor = {
government_has_flag = government_is_mandala
}
add = -25
desc = is_mandala_government
}
modifier = {
scope:actor = {
has_mandala_capital_trigger = yes
}
add = scope:actor.mandala_radiance_value
desc = actor_positive_mandala_radiance
}
subject_realm_size_lose_weight_modifier = {
DEVARAJA = scope:actor
SUBJECT = scope:recipient
}
opinion_modifier = {
trigger = {
scope:actor = {
government_has_flag = government_is_mandala
}
}
who = scope:recipient
opinion_target = scope:actor
multiplier = 1
}As written in game/common/character_interactions/00_character_interactions.txt.
What happens
If they accept
- The character you target:
change_liege = { liege = scope:puppet_or_actor change = scope:change }- Opinion: Became Vassal (+10)
- The character you target:
- If government is Feudal:
If
- The option “high obligations” is chosen
Then
- Vassal Contract starts with High Taxes
- Vassal Contract starts with High Levy Contribution
Else if
- The option “low obligations” is chosen
Then
- Vassal Contract starts with Low Taxes
- Vassal Contract starts with Low Levy Contribution
Else if
- The option “religious exemption” is chosen
Then
- Vassal Contract starts with Normal Taxes
- Vassal Contract starts with Low Levy Contribution
- Vassal Contract starts with Religiously Protected
Otherwise
- Vassal Contract starts with Normal Taxes
- Vassal Contract starts with Normal Levy Contribution
- Else, if all of these hold:
- Conditions:
- Government is Clan
- The option “religious exemption clan” is chosen
- Then: Vassal Contract starts with Religiously Protected
- Conditions:
- If government is Feudal:
- Event char_interaction.0001
- If has the Modifier: Masterful Negotiator: Loses “Masterful Negotiator”
If they refuse
- Event char_interaction.0002
Options when sending
- Low Feudal Obligations
- Normal Feudal Obligations
- High Feudal Obligations
- Religious Exemption
- Religious Exemption
- No Exemption
- Offer Influence
- Offer nothing
Events it fires: char_interaction.0001, char_interaction.0002
• 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) (41 lines of game script)
is_available = is_landed = yes
trigger_if = {
limit = {
is_ai = yes
}
highest_held_title_tier > tier_county
this = top_liege
vassal_limit_available > 1
is_adult = yes
}
is_shown = scope:recipient = {
this != scope:actor
is_playable_character = yes
OR = {
AND = {
top_liege ?= this
is_tributary = no
}
is_tributary_of_suzerain_or_above = scope:actor
}
trigger_if = {
limit = {
scope:actor = {
NOT = {
government_has_flag = government_is_mandala
}
}
}
highest_held_title_tier < scope:actor.highest_held_title_tier
}
NOR = {
government_has_flag = cannot_be_vassal_or_liege
government_has_flag = government_is_herder
}
}
NOT = {
scope:actor = {
has_variable = had_mpo_temujin_flavor_0010
var:had_mpo_temujin_flavor_0010 ?= scope:recipient
}
}As written in game/common/character_interactions/00_character_interactions.txt.
Can be sent when (is_valid…) (59 lines of game script)
scope:actor = {
trigger_if = {
limit = {
is_confederation_member = yes
}
exists = house.house_confederation
}
trigger_if = {
limit = {
has_title = title:h_china
}
situation:dynastic_cycle ?= {
NOT = {
situation_current_phase = situation_dynastic_cycle_phase_instability
}
trigger_if = {
limit = {
situation_current_phase = situation_dynastic_cycle_phase_stability_advancement
}
scope:recipient = {
custom_tooltip = {
text = recipient_is_not_celestial_desc
government_has_flag = government_is_celestial
}
}
}
}
}
}
scope:recipient = {
is_at_war = no
is_confederation_member = no
custom_description = {
text = was_recently_granted_independence
NOT = {
has_opinion_modifier = {
modifier = granted_independence_opinion
target = scope:actor
}
}
}
trigger_if = {
limit = {
is_tributary = yes
}
custom_tooltip = {
text = was_recently_granted_independence
scope:recipient.suzerain = scope:actor
}
}
trigger_if = {
limit = {
scope:actor = {
government_has_flag = government_is_mandala
}
}
highest_held_title_tier < scope:actor.highest_held_title_tier
}
}As written in game/common/character_interactions/00_character_interactions.txt.
Effects (on_send, on_accept, on_decline) (23 lines of game script)
on_accept = offer_vassalization_interaction_effect = yes
scope:actor = {
trigger_event = char_interaction.0001
if = {
limit = {
has_character_modifier = event_bonus_to_vassal_accept
}
remove_character_modifier = event_bonus_to_vassal_accept
}
if = {
limit = {
any_character_struggle = {
has_struggle_phase_parameter = offer_vassalization_removes_disloyalty
}
}
scope:recipient = {
remove_trait = disloyal
}
}
}
on_decline = scope:actor = {
trigger_event = char_interaction.0002
}As written in game/common/character_interactions/00_character_interactions.txt.
- Category
- Vassal actions
- Cost: Influence
- varies
- Cost: Piety
- varies
- In the menu
- under More…
- ID
offer_vassalization_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.