Version

This article is for the PC version of Stellaris only.
This page is about modding Deposits and Planet Modifiers.
Deposits[]
Deposits are objects on Planets that can have its own resource production and upkeep and Modifiers to the planet.
There are two types of Deposits, one being the planetary features for the colonizable planets that can be inspected by the player, and another being the orbital deposits for the uncolonizable planets that usually can't be inspected by the player.
There are two types of planetary features, one being normally pure-beneficial and unremovable and another being normally pure-harmful and can be removed by spending resources, called blockers. Some blockers spawn with an additional planetary feature behind it, but the seemingly "blocked" planetary feature isn't actually added to the planet before the blocker to be cleared. Although vanilla unused, a blocker can also block a blocker behind it.
They are defined at "common/deposits/xxx.txt".
Data Structure[]
Property | Planetary Features | Planetary Blockers | Orbital Deposits |
---|---|---|---|
is_for_colonizable = <yes/no> | For habitable planets, is_for_colonizable = yes . Default is = no .
|
For mining station or research station collection, is_for_colonizable = no .
| |
station | ![]() |
Determines the type of orbital station required to mine this deposit. One of the following is allowed.
| |
icon = <deposit key> | This deposit will use the icon of another deposit instead.
The default icon path is |
Since orbital deposits can't be normally inspected, this property will normally not be useful. | |
use_for_min_max_adjustments = <yes/no> | If yes, this deposit is used to refresh the maximum districts on planet view. Vanilla have this toggled yes for each deposit that increases maximum number of a certain type of district. | ![]() | |
category = <deposit category> | For obvious reason the deposit category must NOT specify blocker = yes .
Vanilla use one of the following.
|
For obvious reason the deposit category must specify blocker = yes .
Vanilla use one of the folliwing.
| |
planet_modifier triggered_planet_modifier |
Blocks of Modifiers to be applied to the Planet. Modifiers that add maximum number of buildings / disctricts of a certain type go here. If this deposit is blocked behind a blocker, none of these effects apply. | Modifiers that affect ![]() | |
country_modifier | A block of Modifiers to be applied to the Empire that owns this Planet. | ![]() | |
blocked_modifier | Vanilla unused but mentioned it in the comments. Presumably Modifiers to be applied to the Planet for as long as this deposit remains blocked behind a blocker. | ||
should_swap_deposit_on_terraforming = <yes/no> terraforming_swap_types = { _key_of_deposit_ ...} all_terraforming_swap_types = <yes/no> use_weights_for_terraforming_swap_types = <yes/no> |
Some vanilla planetary features will swap into another of exactly same effect after terraforming. This is implemented through these properties.
If this deposit should swap on terraforming and it no longer mets its If "all terraforming swap types" is allowed, then ALL non-blocker deposits that meet their If "use weights for terraforming swap types", the swap is furtherly weighted by their |
![]() | |
blocker_swap_types = { _key_of_deposit_ ... } all_blocker_swap_types = <yes/no> use_weights_for_blocker_swap_types = <yes/no> |
![]() |
When this blocker is placed on a Planet, if it has any blocker swap type, a random deposit that meets its potential on this planet is chosen to be visibly "blocked" behind this blocker. Before this blocker to be cleared, the deposit isn't actually added to the planet and none of its effects will apply.
if "all blocker swap types" is allowed, then ALL non-blocker deposits that meet their If "use weights for blocker swap types", the swap is furtherly weighted by their | |
resources | An Economy Unit of this deposit to determine its resource production, upkeep and blocker removal cost. | ||
Vanilla use planet_deposits for the economy category, although it's quite rare for a normal deposit to directly produce resources itself.
|
Vanilla use deposit_blockers for the economy category.
|
Vanilla use orbital_mining_deposits and orbital_research_deposits for the economy category.
| |
can_be_cleared | ![]() |
A block of Conditions to check can this blocker be cleared. (Planet scope) | ![]() |
on_cleared | A block of Effects to be executed after this blocker is cleared. (Planet scope) | ||
time = <int> | Days it takes to clear this blocker. | ||
prerequisites = { <tech key> ...} | A list of Technologies to be researched before this blocker can be cleared. | ||
potential | A block of Conditions to check can this deposit be spawned on a Planet. This block is neglected if the deposit is added via script. (Planet scope) | ||
drop_weight | Determines how likely this deposit is spawned on a Planet. If drop weight is multiplied by 0 this deposit can't be spawned on this Planet. (Planet scope) |
Deposit Categories[]
deposit_cat_food = { } deposit_cat_energy = {} deposit_cat_minerals = {} deposit_cat_blockers = { blocker = yes # Counts as blockers } deposit_cat_rare = { important = yes # Shows up as rare deposits in planetview } deposit_cat_rare_blocker = { blocker = yes # Counts as blockers important = yes # Shows up as rare deposits in planetview }
The Null Orbital Deposit[]
potential
of the null deposit will always have an orbital deposit.d_null_deposit = { is_null = yes potential = { is_primary_star = no NOR = { is_planet_class = pc_ringworld_habitable_damaged is_planet_class = pc_ringworld_tech_damaged } } drop_weight = { weight = 100 } }
Examples[]
d_hot_springs = { is_for_colonizeable = yes use_for_min_max_adjustments = yes category = deposit_cat_energy use_weights_for_terraforming_swap_types = yes should_swap_deposit_on_terraforming = yes terraforming_swap_types = { d_arid_highlands d_buzzing_plains # gaia } planet_modifier = { district_generator_max = 1 } potential = { OR = { is_cold = yes is_wet = yes is_planet_class = pc_nuked } } drop_weight = { weight = @high modifier = { factor = @planet_type_bonus is_dry = yes } } }
d_dangerous_wildlife_blocker = { time = 270 is_for_colonizeable = yes category = deposit_cat_blockers resources = { category = deposit_blockers cost = { energy = 500 } } potential = { planet_size >= 10 } planet_modifier = { planet_max_districts_add = -2 } on_cleared = { hidden_effect = { if = { limit = { exists = owner owner = { has_civic = civic_hive_devouring_swarm } } owner = { add_resource = { food = 200 } } } } } drop_weight = { weight = @blocker_low modifier = { factor = 0.5 planet_size < 15 } modifier = { factor = 0 num_free_districts = { type = district_city value < 2 } } } prerequisites = { "tech_dangerous_wildlife" } }
d_society_1 = { resources = { category = orbital_research_deposits produces = { society_research = 1 } } station = shipclass_research_station is_for_colonizeable = no potential = { is_planet_class = pc_toxic } drop_weight = { weight = 0 } }
Planet modifiers[]
Planet modifiers are additional modifiers given to planet objects upon planet generation. They are linked to static modifiers but not equivalent to them. They are defined by files in the Stellaris/common/planet_modifiers/ folder. Static modifiers added directly to a planet by an effect or anomaly don't need to have a planet modifier defined here.
![]() |
Please help improve this article or section by expanding it with: Are planet modifiers spawned before or after planet deposits? Which can use the other to modify spawn chance/drop weight?. |
Property | Description |
---|---|
|
|
modifier = "<static modifier>" | Key of the static modifier to be added to the planet. |
The null planet modifier[]
There is a null planet modifier defined in the Stellaris/common/planet_modifiers/00_planet_modifiers.txt file that has no linked static modifier. It's purpose is to control how common other modifiers are; it has a base weight of 275 (most vanilla planet modifiers have a weight of 10 before spawn chance weight modifiers), which gets multiplied by 3 for each modifier the planet already has in order to make planets with multiple modifiers increasingly rare.
- is_null = yes
- spawn_chance = {
- base = 275
- modifier = {
- factor = 3
- num_modifiers > 2
- }
- modifier = {
- factor = 3
- num_modifiers > 1
- }
- modifier = {
- factor = 3
- num_modifiers > 0
- }
- }
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 |