Home

TechnologyPrototype

A technology.

Parent

Properties

name

If this name ends with -<number>, that number is ignored for localization purposes. E.g. if the name is technology-3, the game looks for the technology-name.technology localization. The technology tree will also show the number on the technology icon.

icons

Can't be an empty array.

icon

Path to the icon file.

Only loaded, and mandatory if icons is not defined.

icon_size

The size of the square icon, in pixels. E.g. 32 for a 32px by 32px icon. Must be larger than 0.

The base game uses 256px icons for technologies.

Only loaded if icons is not defined.

upgrade

When set to true, and the technology contains several levels, only the relevant one is displayed in the technology screen.

Examples

{
  type = "technology",
  name = "physical-projectile-damage-2",
  [...]
  upgrade = true
}

enabled

essential

Whether the technology should be shown in the technology tree GUI when "Show only essential technologies" is enabled.

visible_when_disabled

Controls whether the technology is shown in the tech GUI when it is not enabled.

ignore_tech_cost_multiplier

Controls whether the technology cost ignores the tech cost multiplier set in the DifficultySettings. E.g. 4 for the default expensive difficulty.

allows_productivity

research_trigger

Mandatory if unit is not defined.

unit

Determines the cost in items and time of the technology.

Mandatory if research_trigger is not defined.

max_level

"infinite" for infinite technologies, otherwise uint32.

Defaults to the same level as the technology, which is 0 for non-upgrades, and the level of the upgrade for upgrades.

prerequisites

List of technologies needed to be researched before this one can be researched.

Examples

prerequisites = {"explosives", "military-2"}

show_levels_info

Can be used to enable or disable showing levels info in technology slot.

effects

List of effects of the technology (applied when the technology is researched).

Examples

{
  {
    type  = "unlock-recipe",
    recipe = "land-mine"
  }
}

hidden

Hides the technology from the tech screen.