Event trigger.png Want a chance to win some prizes while helping update the wiki? Then check out the wiki's contest page. Event trigger.png

Economy modding

From Stellaris Wiki
Jump to navigation Jump to search

Version

Outliner top.png
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 page is about modding of Economy.

Resources[edit]

Resources are defined at "common/strategic_resources/xxx.txt." More can be added but will not be shown without GUI modding.

Data Structure[edit]

  • tradable = yes/no - If this resource is diplomatically tradable. Not in the market!
  • max = int - The initial storage capacity of this resource.
  • fixed_max_amount - yes/no - Default no. If yes, the storage capacity of this resource can't be modified by Modifiers.
  • tooltip_decimals = int - Sets the decimals shown in tooltips.
  • deficit_modifier = <static modifier key> - A static modifier to be applied if empire is in deficit of this resource.
  • market_amount = int - Sets the minimal tradable market bulk for this resource.
  • market_price = int - Sets the base price of the minimal tradable market bulk for this resource. Vanilla has 100 for each.
  • ai_weight - How valuable should the AI consider this resource to be.
  • ai_wants - How much the AI wants this resource.
  • prerequisites - A list of technology keys to be researched before the empire can exploit this resource.
  • visibility_prerequisite - A block of Conditions that determines if the empire should see this resource. Vanilla resources always have "always = yes".

How to Make my Resources Shown[edit]

The most easy way is to head to "interface/resource_groups/xxx.txt" and add the new resources to existing groups.

If more resource groups were added through mods, the new resource groups won't be shown without modding "interface/main.gui".

Resource Example[edit]

minerals = {
	tradable = yes
	market_amount = 100
	market_price = 100
	max = 15000
	
	deficit_modifier = minerals_deficit #found in static modifiers

	ai_weight = {
		weight = 1
	}

	ai_wants = {
		base = 1000
	}
}
volatile_motes = {
	tradable = yes
	market_amount = 10
	market_price = 100
	max = 15000
	
	prerequisites = { "tech_mine_volatile_motes" }
	
	deficit_modifier = volatile_motes_deficit #found in static modifiers
	
	ai_weight = {
		weight = 10
	}

	ai_wants = {
		base = 10
	}
}

Economy Categories[edit]

Economy Categories are defined at "common/economic_categories/xxx.txt." More can be added but many existing ones were hard-codely required. An economy category may determine ai behaviors or cost modifiers to apply to an economy unit.

For instance, the following economy category

rare_edicts = {
	use_for_ai_budget = yes
	parent = edicts
	generate_mult_modifiers = {
		cost
	}
}

allows to modify cost of the following edict (only resources field below)

terraforming_gas = {
	resources = {
		category = rare_edicts
		cost = {
			exotic_gases = 25
		}
	}
}

based on the empire size : for an empire size of X, cost of the terragorming_gas edict will be 25*X

Economy Units[edit]

Many game objects do have a resource block called Economy Units of the following structure which determines its resource production, upkeep, and/or cost.

  • category = <economy category key> - What economy category should this economy unit fall into. This economy will also be affected by modifiers related to the economy category.
  • produces/upkeep/cost - Production/Upkeep/Cost statement. Multiple allowed. Depending on the game object, some of them might make no sense, for example, an empire edict do not need the produces and upkeep statements.
    • trigger - A block of Conditions to determine should this statement block apply.
    • <resource key> = <float> - Multiple allowed.

Economy Unit Example[edit]

For example, the Job researcher.png Researcher job has the following economy unit:

resources = {
	category = planet_researchers
	produces = {
		physics_research = 4
		engineering_research = 4
		society_research = 4
	}
	produces = {
		trigger = {
			exists = owner
			owner = { has_valid_civic = civic_technocracy }
		}
		unity = 1
	}
	upkeep = {
		consumer_goods = 2
	}
}

For this statement, a researcher will always produce Research.png Research points each +4, and will also produce Unity.png Unity +1 if the empire has the civic Civic technocracy.png Technocracy. In addition, a researcher will always cost Consumer goods.png Consumer Goods -2 for an upkeep cost. All these can be modified by modifiers like "planet_researchers_produces_mult".

Trade Route[edit]

Trade value collection is implemented through Starbase Modifiers while piracy suppression is implemented through Ship Modifiers.

Trade Value Conversion policy is defined at "common/policies/00_policies.txt". It doesn't directly affect actual trade route conversion rate.

Trade Value Conversion rates are abstract game objects defined at "common/trade_conversions/xxx.txt".

  • potential - A block of Conditions to determine should this conversion type apply. (Country scope)
  • weight - If multiple conversions are valid to an empire, one with the highest weight wins.
  • economic_category = <economy category key> - Economy category of this conversion. Vanilla always use "trade_routes".
  • conversion_rate - A list of "<resource key> = <float>" pairs. Resource of this kind generated from trade routes every month is equal to the number provided here * collected empire trade value total.

Branch Office[edit]

Branch Office value algorithm is hard-coded but some parameters are defined at "common/defines/00_defines.txt".

Branch Office resource production is implemented through a Static Modifier, namely "branch_office_value". Vanilla has planet_branch_offices_energy_produces_add = 1, which means the branch office produces Energy Credits.png Energy Credits +1 for every point of Branch Office value.

Branch Office Buildings are special buildings with the field "branch_office_building = yes". See Building modding for details.

Empire EmpireEthicsGovernments • Civics • OriginsMandatesAgendasTraditions • Ascension PerksEdictsPoliciesRelicsTechnologiesCustom Empires
Pops JobsFactions
Leaders LeadersLeader Traits
Species SpeciesSpecies Traits
Planets PlanetsPlanetary Feature • Orbital DepositBuildings • DistrictsPlanetary Decisions
Systems SystemsStarbasesMegastructuresBypassesMap
Fleets FleetsShips • Components
Land Warfare ArmiesBombardment Stance
Diplomacy Diplomacy • Federations • Galactic CommunityOpinion ModifiersCasus Belli • War Goals
Events EventsAnomaliesSpecial projectsArchaeological Sites
Gameplay GameplayDefinesResources • Economy
Dynamic modding Dynamic moddingEffectsConditionsScopesModifiersVariablesAI
Media/localisation Maya exporterGraphicsPortraitsFlagsEvent picturesInterfaceIconsMusicLocalisation
Other Console commandsSave-game editingSteam WorkshopModding tutorial