Types/ModifierPrototype: Difference between revisions
(Migrated prototype doc to separate website) |
m (Protected "Types/ModifierPrototype": Migrated prototype doc to separate website ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))) |
Revision as of 17:51, 16 August 2023
The prototype docs have moved to a new website with an improved format. This documentation page can now be found here: https://lua-api.factorio.com/latest/types/Modifier.html
This wiki page is no longer updated and will be removed at some point in the future, so please update your browser bookmarks or other links that sent you here. If you'd like to contribute to the new docs, you can leave your feedback on the forums.
The effect that is applied when a Prototype/Technology is researched. It is a Types/table that contains at least the field type
. A modifier prototype may also have other fields depending on the type, because it is loaded as an extension of this type.
Mandatory properties
type
Type: Types/string
One of the listed strings.
- If this is
"inserter-stack-size-bonus"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"stack-inserter-capacity-bonus"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"laboratory-speed"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-logistic-trash-slots"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"maximum-following-robots-count"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"worker-robot-speed"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"worker-robot-storage"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"ghost-time-to-live"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"turret-attack"
, this modifier is loaded as a Types/TurretAttackModifierPrototype, - If this is
"ammo-damage"
, this modifier is loaded as a Types/AmmoDamageModifierPrototype, - If this is
"give-item"
, this modifier is loaded as a Types/GiveItemModifierPrototype, - If this is
"gun-speed"
, this modifier is loaded as a Types/GunSpeedModifierPrototype, - If this is
"unlock-recipe"
, this modifier is loaded as a Types/UnlockRecipeModifierPrototype, - If this is
"character-crafting-speed"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-mining-speed"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-running-speed"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-build-distance"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-item-drop-distance"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-reach-distance"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-resource-reach-distance"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-item-pickup-distance"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-loot-pickup-distance"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-inventory-slots-bonus"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"deconstruction-time-to-live"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"max-failed-attempts-per-tick-per-construction-queue"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"max-successful-attempts-per-tick-per-construction-queue"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"character-health-bonus"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"mining-drill-productivity-bonus"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"train-braking-force-bonus"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"zoom-to-world-enabled"
, this modifier is loaded as a Types/BoolModifierPrototype, - If this is
"zoom-to-world-ghost-building-enabled"
, this modifier is loaded as a Types/BoolModifierPrototype, - If this is
"zoom-to-world-blueprint-enabled"
, this modifier is loaded as a Types/BoolModifierPrototype, - If this is
"zoom-to-world-deconstruction-planner-enabled"
, this modifier is loaded as a Types/BoolModifierPrototype, - If this is
"zoom-to-world-upgrade-planner-enabled"
, this modifier is loaded as a Types/BoolModifierPrototype, - If this is
"zoom-to-world-selection-tool-enabled"
, this modifier is loaded as a Types/BoolModifierPrototype, - If this is
"worker-robot-battery"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"laboratory-productivity"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"follower-robot-lifetime"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"artillery-range"
, this modifier is loaded as a Types/SimpleModifierPrototype, - If this is
"nothing"
, this modifier is loaded as a Types/NothingModifierPrototype, - If this is
"character-logistic-requests"
, this modifier is loaded as a Types/BoolModifierPrototype.
Optional properties
icons, icon, icon_size (IconSpecification)
Type: Types/IconSpecification
infer_icon
Type: Types/bool
If set to false, use the icon from the utility sprites for this technology effect icon.
List of modifier types for which infer_icon
= true does something[1]:
- "inserter-stack-size-bonus"
- "stack-inserter-capacity-bonus"
- "worker-robot-speed"
- "worker-robot-storage"
- "worker-robot-battery"
- "mining-drill-productivity-bonus"
- "train-braking-force-bonus"
- "laboratory-speed"
- "laboratory-productivity"
- "artillery-range"
- "maximum-following-robots-count"
- "follower-robot-lifetime"
- "turret-attack"
- "ammo-damage"
- "gun-speed"
use_icon_overlay_constant
Type: Types/bool
If set to false, do not draw the small "constant" icon over the technology effect icon.
Defaults for the icons
Default: infer_icon
= false, use_icon_overlay_constant
= true:
- "character-mining-speed"
- "character-inventory-slots-bonus"
- "character-logistic-trash-slots"
- "artillery-range"
- "maximum-following-robots-count"
- "ghost-time-to-live"
- "mining-drill-productivity-bonus"
- "character-crafting-speed"
- "character-running-speed"
- "character-build-distance"
- "character-item-drop-distance"
- "character-reach-distance"
- "character-resource-reach-distance"
- "character-item-pickup-distance"
- "character-loot-pickup-distance"
- "character-health-bonus"
- "zoom-to-world-ghost-building-enabled"
- "zoom-to-world-blueprint-enabled"
- "zoom-to-world-deconstruction-planner-enabled"
- "zoom-to-world-upgrade-planner-enabled"
- "zoom-to-world-selection-tool-enabled"
- "deconstruction-time-to-live"
- "max-failed-attempts-per-tick-per-construction-queue"
- "max-successful-attempts-per-tick-per-construction-queue"
- "inserter-stack-size-bonus"
- "stack-inserter-capacity-bonus"
Default: infer_icon
= true, use_icon_overlay_constant
= true:
- "laboratory-speed"
- "ammo-damage"
- "turret-attack"
- "gun-speed"
- "follower-robot-lifetime"
- "train-braking-force-bonus"
- "worker-robot-speed"
- "worker-robot-storage"
- "worker-robot-battery"
- "laboratory-productivity"
Default: infer_icon
= false, use_icon_overlay_constant
= false:
- "unlock-recipe"
- "give-item"
- "character-logistic-requests"
- "zoom-to-world-enabled"
- "nothing"