• 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.
Assuming you mean with your localisation files, I would think that using [<scope>.GetTitledName] should work. If that doesn't work you can always do it the hard way [<scope>.GetJobTitle] [<scope>.GetFirstName]. This might help: http://www.ckiiwiki.com/Localisation
I don't understand what you're saying.

I mean how how the character's name is displayed. Like "Princess Mathilda of England" or "Kaiser Otto the Great". If a character's is unlanded and doesn't have any minor titles they are just called by their given name. I want to ensure that when someone get a council job they get that title before their name.

I tried adding show_as_title = yes in 00_job_titles.txt but apparently that doesn't work.
 
I don't understand what you're saying.

I mean how how the character's name is displayed. Like "Princess Mathilda of England" or "Kaiser Otto the Great". If a character's is unlanded and doesn't have any minor titles they are just called by their given name. I want to ensure that when someone get a council job they get that title before their name.

I tried adding show_as_title = yes in 00_job_titles.txt but apparently that doesn't work.
He was talking about displaying it e.g. in an event, not in the character screen as you seem to mean.
I am not sure as I don't have experience in that field, but I remember "dignity" deciding which title the AI would take as its primary - and councilor and minor titles seem to have dignity, too. So maybe try to increase the dignity of the councilor title? It's just a guess though...
 
Trying to figure out whats causing the following crash, the mod does not edit the files in the list
Code:
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_inheritance_bg
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_entry_bg
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_entry_bg4
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/council_laws_entry_bg
[eu3idler.cpp:13357]: Attempting to interface texture on inexistent sprite type: GFX_ally_orders_bg
 
Hi is there a way to trigger a law change e.g when you declare a war a law changes and then when the war is over it reverts, automatically .
 
Hi is there a way to trigger a law change e.g when you declare a war a law changes and then when the war is over it reverts, automatically .

Yes.

Use on action events for "on_war_started", "on_war_ended_victory", "on_war_ended_invalid", "on_war_ended_whitepeace" and "on_war_ended_defeat" (there isn't a simple "on_war_ended" on action). You can set a flag saying that the law exists when the war starts, and remove the law. And then, when the war ends, set the law back if the flag is active, and clear the flag.
 
Yes.

Use on action events for "on_war_started", "on_war_ended_victory", "on_war_ended_invalid", "on_war_ended_whitepeace" and "on_war_ended_defeat" (there isn't a simple "on_war_ended" on action). You can set a flag saying that the law exists when the war starts, and remove the law. And then, when the war ends, set the law back if the flag is active, and clear the flag.
Thanks.
Also is how do change which groups of people can form mercenary company's and raiding adventurers?
 
Last edited:
Trying to figure out whats causing the following crash, the mod does not edit the files in the list
Code:
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_inheritance_bg
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_entry_bg
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_entry_bg4
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/council_laws_entry_bg
[eu3idler.cpp:13357]: Attempting to interface texture on inexistent sprite type: GFX_ally_orders_bg
From the CK2+ bug report thread:
The Checksum is correct (+India) and i have not altered anything.
I am updated to the current patch and DLC.
I have no other mods installed.
Game cache is validated.

The game keeps crashing soon after loading the save, most commonly at July 17th, but sometimes on other dates. The crashing first appeared a couple of in-game years before that, but reloading the game 2 times made the crash disappear. This one doesn't go away though.

the error.log looks like this:

[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_inheritance_bg
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_entry_bg
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/laws_entry_bg4
[eu3idler.cpp:13345]: Failed to find a re-skinned texture: gfx/interface/muslim_interface/council_laws_entry_bg
[eu3idler.cpp:13357]: Attempting to interface texture on inexistent sprite type: GFX_ally_orders_bg
This is known vanilla crash. I'm investigating a workaround for it.
I don't know what this is at all, but it seems @vukica knows, and it seems to be vanilla.
 
From the CK2+ bug report thread:

I don't know what this is at all, but it seems @vukica knows, and it seems to be vanilla.
I figured out the issue, had to do with the iqta gov form after removing the muslim group
 
I was wanting to make use of some of the _new_ portrait mechanics, but I am having trouble fully understanding them for some reason. So, starting from http://www.ckiiwiki.com/Portrait_modding I tried to come up with something simple that I could already do by editing portrait_properties, but I wanted to do it in a way I didn't have to edit that file. I failed.

I was hoping that I could get some ideas and/or instructions beyond what is current on the wiki.

For a simple project to learn how to best utilize the new portrait system, lets say I start out with a new trait called "beardless" and want anyone with that trait to be unable to have bears. As I said above, this is easy enough through editing portrait_properties, especially with the new hide_layer command. Here is my initial (failed) attempt using the new system, with questions for anyone who can help me inside of it as comments:
Code:
spriteTypes = {
    portraitType = {
        name = "PORTRAIT_beardless"
        
        weight = {
            additive_modifier = {
                value = 10000
                portrait_age > child
                portrait_is_female = no
                
                # This one here causes me grief.  If I say yes, then I lose clothing
                # or get clothing for the wrong culture.  If I say no, then I get a white
                # square messing up the portrait.                 
                portrait_clothing = yes
                
                portrait_has_trait = beardless    # this part at least seems to work.
            }
        }
        
        # I have made custom races before, so I am relatively familiar with the parts that make up
        # a portrait.  I know that a "p" number is an index reference within the "properties" string
        # in a character, and likewise the "d" number is an index reference within the "dna" string.
        # I get that c0-c5 represent layers of hair and clothing.  What I don't get is what all I can
        # and can't do with the layer section.  Being a trait, I'd want it as universal as possible
        # without relying on cultural clothing like I have done below.
        layer = {
            "GFX_western_male_clothes_behind:p3:c0"        #
            "GFX_western_male_clothes:p3:c2"            #
            "GFX_empty:c3"                                #
            "GFX_empty:c5"                                #
            "GFX_empty:c1"                                #
            "GFX_empty:p3:c4"                            #
        }
        
        # I got the following for the "prisoner" example where a prisoner's hair and beard are shaved. 
        # I would think hide_layer would be better, but I am not sure how to make it work in this kind
        # of a file. I have used it in portrait_properties, but again, I want to get away from that method.
        allow_property_values = {
            4 = {
                0 = {
                    #
                }
            }
        }
    }
}

I appreciate any assistance I can get at better understanding the new and improved system.
 
I was wanting to make use of some of the _new_ portrait mechanics, but I am having trouble fully understanding them for some reason. So, starting from http://www.ckiiwiki.com/Portrait_modding I tried to come up with something simple that I could already do by editing portrait_properties, but I wanted to do it in a way I didn't have to edit that file. I failed.

I was hoping that I could get some ideas and/or instructions beyond what is current on the wiki.

For a simple project to learn how to best utilize the new portrait system, lets say I start out with a new trait called "beardless" and want anyone with that trait to be unable to have bears. As I said above, this is easy enough through editing portrait_properties, especially with the new hide_layer command. Here is my initial (failed) attempt using the new system, with questions for anyone who can help me inside of it as comments:

I appreciate any assistance I can get at better understanding the new and improved system.

You are right that "portrait_clothing = no" is just broken.
portrait_properties is the simpler method for this. With the portrait_properties folder you can add an override for just the beard property in a separate file and limit the conflicts to a reasonable level.
 
Hi, so im trying to make a mod which activates a custom law which I have made.
The law seems to work fine, I can manually change it (from no to yes) and it has the desired effect.
But in this mod I want this law to change as soon as a war is declared

In the on_actions file I have linked the event to the "on_action" ( I have no idea about the terms when it comes to modding)

on_war_started = {
events = {
CM.10012
rasiethebanners.0001 # this is the event
}
}

As you can probably guess when I declare a war the law does not change.
I feel as if the problem lies with in how I coded the event (which lies below)


namespace = raisethebanners
character_event = {
id = rasiethebanners.0001

is_triggered_only = yes

hide_window = yes

immediate = {
add_law = pledge_on
}
}

Any help would be greatly appreciated
 
Hi, so im trying to make a mod which activates a custom law which I have made.
The law seems to work fine, I can manually change it (from no to yes) and it has the desired effect.
But in this mod I want this law to change as soon as a war is declared

In the on_actions file I have linked the event to the "on_action" ( I have no idea about the terms when it comes to modding)

on_war_started = {
events = {
CM.10012
rasiethebanners.0001 # this is the event
}
}

As you can probably guess when I declare a war the law does not change.
I feel as if the problem lies with in how I coded the event


namespace = raisethebanners
character_event = {
id = rasiethebanners.0001

is_triggered_only = yes

hide_window = yes

immediate = {
add_law = pledge_on
}
}

Any help would be greatly appreciated

You need to set the title for the primary title of the attacker, so go into the primary_title scope before setting the law and it should work.
 
I had a look at your code, and I noticed that your event had this in one of the options:
Code:
          random = {
            chance = 55
            change_learning = 4
            change_diplomacy = 6
            add_character_modifier = {
                name = popular_ruler
                duration = 365
            }
            chance = 20
            add_character_modifier = {
                name = accused_dark_magic
                duration = 720
            }
        }
You can't have multiple chances in a random block like that. You'll need to use a random_list instead.
Code:
        random_list = {
            55 = {
                change_learning = 4
                change_diplomacy = 6
                add_character_modifier = {
                    name = popular_ruler
                    duration = 365
                }
            }
            20 = {
                add_character_modifier = {
                    name = accused_dark_magic
                    duration = 720
                }
            }
            25 = { }
        }
Thank you so much! Do you think this is the reason that when I tried to trigger the event from the console it wouldn't load?
 
You need to set the title for the primary title of the attacker, so go into the primary_title scope before setting the law and it should work.
So like this?
immediate = {
attacker = {
primary_title = {
add_law = pledge_on
}
}
}
 
So like this?
immediate = {
attacker = {
primary_title = {
add_law = pledge_on
}
}
}

I believe you need FROM or FROMFROM instead of attacker. Look at the on_actions file.
 
Hello, tried do setlement decision but I couldn't make make "allow = {" work like I want.
I want to be able to DO setlement decision if it is minimal distance 50 and maximum distance 250. I was able to make it work but it takes distance from my NOMAD capital.
I want it to take be distance from my borders/closest province. I would be very thankful.

Acutally it best would be if I could target neighborn settements but I just could not figure out how to do it.


Also I could not find anywhere on wiki what is difference beetween who/character. I only know that character does not work in this case.

Code:
settlement_decisions = {
    # \ Find Herdstone
    Find_beast_paths_in_province = {       
        only_playable = yes                       
        is_high_prio = yes
    
        from_potential = {                   
            OR = {
            trait = creature_beastman         
            }
        }
    
        allow = {
            # has_siege = yes
            # has_empty_holding = 1
            location = {
                AND = {
                    NOT = {
                        distance = {
                        who = FROM
                        value = 250
                        }
                    }
                    distance = {
                        who = FROM
                        value = 50
                    }
                }
            }                               
        }
    
    
        potencial = {                               
            is_capital = yes
        }
    
        effect = {
            location = {
                build_holding = {
                    type = tribal
                    holder = FROM
                }
            }
        }
    
        ai_will_do = {
            factor = 1
        }
    }
}    # /
 
Last edited:
Hello, tried do setlement decision but I couldn't make make "allow = {" work like I want.
I want to be able to DO setlement decision if it is minimal distance 50 and maximum distance 250. I was able to make it work but it takes distance from my NOMAD capital.
I want it to take be distance from my borders/closest province. I would be very thankful.

Acutally it best would be if I could target neighborn settements but I just could not figure out how to do it.


Also I could not find anywhere on wiki what is difference beetween who/character. I only know that character does not work in this case.

Code:
settlement_decisions = {
    # \ Find Herdstone
    Find_beast_paths_in_province = {   
        only_playable = yes                   
        is_high_prio = yes
 
        from_potential = {               
            OR = {
            trait = creature_beastman     
            }
        }
 
        allow = {
            # has_siege = yes
            # has_empty_holding = 1
            location = {
                AND = {
                    NOT = {
                        distance = {
                        who = FROM
                        value = 250
                        }
                    }
                    distance = {
                        who = FROM
                        value = 50
                    }
                }
            }                           
        }
 
 
        potencial = {                           
            is_capital = yes
        }
 
        effect = {
            location = {
                build_holding = {
                    type = tribal
                    holder = FROM
                }
            }
        }
 
        ai_will_do = {
            factor = 1
        }
    }
}    # /
Okay, so let me make sure I understand you correctly:
You want to make a decision that
a) your "beastman" character can do
b) on a province that is
c) at least 50 and less than 250 away from him neighboring your character's location.​

Is that right, or do you mean something different?

About "who" instead of "character": That has to do with its position: Inside the "distance" check, it tells what to check against - you can also check the distance of provinces, which means "who" can also be another province!
"Character", on the other hand, is always used on its own (so not inside a clause like "distance"), and can obviousely only be a character.
The thing is really that the "who" belongs to the "distance" check - without it, "distance" would not work - nor would "who" on its own; they belong together.

As for the actual question: If I understand correctly and you want to check the neighbor province, you could try this:
Code:
allow = {
    # has_siege = yes
    # has_empty_holding = 1
    location = {    # location of the settlement            # <- This here is later referenced with "PREVPREVPREV"
        FROM = {    # your character                        # (<- This would later be PREVPREV)
            location = {    # your character's location        # (<- This would later be PREV)
                any_neighbor_province = {    # any province next to your character
                    province = PREVPREVPREV    # = any province next to your character is the province where the settlement is located in
                }
            }
        }
    }                           
}

If you want this to work also in empty provinces, you should consider making it a title_decision instead with a "tier = count" (= only works on counties, that is provinces) check in its potential section.

EDIT: Also, you misspelled "potential" in your code. And I just see - you want this to work only on your capital then? I don't understand what this decision is supposed to do now...
 
Last edited:
You are right that "portrait_clothing = no" is just broken.
portrait_properties is the simpler method for this. With the portrait_properties folder you can add an override for just the beard property in a separate file and limit the conflicts to a reasonable level.

Thank you for the response. Maybe in 2.8 more of this feature will be usable. :)