Interaction · Uncategorized actions
Invite to Scheme
What you need
The files set no condition the game shows: it is in the menu for anyone you can interact with.
Invite to Scheme is an uncategorized character interaction in Crusader Kings III. Accepted automatically in some cases. Patch 1.20.1.2, from game/common/character_interactions/00_invite_agent_to_scheme.txt.
Will they accept?
Accepted automatically when:
If
scope:recipient.var:devotee_agent_var ?= scope:actor
Then
- … is your Devotee
Else if
- The scheme:
is_scheme_category = contract
Then
- The character you target:
- Is a courtier of you
- Does not have you as rival
- … is not your Stooge
Otherwise
- Never
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 | 0 |
Acceptance (ai_accept) (5 lines of game script)
base = 0
scheme_modifier = {
object = scope:scheme
target = scope:recipient
}As written in game/common/character_interactions/00_invite_agent_to_scheme.txt.
What happens
If they accept
- The character you target:
If
One of these
- The option “mandala trickster” is chosen
or
The option “gift” is chosenor
The option “gift significant” is chosenor
The option “treasury” is chosenor
The option “treasury significant” is chosenor
The option “offer hook” is chosenor
The option “offer hook strong” is chosenor
You use a Hookor
The option “opportunities t1” is chosenor
The option “opportunities t2” is chosenor
The option “prestige” is chosenor
The option “influence” is chosenor
The option “council rights” is chosenor
The option “de jure title” is chosenor
The option “claimed title” is chosenor
The option “piety” is chosenor
The option “herd” is chosenor
Devotee agent var is scope:actor
Then
force_add_to_agent_slot = { agent_slot = scope:agent_slot years = 5 }
Otherwise
add_to_agent_slot = scope:agent_slot
If
NOT = { scope:mandala_trickster = yes }NOT = { scope:gift = yes }NOT = { scope:gift_significant = yes }NOT = { scope:treasury = yes }NOT = { scope:treasury_significant = yes }NOT = { scope:offer_hook = yes }NOT = { scope:offer_hook_strong = yes }NOT = { scope:hook = yes }NOT = { scope:opportunities_t1 = yes }NOT = { scope:opportunities_t2 = yes }NOT = { scope:prestige = yes }NOT = { scope:influence = yes }NOT = { scope:council_rights = yes }NOT = { scope:de_jure_title = yes }NOT = { scope:claimed_title = yes }NOT = { scope:piety = yes }NOT = { scope:herd = yes }
Then
- You offer no special incentives to …
If
- The option “mandala trickster” is chosen
Then
add_piety = { value = trickster_mandala_force_agent_bribe_value multiply = -1 }
If
- The option “gift” is chosen
Then
- Pay 50 gold to the target
- Stress and fulfillment impact: by trait: Greedy +20
If
- The option “gift significant” is chosen
Then
- Pay 50 gold to the target
- Stress and fulfillment impact: by trait: Greedy +40
If
- The option “treasury” is chosen
Then
pay_treasury_to_gold = { value = bribe_value target = scope:recipient }
If
- The option “treasury significant” is chosen
Then
pay_treasury_to_gold = { value = greater_bribe_value target = scope:recipient }
If
- The option “offer hook” is chosen
Then
- Stress and fulfillment impact: +20, and by trait: Paranoid +80
- The character you target: Gain a Favor on you
If
- The option “prestige” is chosen
Then
add_prestige = { value = prestige_bribe_value multiply = -1 }- The character you target: Gain … Prestige
If
- The option “influence” is chosen
Then
change_influence = { value = influence_bribe_value multiply = -1 }- The character you target: Influence changes
If
- The option “council rights” is chosen
Then
- The character you target:
vassal_contract_set_obligation_level = { type = council_rights level = 1 }set_subject_contract_modification_blocked = yes
If
- The option “claimed title” is chosen
Then
- One random held title:
- Where: … (more in the script below)
- … (more in the script below)
- … (more in the script below)
Options when sending
- Leverage your Scheme Advantages (x3)
- Leverage your Scheme Advantages (x5)
- Leverage your Aspect of TrickerySpend 500–1500 Piety to convince the recipient
- BribePay … to the recipient
- Hefty BribePay … to the recipient
- BribeUse … to pay the recipient …
- Hefty BribeUse … to pay the recipient …
- Offer a Hook on yourself
- Offer a Strong Hook on yourself
- Use your Hook on them
- Offer your Prestigious good wordTransfer … to the recipient
- Offer your Influential connectionsTransfer … to the recipient
- Offer a guaranteed seat on your Council
- Grant them a County you hold that's De Jure theirs
- Grant them a County you hold that they Claim
- Offer a part of your HerdTransfer … to the recipient
- Leverage your Pious reputationSpend … Piety to convince the recipient
• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists
Effects (on_send, on_accept, on_decline) (265 lines of game script)
on_accept = scope:recipient = {
if = {
limit = {
OR = {
always = scope:mandala_trickster
always = scope:gift
always = scope:gift_significant
always = scope:treasury
always = scope:treasury_significant
always = scope:offer_hook
always = scope:offer_hook_strong
always = scope:hook
always = scope:opportunities_t1
always = scope:opportunities_t2
always = scope:prestige
always = scope:influence
always = scope:council_rights
always = scope:de_jure_title
always = scope:claimed_title
always = scope:piety
always = scope:herd
var:devotee_agent_var ?= scope:actor
}
}
force_add_to_agent_slot = {
agent_slot = scope:agent_slot
years = 5
}
}
else = {
add_to_agent_slot = scope:agent_slot
}
}
scope:actor = {
if = {
limit = {
NOR = {
always = scope:mandala_trickster
always = scope:gift
always = scope:gift_significant
always = scope:treasury
always = scope:treasury_significant
always = scope:offer_hook
always = scope:offer_hook_strong
always = scope:hook
always = scope:opportunities_t1
always = scope:opportunities_t2
always = scope:prestige
always = scope:influence
always = scope:council_rights
always = scope:de_jure_title
always = scope:claimed_title
always = scope:piety
always = scope:herd
}
}
custom_tooltip = offer_bribes.tt.window_jump_fix
}
if = {
limit = {
always = scope:mandala_trickster
}
add_piety = {
value = trickster_mandala_force_agent_bribe_value
multiply = -1
}
}
if = {
limit = {
always = scope:gift
}
pay_short_term_gold = {
gold = bribe_value
target = scope:recipient
}
stress_and_fulfillment_impact = {
greedy = minor_stress_impact_gain
}
}
if = {
limit = {
always = scope:gift_significant
}
pay_short_term_gold = {
gold = greater_bribe_value
target = scope:recipient
}
stress_and_fulfillment_impact = {
greedy = medium_stress_impact_gain
}
}
if = {
limit = {
always = scope:treasury
}
pay_treasury_to_gold = {
value = bribe_value
target = scope:recipient
}
}
if = {
limit = {
always = scope:treasury_significant
}
pay_treasury_to_gold = {
value = greater_bribe_value
target = scope:recipient
}
}
if = {
limit = {
always = scope:offer_hook
}
stress_and_fulfillment_impact = {
base = minor_stress_impact_gain
paranoid = major_stress_impact_gain
}
scope:recipient = {
add_hook = {
type = favor_hook
target = scope:actor
}
}
}
if = {
limit = {
always = scope:offer_hook_strong
}
stress_and_fulfillment_impact = {
base = major_stress_impact_gain
}
scope:recipient = {
add_hook = {
type = strong_favor_hook
target = scope:actor
}
}
}
if = {
limit = {
always = scope:hook
}
use_hook = scope:recipient
}
if = {
limit = {
always = scope:opportunities_t1
}
custom_tooltip = {
text = spend_agent_charges.tt.t1
scope:scheme = {
change_opportunities = {
value = invite_agent_opportunities_t1_value
multiply = -1
}
}
}
}
if = {
limit = {
always = scope:opportunities_t2
}
custom_tooltip = {
text = spend_agent_charges.tt.t2
scope:scheme = {
change_opportunities = {
value = invite_agent_opportunities_t2_value
multiply = -1
}
}
}
}
if = {
limit = {
always = scope:prestige
}
add_prestige = {
value = prestige_bribe_value
multiply = -1
}
scope:recipient = {
add_prestige = prestige_bribe_value
}
}
if = {
limit = {
always = scope:influence
}
change_influence = {
value = influence_bribe_value
multiply = -1
}
scope:recipient = {
change_influence = influence_bribe_value
}
}
if = {
limit = {
always = scope:council_rights
}
scope:recipient = {
vassal_contract_set_obligation_level = {
type = council_rights
level = 1
}
set_subject_contract_modification_blocked = yes
}
}
create_title_and_vassal_change = {
type = granted
save_scope_as = change
}
if = {
limit = {
always = scope:de_jure_title
}
random_held_title = {
limit = {
actor_has_valid_de_jure_enticement_county_trigger = yes
any_this_title_or_de_jure_above = {
holder ?= {
this = scope:recipient
}
}
}
change_title_holder = {
holder = scope:recipient
change = scope:change
}
}
}
if = {
limit = {
always = scope:claimed_title
}
random_held_title = {
limit = {
actor_has_valid_claimed_enticement_county_trigger = yes
scope:recipient = {
has_claim_on = prev
}
}
change_title_holder = {
holder = scope:recipient
change = scope:change
}
}
}
resolve_title_and_vassal_change = scope:change
if = {
limit = {
always = scope:piety
}
scope:actor = {
add_piety = {
value = piety_bribe_value
multiply = -1
}
}
scope:recipient = {
add_piety = piety_bribe_value
}
}
# … (cut here; the rest is in the file)As written in game/common/character_interactions/00_invite_agent_to_scheme.txt.
- Category
- Uncategorized actions
- In the menu
- no (opened from elsewhere)
- ID
invite_agent_to_scheme_interaction
Source: game/common/character_interactions/00_invite_agent_to_scheme.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.