Traits modding

本页面部分全部内容上次核对于2.6版本


This page is about Traits modding, both Species Traits and Leader Traits. Traits are defined at "common/traits/xxx.txt".

Data Structure[编辑 | 编辑源代码]

Property Required/Default Species Traits Leader Traits
cost = <int> Yes.png 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 纸上谈兵 Armchair Commander 纸上谈兵Armchair Commander has 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. No.png
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 initial = no, but doesn't override modification = no.

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 Weather this trait is valid for all ethics. Will also need to list which ethics its compatible with.
allowed_ethics = {ethic_xx ethic_yy} No.png 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> No.png No.png If yes, leaders with this trait will have their age hidden in the leader tooltip. Only work for ruler traits.
modifier No.png 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.
  • If this leader was a non-heir ruler, its traits will apply to the entire Empire.
  • If this leader was a governor, its traits will apply to the Sector it's governing.
  • If this leader was a scientist leading a research, only modifiers related to research speed will apply to the category it's researching.
  • If this leader was a scientist commanding a science ship, the modifiers will apply to the science ship.
  • If this leader was an admiral, its traits will apply to the fleet it's commanding.
  • If this leader was a general, its traits will apply to the armies it's commanding.
triggered_pop_modifier = {0
potential = { <triggers> }
<modifiers>
}
No.png 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. No.png
growing_modifier
assembling_modifier
declining_modifier
No.png Blocks of Modifiers to be applied to the Planet while a Pop of this species is growing / assembling / declining.

The trait Recycled.png Recycled uses assembling_modifier to reduce Robot Assembler jobs upkeep by -20% to implement its effect.

No.png
self_modifier No.png No.png 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> No.png If specified, it will overwrite the generated tootlips based on modifiers.
custom_tooltip_with_modifiers = <localisation key> No.png If specified, will show the given tooltip in addition to the generated tootlips based on modifiers.
prerequisites = { tech_xxx } No.png 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 } No.png 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 weight this trait for the tasks.
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 蜂巢思维 Hive Mind Hive Mind leaders younger than usual and 石质 Lithoid 石质Lithoid leaders older than usual. No.png
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 No.png 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 = { ... } No.png 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)

Examples[编辑 | 编辑源代码]

Species Traits[编辑 | 编辑源代码]

Ingenious[编辑 | 编辑源代码]

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)[编辑 | 编辑源代码]

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)[编辑 | 编辑源代码]

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[编辑 | 编辑源代码]

Adaptable[编辑 | 编辑源代码]

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[编辑 | 编辑源代码]

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)[编辑 | 编辑源代码]

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
}
帝国 帝国思潮政府 • 国民理念 • 起源承诺议程传统 • 飞升天赋法令政策遗珍科技自定义帝国
人口 岗位派系
领袖 领袖领袖特质
物种 物种物种特质
行星 行星行星特征 • 轨道矿藏建筑 • 区划行星决议
星系 星系恒星基地巨型结构虫洞 • 星门地图
舰队 舰队舰船 • 部件
地面战 陆军轰炸姿态
外交 外交 • 联邦 • 星海共同体评价修正宣战理由 • 战争目标
事件 事件异常现象特殊项目考古遗址
游玩 游玩定义研究 • 经济游戏开局
动态修改 动态指令效果触发条件作用域修正变量AI
媒体/本地化 Maya 导出器图形肖像旗帜事件图片界面图标音乐本地化
Other 控制台命令存档编辑Steam 创意工坊模组制作教程