Scripted effect · By God Alone files
ecumenical_council_apply_debate_outcome_effect
ecumenical_council_apply_debate_outcome_effect = yesgame/common/scripted_effects/pam_ecumenical_council_effects.txt, line 508 (276 lines). No parameters.
ecumenical_council_apply_debate_outcome_effect is a scripted effect in Crusader Kings III, in the By God Alone files, written at line 508 of its file. It takes no parameters: ecumenical_council_apply_debate_outcome_effect = yes. The game's script calls it in 2 places, among them The Council Votes (event ecumenical_council_events.0080) and ecumenical_council_set_proposal_effect (scripted effect). Its body carries 2 texts of the game's own for the player. Patch 1.20.1.2, from game/common/scripted_effects/pam_ecumenical_council_effects.txt.
The comment above it in the file
Applies the outcome of a passed debate vote to the host's faith. scope:activity.var:current_topic holds the tenet/doctrine being debated. scope:activity.var:current_debate_proposal holds the proposed change.
What it does
If
pam_great_schism_progress_can_change_trigger = yesscope:host.faith = faith:christian_faith
Then
If
One of these
scope:activity.var:current_debate_proposal ?= flag:permitor
scope:activity.var:current_debate_proposal ?= flag:prohibitor
scope:activity.var:current_debate_proposal ?= flag:learnor
scope:activity.var:current_debate_proposal ?= flag:make_core
None of these
scope:host.faith:pam_faith_tenet_is_core_trigger = { TENET = scope:activity.var:current_topic }
Then
- If ecumenical council tenet current acceptance more than -2–2:
pam_change_great_schism_progress_effect = { VALUE = pam_great_schism_progress_council_tenet_value TT = ecumenical_council_schism_progress_gain_tt }
- Else, if all of these hold:
- Conditions:
scope:activity.var:current_debate_proposal ?= flag:make_corescope:host.faith:
- Then:
If
One of these
rite:roman_rite = { … }or
rite:byzantine_rite = { … }
Then
pam_change_great_schism_progress_effect = { VALUE = pam_great_schism_progress_council_tenet_value TT = ecumenical_council_schism_progress_gain_tt }
- Conditions:
Else if
scope:activity.var:current_debate_proposal ?= flag:doctrine_change
Then
If
One of these
rite:roman_rite = { rite_has_doctrine = scope:activity.var:current_topic }or
rite:byzantine_rite = { rite_has_doctrine = scope:activity.var:current_topic }
Then
pam_change_great_schism_progress_effect = { VALUE = pam_great_schism_progress_doctrine_value TT = ecumenical_council_schism_progress_gain_tt }
If
One of these
scope:activity.var:current_debate_proposal ?= flag:permitor
scope:activity.var:current_debate_proposal ?= flag:prohibitor
scope:activity.var:current_debate_proposal ?= flag:learnor
scope:activity.var:current_debate_proposal ?= flag:make_core
Then
ecumenical_council_conservative_backlash_effect = yesscope:host.faith:If
NOT = { pam_faith_tenet_is_core_trigger = { TENET = scope:activity.var:current_topic } }
Then
- Depending on activity.var:current debate proposal:
- When activity.var:current debate proposal is permit:
set_tenet_status = { tenet = scope:activity.var:current_topic status = permitted }
- When activity.var:current debate proposal is prohibit:
set_tenet_status = { tenet = scope:activity.var:current_topic status = prohibited }pam_faith_grant_forbidden_personal_tenet_secrets_effect = { TENET = scope:activity.var:current_topic }
- When activity.var:current debate proposal is learn:
set_tenet_status = { tenet = scope:activity.var:current_topic status = known }
- When activity.var:current debate proposal is make core:
set_tenet_status = { tenet = scope:activity.var:current_topic status = core }
- When activity.var:current debate proposal is permit:
pam_faith_cleanup_forbidden_personal_tenet_secrets_effect = yes
Else if
One of these
exists = scope:ec_proposal_doctrineor
scope:activity.var:current_debate_proposal ?= flag:doctrine_change
Then
If
a check the game hides
Then
- scope:host.faith: ⟨faith⟩ adopts …
• 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)
ecumenical_council_apply_debate_outcome_effect = {
# Must stay above set_tenet_status so pre-change standing is readable
# Tenet demotion and make_core swap are if/else_if so make_core cannot book twice
if = {
limit = {
pam_great_schism_progress_can_change_trigger = yes
scope:host.faith = faith:christian_faith
}
if = {
# First/Second debate: tenet demotion of a schism-rite tenet counts; promotion books nothing
limit = {
# A doctrine ruling's tooltip preview still sees the previous debate's tenet flag
NOT = { exists = scope:ec_proposal_doctrine }
OR = {
scope:activity.var:current_debate_proposal ?= flag:permit
scope:activity.var:current_debate_proposal ?= flag:prohibit
scope:activity.var:current_debate_proposal ?= flag:learn
scope:activity.var:current_debate_proposal ?= flag:make_core
}
# Rulings that are dropped below must not book progress either
exists = scope:activity.var:current_topic
NOT = {
scope:host.faith = {
pam_faith_tenet_is_core_trigger = { TENET = scope:activity.var:current_topic }
}
}
}
if = {
limit = {
OR = {
rite:roman_rite = { any_rite_tenet = { this = scope:activity.var:current_topic } }
rite:byzantine_rite = { any_rite_tenet = { this = scope:activity.var:current_topic } }
}
}
scope:activity.var:current_topic = {
save_temporary_scope_as = tenet # Read by the acceptance script values
}
}
if = {
limit = {
exists = scope:tenet
ecumenical_council_tenet_current_acceptance_value > ecumenical_council_proposal_target_acceptance_value
}
pam_change_great_schism_progress_effect = {
VALUE = pam_great_schism_progress_council_tenet_value
TT = ecumenical_council_schism_progress_gain_tt
}
}
# make_core already demotes the core you swapped out, so below the maximum there is nothing to record
else_if = {
limit = {
scope:activity.var:current_debate_proposal ?= flag:make_core
scope:host.faith = {
pam_faith_is_at_core_tenet_cap_trigger = yes
}
}
if = {
limit = { exists = scope:activity.var:core_tenet_to_swap_2 }
scope:activity.var:core_tenet_to_swap_2 = {
save_temporary_scope_as = pam_gs_swapped_tenet
}
}
else = {
scope:activity.var:core_tenet_to_swap_1 ?= {
save_temporary_scope_as = pam_gs_swapped_tenet
}
}
if = {
limit = {
exists = scope:pam_gs_swapped_tenet
OR = {
rite:roman_rite = { any_rite_tenet = { this = scope:pam_gs_swapped_tenet } }
rite:byzantine_rite = { any_rite_tenet = { this = scope:pam_gs_swapped_tenet } }
}
}
pam_change_great_schism_progress_effect = {
VALUE = pam_great_schism_progress_council_tenet_value
TT = ecumenical_council_schism_progress_gain_tt
}
}
}
}
else_if = {
# Third debate: dropping a schism-rite doctrine counts; adopting one does not
limit = {
scope:activity.var:current_debate_proposal ?= flag:doctrine_change
exists = scope:activity.var:third_debate_proposal
}
if = {
limit = {
OR = {
rite:roman_rite = { rite_has_doctrine = scope:activity.var:current_topic }
rite:byzantine_rite = { rite_has_doctrine = scope:activity.var:current_topic }
}
}
pam_change_great_schism_progress_effect = {
VALUE = pam_great_schism_progress_doctrine_value
TT = ecumenical_council_schism_progress_gain_tt
}
}
}
}
if = {
# First/Second debate: the proposal is a tenet status change.
limit = {
NOT = { exists = scope:ec_proposal_doctrine }
OR = {
scope:activity.var:current_debate_proposal ?= flag:permit
scope:activity.var:current_debate_proposal ?= flag:prohibit
scope:activity.var:current_debate_proposal ?= flag:learn
scope:activity.var:current_debate_proposal ?= flag:make_core
}
}
if = {
limit = {
exists = scope:activity.var:core_tenet_to_swap_2
}
scope:activity.var:core_tenet_to_swap_2 = {
save_scope_as = tenet_to_swap
}As written in game/common/scripted_effects/pam_ecumenical_council_effects.txt.
The first 120 of its 276 lines; the rest is in game/common/scripted_effects/pam_ecumenical_council_effects.txt from line 508.
Where it is used
Every place in common/, events/ and history/ that calls ecumenical_council_apply_debate_outcome_effect.
Events (1)
- The Council Votes
ecumenical_council_events.0080
Scripted effects (1)
Source: game/common/scripted_effects/pam_ecumenical_council_effects.txt and every file of common/, events/ and history/ that calls it, Crusader Kings III 1.20.1.2.