Scripted effect · All Under Heaven files
imperial_examination_disburse_activity_entrant_rewards
imperial_examination_disburse_activity_entrant_rewards = yesgame/common/scripted_effects/tgp_imperial_examination_scripted_effects.txt, line 265 (250 lines). No parameters.
imperial_examination_disburse_activity_entrant_rewards is a scripted effect in Crusader Kings III, in the All Under Heaven files, written at line 265 of its file. It takes no parameters: imperial_examination_disburse_activity_entrant_rewards = yes. The game's script calls it in 2 places, among them Capital Examination (activity) and Releasing the Roll (event imperial_examination.7000). Patch 1.20.1.2, from game/common/scripted_effects/tgp_imperial_examination_scripted_effects.txt.
What it does
- If has “been caught cheating longterm” (a variable the game's script sets):
change_merit = { value = imperial_examination_merit_base_reward_value multiply = 0.1 }
- Else, if all of these hold:
- Conditions:
One of these
is_in_guest_subset = { name = entrants }or
is_in_guest_subset = { name = palace_entrants }
- Then:
- If played by a person › Their activity › Activity log entry › scope:entrant:
- If does not have the Modifier: Passed Provincial Examination:
- Gains the modifier “Skipped Examination”
- Character max merit level +2
- Gains the modifier “Skipped Examination”
- Influence changes
- Merit changes
- If does not have the Modifier: Passed Provincial Examination:
- Otherwise:
- If does not have the Modifier: Passed Provincial Examination:
- Gains the modifier “Skipped Examination”
- Character max merit level +2
- If not: Is Lowborn: Merit changes
- Gains the modifier “Skipped Examination”
If
One of these
- Not: Is Lowborn
or
has_perfect_score_trigger = { SCORE_VAR = imperial_examination_score }
Then
- Influence changes
- Merit changes
- If does not have the Modifier: Passed Provincial Examination:
If
is_in_guest_subset = { name = palace_entrants }
Then
If
a check the game hides
Then
- Gains the modifier “Passed Metropolitan Examination”
- Character max merit level +2
- Gains the modifier “Passed Metropolitan Examination”
- Gains the modifier “Passed Palace Examination”
- Character max merit level +3
create_character_memory = { type = passed_metropolitan_exam_memory }create_character_memory = { type = passed_palace_exam_memory }
Else if
is_in_guest_subset = { name = entrants }
Then
- Gains the modifier “Passed Metropolitan Examination”
- Character max merit level +2
If
- Is played by the AI
- Not: Is Lowborn
None of these
- Any close or extended family member: Is played by a person
Then
- 20% chance of:
- Gains the modifier “Passed Palace Examination”
- Character max merit level +3
- Merit +12,000
- Gains the modifier “Passed Palace Examination”
create_character_memory = { type = passed_metropolitan_exam_memory }
If
has_none_of_variables = { name = been_caught_cheating name = been_caught_cheating_longterm }- Government allows: merit
Then
add_secret = { target = scope:host type = secret_exam_cheater }
- If played by a person › Their activity › Activity log entry › scope:entrant:
- Conditions:
- Otherwise:
- If played by a person › Their activity › Activity log entry:
scope:entrant:- Influence +10
- Merit changes
failee_chance_to_gain_elder_effect = yes
- Otherwise:
- Influence +10
- Merit changes
- Their activity:
create_character_memory = { type = failed_metropolitan_exam_memory }
- If played by a person › Their activity › Activity log entry:
• the game's own tooltip text · ◦ our reading of the script line · code the script where neither exists
“They” is whatever it runs on (the scope it is called in). The scripted triggers and effects it calls link to their own pages; $PARAMETERS$ stay as written: each call fills them in.
The script as written (120 lines of game script)
imperial_examination_disburse_activity_entrant_rewards = {
save_temporary_scope_as = entrant
#This variable is set to track the loc we show players when notifying them of their family's results.
#Cheaters
if = {
limit = { has_variable = been_caught_cheating_longterm }
#No influence for cheaters
change_merit = {
value = imperial_examination_merit_base_reward_value
multiply = 0.1
}
}
#Entrants
else_if = {
limit = {
OR = {
is_in_guest_subset = { name = entrants }
is_in_guest_subset = { name = palace_entrants }
}
}
#Influence based on your score
if = {
limit = { is_ai = no }
#Record it
involved_activity = {
add_activity_log_entry = {
key = imperial_examination_entrant_rewards
score = 80
tags = { completed }
show_in_conclusion = yes
character = scope:entrant
location = scope:entrant.location
scope:entrant = {
if = {
limit = {
NOT = { has_character_modifier = tgp_passed_provincial_exam_modifier }
}
add_character_flag = passed_provincial_exam
add_character_modifier = {
modifier = tgp_bypassed_provincial_exam_modifier
}
}
change_influence = imperial_examination_entrant_influence_reward_value
#Merit based on your score
change_merit = imperial_examination_entrant_merit_reward_value
# Gain Prestige if you have the relevant flag
if = {
limit = { has_character_flag = examination_prestige_reward }
remove_character_flag = examination_prestige_reward
add_prestige = major_prestige_gain
}
}
}
}
}
else = {
if = {
limit = {
NOT = { has_character_modifier = tgp_passed_provincial_exam_modifier }
}
add_character_flag = passed_provincial_exam
add_character_modifier = {
modifier = tgp_bypassed_provincial_exam_modifier
}
if = {
limit = { is_lowborn = no }
change_merit = local_examination_merit_base_reward_value
}
}
if = {
limit = {
OR = {
is_lowborn = no
has_perfect_score_trigger = { SCORE_VAR = imperial_examination_score }
}
}
change_influence = imperial_examination_entrant_influence_reward_value
#Merit based on your score
change_merit = imperial_examination_entrant_merit_reward_value
# Gain Prestige if you have the relevant flag
if = {
limit = { has_character_flag = examination_prestige_reward }
remove_character_flag = examination_prestige_reward
add_prestige = major_prestige_gain
}
}
}
if = {
limit = {
is_in_guest_subset = { name = palace_entrants }
}
if = {
limit = {
NOT = { has_character_flag = passed_metropolitan_exam }
}
add_character_flag = passed_metropolitan_exam
add_character_modifier = {
modifier = tgp_passed_metropolitan_exam_modifier
}
}
add_character_flag = passed_palace_exam
add_character_modifier = {
modifier = tgp_passed_palace_exam_modifier
}
create_character_memory = {
type = passed_metropolitan_exam_memory
}
create_character_memory = {
type = passed_palace_exam_memory
}
# Notify close family members
every_close_family_member = {
# House head is notified separately
limit = { is_house_head = no }
send_interface_message = {
type = event_msg_merit_effect_good
title = palace_exam_close_family_passed
right_icon = rootAs written in game/common/scripted_effects/tgp_imperial_examination_scripted_effects.txt.
The first 120 of its 250 lines; the rest is in game/common/scripted_effects/tgp_imperial_examination_scripted_effects.txt from line 265.
Where it is used
Every place in common/, events/ and history/ that calls imperial_examination_disburse_activity_entrant_rewards.
Activities (1)
Events (1)
- Releasing the Roll
imperial_examination.7000
Source: game/common/scripted_effects/tgp_imperial_examination_scripted_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.