Traits modding
Jump to navigation
Jump to search
Version

Please help with verifying or updating older sections of this article. At least some were last verified for version 2.6.
This article is for the PC version of Stellaris only.
This article is for the PC version of Stellaris only.
This page is about Traits modding, both Species Traits and Leader Traits. Traits are defined at "common/traits/xxx.txt".
Data Structure[edit | edit source]
Property | Required/Default | Species Traits | Leader Traits |
---|---|---|---|
cost = <int> | ![]() |
The cost of this trait. | Leader traits do also have "costs", see Leader modding for details. |
icon = <gfx file path> | gfx/interface/icons/traits/<trait key>.dds | Alternative icon of this trait. gfx/interface/icons/traits/<trait key>.dds | Leader traits always have this property specified because their icons are stored at "gfx/interface/icons/traits/leader_traits/xxx.dds". |
initial = <yes/no> | yes | If no, this trait cannot be picked in the empire creator and it cannot be added to a species template. | If no, this trait cannot be given to a leader upon leader generation. |
randomized = <yes/no> | yes | If no, this trait can't be picked by species random generator. | It's still unclear, because ![]() randomized = no but can stll be given to a newly generated leader.
|
modification = <yes/no> | yes | If no, this trait cannot be added to or removed from a species template. | It's still unclear, because leader traits always have modification = no .
|
improves_leaders = <yes/no> | no | If yes, this trait will have a tooltip that says leaders from this species will have traits that enhance them. Actually, those leader traits must be implemented elsewhere. | ![]() |
advanced_trait = <yes/no> | no | If yes, this trait is considered an advanced trait and can be added to or removed from a species template only if the empire has researched any technology with the feature flag "add_advanced_traits".
This permission overrides | |
forced_happiness = <yes/no> | no | If yes, Pops of a species with this trait will not be affected by happiness. | |
valid_for_all_ethics = <yes/no> | yes | Whether this trait is valid for all ethics. Will also need to list which ethics it's compatible with. | |
allowed_ethics = {ethic_xx ethic_yy} | ![]() |
The ethics this trait is valid for. Only put this if you have valid_for_all_ethics set to no. | |
sapient = <yes/no> | yes | Vanilla pre-sapient traits have sapient = no . Seems to allow the trait to be selected by trait = random_presapient_trait in a create_species effect
| |
immortal_leaders = <yes/no> | no | If yes, leaders from a species with this trait will be immortal. This will also generate an entry of "Immortal" in tooltip. | If yes, leaders with this trait will be immortal. This will also generate an entry of "Immortal" in tooltip. |
hide_age = <yes/no> | ![]() |
![]() |
If yes, leaders with this trait will have their age hidden in the leader tooltip. Only work for ruler traits. |
modifier | ![]() |
A block of Modifiers to be applied to Pops, Armies and Leaders of a species with this trait. | A block of Modifiers to be applied to the scope this Leader is assigned at.
|
triggered_pop_modifier = {
|
![]() |
Similar to the above, except it only applies if the potential property evaluates true. Multiple allowed (Pop scope). Modifiers in this block will not show in tooltips, and should be used in addition to a custom tooltip.
|
![]() |
growing_modifier assembling_modifier declining_modifier |
![]() |
Blocks of Modifiers to be applied to the Planet while a Pop of this species is growing / assembling / declining.
The trait |
![]() |
self_modifier | ![]() |
![]() |
A block of Modifiers to be applied only to the leader itself. Modifiers that affect leader experience gain, leader lifespan and leader cost / upkeep go here. |
custom_tooltip = <localisation key> | ![]() |
If specified, it will overwrite the generated tootlips based on modifiers. | |
custom_tooltip_with_modifiers = <localisation key> | ![]() |
If specified, will show the given tooltip in addition to the generated tootlips based on modifiers. | |
prerequisites = { tech_xxx } | ![]() |
This trait can't be added or removed by an Empire unless all technologies listed here have been researched. Vanilla unused. | This trait can't be given to a leader upon leader generation unless all technologies listed here have been researched. |
opposites = { trait_xx trait_yy } | ![]() |
List of trait keys to be mutually exclusive with this trait. | Only relevant upon leader generation, but only rulers will generate with 2 traits. This doesn't prevent excluded leader traits from being added by events. |
ai_weight | 100 | How much should the AI prioritize this trait when modifying species. The block can also contain conditional modifier tags, (empire scope, ROOT is the species). | How much should AI prioritize this trait when recruiting leaders and when assigning leaders to tasks. Although Vanilla only uses this on scientist traits it works for all classes. |
leader_age_min = <int> leader_age_max = <int> |
As set in common/defines/ | New leaders from this species will have their age randomized ranged among these properties. Vanilla use these to make ![]() ![]() |
![]() |
sorting_priority = <int> | 0 | Species traits with same soring priority are sorted by alphabet order. | |
potential_crossbreeding_chance = <float> | 0 | The chance this trait is inherited by crossbreeding. Relevant to the ascension perk Xeno Compatibility. | |
allowed_archetypes = { xxx yyy } | ALL | A list of Species Archetype keys that is required by this species trait. See Species modding for details. | |
species_class = { xxx yyy } | ALL | A list of Species Class keys that is required by this species trait. See Species modding for details. | |
allowed_planet_classes = { xxx yyy } | ALL | A list of Planet Class keys that is required (as preferred planet class) by this species trait. | |
random_weight = { <species class key> = <float> <species class key> = <float> } | 1 for all | Adjusts the chance of species randomly receiving this trait depending on their species class. However, currently there is a bug where this block works incorrectly if combined with allowed_planet_classes and has no effect if species_potential_add is also present. | |
slave_cost = { <resource key> = <int> } | 0 | The cost of a Pop of this species on slave market is added by this. | |
species_potential_add species_possible_remove |
always = yes | Blocks of Conditions to determine can this trait be added to / removed from a species template. (Species scope, FROM is the empire)
With "species_potential_add" be evaluated false, a template with this trait can still be applied to Pops lacking it. Similarly, "species_possible_remove" doesn't prevent Pops with this trait from being applied with a template laking it. | |
leader_trait = { ... } | all | ![]() |
A list of leader classes. Vanilla generic leader traits have leader_trait = all .
|
leader_class = { ... } | ? | A list of leader classes. Vanilla leader traits always have it the same as leader_trait . Actual difference between the two is unclear.
| |
ai_categories = { ... } | ![]() |
What kind of tasks the AI will consider this leader be suit of. Only relevant to scientists. Can be consist of any number of the following four: engineering, physics, society, survey. | |
leader_potential_add | always = yes | A block of Conditions to determine can the trait be added to a leader upon leader generation. (Leader scope, FROM is the empire) | |
trade_acceptance_weight | 1 | How much extra should the AI value leaders with this trait in trade (multiplied by 10) (not used in Vanilla) |
Examples[edit | edit source]
Species Traits[edit | edit source]
Ingenious[edit | edit source]
trait_ingenious = { cost = 2 potential_crossbreeding_chance = 1.0 allowed_archetypes = { BIOLOGICAL LITHOID } modifier = { planet_jobs_energy_produces_mult = 0.15 } slave_cost = { energy = 50 } }
Proles (Pre-Sapient)[edit | edit source]
trait_presapient_proles = { cost = 1 opposites = { "trait_presapient_natural_intellectuals" } initial = no sapient = no modification = yes icon = "gfx/interface/icons/traits/trait_primitive.dds" allowed_archetypes = { BIOLOGICAL PRESAPIENT LITHOID } modifier = { army_damage_mult = 0.10 planet_jobs_minerals_produces_mult = 0.10 planet_jobs_food_produces_mult = 0.10 planet_jobs_physics_research_produces_mult = -0.15 planet_jobs_engineering_research_produces_mult = -0.15 planet_jobs_society_research_produces_mult = -0.15 } }
Proles (Syncretic Evolution)[edit | edit source]
trait_syncretic_proles = { cost = 1 potential_crossbreeding_chance = 0.33 opposites = { "trait_intelligent" "trait_erudite" "trait_natural_engineers" "trait_natural_physicists" "trait_natural_sociologists" } initial = no modification = yes species_potential_add = { always = no } icon = "gfx/interface/icons/traits/trait_primitive.dds" allowed_archetypes = { BIOLOGICAL LITHOID } custom_tooltip = TRAIT_SYNCRETIC_PROLES_EFFECT modifier = { pop_happiness = 0.10 planet_jobs_produces_mult = 0.10 } }
Leader Traits[edit | edit source]
Adaptable[edit | edit source]
leader_trait_adaptable = { cost = 1 modification = no icon = "gfx/interface/icons/traits/leader_traits/leader_trait_adaptable.dds" self_modifier = { species_leader_exp_gain = 0.25 } leader_potential_add = { NOT = { leader_class = ruler} NOT = { from = { has_ethic = "ethic_gestalt_consciousness" } } } leader_class = { admiral scientist general governor } opposites = { "leader_trait_stubborn" } leader_trait = all ai_categories = { engineering physics society survey } ai_weight = { weight = 50 } }
Corvette Focus[edit | edit source]
trait_ruler_corvette_focus = { cost = 1 modification = no icon = "gfx/interface/icons/traits/leader_traits/trait_ruler_corvette_focus.dds" leader_potential_add = { NOT = { from = { has_ethic = "ethic_gestalt_consciousness" } } } modifier = { ship_corvette_cost_mult = -0.2 } leader_trait = { ruler } leader_class = { ruler } prerequisites = { tech_destroyers } # 'corvette focus' is a bit silly when it's the only available ship opposites = { "trait_ruler_destroyer_focus" "trait_ruler_cruiser_focus" "trait_ruler_battleship_focus" } }
Chosen One (Admiral)[edit | edit source]
leader_trait_admiral_chosen = { cost = 0 modification = no icon = "gfx/interface/icons/traits/leader_traits/leader_trait_psionic_chosen_one.dds" immortal_leaders = yes modifier = { ship_weapon_damage = 0.2 ship_evasion_mult = 0.3 } leader_trait = { admiral } leader_class = { admiral } initial = no randomized = no }
Empire | Empire • Ethics • Governments • Civics • Origins • Mandates • Agendas • Traditions • Ascension perks • Edicts • Policies • Relics • Technologies • Custom empires |
Pops | Jobs • Factions |
Leaders | Leaders • Leader traits |
Species | Species • Species traits |
Planets | Planets • Planetary feature • Orbital deposit • Buildings • Districts • Planetary decisions |
Systems | Systems • Starbases • Megastructures • Bypasses • Map |
Fleets | Fleets • Ships • Components |
Land Warfare | Armies • Bombardment stance |
Diplomacy | Diplomacy • Federations • Galactic community • Opinion modifiers • Casus Belli • War goals |
Events | Events • Anomalies • Special projects • Archaeological sites |
Gameplay | Gameplay • Defines • Resources • Economy • Game start |
Dynamic modding | Dynamic modding • Effects • Conditions • Scopes • Modifiers • Variables • AI |
Media/localisation | Maya exporter • Graphics • Portraits • Flags • Event pictures • Interface • Icons • Music • Localisation |
Other | Console commands • Save-game editing • Steam Workshop • Modding tutorial |