Jump to content

[Stellaris] Modding Help, Ideas and Suggestions


Recommended Posts

16 hours ago, darkspleen said:

I AM working on it. Its just.... good god there's a lot more things to fix then I was initially expecting. And life has me quite busy. My hope is to have an updated version up on Monday. We'll see if I can actually make it happen or not, but that is my goal at this point in time.

No worries.  I'll honestly be surprised if any of the mods I've been using get updated this year.  Pleasantly surprised, but surprised.

Link to comment

I just found out the following code into 00_species_classes.txt

non_randomized_portraits = {
	"xyz"
}

what does it mean? Does it mean, that this portraits will never be seen as a random species ingame? So if I want to see it I have to disable this code?

Link to comment
5 hours ago, CaCO3 said:

I tried to create my own name list, but sadly it does not show up? Any suggesstions? Are there any other files I have to edit except the typical namelist.txt?

I don't think that there are other files to edit. I've copied the human namelist file, changed the name, and it showed up.

 

If it does not show up at all, check that the first line is unique (the one that says HUMAN1 = { ... in the human namelist). Needless to say, make sure the file does not have any syntax errors either.

Link to comment
16 hours ago, figandsalt said:

Is it possible to modify a preset empire with, say four or five different species living on the home planet, while one of them being the primary species and all of them have equal civil rights?

There is Syncretic Plus. I don't think it's been updated for 2.2, and I'm not sure how it works, but one of the civics starts with 4 pops.

 

Though that may just mean 4 pops of a single species.

 

Another thing I can think of is adding something to the "generate_start_pops" function in the "start_of_game_effects.txt" file that force-spawns pops of multiple species. Not really sure how to set it up since I just copy pasted the syncretic evolution function when I made a "fix" for some of the slavery changes made in 2.2

 

That or make a custom event that replaces pops already spawned with the ones you want. To be honest though I haven't really touched anything to do with population replacing, but those are places I can think of to start at least.

 

-------

9 hours ago, CaCO3 said:

I tried to create my own name list, but sadly it does not show up? Any suggesstions? Are there any other files I have to edit except the typical namelist.txt?

Guessing you mean name list for leaders/ships/planets/etc? Copying and renaming a vanilla name list file into your mod's "common\name_lists" folder is recommended since the structure is already set up. The key thing is the primary bracket.

NAMELIST = {
}

Replacing "NAMELIST" with whatever you want to call it

 

After that you just put this in a localisation file:

name_list_NAMELIST:0 "This is the text that shows up in the game menu"

Replacing "NAMELIST" again and that's all there really is to it. If you still have trouble just post the code here and I can take a look at it.

 

-------

2 hours ago, RavinBeast said:

Does Anyone Know How To Add Xenophobia To A Species Trait? Or How To Modify Ruler Age Without Effecting The Age Of ALL Leaders Just The Ruler?

"pop_ethic_xenophobe_attraction_mult =" is the modifier for Xenophobe Ethics Attraction. Assuming it works with species traits. Governing Ethics Attraction does something similar so it should though.

 

Modifying the age of the ruler and only the ruler requires the creation of a leader trait with either the "leader_age =" modifier or the "immortal_leaders = yes" flag (not a modifier). After that you either apply the trait to your ruler via console commands in game or create a mini event to apply it automatically.

 

-------

 

Also, does anyone know where all the coding is for the new Interspecies ascension perk? I found the actual perk coding and some flags for species traits that I assume adjust the growth rates, but I can't find the actual script that ties everything together.

Link to comment
4 hours ago, Raana said:

-------

"pop_ethic_xenophobe_attraction_mult =" is the modifier for Xenophobe Ethics Attraction. Assuming it works with species traits. Governing Ethics Attraction does something similar so it should though.

 

Modifying the age of the ruler and only the ruler requires the creation of a leader trait with either the "leader_age =" modifier or the "immortal_leaders = yes" flag (not a modifier). After that you either apply the trait to your ruler via console commands in game or create a mini event to apply it automatically.

 

-------

Thanks For The Help.

Link to comment

Anyone how script job to trigger bonus only if any other species on planet has a certain trait, I make something like that:

triggered_planet_modifier = {
potential = {
any_pop = {
has_trait = trait_brood_parasite
}
}
modifier = {
planets_food_produces_add = 0.5
}
}
but it doesn't work since it's a wrong scope, and cant think about any way to change scope to current planet
Link to comment
17 hours ago, Raana said:

Guessing you mean name list for leaders/ships/planets/etc? Copying and renaming a vanilla name list file into your mod's "common\name_lists" folder is recommended since the structure is already set up. The key thing is the primary bracket.


NAMELIST = {
}

Replacing "NAMELIST" with whatever you want to call it

 

After that you just put this in a localisation file:


name_list_NAMELIST:0 "This is the text that shows up in the game menu"

Replacing "NAMELIST" again and that's all there really is to it. If you still have trouble just post the code here and I can take a look at it.

Thanks for your help ... and I found my mistake ... *hides behind his shame* ... I used a wrong folder structure ...

 

Link to comment
6 hours ago, CaCO3 said:

Thanks for your help ... and I found my mistake ... *hides behind his shame* ... I used a wrong folder structure ...

 

Been there. Imagine a mod feature that has parts in three or more folders and you can't figure out what went wrong where. ?

Link to comment
9 hours ago, Raana said:

Been there. Imagine a mod feature that has parts in three or more folders and you can't figure out what went wrong where. ?

Yeah this is kinda bad. I do not know if I had found this mistake by myself ?

 

Today I tried to mod a solar system start. It works very well, but sadly I couldn't localise the planet names. I used this code

 

planet = {
		name = "Name_Soel"
		class = "pc_g_star"
		orbit_distance = 0
		orbit_angle = 1
		size = 30
		has_ring = no
	}

and the name of the planet ingame was: "Name_Soel".

 

I had a localisation file (yml) with the following code:

 

NAME_Soel:0 "Sol"

but this does not work. Is there any thing you have to do, so this works properly? I just changed everything so everyplanet just have this name line:

 

name = "Sol"

But if I want to translate the names in other languages it is kind of annoying ...

Link to comment

I've honestly never bothered with system localisations, since the only systems I've made so far have only been custom systems for me and my friends. Looking at the file though it seems the 0 after the : isn't needed, and make sure the file is in the localisation_synced folder instead of the regular localisation folder. If it still doesn't work then I have no idea.

Link to comment

So i decided along with new Expansion make my own "little" mod but first I spend some time on planning first phase which would be adding traits and jobs for pop but need help with naming jobs for pops. What I have additional traits (which inspired by sexual gameplay mod at least their names as modifiers would be quite different).

Traits:

#all_time_lactation (F)
#big_ejaculation (M)
#large_reproductive_organs (M)
#flexible_pussies (F)
#perfect_incubator (F)
#condensed_sperm (M)
#sexual_mastery (MF), sexually_inadequate (MF)
#sexually_submissive (MF)
#sexually_dominant (MF)
#bordeline_barren (F)
#bordeline_sterile (M)
#sex_pheromones (MF)
#alluring (MF)
#brood_parasite (M)
#intercompatible_womb (F)
#all_male
#all_female

Since English is not my language I would gladly receive any help with naming, describing etc. those traits. Of course if you are interested in description i can tell you what bonuses they provide for first phase.

 

As I mentioned above I also created jobs for our sexy pops, which lacks good names for them:

#food production 
#dairy cow, experienced dairy cow, lead dairy cow

#energy production
#prostitute, escort, geisha

#minerals
#skimpy clothed miner, tanned miner, exhibitionistic miner

#research
#slutty high schooler, naugthy teacher, hot researcher

#trade Value, amenities
#sexy high schooler, slutty clerk, hot manager

#alloys
#naughty metalurgist, dripping wet metalurgist, sex crazed metalurgist

#consumer goods
#busty craftsmen, hot artisan, sexy supervisor

#unity, amenites
#amateur porn actress, experienced porn actress, porn idol

#amenites pop growth
#sexy nurse, slutty doctor, hot professor

#naval capacity
#hot soldier, naughty officer, slutty general

#crime, unity
#busty police, hot detective, naughty commander

#unity, amenites
#slutty nun, sexy priestess, naughty head-priestess

you see what I meant by bad names for them, since I can't know English as good as native I made some simple name, if someone is willing to provide me better names for those jobs I would gladly receive help.

 

As currently state I made three food production jobs (truthfully it's one with little difference) and tested them so I could get how I should made those jobs working.

So for my idea each job would required to build building (dairy ranch for food chain jobs). Each building will be discovered with techs, currently they are a standard cost but I do plan to make them very cheap so it shouldn't slow down player/ai too much. Each building has 5 levels on first level it provide 2 worker jobs, and at five it provide six workers jobs, 3 specialist and one ruler. As you can guess the job chain has three jobs since it lowest job at worker level, and highest job at ruler level with specialist at the middle.

 

Here is my example job code for dairy_cow job: 

dairy_cow = {
    category = worker
    condition_string = DAIRY_COW_JOB_TRIGGER
    building_icon = building_food_processing_facility
    clothes_texture_index = 2

    possible = {
        has_trait = trait_all_time_lactation
    }

    resources = {
        category = planet_dairy_cows
        produces = {
            food = 6
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_alluring
        }
        modifier = {
            planet_dairy_cows_energy_produces_add = 0.5
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_charismatic
        }
        modifier = {
            planet_dairy_cows_energy_produces_add = 0.5
        }
    }

    triggered_planet_modifier = {
        potential = { 
            planet = {
                any_pop = {
                    has_trait = trait_brood_parasite
                }
            }
        }
        modifier = {
            planet_dairy_cows_food_produces_add = 0.5
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_fertile
        }
        modifier = {
            planet_dairy_cows_food_produces_add = 0.5
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_deviants
        }
        modifier = {
            planet_dairy_cows_food_produces_add = 0.5
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_perfect_incubator
        }
        modifier = {
            planet_dairy_cows_food_produces_add = 0.5
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_rapid_breeders
        }
        modifier = {
            planet_dairy_cows_food_produces_add = 1
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_conformists
        }
        modifier = {
            planet_dairy_cows_food_produces_add = 1
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_bordeline_barren
        }
        modifier = {
            planet_dairy_cows_food_produces_add = -1
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_conservational
        }
        modifier = {
            planet_dairy_cows_food_produces_add = -1
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_repugnant
        }
        modifier = {
            planet_dairy_cows_food_produces_add = -1
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_traditional
        }
        modifier = {
            planet_dairy_cows_food_produces_add = -1
        }
    }

    triggered_planet_modifier = {
        potential = { 
            has_trait = trait_slow_breeders
        }
        modifier = {
            planet_dairy_cows_food_produces_add = -1
        }
    }
    
    triggered_planet_modifier = {
        potential = { 
            has_job = dairy_cow
        }
        job_farmer_add = -1
    }

    weight = {
        weight = @sexy_economy_job_weight

        modifier = {
            factor = 1.3
            has_trait = trait_alluring
        }
        modifier = {
            factor = 1.3
            has_trait = trait_charismatic
        }
        modifier = {
            factor = 1.3
            has_trait = trait_fertile
        }
        modifier = {
            factor = 1.3
            has_trait = trait_deviants
        }
        modifier = {
            factor = 1.3
            has_trait = trait_rapid_breeders
        }
        modifier = {
            factor = 1.3
            has_trait = trait_conformists
        }
        modifier = {
            factor = 1.3
            has_trait = trait_perfect_incubator
        }
        modifier = {
            factor = 2
            has_trait = trait_sexually_submissive
        }
        modifier = {
            factor = 0.6
            has_trait = trait_bordeline_barren
        }
        modifier = {
            factor = 0.6
            has_trait = trait_repugnant
        }
        modifier = {
            factor = 0.6
            has_trait = trait_conservational
        }
        modifier = {
            factor = 0.6
            has_trait = trait_slow_breeders
        }
        modifier = {
            factor = 0.6
            has_trait = trait_traditional
        }
        modifier = {
            factor = 0.4
            has_trait = trait_sexually_dominant
        }
    }
}

As it was quite long post I would be glad for any feedback on my ideas if it worth to work on it and then share or maybe it's sucks so I should never publish this shit and return to being gamer.

 

ps. If I completed a first phase I would publish this to github or something similar which allows adult content since in second phase I plan to make some anime race with fitting clothes for above jobs.

Link to comment

Question for the modding hivemind:

 

I've been trying to start making some events for Stellaris (naughty ones, so that's why I'm asking here), and while I'm able to get my test event to fire when it should, the game seems unable to match my localization files to the relevant event. I've looked at Toronam's file structure and localization formatting (rock on, dude/dudette!) as well as the Stellaris wiki, and now I'm wondering if I'm either missing something obvious, or my Notepad isn't saving the .ymls properly.

 

I've whipped up the most basic localization file I could: I've confirmed that the events themselves are working, and they can display vanilla strings, but they can't display any of the strings in this file. Am I doing something wrong formatting-wise?

 

 

darg_fleetblah.yml

Link to comment
4 hours ago, Dargaron said:

Question for the modding hivemind:

 

I've been trying to start making some events for Stellaris (naughty ones, so that's why I'm asking here), and while I'm able to get my test event to fire when it should, the game seems unable to match my localization files to the relevant event. I've looked at Toronam's file structure and localization formatting (rock on, dude/dudette!) as well as the Stellaris wiki, and now I'm wondering if I'm either missing something obvious, or my Notepad isn't saving the .ymls properly.

 

I've whipped up the most basic localization file I could: I've confirmed that the events themselves are working, and they can display vanilla strings, but they can't display any of the strings in this file. Am I doing something wrong formatting-wise?

 

 

darg_fleetblah.yml

I didn't check the files but if localization doesn't work its probably doesn't saved in utf-8 with bom (not normal one). For localization it's need to be in these format

Link to comment

I'd need to see how the event is set up, but in general localisation is pretty straightforward in how it functions. The biggest things are making sure file location and spelling are all done correctly.

 

Post the event script real quick and I can see if something's off.

Link to comment

Thanks for the speedy replies, folks!

 

@dullman According to my Notepad++, the .yml file is being saved in UTF-8-BOM. The UTF-8-BOM entry is checked on my "encoding" tab, and I've already hit the "Convert to UTF-8-BOM" menu entry to see if that helped. I've even tried reinstalling Notepad++, just in case I missed an update.

 

@Raana Event file is below. I've confirmed that the events work, get triggered properly, and can display vanilla localization (You'll notice that I replaced the desc for dargfleet.2 with the Prethoryn arrival event in order to test that). I've also tried any variation I could think of for adding/removing quotation marks to the event and localization files, to see if I was screwing that up.

 

My Paradox modding strategy is to make a really basic event, ensure that it works, then add conditions/effects one at a time until something breaks or I have what I want, so eventually, these events will only trigger on destroying a Marauder Station, and will actually do something besides looking pretty.

 

Spoiler

namespace = dargfleet
#Marauder Gateway
country_event = {
    id = dargfleet.1
    title = "dargfleet.1.name"
    desc = "dargfleet.1.desc"
    
    picture_event_data = {
        room = marauder_capture_1_room
    }
    
    diplomatic = yes
    show_sound = event_default
    location = FROMFROM
    is_triggered_only = yes
    
    trigger = {
#        THIS = {
#            OR = {
#                has_ethic = fanatic_xenophobe
#                has_ethic = xenophobe
#                has_ethic = militarist
#                has_ethic = fanatic_militarist
#                }
#            }
        }
        
        immediate = {
            solar_system = { save_event_target_as = system_of_capture }
        }
        
        option = {
        name = "dargfleet.1.a"
        country_event = { id = dargfleet.2 }
        }
        
        option = {
        name = "dargfleet.1.b"
        country_event = { id = dargfleet.3 }
        }
    }
    
country_event = {
    id = dargfleet.2
    title = dargfleet.2.name
    desc = crisis.13.desc
    diplomatic = yes
    show_sound = event_default
    location = FROMFROM
    is_triggered_only = yes
    
    picture_event_data = {
        room = room = marauder_capture_2_room
    }
    
    option = {
        name = dargfleet.2.a
        ROOT = { add_unity = 5 }
        clear_event_target = system_of_capture
    }
}

country_event = {
    id = dargfleet.3
    title = dargfleet.3.name
    desc = dargfleet.3.desc
    diplomatic = yes
    show_sound = event_default
    location = FROMFROM
    is_triggered_only = yes
    
    picture_event_data = {
        room = room = marauder_capture_3_room
    }
    
    option = {
        name = dargfleet.3.a
        ROOT = { add_unity = 5 }
        clear_event_target = system_of_capture
    }
}

 

I should also note that, at the moment, the file structure is "Documents/Paradox Interactive/mod/dargmod/localisation/english/darg_fleetblah.yml" I based this file structure off of darkspleen's MASSA, but I've also tried moving the file to the localisation folder directly, the way that Toronam has it. Neither works properly.

Link to comment

My method for events usually involves reverse engineering existing events that function the same, or at least similarly, and adjusting them to do what I want them to do. Since it gives me a base to start from that I know works.

 

I'm a bit stumped as to why your localisation isn't working though. They all seem to match up like they should, and I've seen vanilla events that both do and don't use quotations. So I don't think those matter for most events (granted I tend to use them myself anyway just because it makes them easier to spot for me).

 

I would recommend adding the _l_english to the end of the filename as well. I'm not sure if localisation files are among them, but I think the game does get touchy with files sometimes if they lack certain filename cues.

 

I'm not sure what else to check though. Putting the file in an English folder in the localisation folder isn't required because one of my own workshop mods was fine with that setup until I decided to change it. Aside from typos though (for some reason I like typing localisation with a 'z') I'm not really sure what else to check...

Link to comment
5 hours ago, RavinBeast said:

I'm Looking To Create An Autocannon That Functions Just Like A Regular Autocannon But Can Also Function Like A Point-Defense Weapon, If Someone Could Show Me How To Accomplish This I'd Really Appreciate It.

 

 

Up front I can tell you that there's a lot that goes into custom weapons. Autocannons and point-defense both being single size weapons simplifies things a bit though.

 

Are you wanting to make one single weapon, or a tiered weapon chain?

 

Link to comment
14 hours ago, Raana said:

Up front I can tell you that there's a lot that goes into custom weapons. Autocannons and point-defense both being single size weapons simplifies things a bit though.

 

Are you wanting to make one single weapon, or a tiered weapon chain?

 

A Single Weapon

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more information, see our Privacy Policy & Terms of Use