Interaction · Diplomatic actions
Invite to Activity
Invite the recipient to the Activity that you are currently hosting.
What you need
You
- Your activity:
One of these
has_activity_type = activity_tournamentor
has_activity_type = activity_weddingor
has_activity_type = activity_feastor
has_activity_type = activity_huntor
has_activity_type = activity_chariot_race
is_current_phase_active = noactivity_host ?= scope:puppet_or_actor
The character you target
can_join_activity = scope:puppet_or_actor.involved_activity
Invite to Activity is a diplomatic character interaction in Crusader Kings III. The AI weighs it (the answer is partly random). Patch 1.20.1.2, from game/common/character_interactions/00_invite_to_activity.txt.
Will they accept?
The AI adds these up and accepts above zero; near zero the answer is partly random (ai_maybe). Reasons in italics are the script's, with no label in the game.
| Reason | Amount |
|---|---|
| Base | 0 |
Acceptance (ai_accept) (5 lines of game script)
base = 0
activity_modifier = {
object = scope:puppet_or_actor.involved_activity
target = scope:recipient
}As written in game/common/character_interactions/00_invite_to_activity.txt.
What happens
When you send it
- The character you target:
invite_to_activity = scope:puppet_or_actor.involved_activity
If they accept
- The character you target:
accept_activity_invite = scope:puppet_or_actor.involved_activity
If they refuse
- The character you target:
decline_activity_invite = scope:puppet_or_actor.involved_activity
• 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) (14 lines of game script)
is_shown = scope:puppet_or_actor.involved_activity ?= {
OR = {
has_activity_type = activity_tournament
has_activity_type = activity_wedding
has_activity_type = activity_feast
has_activity_type = activity_hunt
has_activity_type = activity_chariot_race
}
is_current_phase_active = no
activity_host ?= scope:puppet_or_actor
}
scope:recipient = {
can_join_activity = scope:puppet_or_actor.involved_activity
}As written in game/common/character_interactions/00_invite_to_activity.txt.
Effects (on_send, on_accept, on_decline) (57 lines of game script)
on_send = scope:recipient = {
invite_to_activity = scope:puppet_or_actor.involved_activity
}
on_accept = scope:puppet_or_actor = {
send_interface_message = {
type = event_activity_good_with_text
title = invite_to_activity_accepted
desc = invite_to_activity_accepted_desc
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
scope:recipient = {
accept_activity_invite = scope:puppet_or_actor.involved_activity
}
}
}
if = {
limit = {
scope:is_puppet_action ?= yes
scope:actor != scope:recipient
}
scope:actor = {
send_interface_message = {
type = event_activity_good_with_text
title = invite_to_activity_accepted_puppeteer
desc = invite_to_activity_accepted_desc_puppeteer
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
}
}
}
on_decline = scope:puppet_or_actor = {
send_interface_message = {
type = event_activity_bad_with_text
title = invite_to_activity_refused
desc = invite_to_activity_refused_desc
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
scope:recipient = {
decline_activity_invite = scope:puppet_or_actor.involved_activity
}
}
}
if = {
limit = {
scope:is_puppet_action ?= yes
scope:actor != scope:recipient
}
scope:actor = {
send_interface_message = {
type = event_activity_bad_with_text
title = invite_to_activity_refused_puppeteer
desc = invite_to_activity_refused_desc_puppeteer
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
}
}
}As written in game/common/character_interactions/00_invite_to_activity.txt.
- Category
- Diplomatic actions
- In the menu
- main list
- ID
invite_to_activity_interaction
Source: game/common/character_interactions/00_invite_to_activity.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.