Interaction · Friendly actions
Romance (Scheme)
Attempt to romance the recipient, gaining Prestige, improving their Opinion of you, and possibly becoming Soulmates!
What you need
You
To send it
- Is not at war with the target
can_start_scheme = { type = courting target_character = scope:recipient }- You must not be bound by a clerical vow of chastity
To see it in the menu
- If played by the AI:
- Highest held Title is more than Barony Rank
If
None of these
- Your culture: The Culture has the Rulers are more likely to start the Romance Scheme Tradition
All of these
has_character_flag = agenda_towards_deescalation- Any character struggle:
involvement = involvedphase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_characteris_struggle_type = iberian_struggle
Then
- Ai honor at least 50
- Ai compassion at least 20
- Is an Adult
None of these
- Has the Trait: Chaste
All of these
- Is Lowborn
primary_title.tier <= tier_barony
- Has the Trait: Celibate
- Any scheme:
One of these
scheme_type = befriendor
scheme_type = swayor
scheme_type = seduceor
scheme_type = courtingor
scheme_type = elopeor
scheme_type = learn_languageor
scheme_type = teach_governoror
scheme_type = study_faith
- Is an Adult
If
has_sexuality = asexual
Then
If
- You: Is played by the AI
Then
- Never
Otherwise
- The character you target: Is your consort
If
- You: Is played by the AI
Then
- Else, if all of these hold:
- Else, if all of these hold:
- Conditions:
- Then:
If
is_male = yes- The character you target:
is_female = yes
Then
scope:recipient.age <= scope:recipient.marriage_female_fertility_cutoff_age_value
- Else, if all of these hold:
- Conditions:
is_male = yes- The character you target:
is_female = yes
- Child (at most 1):
- Then:
scope:recipient.age <= scope:puppet_or_actor.age_plus_5scope:recipient.age <= scope:recipient.marriage_female_fertility_cutoff_age_value
- Conditions:
- Otherwise:
scope:recipient.age <= scope:puppet_or_actor.age_plus_5scope:recipient.age >= scope:puppet_or_actor.age_minus_10
The character you target
- Is an Adult
is_attracted_to_gender_of = scope:puppet_or_actor
Romance (Scheme) is a friendly character interaction in Crusader Kings III. You need: Is not at war with the target and You must not be bound by a clerical vow of chastity. Accepted automatically. Patch 1.20.1.2, from game/common/character_interactions/00_scheme_interactions.txt.
Quick answers (2)
- What are the requirements for Romance (Scheme) in CK3?
- You: Is not at war with the target and You must not be bound by a clerical vow of chastity. (patch 1.20.1.2)
- Will the AI accept Romance (Scheme)?
- Yes: it is accepted automatically.
Will they accept?
The other character has no choice: the game accepts it automatically.
What happens
Effects
- Every relation:
- Only some of them (the filter is in the script below)
- Opinion: Betrayed Our Promise
- Start the Romance scheme against the target
- Every relation:
- Only some of them (the filter is in the script below)
- Opinion: Betrayed Our Promise
• 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) (148 lines of game script)
is_available = trigger_if = {
limit = {
is_ai = yes
}
highest_held_title_tier > tier_barony
trigger_if = {
limit = {
NOR = {
culture ?= {
has_cultural_parameter = ai_romance_scheme_increase
}
AND = {
has_character_flag = agenda_towards_deescalation
any_character_struggle = {
involvement = involved
phase_has_catalyst = catalyst_became_best_friend_soulmate_with_very_important_character
is_struggle_type = iberian_struggle
}
}
}
}
ai_honor >= high_positive_ai_value
ai_compassion >= low_positive_ai_value
}
is_adult = yes
NOR = {
has_trait = chaste
AND = {
is_lowborn = yes
primary_title.tier <= tier_barony
}
has_trait = celibate
scheme_generic_ai_blocker_trigger = yes
}
}
is_shown = scope:puppet_or_actor ?= {
this != scope:recipient
is_adult = yes
trigger_if = {
limit = {
has_sexuality = asexual
}
trigger_if = {
limit = {
scope:actor = {
is_ai = yes
}
}
always = no
}
trigger_else = {
scope:recipient = {
is_consort_of = scope:puppet_or_actor
}
}
}
trigger_if = {
limit = {
scope:actor = {
is_ai = yes
}
}
trigger_if = {
limit = {
is_deviant_trigger = yes
}
}
trigger_else_if = {
limit = {
scope:recipient = {
is_consort_of = scope:puppet_or_actor
}
}
}
trigger_else_if = {
limit = {
ai_rationality <= -50
is_close_family_of = scope:recipient
OR = {
has_trait = lustful
has_trait = rakish
is_incestuous_trigger = yes
has_opinion_modifier = {
modifier = childhood_crush
target = scope:recipient
}
}
}
scope:recipient.age <= scope:puppet_or_actor.age_plus_25
}
trigger_else_if = {
limit = {
OR = {
has_trait = lustful
has_focus = intrigue_temptation_focus
has_trait = rakish
}
}
OR = {
scope:recipient.age <= scope:puppet_or_actor.age_plus_10
AND = {
has_focus = intrigue_temptation_focus
OR = {
scope:recipient = {
is_vassal_of = scope:puppet_or_actor
}
liege ?= scope:recipient
scope:recipient = {
is_theocratic_lessee = yes
is_courtier_of = scope:puppet_or_actor
}
}
}
}
trigger_if = {
limit = {
is_male = yes
scope:recipient = {
is_female = yes
}
}
scope:recipient.age <= scope:recipient.marriage_female_fertility_cutoff_age_value
}
}
trigger_else_if = {
limit = {
is_male = yes
scope:recipient = {
is_female = yes
}
any_child = {
count <= 1
}
}
scope:recipient.age <= scope:puppet_or_actor.age_plus_5
scope:recipient.age <= scope:recipient.marriage_female_fertility_cutoff_age_value
}
trigger_else = {
scope:recipient.age <= scope:puppet_or_actor.age_plus_5
scope:recipient.age >= scope:puppet_or_actor.age_minus_10
}
}
trigger_else = { }
}
scope:recipient = {
is_adult = yes
is_attracted_to_gender_of = scope:puppet_or_actor
}As written in game/common/character_interactions/00_scheme_interactions.txt.
Can be sent when (is_valid…) (26 lines of game script)
scope:puppet_or_actor = {
NOT = {
is_at_war_with = scope:recipient
}
can_start_scheme = {
type = courting
target_character = scope:recipient
}
custom_tooltip = {
text = clerical_chastity_vow_blocks_scheme_tt
NOT = {
has_character_modifier = clerical_chastity_vow_modifier
}
}
}
trigger_if = {
limit = {
scope:puppet_or_actor = {
has_government = landless_adventurer_government
}
}
ep3_laamp_diplo_range_trigger = {
TARGET = scope:recipient
LAAMP = scope:puppet_or_actor
}
}As written in game/common/character_interactions/00_scheme_interactions.txt.
Effects (on_send, on_accept, on_decline) (73 lines of game script)
on_send = scope:puppet_or_actor = {
if = {
limit = {
OR = {
has_character_modifier = pam_granted_indulgences_modifier
has_character_modifier = pam_granted_indulgences_modifier_small
}
}
change_spiritual_fulfillment = medium_spiritual_fulfillment_loss
}
}
on_accept = scope:puppet_or_actor = {
every_relation = {
type = soulmate
limit = {
soulmate_relation_is_exclusive_trigger = yes
}
add_opinion = {
modifier = betrayed_our_promise
target = scope:puppet_or_actor
}
}
}
scope:puppet_or_actor = {
send_interface_toast = {
type = event_toast_effect_neutral
title = court_interaction_notification
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
begin_scheme_basic_effect = {
SCHEME_TYPE = courting
TARGET_TYPE = target_character
TARGET_SCOPE = scope:recipient
}
show_as_tooltip = {
every_relation = {
type = soulmate
limit = {
soulmate_relation_is_exclusive_trigger = yes
}
add_opinion = {
modifier = betrayed_our_promise
target = scope:puppet_or_actor
}
}
}
}
}
if = {
limit = {
scope:is_puppet_action ?= yes
scope:actor != scope:recipient
}
scope:actor = {
send_interface_toast = {
type = event_toast_effect_neutral
title = court_interaction_notification_puppeteer
left_icon = scope:puppet_or_actor
right_icon = scope:recipient
}
}
}
scope:recipient = {
if = {
limit = {
is_ai = no
}
add_character_flag = {
flag = courting_cooldown
years = 5
}
}
}As written in game/common/character_interactions/00_scheme_interactions.txt.
- Category
- Friendly actions
- Starts the scheme
- Romance
- In the menu
- under More…
- ID
court_interaction
Source: game/common/character_interactions/00_scheme_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.