Types/ItemProductPrototype

From Official Factorio Wiki
Revision as of 10:42, 21 September 2023 by BilkaBot (talk | contribs) (Updated styling of prototype doc migration note)
Jump to navigation Jump to search

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/ItemProductPrototype.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.


An item product definition, for example for a Prototype/Recipe. Its loading is triggered by the type of a Types/ProductPrototype being "item". It can be specified as a table with named or numbered keys, but not a mix of both.

Mandatory properties

name or 1

Type: Types/string

The name of a Prototype/Item.

Optional properties

amount or 2

Type: Types/uint16

Mandatory when using numbered keys (an array).
If amount is present, amount_min and amount_max are not loaded.

probability

Type: Types/double

Default: 1

Value between 0 and 1, 0 for 0% chance and 1 for 100% chance.

The effect of probability is no product, or, a linear distribution on [min, max]. For a recipe with probability p, amount_min min, and amount_max max, the Expected Value of this product can be expressed as p * (0.5 * (max + min)). This is what will be shown in a recipe tooltip. The effect of catalyst_amount on the product is not shown.

When amount_min and amount_max are not provided, amount applies as min and max. The Expected Value simplifies to p*amount, providing 0 product, or, amount product, on recipe completion.

amount_min

Type: Types/uint16

Mandatory if amount is not specified and named keys are being used.

amount_max

Type: Types/uint16

Mandatory if amount is not specified and named keys are being used.

If set to a number that is less than amount_min, the game will use amount_min internally.

catalyst_amount

Type: Types/uint16

Default: 0

Amount that should not be affected by productivity modules (not yielded from bonus production) and should not be included in the item production statistics.

If this ItemProductPrototype is used in a recipe, the catalyst amount is calculated automatically based on the ingredients and results.[1]

See also