Interaction · Friendly actions
Request Mentorship
Ask the recipient to become a mentor and teach a topic they are skilled in
What you need
You
To send it
- Is not at war with the target
- Is not incapable
- Must pick a topic to study
If
a check the game hides
Then
- The other character: Is available (not imprisoned, not incapable)
Also needed: not imprisoned
To see it in the menu
- Your Government is Celestial
- If played by the AI: Is an Adult
The character you target
To send it
- Is not incapable
Also needed: not imprisoned
To see it in the menu
top_liege ?= scope:actor.top_liegeOne of these
- Is a ruler
or
Is a courtier of you
Request Mentorship is a friendly character interaction in Crusader Kings III. You need: Is not at war with the target, Is not incapable, Is not imprisoned and 1 more. The character you target needs: Is not incapable and Is not imprisoned. The AI weighs it. Reasons the AI weighs include Generous (+10), Gregarious (+5), Trusting (+5) and 9 more. It needs All Under Heaven. Patch 1.20.1.2, from game/common/character_interactions/10_tgp_interactions.txt.
Quick answers (2)
- What are the requirements for Request Mentorship in CK3?
- You: Is not at war with the target, Is not incapable, Is not imprisoned and Must pick a topic to study. The character you target: Is not incapable and Is not imprisoned. (patch 1.20.1.2)
- How do I get the AI to accept Request Mentorship?
- The AI weighs it. Its reasons: Generous +10, Gregarious +5, Trusting +5, Lazy -10, Arbitrary -10, Paranoid -20, Erudite +10, You and the recipient are members of the same Movement, They is your Friend +25, They is your Rival -50, They is your Elder +30, They is your Elder +15, They is your Disciple +10 and Your Title Tier is lower than the recipient's.
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 | -10 |
| Their opinion of you × 0.5 | varies |
| Their opinion of the other character × 0.5 | varies |
| Generous | +10 |
Gregariouswhen
| +5 |
| Trusting | +5 |
| Lazy | -10 |
| Arbitrary | -10 |
| Paranoid | -20 |
| Erudite | +10 |
You and the recipient are members of the same Movementwhen
| varies |
They is your Friendwhen
| +25 |
They is your Rivalwhen
| -50 |
They is your Elderwhen
| +30 |
They is your Elderwhen
| +15 |
They is your Disciplewhen
| +10 |
Your Title Tier is lower than the recipient'swhen
| varies |
Acceptance (ai_accept) (102 lines of game script)
base = -10
opinion_modifier = {
opinion_target = scope:actor
who = scope:recipient
multiplier = 0.5
}
opinion_modifier = {
trigger = {
scope:actor != scope:secondary_recipient
}
opinion_target = scope:secondary_recipient
who = scope:recipient
multiplier = 0.5
}
modifier = {
has_trait = generous
add = 10
desc = INTERACTION_GENEROUS
}
modifier = {
has_trait = gregarious
add = 5
desc = INTERACTION_GREGARIOUS
}
modifier = {
has_trait = trusting
add = 5
desc = INTERACTION_TRUSTING
}
modifier = {
has_trait = lazy
add = -10
desc = INTERACTION_LAZY
}
modifier = {
has_trait = arbitrary
add = -10
desc = INTERACTION_ARBITRARY
}
modifier = {
has_trait = paranoid
add = -20
desc = INTERACTION_PARANOID
}
modifier = {
has_trait = erudite
add = 10
desc = TAKE_THE_VOWS_ERUDITE
}
modifier = {
is_in_same_movement_as = {
TARGET = scope:actor
}
add = {
value = 20
if = {
limit = {
is_in_pro_hegemon_or_hegemon_movement = yes
}
multiply = 1.5
}
}
desc = actor_and_recipient_in_same_movement
}
modifier = {
has_relation_friend = scope:actor
add = 25
desc = AI_YOUR_FRIEND
}
modifier = {
has_relation_rival = scope:actor
add = -50
desc = AI_YOUR_RIVAL
}
modifier = {
has_relation_disciple = scope:actor
scope:secondary_recipient = scope:actor
add = 30
desc = AI_YOUR_ELDER
}
modifier = {
has_relation_disciple = scope:actor
scope:secondary_recipient != scope:actor
add = 15
desc = AI_YOUR_ELDER
}
modifier = {
has_relation_elder = scope:actor
add = 10
desc = AI_YOUR_DISCIPLE
}
modifier = {
primary_title.tier > scope:actor.primary_title.tier
add = {
value = -15
multiply = {
add = primary_title.tier
subtract = scope:actor.primary_title.tier
}
}
desc = actor_is_of_lower_tier_desc
}As written in game/common/character_interactions/10_tgp_interactions.txt.
What happens
If they accept
- The other character:
- Start the Mentorship scheme against the target
If
- The option “merit” is chosen
Otherwise
- Their top liege:
One of these
- Has the Female Only Law
or
Has the Female Preference Law
- Their top liege:
Then
- … is ineligible for Appointment Succession due to Gender Laws
If
None of these
- The new disciple: Has the new elder as elder
- The new elder:
merit_level > scope:new_disciple.merit_levelnum_of_relation_disciple < disciples_limit_value- Does not have the new disciple as disciple
- The new disciple: Is an Adult
Then
- The new disciple:
If
- The old elder is not the new disciple
Then
remove_relation_elder = scope:old_elder- The old elder:
- Opinion: Refused to Be My Disciple (-50)
- Event tgp_interaction_event.0030
set_relation_elder = scope:new_elder
- The new elder:
- The other character:
If
- The option “confucian education” is chosen
Then
- If has the Trait: Confucian Education: Will gain Trait Experience in the Confucian Education Trait
- Otherwise: Gains the Trait Confucian Education
If
- The option “logistician” is chosen
Then
- If has the Trait: Logistician: Will gain Trait Experience in the Logistician Trait
- Otherwise: Gains the Trait Logistician
If
- The option “military engineer” is chosen
Then
- If has the Trait: Military Engineer: Will gain Trait Experience in the Military Engineer Trait
- Otherwise: Gains the Trait Military Engineer
If
- The option “aggressive attacker” is chosen
Then
- If has the Trait: Aggressive Attacker: Will gain Trait Experience in the Aggressive Attacker Trait
- Otherwise: Gains the Trait Aggressive Attacker
If
- The option “flexible leader” is chosen
Then
- If has the Trait: Flexible Leader: Will gain Trait Experience in the Flexible Leader Trait
- Otherwise: Gains the Trait Flexible Leader
If
- The option “desert warrior” is chosen
Then
- If has the Trait: Desert Warrior: Will gain Trait Experience in the Desert Warrior Trait
- Otherwise: Gains the Trait Desert Warrior
If
- The option “jungle stalker” is chosen
Then
- If has the Trait: Jungle Stalker: Will gain Trait Experience in the Jungle Stalker Trait
- Otherwise: Gains the Trait Jungle Stalker
If
- The option “reckless” is chosen
Then
- … (more in the script below)
- … (more in the script below)
Options when sending
- Improve Merit
- Study Confucianism
- Study Battle Tactics
- Study Logistics
- Study Siege Engineering
- Study Offensive Tactics
- Study Defensive Tactics
- Study Embarkment Formations
- Study Adaptive Tactics
- Study Desert Tactics
- Study Jungle Tactics
- Study Hit-and-Run Tactics
- Study Experimental Tactics
- Study Faith in Combat Tactics
- Study Open Terrain Tactics
- Study Rough Terrain Tactics
- Study Woodland Tactics
- Study Careful Tactics
- Study Army Organization
- Study Winter Tactics
Events it fires: tgp_interaction_event.0030
• 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) (15 lines of game script)
is_available = government_has_flag = government_is_celestial
trigger_if = {
limit = {
is_ai = yes
}
is_adult = yes
}
is_shown = has_tgp_dlc_trigger = yes
scope:recipient = {
top_liege ?= scope:actor.top_liege
OR = {
is_ruler = yes
is_courtier_of = scope:actor
}
}As written in game/common/character_interactions/10_tgp_interactions.txt.
Can be sent when (is_valid…) (43 lines of game script)
scope:actor = {
NOT = {
is_at_war_with = scope:recipient
}
is_incapable = no
is_imprisoned = no
}
scope:recipient = {
is_incapable = no
is_imprisoned = no
}
custom_tooltip = {
text = mentoring_no_option_selected
OR = {
scope:merit = yes
scope:confucian_education = yes
scope:logistician = yes
scope:military_engineer = yes
scope:aggressive_attacker = yes
scope:unyielding_defender = yes
scope:forder = yes
scope:flexible_leader = yes
scope:desert_warrior = yes
scope:jungle_stalker = yes
scope:reaver = yes
scope:reckless = yes
scope:holy_warrior = yes
scope:open_terrain_expert = yes
scope:rough_terrain_expert = yes
scope:forest_fighter = yes
scope:cautious_leader = yes
scope:organizer = yes
scope:winter_soldier = yes
}
}
trigger_if = {
limit = {
exists = scope:secondary_recipient
}
scope:secondary_recipient = {
is_physically_able = yes
}
}As written in game/common/character_interactions/10_tgp_interactions.txt.
Effects (on_send, on_accept, on_decline) (303 lines of game script)
on_accept = scope:actor = {
send_interface_toast = {
type = event_toast_effect_neutral
title = mentoring_interaction_notification
left_icon = scope:secondary_recipient
right_icon = scope:recipient
scope:secondary_recipient = {
start_scheme = {
type = mentoring
target_character = scope:recipient
}
if = {
limit = {
scope:merit ?= yes
trigger_if = {
limit = {
is_female = yes
}
top_liege ?= {
OR = {
has_realm_law = male_only_law
has_realm_law = male_preference_law
}
}
}
trigger_else = {
top_liege ?= {
OR = {
has_realm_law = female_only_law
has_realm_law = female_preference_law
}
}
}
}
custom_tooltip = mentoring_cannot_be_appointed_tt
}
}
set_elder_relation_effect = {
ELDER = scope:recipient
DISCIPLE = scope:secondary_recipient
MERIT = minor_merit_gain
}
}
}
scope:secondary_recipient = {
if = {
limit = {
scope:merit = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_merit
value = yes
}
}
custom_tooltip = mentoring_merit_desc
}
if = {
limit = {
scope:confucian_education = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_confucian_education
value = yes
}
}
if = {
limit = {
has_trait = confucian_education
}
custom_tooltip = mentoring_confucian_education_desc
}
else = {
show_as_tooltip = {
add_trait = confucian_education
}
}
}
if = {
limit = {
scope:logistician = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_logistician
value = yes
}
}
if = {
limit = {
has_trait = logistician
}
custom_tooltip = mentoring_logistician_desc
}
else = {
show_as_tooltip = {
add_trait = logistician
}
}
}
if = {
limit = {
scope:military_engineer = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_military_engineer
value = yes
}
}
if = {
limit = {
has_trait = military_engineer
}
custom_tooltip = mentoring_military_engineer_desc
}
else = {
show_as_tooltip = {
add_trait = military_engineer
}
}
}
if = {
limit = {
scope:aggressive_attacker = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_aggressive_attacker
value = yes
}
}
if = {
limit = {
has_trait = aggressive_attacker
}
custom_tooltip = mentoring_aggressive_attacker_engineer_desc
}
else = {
show_as_tooltip = {
add_trait = aggressive_attacker
}
}
}
if = {
limit = {
scope:unyielding_defender = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_unyielding_defender
value = yes
}
}
if = {
limit = {
has_trait = unyielding_defender
}
custom_tooltip = mentoring_unyielding_defender_desc
}
else = {
show_as_tooltip = {
add_trait = unyielding_defender
}
}
}
if = {
limit = {
scope:forder = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_forder
value = yes
}
}
if = {
limit = {
has_trait = forder
}
custom_tooltip = mentoring_forder_desc
}
else = {
show_as_tooltip = {
add_trait = forder
}
}
}
if = {
limit = {
scope:flexible_leader = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_flexible_leader
value = yes
}
}
if = {
limit = {
has_trait = flexible_leader
}
custom_tooltip = mentoring_flexible_leader_desc
}
else = {
show_as_tooltip = {
add_trait = flexible_leader
}
}
}
if = {
limit = {
scope:desert_warrior = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_desert_warrior
value = yes
}
}
if = {
limit = {
has_trait = desert_warrior
}
custom_tooltip = mentoring_desert_warrior_desc
}
else = {
show_as_tooltip = {
add_trait = desert_warrior
}
}
}
if = {
limit = {
scope:jungle_stalker = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_jungle_stalker
value = yes
}
}
if = {
limit = {
has_trait = jungle_stalker
}
custom_tooltip = mentoring_jungle_stalker_desc
}
else = {
show_as_tooltip = {
add_trait = jungle_stalker
}
}
}
if = {
limit = {
scope:reaver = yes
}
random_scheme = {
limit = {
scheme_type = mentoring
}
set_variable = {
name = mentoring_reaver
value = yes
}
}
if = {
limit = {
has_trait = reaver
}
# … (cut here; the rest is in the file)As written in game/common/character_interactions/10_tgp_interactions.txt.
- Category
- Friendly actions
- DLC
- All Under Heaven
- In the menu
- main list
- ID
request_mentoring_interaction
Source: game/common/character_interactions/10_tgp_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.