Interaction · Vassal actions
Invite to Court
Invite the recipient to move to your Court, where they will be your Courtier
What you need
You
- They recently accepted an invite to their current court and cannot be invited again for a while
- The recruitee:
is_hostage = no- … is traveling to become a Hostage
- Already under negotiation to become someone's Ward
- Already under negotiation to become someone's Guardian
- If a child: Is an unrelated child
None of these
- Is imprisoned
- Is Leasing holdings from their Liege
is_diarch = yesIf
- Their host: Is played by a person
- Is not the recruiter’s player heir
Then
is_player_heir_of = host
If
- Their host: Is played by the AI
- Is not the recruiter’s player heir
Then
is_primary_heir_of = host
If
a check the game hides
Then
is_consort_of = host
If
a check the game hides
Then
One of these
is_councillor_of = scope:recruitee.hostor
is_knight_of = scope:recruitee.hostor
Any relation:One of these
this = scope:recruitee.hostor
is_close_family_of = scope:recruitee.host
or
Any relation:One of these
this = scope:recruitee.hostor
is_close_family_of = scope:recruitee.host
or
Any relation:One of these
this = scope:recruitee.hostor
is_close_family_of = scope:recruitee.host
or
Any relation:One of these
this = scope:recruitee.hostor
is_close_family_of = scope:recruitee.host
or
Any court position employer:this = scope:recruitee.host
If
- The recruiter: Has a Adventurer Government
Then
- Adventurers may only invite their Player Heir, Soulmate, Best Friend, or Spouses to their Camp
- They is in a Matrilineal marriage and their partner is employed by their liege
- They is in a Patrilineal marriage and their partner is employed by their liege
- You recently tried to Imprison They
- They is a merchant traveling on a nomad ruler's order
- You exiled this character within the last 5 years
- … joined … Order within the last 5 years
- … is a child promised to … Order
The character you target
None of these
- Is a courtier of you
is_foreign_court_guest = yes- Is hosted by you
- Has the Trait: Military Order Member
- Is a ruler
- Their location:
is_sea_province = yes
Invite to Court is a vassal character interaction in Crusader Kings III. You need: They recently accepted an invite to their current court and cannot be invited again for a while and You exiled this character within the last 5 years. Accepted automatically in some cases; otherwise the AI weighs it. Reasons the AI weighs include You humiliated the recipient as your Stooge (-200), The recipient is their Liege's Knight (-20), The recipient is their Liege's Commander (-30) and 31 more. It costs Influence (varies). Patch 1.20.1.2, from game/common/character_interactions/00_courtier_and_guest_interactions.txt.
Quick answers (3)
- What are the requirements for Invite to Court in CK3?
- You: They recently accepted an invite to their current court and cannot be invited again for a while and You exiled this character within the last 5 years. (patch 1.20.1.2)
- How do I get the AI to accept Invite to Court?
- Accepted automatically in some cases; otherwise the AI weighs it. Its reasons: You humiliated the recipient as your Stooge -200, The recipient is their Liege's Knight -20, The recipient is their Liege's Commander -30, The recipient is on the Council -40, The recipient is their Liege's Personal Physician -20, They is your Lover +100, They is your Friend +75, They is your Child +160, You are their Dynasty Head +30, You are their House Head +60, You are their Sovereign +60, They is your Relative +30, They is your Relative +75, They is your Spouse +160, The recipient is close to their Liege -100, The recipient is their Liege's Friend -75, The recipient is their Liege's Child -160, The recipient is their Liege's Relative -75, The recipient would be leaving their Spouse -100, The recipient would be leaving their Child -100, The recipient is in a Matrilineal marriage -50, The recipient is in a Patrilineal marriage -50, Inspired -50, Sponsored Inspiration -500, "You can't tell me what to do, …." -500, Eluding attempted castrator -180, The recipient's belongs to a Court -50, Homeless wanderer can be persuaded to stay, Covering travel expenses, Your Lodging Standards, Liege's Lodging Standards, Your House Unity, Spending Influence +25, Estate Buildings +20, Characters are far more likely to accept an invitation to your court +50, They is an imperial eunuch -1,000, Sworn vows to their clerical Liege -100, … Cultural Traditions +15 and You banished them -200.
- How much does Invite to Court cost?
- Influence (varies) (patch 1.20.1.2).
Will they accept?
Accepted automatically when:
- They use their Hook on …
Otherwise 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 |
Their opinion of their liege × -0.5when
| varies |
Their opinion of you × 0.5when
| varies |
You humiliated the recipient as your Stoogewhen
| -200 |
The recipient is their Liege's Knightwhen
| -20 |
The recipient is their Liege's Commanderwhen
| -30 |
The recipient is on the Councilwhen
| -40 |
The recipient is their Liege's Personal Physicianwhen
| -20 |
They is your Loverwhen
| +100 |
They is your Friendwhen
| +75 |
They is your Childwhen
| +160 |
You are their Dynasty Headwhen
| +30 |
You are their House Headwhen
| +60 |
You are their Sovereignwhen
| +60 |
They is your Relativewhen
| +30 |
They is your Relativewhen
| +75 |
They is your Spousewhen
| +160 |
The recipient is close to their Liegewhen
| -100 |
The recipient is their Liege's Friendwhen
| -75 |
The recipient is their Liege's Childwhen
| -160 |
The recipient is their Liege's Relativewhen
| -75 |
The recipient would be leaving their Spousewhen
| -100 |
The recipient would be leaving their Childwhen
| -100 |
The recipient is in a Matrilineal marriagewhen
| -50 |
The recipient is in a Patrilineal marriagewhen
| -50 |
Inspiredwhen
| -50 |
Sponsored Inspirationwhen
| -500 |
| "You can't tell me what to do, …." | -500 |
Eluding attempted castratorwhen
| -180 |
The recipient's belongs to a Courtwhen
| -50 |
| Homeless wanderer can be persuaded to stay | varies |
Covering travel expenseswhen
| varies |
Your Lodging Standardswhen
| varies |
Liege's Lodging Standardswhen
| varies |
Your House Unitywhen
| varies |
Spending Influencewhen
| +25 |
Estate Buildingswhen
| +20 |
Characters are far more likely to accept an invitation to your courtwhen
| +50 |
They is an imperial eunuchwhen
| -1,000 |
Sworn vows to their clerical Liegewhen
| -100 |
… Cultural Traditionswhen
| +15 |
You banished themwhen
| -200 |
Acceptance (ai_accept) (313 lines of game script)
base = -50
opinion_modifier = {
trigger = {
exists = liege
is_courtier_of = liege
}
opinion_target = liege
multiplier = -0.5
step = 5
max = 25
}
opinion_modifier = {
opinion_target = scope:actor
multiplier = 0.5
step = 5
max = 25
}
modifier = {
scope:recipient = {
has_variable = non_recruitable_var
}
scope:recipient.var:non_recruitable_var = scope:actor
add = -200
desc = AI_STOOGE
}
modifier = {
is_knight = yes
add = -20
desc = AI_MY_LIEGES_KNIGHT
}
modifier = {
is_commanding_army = yes
add = -30
desc = AI_MY_LIEGES_COMMANDER
}
modifier = {
is_councillor = yes
add = -40
desc = AI_ON_THE_COUNCIL
}
modifier = {
trigger = {
scope:recipient = {
has_court_position = court_physician_court_position
}
}
add = -20
desc = AI_COURT_PHYSICIAN
}
modifier = {
has_relation_lover = scope:actor
add = 100
desc = AI_YOUR_LOVER
}
modifier = {
has_relation_friend = scope:actor
add = 75
desc = AI_YOUR_FRIEND
}
modifier = {
is_child_of = scope:actor
add = 160
desc = AI_YOUR_CHILD
}
modifier = {
this.dynasty.dynast = scope:actor
add = 30
desc = AI_YOU_ARE_THE_DYNAST
}
modifier = {
this.house.house_head = scope:actor
add = 60
desc = AI_YOU_ARE_THE_HOUSE_HEAD
}
modifier = {
this.top_liege = scope:actor
add = 60
desc = AI_YOU_ARE_THE_SOVEREIGN
}
modifier = {
NOT = {
is_child_of = scope:actor
}
NOT = {
is_close_family_of = scope:actor
}
is_extended_family_of = scope:actor
add = 30
desc = AI_YOUR_RELATIVE
}
modifier = {
NOT = {
is_child_of = scope:actor
}
is_close_family_of = scope:actor
add = 75
desc = AI_YOUR_RELATIVE
}
modifier = {
is_spouse_of = scope:actor
add = 160
desc = AI_YOUR_SPOUSE
}
modifier = {
exists = liege
has_relation_lover = liege
add = -100
desc = AI_THEIR_LOVER
}
modifier = {
exists = liege
has_relation_friend = liege
add = -75
desc = AI_THEIR_FRIEND
}
modifier = {
exists = liege
is_child_of = liege
add = -160
desc = AI_THEIR_CHILD
}
modifier = {
exists = liege
NOT = {
is_child_of = liege
}
is_close_family_of = liege
add = -75
desc = AI_THEIR_RELATIVE
}
modifier = {
exists = location
any_consort_not_in_traveling_family_trigger = yes
desc = AI_LEAVING_MY_SPOUSE
add = -100
}
modifier = {
exists = location
any_child_not_in_traveling_family_trigger = yes
desc = AI_LEAVING_MY_CHILD
add = -100
}
modifier = {
add = -50
desc = AI_MARRIED_MATRILINIALLY
is_married = yes
is_male = yes
any_spouse = {
matrilinear_marriage = yes
host = scope:recipient.host
}
}
modifier = {
add = -50
desc = AI_MARRIED_PATRILINIALLY
is_married = yes
is_female = yes
any_spouse = {
patrilinear_marriage = yes
host = scope:recipient.host
}
}
modifier = {
add = -50
desc = AI_INSPIRED
inspiration ?= {
NOT = {
exists = inspiration_sponsor
}
}
}
modifier = {
add = -500
desc = AI_SPONSORED_INSPIRATION
inspiration ?= {
exists = inspiration_sponsor
}
}
modifier = {
add = -500
desc = AI_WANDERLUST
is_child_of = scope:actor
has_character_modifier = lust_for_adventure
}
modifier = {
add = -180
desc = ELUDING_CASTRATOR
is_adult = no
any_memory = {
memory_type = family_castration_fled_memory
memory_participant:castrator ?= {
this = scope:actor
}
}
}
modifier = {
liege ?= {
is_landed = yes
}
scope:actor = {
is_landed = no
}
add = -50
desc = AI_MY_LIEGE_IS_LANDED
}
modifier = {
add = {
value = 10
add = scope:actor.diplomacy
if = {
limit = {
faith = scope:actor.faith
}
add = 10
}
else_if = {
limit = {
faith = {
religion = scope:actor.faith.religion
faith_hostility_level = {
target = scope:actor.faith
value < 2
}
}
}
add = 5
}
if = {
limit = {
culture = scope:actor.culture
}
add = 10
}
else_if = {
limit = {
culture = {
has_same_culture_heritage = scope:actor.culture
}
}
add = 5
}
if = {
limit = {
OR = {
has_trait = content
has_trait = lazy
has_trait = trusting
}
}
add = 10
}
}
desc = AI_CAN_BE_PERSUADED_TO_STAY
is_pool_guest = no
location.province_owner ?= {
OR = {
any_liege_or_above = {
this = scope:actor
}
this = scope:actor
}
}
NOR = {
has_relation_rival = scope:actor
exists = liege
is_child_of = scope:actor
has_character_modifier = lust_for_adventure
}
}
modifier = {
add = {
value = 20
if = {
limit = {
has_trait = greedy
}
multiply = 1.5
}
else_if = {
limit = {
has_trait = generous
}
multiply = 0.5
}
}
scope:cover_travel_expenses = yes
desc = AI_TRAVEL_EXPENSES
}
modifier = {
add = {
value = 10
if = {
limit = {
scope:actor = {
has_royal_court = yes
has_dlc_feature = royal_court
amenity_level = {
target = court_lodging_standards
value >= high_amenity_level
}
}
}
add = 10
}
if = {
limit = {
scope:actor = {
amenity_level = {
target = court_lodging_standards
value >= very_high_amenity_level
}
# … (cut here; the rest is in the file)As written in game/common/character_interactions/00_courtier_and_guest_interactions.txt.
What happens
If they accept
Options when sending
- Pay for their travel expenses
- Offer Influence
- Use a Hook
• 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) (12 lines of game script)
is_shown = scope:recipient = {
NOR = {
is_courtier_of = scope:actor
is_foreign_court_guest = yes
host ?= scope:actor
has_trait = order_member
is_ruler = yes
location ?= {
is_sea_province = yes
}
}
}As written in game/common/character_interactions/00_courtier_and_guest_interactions.txt.
Can be sent when (is_valid…) (55 lines of game script)
custom_tooltip = {
scope:recipient = {
OR = {
NOT = {
exists = liege
}
NOT = {
has_variable = invite_to_court_cooldown
}
}
}
text = INVITE_TO_COURT_COOLDOWN
}
can_recruit_character_to_court_trigger = {
RECRUITER = scope:actor
RECRUITEE = scope:recipient
}
custom_tooltip = {
scope:recipient = {
NAND = {
has_variable = nomad_defector_var
var:nomad_defector_var = {
this = scope:actor
}
}
}
text = nomad_defected_invite_desc
}
custom_tooltip = {
scope:recipient = {
NAND = {
OR = {
has_trait = devoted
has_trait = order_member
}
liege ?= {
government_has_flag = government_is_holy_order
}
has_variable = recent_vows
}
}
text = recently_joined_holy_order_desc
}
custom_tooltip = {
scope:recipient = {
NAND = {
has_trait = devoted
liege ?= {
government_has_flag = government_is_holy_order
}
is_adult = no
}
}
text = child_in_holy_order_desc
}As written in game/common/character_interactions/00_courtier_and_guest_interactions.txt.
Effects (on_send, on_accept, on_decline) (65 lines of game script)
on_accept = hidden_effect = {
scope:recipient = {
set_variable = {
name = invite_to_court_cooldown
years = 5
}
}
if = {
limit = {
exists = scope:recipient.liege
}
scope:recipient.liege = {
send_interface_message = {
type = event_generic_neutral
title = msg_courtier_left_court_interaction_title
right_icon = scope:recipient
show_as_tooltip = {
remove_courtier_or_guest = scope:recipient
}
}
}
}
}
scope:actor = {
send_interface_message = {
type = event_generic_neutral
title = invite_to_court_interaction_notification
right_icon = scope:recipient
scope:recipient = {
every_traveling_family_member = {
scope:actor = {
add_courtier = prev
}
hidden_effect = {
return_to_court = yes
}
}
}
if = {
limit = {
always = scope:hook
}
scope:actor = {
use_hook = scope:recipient
}
}
}
}
if = {
limit = {
always = scope:cover_travel_expenses
}
scope:actor = {
pay_short_term_gold = {
gold = {
value = bribe_value
multiply = 0.5
}
target = scope:recipient
}
stress_and_fulfillment_impact = {
greedy = minor_stress_impact_gain
}
}
}As written in game/common/character_interactions/00_courtier_and_guest_interactions.txt.
- Category
- Vassal actions
- Cost: Influence
- varies
- In the menu
- under More…
- ID
invite_to_court_interaction
Source: game/common/character_interactions/00_courtier_and_guest_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.