• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.
Code:
--- Error 1 of 2 ---
At <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_title_under\event_target:liege_religious_head\trigger_switch\fallback\PREV\if\set_pentarch_title] (Line 2993, column 9):
"event_target:conflicting_pentarch_title" is not a valid AnyTitle or None.
--- Error 2 of 2 ---
At <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\FROM\any_title_under\else_if\if\while\limit\location\distance\value] (Line 2638, column 11):
"global_distance_from_antioch" is not a valid Double.

I've tested both of these. 'set_pentarch_title' does indeed take saved event targets (but only titles, of course) and both 'value' and 'distance' nodes inside the 'distance' trigger also take variables.

Code:
DEMAND_RELIGIOUS_CONVERSION_INTERACTION_ACCEPT_EVENT
DEMAND_RELIGIOUS_CONVERSION_INTERACTION_DECLINE_EVENT

REVOKE_TITLE_INTERACTION_ACCEPT_EVENT
REVOKE_TITLE_INTERACTION_DECLINE_EVENT

OFFER_PEACE_INTERACTION_ACCEPT_EVENT
OFFER_PEACE_INTERACTION_DECLINE_EVENT

SEND_GIFT_INTERACTION_ACCEPT_EVENT
SEND_GIFT_INTERACTION_DECLINE_EVENT

ASK_FOR_MONEY_INTERACTION_ACCEPT_EVENT
ASK_FOR_MONEY_INTERACTION_DECLINE_EVENT

ASK_FOR_CLAIM_INTERACTION_ACCEPT_EVENT
ASK_FOR_CLAIM_INTERACTION_DECLINE_EVENT

NOMINATE_BISHOP_TO_POPE_INTERACTION_ACCEPT_EVENT
NOMINATE_BISHOP_TO_POPE_INTERACTION_DECLINE_EVENT

OFFER_VASSALIZATION_INTERACTION_ACCEPT_EVENT
OFFER_VASSALIZATION_INTERACTION_DECLINE_EVENT

ARRANGE_BETROTHAL_INTERACTION_ACCEPT_EVENT
ARRANGE_BETROTHAL_INTERACTION_DECLINE_EVENT

ARRANGE_SUCC_BETROTHAL_INTERACTION_ACCEPT_EVENT
ARRANGE_SUCC_BETROTHAL_INTERACTION_DECLINE_EVENT

OFFER_SUCCESSION_MARRIGE_INTERACTION_ACCEPT_EVENT
OFFER_SUCCESSION_MARRIGE_INTERACTION_DECLINE_EVENT

OFFER_MARRIGE_INTERACTION_ACCEPT_EVENT
OFFER_MARRIGE_INTERACTION_DECLINE_EVENT

RANSOM_CHARACTER_INTERACTION_ACCEPT_EVENT
RANSOM_CHARACTER_INTERACTION_DECLINE_EVENT

EDUCATE_CHARACTER_INTERACTION_ACCEPT_EVENT
EDUCATE_CHARACTER_INTERACTION_DECLINE_EVENT

ABANDON_AMBITION_INTERACTION_ACCEPT_EVENT
ABANDON_AMBITION_INTERACTION_DECLINE_EVENT

STOP_BACKING_AMBITION_INTERACTION_ACCEPT_EVENT
STOP_BACKING_AMBITION_INTERACTION_DECLINE_EVENT

JOIN_AMBITION_INTERACTION_ACCEPT_EVENT
JOIN_AMBITION_INTERACTION_DECLINE_EVENT

GRANT_LANDED_TITLE_INTERACTION_ACCEPT_EVENT
GRANT_LANDED_TITLE_INTERACTION_DECLINE_EVENT

APPOINT_TO_OFFICE_INTERACTION_ACCEPT_EVENT
APPOINT_TO_OFFICE_INTERACTION_DECLINE_EVENT

ASK_FOR_INVASION_INTERACTION_ACCEPT_EVENT
ASK_FOR_INVASION_INTERACTION_DECLINE_EVENT

ASK_FOR_DIVORCE_INTERACTION_ACCEPT_EVENT
ASK_FOR_DIVORCE_INTERACTION_DECLINE_EVENT

ASK_FOR_EXCOMMUNICATION_INTERACTION_ACCEPT_EVENT
ASK_FOR_EXCOMMUNICATION_INTERACTION_DECLINE_EVENT

CALL_ALLY_INTERACTION_ACCEPT_EVENT
CALL_ALLY_INTERACTION_DECLINE_EVENT

DECLARE_WAR_INTERACTION_ACCEPT_EVENT

RETRACT_VASSAL_INTERACTION_ACCEPT_EVENT
RETRACT_VASSAL_INTERACTION_DECLINE_EVENT

INVITE_TO_COURT_INTERACTION_ACCEPT_EVENT
INVITE_TO_COURT_INTERACTION_DECLINE_EVENT

ASK_FOR_VASSALIZATION_INTERACTION_ACCEPT_EVENT
ASK_FOR_VASSALIZATION_INTERACTION_DECLINE_EVENT

ASK_TO_LIFT_EXCOMMUNICATION_INTERACTION_ACCEPT_EVENT
ASK_TO_LIFT_EXCOMMUNICATION_INTERACTION_DECLINE_EVENT

ASK_TO_RANSOM_CHARACTER_INTERACTION_ACCEPT_EVENT
ASK_TO_RANSOM_CHARACTER_INTERACTION_DECLINE_EVENT

SETTLE_ADVENTURER_INTERACTION_ACCEPT_EVENT
SETTLE_ADVENTURER_INTERACTION_DECLINE_EVENT

ASK_TO_JOIN_WAR_INTERACTION_ACCEPT_EVENT
ASK_TO_JOIN_WAR_INTERACTION_DECLINE_EVENT

ASK_TO_EMBARGO_INTERACTION_ACCEPT_EVENT
ASK_TO_EMBARGO_INTERACTION_DECLINE_EVENT

MAKE_CONSORT_INTERACTION_ACCEPT_EVENT
MAKE_CONSORT_INTERACTION_DECLINE_EVENT

ABSORB_CLAN_INTERACTION_ACCEPT_EVENT
ABSORB_CLAN_INTERACTION_DECLINE_EVENT

SPLIT_CLAN_INTERACTION_ACCEPT_EVENT
SPLIT_CLAN_INTERACTION_DECLINE_EVENT

FORM_BLOOD_OATH_INTERACTION_ACCEPT_EVENT
FORM_BLOOD_OATH_INTERACTION_DECLINE_EVENT

SETTLE_FEUD_INTERACTION_ACCEPT_EVENT
SETTLE_FEUD_INTERACTION_DECLINE_EVENT

FORM_ALLIANCE_INTERACTION_ACCEPT_EVENT
FORM_ALLIANCE_INTERACTION_DECLINE_EVENT

DISSOLVE_ALLIANCE_INTERACTION_ACCEPT_EVENT
DISSOLVE_ALLIANCE_INTERACTION_DECLINE_EVENT

BUY_FAVOR_INTERACTION_ACCEPT_EVENT
BUY_FAVOR_INTERACTION_DECLINE_EVENT

REQUEST_SUPPORT_INTERACTION_ACCEPT_EVENT
REQUEST_SUPPORT_INTERACTION_DECLINE_EVENT

FORM_NON_AGGRESSION_PACT_INTERACTION_ACCEPT_EVENT
FORM_NON_AGGRESSION_PACT_INTERACTION_DECLINE_EVENT

ASK_COUNCIL_POSITION_INTERACTION_ACCEPT_EVENT
ASK_COUNCIL_POSITION_INTERACTION_DECLINE_EVENT

ASK_REALM_PEACE_INTERACTION_ACCEPT_EVENT
ASK_REALM_PEACE_INTERACTION_DECLINE_EVENT

FORCE_JOIN_FACTION_INTERACTION_ACCEPT_EVENT
FORCE_JOIN_FACTION_INTERACTION_DECLINE_EVENT

ASK_TO_JOIN_AMBITION_INTERACTION_ACCEPT_EVENT
ASK_TO_JOIN_AMBITION_INTERACTION_DECLINE_EVENT

OFFER_CONSORT_INTERACTION_ACCEPT_EVENT

GIVE_ARTIFACT_INTERACTION_ACCEPT_EVENT

All these use the same character scopes, FROM and FROMFROM, according to 00_on_actions.txt
Also noteworthy is that the opening scope is equal to FROMFROM and ROOT is empty and should not be used (points to <null>).
 
Last edited:
You'll have to add your government to one of the vanilla government groups, 'feudal_governments', for example. Maybe The Validator doesn't accept new government groups. Is it working in-game?
Ok I stand half corrected. My custom religion shows up ingame but not the government type. Finally got the chance to test it with set_government, no go
 
I'm getting multiple errors:
Code:
--- Error 1 of 5 ---
At <mod>\common\governments\tpe_governments.txt [tpe_governments] (Line 1, column 1):
Invalid node "tpe_governments" in scope GovernmentFile (value is: <a complex type>)
--- Error 2 of 5 ---
At <mod>\common\religions\tpe_religions.txt [tpe_group\plutonianism\unit_home_modifier] (Line 108, column 3):
The required "key" entry was not found.
--- Error 3 of 5 ---
At <mod>\common\religions\tpe_religions.txt [tpe_group\plutonianism\unit_home_modifier\Key] (Line 113, column 4):
Invalid node "Key" in scope <anon> (value is: DEF_RELIGION_HOME_TERRITORY)
--- Error 4 of 5 ---
At <mod>\common\religions\tpe_religions.txt [tpe_group\plutonianism\unit_modifier] (Line 98, column 3):
The required "key" entry was not found.
--- Error 5 of 5 ---
At <mod>\common\religions\tpe_religions.txt [tpe_group\plutonianism\unit_modifier\Key] (Line 106, column 4):
Invalid node "Key" in scope <anon> (value is: OFF_RELIGION)

I tried to add the keys for the unit stuff as suggested by errors 2 and 4, and went with the ones provided by the basegame files, but no dice? And I don't understand what exactly the problem is with my custom government

For errors 2-5 I think the Validator is case sensitive so "Key"should instead be "key". I guess you discovered the error with 1 already.
 
Many thanks again. I've got a few more, seemingly just popping up with this new version. I can confirm this all works as expected. Here is a download, since numeric operators may be relevant here. It may also be worth mentioning that local_ variables are event variables, rather than scoped variables, so they work like saved event targets and persist until the end of the event chain and are accessible in any scope while inside that event chain. This was added in 2.8.

Code:
--- Error 1 of 2 ---
At <mod>\common\scripted_effects\000_CK2Plus_expanded_scripted_effects_pentarchs.txt [assign_pentarch_CK2Plus_effect\else_if\if\while\limit\check_variable\value] (Line 216, column 7):
"local_search_increment_limit" is not a valid Double.
* called from <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_independent_ruler\if\any_title_under\if\location\assign_pentarch_CK2Plus_effect] (Line 2910, column 8)
--- Error 2 of 2 ---
At <mod>\common\scripted_effects\000_CK2Plus_expanded_scripted_effects_pentarchs.txt [assign_pentarch_CK2Plus_effect\else_if\if\while\if\limit\distance\distance] (Line 224, column 8):
"local_current_distance_from_constantinople" is not a valid NnDbl or VariableName.
* called from <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_independent_ruler\if\any_title_under\if\location\assign_pentarch_CK2Plus_effect] (Line 2910, column 8)

There's also this odd thing, that also appears to be working just fine. Please compare lines 2048 and 2066.

Code:
At <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_title\if\holder_scope\any_title_under\limit\NOR\trigger_else\empire\NOT\title] (Line 2066, column 19):
"PREVPREVPREV" is not a valid AnyTitle or MaybeEventTargetProvTitle.
MaybeEventTargetProvTitle: cannot be because ThisProv: cannot be because PREVPREVPREV points to CharCommand.
        However, a Prov was expected.
    ThisTitle: cannot be because PREVPREVPREV points to CharCommand.
        However, a Title was expected.
 
Many thanks again. I've got a few more, seemingly just popping up with this new version. I can confirm this all works as expected. Here is a download, since numeric operators may be relevant here. It may also be worth mentioning that local_ variables are event variables, rather than scoped variables, so they work like saved event targets and persist until the end of the event chain and are accessible in any scope while inside that event chain. This was added in 2.8.

Code:
--- Error 1 of 2 ---
At <mod>\common\scripted_effects\000_CK2Plus_expanded_scripted_effects_pentarchs.txt [assign_pentarch_CK2Plus_effect\else_if\if\while\limit\check_variable\value] (Line 216, column 7):
"local_search_increment_limit" is not a valid Double.
* called from <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_independent_ruler\if\any_title_under\if\location\assign_pentarch_CK2Plus_effect] (Line 2910, column 8)
--- Error 2 of 2 ---
At <mod>\common\scripted_effects\000_CK2Plus_expanded_scripted_effects_pentarchs.txt [assign_pentarch_CK2Plus_effect\else_if\if\while\if\limit\distance\distance] (Line 224, column 8):
"local_current_distance_from_constantinople" is not a valid NnDbl or VariableName.
* called from <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_independent_ruler\if\any_title_under\if\location\assign_pentarch_CK2Plus_effect] (Line 2910, column 8)

There's also this odd thing, that also appears to be working just fine. Please compare lines 2048 and 2066.

Code:
At <mod>\events\000_CK2Plus_expanded_great_schism_events.txt [character_event\immediate\any_title\if\holder_scope\any_title_under\limit\NOR\trigger_else\empire\NOT\title] (Line 2066, column 19):
"PREVPREVPREV" is not a valid AnyTitle or MaybeEventTargetProvTitle.
MaybeEventTargetProvTitle: cannot be because ThisProv: cannot be because PREVPREVPREV points to CharCommand.
        However, a Prov was expected.
    ThisTitle: cannot be because PREVPREVPREV points to CharCommand.
        However, a Title was expected.

For the first error, should the value be using a which instead? Validator and the wiki seem to be under the impression that to do this one can just have 2 which clauses for the variables. Or has how things worked changed recently?

The other errors I will need to look at the download you gave and it may happen this or next weekend, it is currently unclear.
 
For the first error, should the value be using a which instead? Validator and the wiki seem to be under the impression that to do this one can just have 2 which clauses for the variables. Or has how things worked changed recently?

You make an excellent point there, thank you. Nevertheless it does seem to work just fine. Still, I'll adjust my script to match the preferred style.

That still leaves the 'distance' triggers, however.
 
--- Error 1 of 1 ---
At <mod>\history\characters\46001-47000 High Forest.txt [46014\883.1.1\race] (Line 244, column 3):
Invalid node "race" in scope DateClause (value is: lich)

The ck2 wiki says this is allowed, but Validator flags it as not allowed.
 
Thanks for the update, works perfectly! Got another small issue:

Code:
At <mod>\common\scripted_effects\000_CK2Plus_expanded_scripted_effects_pentarchs.txt [reassign_pentarch_to_vassalised_titles_CK2Plus_effect\any_de_jure_vassal_title\limit\holder_scope\is_liege_or_above] (Line 1019, column 5):
"attacker" is not a valid MaybeEventTarget(Char, Prov, Title).
* called from <mod>\common\cb_types\00_cb_types.txt [nomad_invasion\on_success_title\hidden_tooltip\reassign_pentarch_to_vassalised_titles_CK2Plus_effect] (Line 18378, column 4)

'attacker' already works directly in on_success_title, but here I get an error regardless. I've tested it to work. 'defender' should also work. They are identical to ROOT respectively FROM and should also work in all other effect scopes in wars, as you already implemented a while ago, see here.

Link to the code, in case you need it.

Edit:
Patch 2.8 lists this, which is probably why this works:
Ensured that a fake war exists for tooltip purposes before declaring a war, so you can scope to the attacker and defender in the tooltips
 
Last edited:
I did some testing today and found these on_actions all work in-game, with the same scopes as all the other ones. A few of the names are inconsistent, differing from their names in defines.lua, lacking '_INTERACTION', but these are the ones that work. Also note that 'IMPRISON_CHARACTER_INTERACTION_ACCEPT_EVENT' does not work.

Code:
ASK_FOR_CRUSADE_INTERACTION_ACCEPT_EVENT
ASK_FOR_CRUSADE_INTERACTION_DECLINE_EVENT
ASK_TO_DECLARE_WAR_INTERACTION_ACCEPT_EVENT
ASK_TO_DECLARE_WAR_INTERACTION_DECLINE_EVENT
APPOINT_COMMANDER_INTERACTION_ACCEPT_EVENT
ASSIGN_VOTER_TITLE_INTERACTION_ACCEPT_EVENT
AWARD_HONORARY_TITLE_INTERACTION_ACCEPT_EVENT
BREAK_BETROTHAL_INTERACTION_ACCEPT_EVENT
CALL_IN_FAVOR_INTERACTION_ACCEPT_EVENT
CALL_IN_FAVOR_SUCCESSION_VOTE_ACCEPT_EVENT
CHANGE_CRUSADE_TARGET_INTERACTION_ACCEPT_EVENT
DISMISS_CONSORT_INTERACTION_ACCEPT_EVENT
DIVORCE_INTERACTION_ACCEPT_EVENT
EXECUTE_IMPRISONED_INTERACTION_ACCEPT_EVENT
EXILE_IMPRISONED_INTERACTION_ACCEPT_EVENT
GRANT_VICE_ROYALTY_INTERACTION_ACCEPT_EVENT
IMPRISON_INTERACTION_ACCEPT_EVENT
LEAVE_COALITION_ACCEPT_EVENT
PREPARE_INVASION_INTERACTION_ACCEPT_EVENT
RELEASE_FROM_PRISON_INTERACTION_ACCEPT_EVENT
RELEASE_VASSAL_INTERACTION_ACCEPT_EVENT
REPLACE_MERCENARY_CAPTAIN_INTERACTION_ACCEPT_EVENT
RESIGN_AS_COMMANDER_INTERACTION_ACCEPT_EVENT
RESIGN_COMMANDER_INTERACTION_ACCEPT_EVENT
RESIGN_FROM_OFFICE_INTERACTION_ACCEPT_EVENT
REVOKE_HONORARY_TITLE_INTERACTION_ACCEPT_EVENT
REVOKE_VOTER_TITLE_INTERACTION_ACCEPT_EVENT
SEND_ASSASSIN_INTERACTION_ACCEPT_EVENT
START_COALITION_ACCEPT_EVENT
STOP_ENFORCE_PEACE_INTERACTION_ACCEPT_EVENT
TRANSFER_VASSAL_INTERACTION_ACCEPT_EVENT

The following two are not currently used, but would probably work. I'll leave it up to you what to do with them.

Code:
RETIRE_TO_MONASTERY_INTERACTION_ACCEPT_EVENT        - replaced by targeted decision, disabled in defines.lua
ARRANGE_SUCC_BETROTHAL_INTERACTION_ACCEPT_EVENT        - old separate matrilineal interaction, no longer used

I can't figure out where these two interactions are used. They are not disabled in defines.lua. Associated localisation text looks unfamiliar to me.

Code:
FIRE_COUNCILOR_INTERACTION_ACCEPT_EVENT
CLAIM_TITLE_INTERACTION_ACCEPT_EVENT

Edit:
Added another five valid on_actions to the first list.

Edit2:
A request: Since Laws have long since moved out of the Decisions folder into common\laws, could you separate the two in The Validator?
Any chance of separating out Plots, Factions, Ambitions and Focuses, despite these all being in common\objectives?

A few that could be separated, or have better names:
Character
Landed titles and minor/religious titles
Units and mercenaries
Setup
Buildings and wonders

Some things are hard to find by name:
Holding types
Council positions/voting
Succession voting
Execution methods
Heir text
Game rules
Tributary types

Maybe some more descriptive tooltips and/or a text file detailing which folders are checked through which items could be added.

And a few suggestions on renaming other items:
'Job actions' to 'Councillors'
 
Last edited:
The following two are not currently used, but would probably work. I'll leave it up to you what to do with them.

Code:
RETIRE_TO_MONASTERY_INTERACTION_ACCEPT_EVENT - replaced by targeted decision, disabled in defines.lua
ARRANGE_SUCC_BETROTHAL_INTERACTION_ACCEPT_EVENT - old separate matrilineal interaction, no longer used
I can't figure out where these two interactions are used. They are not disabled in defines.lua. Associated localisation text looks unfamiliar to me.

Code:
FIRE_COUNCILOR_INTERACTION_ACCEPT_EVENT
CLAIM_TITLE_INTERACTION_ACCEPT_EVENT

Will leave this out but if they are shown to work and are not deprecated will add them.

A request: Since Laws have long since moved out of the Decisions folder into common\laws, could you separate the two in The Validator?

Ok

Any chance of separating out Plots, Factions, Ambitions and Focuses, despite these all being in common\objectives?

No, as the way the validator works is it just sucks all the files in ommon/objectives and process them. This could be improved with difficulty but given the legacy nature of the Validator, won't be.

A few that could be separated, or have better names:
Character
Landed titles and minor/religious titles
Units and mercenaries
Setup
Buildings and wonders

Some things are hard to find by name:
Holding types
Council positions/voting
Succession voting
Execution methods
Heir text
Game rules
Tributary types

Maybe some more descriptive tooltips and/or a text file detailing which folders are checked through which items could be added.

And a few suggestions on renaming other items:
'Job actions' to 'Councillors'
For anything that is not explicitly rejected below, and not changed in the upcoming version, please give more details.

For anything in the upcoming version where the tooltip is not satisfactory (which is most of them I think) please make a suggestion as to what you want.

Succession voting - is this still used - it is commented out in Validator for some reason
 
Will leave this out but if they are shown to work and are not deprecated will add them.

I'll find some time to test them.


Thanks!

No, as the way the validator works is it just sucks all the files in ommon/objectives and process them. This could be improved with difficulty but given the legacy nature of the Validator, won't be.

Understood.

For anything that is not explicitly rejected below, and not changed in the upcoming version, please give more details. For anything in the upcoming version where the tooltip is not satisfactory (which is most of them I think) please make a suggestion as to what you want.

This update is already a significant improvement - thanks.

Here are a few more suggestions:

Objectives could use a tooltip that lists 'Ambitions, Factions, Focuses and Plots'
Heir text should probably be moved to Death instead, since it's used on the succession screen.
Holding types I would prefer moved from Government to Buildings and Wonders
Councils (job_titles) I would prefer moved from Government and Titles (is checked in both) to Councillors (job_actions)
council_positions and council_voting I would prefer moved from Government to Councillors
succession_voting I would prefer moved from Government to Laws

Some tooltips (Titles, Laws, Councillors, Government, Buildings, Death) would need some updated tooltip descriptions to match.

Thanks so much for your continued efforts!

Succession voting - is this still used - it is commented out in Validator for some reason

Yes, this was added in 3.0.

And a few more false reports:

Code:
At <mod>\common\event_modifiers\00_event_modifiers.txt [monk_society_help\local_build_time_temple_modifier] (Line 6770, column 2):
Invalid node "local_build_time_temple_modifier" in scope <anon> (value is: -0.30)

These were added in 2.7 and take both positive and negative doubles.

Code:
build_cost_city_modifier
build_cost_castle_modifier
build_cost_temple_modifier
build_cost_tribal_modifier
build_time_city_modifier
build_time_castle_modifier
build_time_temple_modifier
build_time_tribal_modifier
local_build_cost_city_modifier
local_build_cost_castle_modifier
local_build_cost_temple_modifier
local_build_cost_tribal_modifier
local_build_time_city_modifier
local_build_time_castle_modifier
local_build_time_temple_modifier
local_build_time_tribal_modifier


Code:
At <mod>\common\modifier_definitions\00_modifier_definitions.txt [saintly_theologians_bloodline\show_value] (Line 1200, column 2):
Invalid node "show_value" in scope ModifierDefinitionInfo (value is: no)

Added in 3.0.

Code:
--- Error 1 of 2 ---
At <mod>\common\offmap_powers\00_offmap_powers.txt [offmap_china\holder_succession\likes\likes_bon\mult_modifier\FROMFROM] (Line 807, column 6):
No direct match found for FROMFROM (is the casing correct?). However, other possible matches in scope OffmapPowerTriggerFromChar were found.
Left: [ThisChar] Right: [CharTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Char was expected.
This is not a valid place to use FROM.
Left: [ThisProv] Right: [ProvTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Prov was expected.
This is not a valid place to use FROM.
Left: [ThisTitle] Right: [TitleTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Title was expected.
This is not a valid place to use FROM.
Left: [ThisUnit] Right: [UnitTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Unit was expected.
This is not a valid place to use FROM.
Left: [ThisSociety] Right: [SocietyTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Society was expected.
This is not a valid place to use FROM.
Left: [ThisArtifact] Right: [ArtifactTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Artifact was expected.
This is not a valid place to use FROM.
Left: [ThisBattle] Right: [BattleTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Battle was expected.
This is not a valid place to use FROM.
Left: [ThisWar] Right: [WarTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a War was expected.
This is not a valid place to use FROM.
Left: [ThisSiege] Right: [SiegeTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Siege was expected.
This is not a valid place to use FROM.
Left: [ThisOffmapPower] Right: [OffmapPowerTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a OffmapPower was expected.
This is not a valid place to use FROM.
Left: [ThisReligion] Right: [ReligionTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Religion was expected.
This is not a valid place to use FROM.
Left: [ThisCulture] Right: [CultureTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Culture was expected.
This is not a valid place to use FROM.
Left: [ThisBloodline] Right: [BloodlineTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Bloodline was expected.
This is not a valid place to use FROM.
Left: [ThisWonder] Right: [WonderTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a Wonder was expected.
This is not a valid place to use FROM.
Left: [ThisWonderUpgrade] Right: [WonderUpgradeTrigger] cannot be correct because of left: FROMFROM points to <null>.
However, a WonderUpgrade was expected.
This is not a valid place to use FROM.
--- Error 2 of 2 ---
At <mod>\common\offmap_powers\00_offmap_powers.txt [offmap_china\holder_succession\likes\likes_bon\mult_modifier\FROMFROM] (Line 807, column 6):
Invalid use of 'FROMFROM': This is not a valid place to use FROM.

Still not entirely sure if this is the emperor or governor, but either way, FROMFROM is a character scope, since 'is_femaly = yes' is used inside it.

Code:
At <mod>\common\on_actions\00_on_actions.txt [on_approve_de_jure_law\effect\log_scopes] (Line 2873, column 3):
Invalid node "log_scopes" in scope CharCommandFromTitle (value is: yes)

Valid from any scope, confirmed to work.

Code:
At <mod>\common\opinion_modifiers\00_opinion_modifiers.txt [opinion_pope_ex_demands_celibacy] (Line 4645, column 1):
The required "opinion" entry was not found.

Opinion modifiers can be used to track things, and as such, don't need actual opinion changes anymore.

Code:
--- Error 1 of 4 ---
At common\traits\02_traits.txt [pagan_branch_4\religious_branch] (Line 6917, column 2):
"pagan_reformation" is not a valid Religion.
--- Error 2 of 4 ---
At common\traits\02_traits.txt [pagan_branch_3\religious_branch] (Line 6897, column 2):
"pagan_reformation" is not a valid Religion.
--- Error 3 of 4 ---
At common\traits\02_traits.txt [pagan_branch_2\religious_branch] (Line 6877, column 2):
"pagan_reformation" is not a valid Religion.
--- Error 4 of 4 ---
At common\traits\02_traits.txt [pagan_branch_1\religious_branch] (Line 6853, column 2):
"pagan_reformation" is not a valid Religion.

See common\religion_features\_documentation.info:

Code:
# Sets the branch tag of the religion, which is used for generating religious branch traits. Normally, these would be the name of a religion, but now they can be custom instead. E.G., "set_branch_tag = tag_name" will cause members of this religion to choose a branch trait from the traits tagged with that tag name

Goes together with the next one:

Code:
At <mod>\common\religion_features\00_features.txt [religion_leadership\religion_no_leader\effect\hidden_effect\set_religious_branch] (Line 1830, column 5):
Invalid node "set_religious_branch" in scope ReligionHiddenEffect (value is: pagan_reformation)

Code:
--- Error 1 of 3 ---
At <mod>\common\religion_features\00_features.txt [religion_leadership\religion_theocratic_head\effect\hidden_effect\set_can_grant_invasion_cb] (Line 1748, column 5):
"yes" is not a valid CasusBelli.
--- Error 2 of 3 ---
At <mod>\common\religion_features\00_features.txt [religion_leadership\religion_autocephaly\effect\hidden_effect\set_can_grant_invasion_cb] (Line 1783, column 5):
"yes" is not a valid CasusBelli.
--- Error 3 of 3 ---
At <mod>\common\religion_features\00_features.txt [religion_leadership\religion_leader_unchanged\effect\hidden_effect\if\set_can_grant_invasion_cb] (Line 2122, column 6):
"yes" is not a valid CasusBelli.

These work in-game, so it appears to take a bool inside religion features and a CB everywhere else.

Code:
At <mod>\common\religion_features\00_features.txt [religion_leadership\religion_no_leader\effect\hidden_effect\set_no_head_of_religion] (Line 1827, column 5):
Invalid node "set_no_head_of_religion" in scope ReligionHiddenEffect (value is: yes)

Not mentioned in patch 3.0, but documented in common\religion_features\_documentation.info.

Code:
--- Error 1 of 2 ---
At <mod>\common\religious_titles\00_religious_titles.txt [title_fraticelli_cardinal\allowed_to_grant] (Line 88, column 2):
Invalid node "allowed_to_grant" in scope ReligiousTitleDef (value is: <a complex type>)
--- Error 2 of 2 ---
At <mod>\common\religious_titles\00_religious_titles.txt [title_fraticelli_cardinal\revoke_trigger] (Line 114, column 2):
Invalid node "revoke_trigger" in scope ReligiousTitleDef (value is: <a complex type>)

Can confirm these both work.
 
Last edited:
using provinces as arguments in unsafe_religion works:

--- Error 1 of 1 ---
At <mod>\decisions\rtp_title_decisions.txt [title_decisions\rtp_preach_religion_td\effect\random_list\20\location\unsafe_religion] (Line 635, column 7):
Invalid node "unsafe_religion" in scope ProvCommand (value is: FROM)

using negatives as arguments in piety works:

--- Error 1 of 3 ---
At <mod>\decisions\rtp_title_decisions.txt [title_decisions\rtp_preach_religion_td\effect\piety] (Line 628, column 4):
Invalid node "piety" in scope DecisionCommand (value is: -50)
--- Error 2 of 3 ---
At <mod>\decisions\rtp_title_decisions.txt [title_decisions\rtp_recruit_patriots_d\effect\piety] (Line 579, column 4):
Invalid node "piety" in scope DecisionCommand (value is: -50)
--- Error 3 of 3 ---
At <mod>\decisions\rtp_title_decisions.txt [title_decisions\rtp_recruit_zealouts_d\effect\piety] (Line 520, column 4):
Invalid node "piety" in scope DecisionCommand (value is: -50)

using provinces as arguments in true_religion_group works:

--- Error 1 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_spouse_religion\effect\FROM\if\limit\capital_scope\NOT\true_religion_group] (Line 2200, column 9):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 2 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_spouse_religion\effect\FROM\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2217, column 9):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 3 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_spouse_religion\effect\FROM\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2234, column 9):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 4 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_spouse_religion\effect\FROM\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2251, column 9):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 5 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_spouse_religion\effect\FROM\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2268, column 9):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 6 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_spouse_religion\effect\FROM\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2285, column 9):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 7 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_local_religion\effect\if\limit\capital_scope\NOT\true_religion_group] (Line 2018, column 8):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 8 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_local_religion\effect\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2035, column 8):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 9 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_local_religion\effect\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2052, column 8):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 10 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_local_religion\effect\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2069, column 8):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 11 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_local_religion\effect\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2086, column 8):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)
--- Error 12 of 12 ---
At <mod>\decisions\rtp_vanilla_targetted_decisions.txt [targetted_decisions\convert_to_local_religion\effect\else_if\limit\capital_scope\NOT\true_religion_group] (Line 2103, column 8):
Invalid node "true_religion_group" in scope ProvTrigger (value is: ROOT)

other localization stuff that works:

--- Error 1 of 3 ---
At <mod>\localisation\rtp_stewardship_society.csv [Entry\1] (Line 234, column 23):
Localization error: Invalid bracket command: "GrandMaster" in "Root.Society.GrandMaster.GetSheHe" in "[Root.Society.GetTitledGrandMasterName] tells me that [Root.Society.GrandMaster.GetSheHe] was very pleased with how I handled things! The fair will be a great success, I have no doubt."
--- Error 2 of 3 ---
At <mod>\localisation\rtp_stewardship_society.csv [Entry\1] (Line 235, column 23):
Localization error: Invalid bracket command: "GrandMaster" in "Root.Society.GrandMaster.GetSheHe" in "[Root.Society.GetTitledGrandMasterName] says [Root.Society.GrandMaster.GetSheHe] is furious at the taxes I charged. Apparently too many traders decided not to show and the fair was woefully empty."
--- Error 3 of 3 ---
At <mod>\localisation\rtp_stewardship_society.csv [Entry\1] (Line 300, column 23):
Localization error: Invalid bracket command: "GrandMaster" in "Root.Society.GrandMaster.GetHerHis" in "I send the new debt contract to [rtp_society_quest_target.GetFirstName] and return home. Some months later I receive word from [Root.Society.GetTitledGrandMasterName] expressing [Root.Society.GrandMaster.GetHerHis] disappointment."

all of this stuff in religious_titles works:

--- Error 1 of 3 ---
At <mod>\common\religious_titles\00_religious_titles.txt [title_fraticelli_cardinal\allowed_to_grant] (Line 103, column 2):
Invalid node "allowed_to_grant" in scope ReligiousTitleDef (value is: <a complex type>)
--- Error 2 of 3 ---
At <mod>\common\religious_titles\00_religious_titles.txt [title_cardinal\allowed_to_grant] (Line 29, column 2):
Invalid node "allowed_to_grant" in scope ReligiousTitleDef (value is: <a complex type>)
--- Error 3 of 3 ---
At <mod>\events\rtp_check_events.txt [character_event\immediate\if\event_target:rtp_new_character\remove_title] (Line 934, column 5):
"title_cardinal" is not a valid JobTitle or MinorTitle.