Ancestral Relics 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.

The Relics, Minor Artifacts as well as Archaeological Sites are mechanics introduced since Stellaris v2.3.

Relics[edit]

Relics are defined at "common/relics/xxx.txt".

Data Structure[edit]

  • activation_duration - An integer of days for this Relic to "shine" if it's activated.
  • portrait - A reference to a GFX instance that indicates the icon of this Relic.
  • sound - A reference to a sound instance that indicates the sound to be played for activation.
  • resources - An Economy Unit that determines the resource output and activation cost.
  • ai_weight - Determines how likely the AI will activate this relic.
  • triggered_country_modifier - A block of Modifiers for the Passive Effect of this relic.
    • potential - A block of Conditions that determines should the modifier apply. Vanilla relics always have "always = yes". It is unclear if relics have country_modifier.
  • score - An integer of victory score should this Relic count.
  • active_effect - A block of Effects for the Activation Effect of this relic.
  • possible - A block of Conditions that determines can this relic be activated.

Relic Example[edit]

This is the "Ether Drake Trophy".

r_dragon_trophy = {
	activation_duration = @triumph_duration
	portrait = "GFX_relic_dragon_trophy"
	sound = "relic_activation_ether_drake_trophy"

	resources = {
		category = relics
		# Activation cost
		cost = {
			influence = @activation_cost
		}
	}

	ai_weight = {
		weight = 100
	}

	triggered_country_modifier = {
		potential = {
			always = yes
		}
		country_unity_produces_mult = 0.10
	}

	score = 1000

	active_effect = {
		add_modifier = {
			modifier = "ether_drake_triumph"
			days = @triumph_duration
		}
		custom_tooltip = relic_triumph_cooldown
		hidden_effect = {
			add_modifier = {
				modifier = "relic_activation_cooldown"
				days = @triumph_duration
			}
		}
	}

	# Possible check for activation
	possible = {
		custom_tooltip = {
			fail_text = "requires_relic_no_cooldown"
			NOT = { has_modifier = relic_activation_cooldown }
		}
	}
}

All relics should add the modifier "relic_activation_cooldown" to the empire upon activation as well as they should be blocked from activating if the empire has this modifier in order to have the relics UI and "relics can be activted" alert message work properly.

Artifact Actions[edit]

Artifact Actions are defined at "common/artifact_actions/xxx.txt". Without the Ancient Relics.png Ancient Relics DLC, Artifact Actions are hidden from the UI and can't be used.

Data Structure[edit]

  • resources - An Economy Unit that determines the action cost. Vanilla actions always cost Arcane technology.png Minor Artifacts.
  • ai_weight - Determines how likely the AI will use this action.
  • potential - A block of Conditions that determines should this action be shown in the UI.
  • allow - A block of Conditions that determines can this action be took by the empire.
  • effect - A block of Effects to be executed upon action.

Artifact Action Example[edit]

This is the "Reverse-Engineer Arcane Technology" Artifact Action.

artifact_arcane_deciphering = {
	resources = {
		category = artifact_actions
		cost = {
			minor_artifacts = 5
		}
	}
	
	ai_weight = {
		weight = 100
		modifier = {
			factor = 0
			has_resource = { type = minor_artifacts amount < 105 }
		}
	}

	potential = {
		has_technology = tech_arcane_deciphering
	}
	
	allow = {
		custom_tooltip = {
			fail_text = "requires_arcane_deciphering_no_cooldown"
			NOT = { has_modifier = arcane_deciphering_cooldown }
		}
	}

	effect = {
		custom_tooltip = artifact_arcane_deciphering_effect
		hidden_effect = {
			if = {
				limit = {
					is_ai = no
					NOT = { has_country_flag = arcana_achievement }
				}
				set_country_flag = arcana_achievement
			}
			add_modifier = {
				modifier = "arcane_deciphering_cooldown" 
				days = 720
			}
			owner = {
				country_event = { id = ancrel.10000 }
			}
		}
	}
}

Artifact Action cooldown is implemented through Static Modifiers.

There are some Artifact Actions that are not meant to be activated through this menu.

  • Before accquiring the technology "Arcane Deciphering", revelant Artifact Actions are displayed as "???". Actually, those "???" actions are different actions that can only be seen if the empire doesn't have this technology and can never be activated.
  • Some actions can only be done through planets. They are also Artifact Actions that can never be activated and actual effects are implemented through Decisions.

Archaeological Sites[edit]

Archaeological Sites are defined at "common/archaeological_site_types/xxx.txt". Full implemention of Archaeological Sites is largely dependent to Event modding as well as Dynamic modding.

Data Structure[edit]

  • desc - A localisation key that designates the description of this site.
  • picture - A reference to a GFX instance that indicates the picture of this site.
  • stages - An integer of max stages of this site. It must be exactly match the number of state blocks of this site.
  • allow - A block of Conditions that determines can a ship delve into this site. All vanilla sites are only open to Science Ships with a Scientist. (Fleet scope)
  • visible - A block of Conditions that determines can an empire see this site. (Country scope)
  • stage - Defines a stage of this site.
    • difficulty - An integer defines the difficulty of this site.
    • icon - A reference to a GFX instance that indicates the picture of this stage.
    • event - An event id of a "fleet_event" to trigger on the delver fleet when this stage is cleared. A fleet is a "container" of ships and can consist of one or more ships.
  • on_roll_failed - A block of Effects to be executed when a roll is failed. (Fleet scope, FROM is the site)

Archaeological Site Example[edit]

This is the first Zroni site.

zroni_digsite_1 = {
	desc = zroni_digsite_1_desc
	picture = GFX_evt_overgrown_city
	stages = 3
	max_instances = 1
	allow = {
		is_ship_class = shipclass_science_ship
		exists = leader
	}
	visible = {
		has_country_flag = zroni_intro
		default_site_visible_trigger = yes
	}
	
	stage = {
		difficulty = 1
		icon = GFX_archaeology_runes_F1
		event = ancrel.2
	}
	stage = {
		difficulty = 1
		icon = GFX_archaeology_runes_F2
		event = ancrel.3
	}
	stage = {
		difficulty = 2
		icon = GFX_archaeology_runes_F3
		event = ancrel.4
	}

	on_roll_failed = {
		from = {
			standard_archaeological_site_on_roll_failed = { RANDOM_EVENTS = all_random_events }
		}
	}
}

"standard_archaeological_site_on_roll_failed" is a scripted effect. See Dynamic 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 EffectsConditionsScopesModifiersVariablesAI
Media/localisation Maya exporterGraphicsPortraitsFlagsEvent picturesInterfaceIconsMusicLocalisation
Other Console commandsSave-game editingSteam Workshop