• 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.
Just wanted to say thanks a lot for your hard work, just ran CK2+ through the validator and founds hundreds of minor errors that I am now going to fix.

I can see right away that there's a lot of false positives though... I'll try to assemble a list of them, but right off the top of my errors list:

- Validator assumes change_variable, check_variable etc do not exist. They do and work fine for characters.
- Validator does not know that num_of_duke_titles num_of_count_titles num_of_king_titles num_of_emperor_titles are all valid triggers.

1. Added (for change_variable and check_variable).
2. I've added them. I already had count and king titles though, so could you post one of the count/king errors? I only have them working in a character scope right now so perhaps it needs to be in province and/or title scopes as well.

Thanks for your feedback :)
 
Definitely doable, but could you tell me more about how to know what flag .tgas are expected to exist?

Anything above barony level in landed_titles.txt (so c_ d_ k_ e_ titles) must have a tga with its name (so k_france becomes k_france.tga) or else the whole flag structure bugs out.
 
1. Added.
2. I've added them. I already had count and king titles though, so could you post one of the count/king errors? I only have them working in a character scope right now so perhaps it needs to be in province and/or title scopes as well.

Thanks for your feedback :)

I did not get errors for count/king, only duke/emperor. Sorry about not being clear there.
 
Image 1: First error: you have something like X={death = Y}, but X does not equal Y. The others: Are those nicknames defined? I see that nick_the_fat is in vanilla, but maybe you didn't have it in your mod?

Yes, they are defined - they're both in the nicknames.txt and the localisation.csv. By the way, this is Syren's Nicknames mod that I've integrated to mine. There's a bunch of nicks the validator picks on, some vanilla like the_fat, but there's also
the_strong
the_pious
the_magnificent
the_wise
the_black
the_unready
the_younger
the_great
the_lionheart
the_lackland
the_old
the_devil
the_hunter
the_blind
the_crusader
the_pilgrim
the_confessor
the_usurper

Image 2: Same question about nicknames

Image 3: There could be a typo in 00_event_modifiers.txt that causes event modifiers not to be read correctly; are there any errors about that file? The "This event is set to be triggered only but never called" might or might not be an issue; there's no point for those events to exist but maybe they're there for future use (e.g. Paradox files have some trait removal notifications currently unused).

No worries, it's just that -as far as I know, holding_large_feast is a triggered modifier and there's no problem using it. Same goes for holding_summer_fair, house_arrest, tortured, and the_dungeon.

Image 4: Can you confirm that that modifier works? If so I'll add it to the Validator.

Hmmm.... not yet. I have it on the mod, but haven't seen any results that prove it works (or not). Will run some tests and get back to you.
Image 5: Those do seem to be traits that don't exist in the traits.txt file.

Yeah, deceitful is spelled wrong (decietful). Crown_loyalist... :huh: I was sure it was in!
But it's not.:unsure:
 
Yes, they are defined - they're both in the nicknames.txt and the localisation.csv. By the way, this is Syren's Nicknames mod that I've integrated to mine. There's a bunch of nicks the validator picks on, some vanilla like the_fat, but there's also
the_strong
the_pious
the_magnificent
the_wise
the_black
the_unready
the_younger
the_great
the_lionheart
the_lackland
the_old
the_devil
the_hunter
the_blind
the_crusader
the_pilgrim
the_confessor
the_usurper



No worries, it's just that -as far as I know, holding_large_feast is a triggered modifier and there's no problem using it. Same goes for holding_summer_fair, house_arrest, tortured, and the_dungeon.



Hmmm.... not yet. I have it on the mod, but haven't seen any results that prove it works (or not). Will run some tests and get back to you.


Yeah, deceitful is spelled wrong (decietful). Crown_loyalist... :huh: I was sure it was in!
But it's not.:unsure:

1,2. Hmm that is strange then. If you press the "i" to the right of the error, that should bring up a dialog box with a list of nicknames. Maybe you could take a look at that and see if nick_the_fat, etc are listed in the list.

3. Yes, it seems like those should work. Basically the only reason I can think of it wouldn't work is if there was a parse error in the syntax of the event_modifiers file somewhere, but if not, then that is strange.
 
1,2. Hmm that is strange then. If you press the "i" to the right of the error, that should bring up a dialog box with a list of nicknames. Maybe you could take a look at that and see if nick_the_fat, etc are listed in the list.

3. Yes, it seems like those should work. Basically the only reason I can think of it wouldn't work is if there was a parse error in the syntax of the event_modifiers file somewhere, but if not, then that is strange.
I'm using your new version but, yeah, the nicks don't appear on a dialog box (like with the triggered modifiers, for instance) - in fact, there is no dialog box for nicks.

As for the triggered modifiers, looking at it, there seems to be quite a few missing (voice_of_jesus, holy_comet, master_hunter, the_oubliette, peasants_upset...) and when I click on "i", none of these modifiers show up in the dialog box...
 
For a decision I'm getting:
At <mod>\decisions\balansegang.txt [decisions\integrate_finland\effect\k_finland\any_de_jure_vassal_title\de_jure_liege] (543, 6):
"k_scandinavia" is not a valid ThisChar or ThisTitle.
Even though it is in landed_titles.txt.

For static modifiers. Any modifier defined in landed_titles (mercs) don't need localisation.
In religion.txt. Pacifist = yes isn't something that needs localisation.
For history files: name = "1st Seljuk-Byzantine War" isn't something that needs localisation.
 
Last edited:
For a decision I'm getting:
At <mod>\decisions\balansegang.txt [decisions\integrate_finland\effect\k_finland\any_de_jure_vassal_title\de_jure_liege] (543, 6):
"k_scandinavia" is not a valid ThisChar or ThisTitle.
Even though it is in landed_titles.txt.

For static modifiers. Any modifier defined in landed_titles (mercs) don't need localisation.
In religion.txt. Pacifist = yes isn't something that needs localisation.
For history files: name = "1st Seljuk-Byzantine War" isn't something that needs localisation.

Before de_jure_liege only accepted THIS/PREV/etc. Now it will accept titles. Do you know if de_jure_liege_or_above, de_facto_liege, de_jure_vassal_or_below would also accept an actual title?

I removed the pacifist thing.

For localization warnings in history files, it seems like that could still be optionally localized, and so it is checked.

For static modifiers, I will think about how to deal with it, because it's somewhat hard to determine what is in landed_titles and what isn't.
 
I'm using your new version but, yeah, the nicks don't appear on a dialog box (like with the triggered modifiers, for instance) - in fact, there is no dialog box for nicks.

As for the triggered modifiers, looking at it, there seems to be quite a few missing (voice_of_jesus, holy_comet, master_hunter, the_oubliette, peasants_upset...) and when I click on "i", none of these modifiers show up in the dialog box...

In your mod, do you have a nicknames.txt and/or event_modifiers_00.txt? Also are you using the mod dependency system (where your .mod file can load other .mod files)? If so, that might be an issue, my code is not well-tested there.
 
Before de_jure_liege only accepted THIS/PREV/etc. Now it will accept titles. Do you know if de_jure_liege_or_above, de_facto_liege, de_jure_vassal_or_below would also accept an actual title?

I removed the pacifist thing.

For localization warnings in history files, it seems like that could still be optionally localized, and so it is checked.

For static modifiers, I will think about how to deal with it, because it's somewhat hard to determine what is in landed_titles and what isn't.
de_jure_liege isn't only a condition, it is also a command, which is why it accepts titles. To my knowledge the rest do not accept it.
 
One thing that would also be nice to have is a way to search for unused flags. I've probably got quite a few lying around that aren't actually used for anything, but I currently have no way to find them.
Essentially, a reverse of finding missing flags.
 
One thing that would also be nice to have is a way to search for unused flags. I've probably got quite a few lying around that aren't actually used for anything, but I currently have no way to find them.
Essentially, a reverse of finding missing flags.

If you check "Trace Flags" under options, it should generate a few files that will have the information.
 
In your mod, do you have a nicknames.txt and/or event_modifiers_00.txt? Also are you using the mod dependency system (where your .mod file can load other .mod files)? If so, that might be an issue, my code is not well-tested there.


Yes, in my mod, there's a nicknames.txt (with mostly vanilla nicknames but also the Syren's added ones) and no event_modifiers_00.txt, I haven't been dealing with those.
As for having another .mod file, no, I haven't gone that route.

Is anyone else getting the same as me?

Shouldn't be hard to replicate this, right?


EDIT - And I'm thinking here... Even if the Validator is not picking from the mod's nicknames.txt, it would still have to recognize some (or... all?) of the vanilla nicks, right? :unsure:
 
Ah. I presume this will only check the "topmost" mod folder? Since vanilla/mods you include might have flags that you then decided to remove the titles for.
To my knowledge (though I haven't specifically tried) one cannot put flags in subfolders, yeah.