• 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.
Excel might help--I've been using it a lot to do mass-stuff lately--use _ as a divide, and then just re-arrange the columns, drop it into notepad++ and replace "[space]" with "_"

Ugh, that sounds like an annoying way to fix it especially since I can't use Excel (1. No License 2. I No Windows 3. I don't actually know how to use it). I'll just write a script to do it for me - or even better, I'm writing another automation tool that will generate these namelists for many cultures in a scalable manner (I think a program that does that exists but I wanted to make one that doesn't care about the existence of 00_cultures.txt and doesn't rely on a platform-specific compiler).

Do you know if I can have multiple variations of the same name in a single culture though? That will be really helpful when making this tool.
 
Last edited:
Ugh, that sounds like an annoying way to fix it especially since I can't use Excel (1. No License 2. I No Windows 3. I don't actually know how to use it). I'll just write a script to do it for me - or even better, I'm writing another automation tool that will generate these namelists for many cultures in a scalable manner (I think a program that does that exists but I wanted to make one that doesn't care about the existence of 00_cultures.txt and doesn't rely on a platform-specific compiler).

Do you know if I can have multiple variations of the same name in a single culture though? That will be really helpful when making this tool.
Well the Excel solution would work equally well in OpenOffice or Libre Office, no Windows or MSOffice licence required. Still, if you're going to write a script/tool to do that kind of thing anyway you might as well do that.

AFAIK you can have any number of variations of a name per culture. I think the point of the equivalent tag is simply to prevent people with equivalent names from starting a new series of regnal names (so you don't get say Aonghas I followed by Angus I or Wilhelm II followed by William I but rather Angus II and William III resp.)
 
Well the Excel solution would work equally well in OpenOffice or Libre Office, no Windows or MSOffice licence required. Still, if you're going to write a script/tool to do that kind of thing anyway you might as well do that.

AFAIK you can have any number of variations of a name per culture. I think the point of the equivalent tag is simply to prevent people with equivalent names from starting a new series of regnal names (so you don't get say Aonghas I followed by Angus I or Wilhelm II followed by William I but rather Angus II and William III resp.)

Yeah, I just don't know how to do it with spreadsheets. More comfortable writing code and dealing with plaintext CSVs haha.

Thanks.
 
I realize this might be a little specialized for this thread and if it is I'll repost it to the HIP sub-forum, but I'm trying to create a specific condition in HIP's crusade CB which allows for all other Christian religions and heresies to declare Crusades against Messalians and vice-versa. I'm absolutely terrible with modding and nothing that I try seems to work, though. I have the Holy War CB functioning as I want it to (bar a bit of odd behavior where I can't seem to declare war as some characters in situations where I should be able to, but it's functioning well enough for me to leave it be), but I can't seem to apply the same solution to the Crusade CB and get it working.

For the Holy War CB I used:

Code:
OR = {
                NOT = { religion_group = FROM }
                is_heresy_of = FROM
                is_parent_religion = FROM
                AND = {
                    religion = messalian
                    FROM = {
                        OR = {
                            religion = catholic
                            religion = cathar
                            religion = fraticelli
                            religion = waldensian
                            religion = lollard
                            religion = miaphysite
                            religion = monophysite
                            religion = orthodox
                            religion = bogomilist
                            religion = paulician
                            religion = monothelite
                            religion = iconoclast
                            religion = nestorian
                            religion = adoptionist
                            religion = arian
                            religion = maronite
                            religion = apostolic
                            religion = tondrakian
                        }
                    }
                }
                AND = {
                    OR = {
                        religion = catholic
                        religion = cathar
                        religion = fraticelli
                        religion = waldensian
                        religion = lollard
                        religion = miaphysite
                        religion = monophysite
                        religion = orthodox
                        religion = bogomilist
                        religion = paulician
                        religion = monothelite
                        religion = iconoclast
                        religion = nestorian
                        religion = adoptionist
                        religion = arian
                        religion = maronite
                        religion = apostolic
                        religion = tondrakian
                    }   
                    FROM = { religion = messalian }
                }

but, as I said, the same doesn't appear to work when plugged into the Crusade CB.

I can't reiterate enough that I barely know what I'm doing. If anybody has any idea of how I might apply something like this to the HIP Crusade CB, I ask that you please be patient and walk me through it thoroughly. A code example of what you mean would also do wonders.
 
I realize this might be a little specialized for this thread and if it is I'll repost it to the HIP sub-forum, but I'm trying to create a specific condition in HIP's crusade CB which allows for all other Christian religions and heresies to declare Crusades against Messalians and vice-versa. I'm absolutely terrible with modding and nothing that I try seems to work, though. I have the Holy War CB functioning as I want it to (bar a bit of odd behavior where I can't seem to declare war as some characters in situations where I should be able to, but it's functioning well enough for me to leave it be), but I can't seem to apply the same solution to the Crusade CB and get it working.

For the Holy War CB I used:
[snip]
but, as I said, the same doesn't appear to work when plugged into the Crusade CB.

I can't reiterate enough that I barely know what I'm doing. If anybody has any idea of how I might apply something like this to the HIP Crusade CB, I ask that you please be patient and walk me through it thoroughly. A code example of what you mean would also do wonders.

The code looks like it should work (at least at first glance; there could be some minor typo that I miss), provided everything else is correct and you replace the obvious religion checks. The main reasons I could think of for why it possibly doesn't work is that you either have a contradictory condition somewhere (for example, having something that prohibits Christian-on-Christian crusades until a certain flag is set and then not setting that flag), that you don't plug it in everywhere you need it (for example, if you leave out the is_valid part your crusades would invalidate if you targeted a Messalian as a Catholic and vice versa), or that you are missing some condition for being able to use the CB (for example, only rel heads can call crusades (at least in vanilla; HIP might have done something about that condition that I'm unaware of), so if you aren't one you can't use the CB).

Something that could be helpful both here and with the holy war CB that had some oddities is checking the CBs with the Validator (http://forum.paradoxplaza.com/forum...tor-Find-errors-quickly-and-with-minimal-pain!) to see if it finds any issues with those CBs.
 
How do I change the culture of a nomad in a save game?

Look up the charid in the game (open the console, type charinfo, and put the cursor over the portrait of the character in question), save the game (untick the "compress" box as you otherwise need to export it), then find that character in the save and just change the culture.
 
The code looks like it should work (at least at first glance; there could be some minor typo that I miss), provided everything else is correct and you replace the obvious religion checks. The main reasons I could think of for why it possibly doesn't work is that you either have a contradictory condition somewhere (for example, having something that prohibits Christian-on-Christian crusades until a certain flag is set and then not setting that flag), that you don't plug it in everywhere you need it (for example, if you leave out the is_valid part your crusades would invalidate if you targeted a Messalian as a Catholic and vice versa), or that you are missing some condition for being able to use the CB (for example, only rel heads can call crusades (at least in vanilla; HIP might have done something about that condition that I'm unaware of), so if you aren't one you can't use the CB).
You've just summed up the problem, really. There are a variety of conditions in the CB that call back to events and flags that I'm not certain of the triggers for (plus several that are simply regular religion-based restrictions), and I'm not quite sure how to interact with any of them. As I said, I'm not the best at this. Honestly I barely even know what I'm looking at.

Not to spam, but I'm going to put up the valid parts of the CB that I think could be mucking something up. Maybe you'll see something I don't:

Code:
can_use = {
        emf_cb_can_use_trigger = yes
        ROOT = {
            can_call_crusade = yes
            any_demesne_title = { is_titular = no }
        }
        FROM = {
            OR = {
                NOT = { religion_group = ROOT }
                is_heresy_of = ROOT
                is_parent_religion = ROOT
                AND = {
                    religion_group = pagan_group
                    NOT = { religion = ROOT }
                }
                AND = {
                    ROOT = { religion = paulician }
                    NOT = { religion = ROOT }
                }
                AND = {
                    ROOT = { religion = kharijite }
                    NOT = { religion = ROOT }
                }
            }
        }
        NOT = { # Not if the Schism has been mended
            AND = {
                OR = {
                    religion = catholic
                    religion = fraticelli
                }
                has_global_flag = schism_mended
                NOT = { has_global_flag = cath_schism_mended }
                NOT = { has_character_flag = reclaim_heresy_crusade }
            }
        }

Code:
can_use_title = {
        emf_cb_can_use_de_jure_title_trigger = yes
        FROM = {
            any_realm_title = { de_jure_liege_or_above = PREVPREV }
            independent = yes # Don't declare Crusades on revolters - chances are high the war will invalidate
            OR = {
                num_of_realm_counties = { value = 6 title = PREV }
                ROOT = { has_character_flag = reclaim_heresy_crusade }
            }
        }
      
        # Restrictions on crusade targets for AI religion heads
        OR = {
            # Religion head is a player
            ROOT = { ai = no }
            # This is a special chain
            ROOT = { has_character_flag = reclaim_heresy_crusade }
            # The target owns a holy site within that kingdom title
            FROM = {
                any_realm_title = {
                    de_jure_liege_or_above = PREVPREV
                    is_holy_site = ROOT
                }
            }
            # The target owns a province of the religion within that kingdom title
            FROM = {
                any_realm_title = {
                    tier = COUNT
                    de_jure_liege_or_above = PREVPREV
                    location = { religion = ROOT }
                }
            }
            # A ruler of the religion either owns a province in that kingdom or is neighboring
            any_direct_de_jure_vassal_title = {
                any_direct_de_jure_vassal_title = {
                    location = {
                        OR = {
                            owner = { religion = ROOT }
                            any_neighbor_province = { owner = { religion = ROOT } }
                        }
                    }
                }
            }
        }

Code:
is_valid = {
        ROOT = { can_call_crusade = yes }
        FROM = {
            OR = {
                NOT = { religion_group = ROOT }
                is_heresy_of = ROOT
                is_parent_religion = ROOT
                AND = {
                    religion_group = pagan_group
                    NOT = { religion = ROOT }
                }
                AND = {
                    ROOT = { religion = paulician }
                    NOT = { religion = ROOT }
                }
                AND = {
                    ROOT = { religion = kharijite }
                    NOT = { religion = ROOT }
                }
            }
        }
    }

Hopefully you'll see what could be causing the problem and you can tell me what I need to do to get everything playing together nicely.

Something that could be helpful both here and with the holy war CB that had some oddities is checking the CBs with the Validator (http://forum.paradoxplaza.com/forum...tor-Find-errors-quickly-and-with-minimal-pain!) to see if it finds any issues with those CBs.
I'll take a look at it and see if the Validator finds anything, but I honestly doubt that's the issue. The code I posted previously functions properly in the Holy War CB and I made sure my brackets were right when I tested it in the Crusade CB, so I think it's rather safe to say there's either a conflict in the CB itself or I perhaps placed the code in the wrong portion of the CB.

EDIT: Yep, Validator came up clean of any issues my changes would have caused to the CB. There's either some sort of conflict or my test simply isn't triggering the Crusades as it should. I'll try testing again to make sure the latter isn't the problem, although that's another possibility I seriously doubt.
 
Last edited:
Just to clarify: Are you your own religion head? If you aren't, you can't call any crusades (though your rel head might be able to).

Aside from that, the triggers being evaluated could be all kinds of messy conditions, so take a look at them to make sure that nothing there disables the CB based on the conditions under which you are attempting to call it. You should also make sure that the conditions about holy sites, counties with your religion, and/or neighbouring realm conditions actually are fulfilled so that you aren't targeting a character that isn't valid due to that.
 
Just to clarify: Are you your own religion head? If you aren't, you can't call any crusades (though your rel head might be able to).

Aside from that, the triggers being evaluated could be all kinds of messy conditions, so take a look at them to make sure that nothing there disables the CB based on the conditions under which you are attempting to call it. You should also make sure that the conditions about holy sites, counties with your religion, and/or neighbouring realm conditions actually are fulfilled so that you aren't targeting a character that isn't valid due to that.
This might be a bit of a miscommunication on my part. In this circumstance I'm not trying to call a Crusade or have a Crusade called upon me personally, I'm merely trying to establish a test scenario where the CB functions properly, IE an AI Pope calls a Crusade for a Messalian territory and an AI Messalian High Priest calls a Crusade for a Christian target, so that I know the modifications I've made to the CB work at all. So far a Messalian Jerusalem has failed to proc the Catholic Crusade warm-up event entirely, which leads me to believe the whole thing is shot.

I've just considered that I might want to add my initial code to both the "can_use" and "is_valid" sections of the above CB, however. Previously I only included it under "can_use," which might be the problem. Although I again stress I basically have no idea what I'm doing.
 
Check to make sure that the event in question doesn't have contradictory conditions as it might not be a CB issue (unless you mean the event that fires the moment a crusade is called as opposed to the "Funny Hat Guy wants to go crusading sometime in the future!" event). If it only triggers for Catholic heretics and heathens, a Messalian Jeurisalem will never trigger the event (unless they aren't part of the Christian religion group or become Catholic heretics, which would remove the need to alter the CB as they already would fulfil the conditions then).
 
Check to make sure that the event in question doesn't have contradictory conditions as it might not be a CB issue (unless you mean the event that fires the moment a crusade is called as opposed to the "Funny Hat Guy wants to go crusading sometime in the future!" event). If it only triggers for Catholic heretics and heathens, a Messalian Jeurisalem will never trigger the event (unless they aren't part of the Christian religion group or become Catholic heretics, which would remove the need to alter the CB as they already would fulfil the conditions then).
Mhm, I considered that possibility just a few moments before you posted. This CB change is for a game where Crusades are enabled already so the actual process of enabling doesn't matter much to me, so I switched Rome over to a Muslim ruler for a few months for the event to fire and then switched back.

So far the results are still negative--the Pope continues to call Crusades elsewhere--but I'll keep trying to make sure it's not just a bad sample on my part.
 
Mhm, I considered that possibility just a few moments before you posted. This CB change is for a game where Crusades are enabled already so the actual process of enabling doesn't matter much to me, so I switched Rome over to a Muslim ruler for a few months for the event to fire and then switched back.

So far the results are still negative--the Pope continues to call Crusades elsewhere--but I'll keep trying to make sure it's not just a bad sample on my part.

That might also be due to crusade weights or sheer bad luck, so you might have a working CB. Something you could do is to use the console to force the Pope to become a regular feudal and switch over to him (while the game is paused) before the crusade is called and then see if you can use the CB (make sure that a crusade can be called on someone else on the same day if it doesn't work so that you didn't mistakedly switch over while the cooldown from the last crusade still is active).
 
That might also be due to crusade weights or sheer bad luck, so you might have a working CB. Something you could do is to use the console to force the Pope to become a regular feudal and switch over to him (while the game is paused) before the crusade is called and then see if you can use the CB (make sure that a crusade can be called on someone else on the same day if it doesn't work so that you didn't mistakedly switch over while the cooldown from the last crusade still is active).
This was a good idea, but unfortunately it's only confirmed that the CB isn't working: the Pope doesn't have the ability to call a Crusade against my Messalian Seljuks.

At this point I don't have any clue what could be wrong. I'm not skilled enough to check any further than I already have on my end. Would you perhaps be willing to look at my Crusade CB in its entirety?
 
This was a good idea, but unfortunately it's only confirmed that the CB isn't working: the Pope doesn't have the ability to call a Crusade against my Messalian Seljuks.

At this point I don't have any clue what could be wrong. I'm not skilled enough to check any further than I already have on my end. Would you perhaps be willing to look at my Crusade CB in its entirety?

That's too bad. I don't know if I would be able to spot anything in the CB and don't know when I would have the time to give it more than a cursory glance, but if you put it here (along with the definitions for the emf_cb_can_use_trigger and emf_cb_can_use_de_jure_title_trigger) someone might be able to take a look at it. You could also check the HIP subforum if someone there knows what is up.
 
What file would I find these in? I'd be more than happy to post everything both here and in the HIP subforum, so long as I've got everything I need to ask for help with.

I think you will find them in one file or another in the HIP/common/scripted_triggers folder.
 
Here's my cb_types file and my EMF scripted triggers file for CBs. I figured it would be easier to simply upload both.

For those who may be able to help me, as I posted earlier, my intent is to get the Crusade CB to allow the Messalian religious head to declare Crusades on all other Christian religions, and for all other Christian religions which can declare Crusades to be able to call them against Messalians. So far I've failed dismally when using the same code which works (at least partially) in the Holy War CB, leading me to believe there's some other problem. I'm terrible at modding and I've no clue what it could be, however, so any and all help is appreciated.
 

Attachments

  • 00_cb_types.txt
    494,1 KB · Views: 43
  • emf_cb_triggers.txt
    7 KB · Views: 12
Ah, thanks. This will be painful to fix.

EDIT: Oh and one more thing. Can I have multiple variants of the same name in the same culture? So Alfr_Alf and Alfur_Alf?
Yes, multiple variants in one culture is fine. Irish has both Seán_John and Seoán_John, Scottish has both Iain_John and John_John, while Polish has Jan_John, Janislaw_John, Janko_John, and Janusz_John! (Altogether, there are 54 entries for *_John.)

As for painful… with a text editor like TextWrangler, it's possible to do a multi-file grep find-and-replace. Of course, it can also be dangerous, so best to do it as just find first, make sure it's right, then do the find/replace.