Prototype/Generator
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/prototypes/GeneratorPrototype.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.
Template:Prototype parent An entity that produces power from fluids, for example a steam engine.
Mandatory properties
This prototype inherits all the properties from Prototype/EntityWithOwner.
Template:Prototype property Must be an electric energy source.
Template:Prototype property
This must have a filter if max_power_output
is not defined.
Template:Prototype property How much energy the generator produces compared to how much energy it consumes. For example, an effectivity of 0.5 means that half of the consumed energy is output as power.
Template:Prototype property The number of fluid units the generator uses per tick.
Template:Prototype property
Used to calculate the max_power_output
if it is not defined and burns_fluid
is false. Then, the max power output is (min(fluid_max_temp, maximum_temperature) - fluid_default_temp) × fluid_usage_per_tick × fluid_heat_capacity × effectivity
, the fluid is the filter specified on the fluid_box
.
The maximum temperature to which the efficiency can increase. At this temperature the generator will run at 100% efficiency. Note: Higher temperature fluid can still be consumed.
Optional properties
Template:Prototype property Array of 1 or more smoke sources.
Template:Prototype property If set to true, the available power output is based on the fuel_value of the fluid. Otherwise, the available power output will be based on the fluid temperature.
Template:Prototype property Scales the generator's fluid usage to its maximum power output.
Setting this to true prevents the generator from overconsuming fluid, for example when higher than maximum_temperature
fluid is fed to the generator.
If scale_fluid_usage is false, the generator consumes the full fluid_usage_per_tick
and any of the extra energy in the fluid (in the form of higher temperature) is wasted. The steam engine exhibits this behavior when fed steam from heat exchangers.
Template:Prototype property This property is used when:
burns_fluid
is true and the fluid has a fuel_value of 0- or
burns_fluid
is false and the fluid is at default temperature
In these cases, this property determines whether the fluid should be destroyed, meaning that the fluid is consumed at the rate of fluid_usage_per_tick
, without producing any power.
Template:Prototype property Animation runs at least this fast. This corresponds to the sound.
Template:Prototype property The power production of the generator is capped to this value. This is also the value that is shown as the maximum power output in the tooltip of the generator.
fluid_box
must have a filter if this is not defined.