Prototype/Generator: Difference between revisions
No edit summary |
(added example for effectivity) |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{Prototype parent|Prototype/ | {{Prototype parent|Prototype/EntityWithOwner}} | ||
An entity that produces power from fluids, for example a [[steam engine]]. | An entity that produces power from fluids, for example a [[steam engine]]. | ||
Line 5: | Line 5: | ||
== Mandatory properties == | == Mandatory properties == | ||
This prototype inherits all the properties from [[Prototype/ | This prototype inherits all the properties from [[Prototype/EntityWithOwner]]. | ||
{{Prototype property|energy_source|[[Types/EnergySource|EnergySource]]}} | {{Prototype property|energy_source|[[Types/EnergySource|EnergySource]]}} | ||
Line 11: | Line 11: | ||
{{Prototype property|fluid_box|[[Types/FluidBox|FluidBox]]}} | {{Prototype property|fluid_box|[[Types/FluidBox|FluidBox]]}} | ||
This must have a filter if <code>max_power_output</code> is not defined. | |||
{{Prototype property|horizontal_animation|[[Types/Animation|Animation]]}} | {{Prototype property|horizontal_animation|[[Types/Animation|Animation]]}} | ||
Line 17: | Line 18: | ||
{{Prototype property|effectivity|[[Types/double|double]]}} | {{Prototype property|effectivity|[[Types/double|double]]}} | ||
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. | |||
{{Prototype property|fluid_usage_per_tick|[[Types/double|double]]}} | {{Prototype property|fluid_usage_per_tick|[[Types/double|double]]}} | ||
Line 23: | Line 24: | ||
{{Prototype property|maximum_temperature|[[Types/double|double]]}} | {{Prototype property|maximum_temperature|[[Types/double|double]]}} | ||
The maximum temperature to which the efficiency can increase. | Used to calculate the <code>max_power_output</code> if it is not defined and <code>burns_fluid</code> is false. Then, the max power output is <code>(min(fluid_max_temp, maximum_temperature) - fluid_default_temp) × fluid_usage_per_tick × fluid_heat_capacity × effectivity</code>, the fluid is the filter specified on the <code>fluid_box</code>. | ||
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 == | == Optional properties == | ||
Line 31: | Line 34: | ||
{{Prototype property|burns_fluid|[[Types/bool|bool]]|false|optional=true}} | {{Prototype property|burns_fluid|[[Types/bool|bool]]|false|optional=true}} | ||
If set to true, the available power output is based on the [[Prototype/Fluid#fuel_value|fuel_value]] of the fluid. Otherwise, the available power output will be based on the fluid temperature. | |||
{{Prototype property|scale_fluid_usage|[[Types/bool|bool]]|false|optional=true}} | {{Prototype property|scale_fluid_usage|[[Types/bool|bool]]|false|optional=true}} | ||
Scales the generator's fluid usage to its maximum power output. | 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 <code>maximum_temperature</code> fluid is fed to the generator.<br> | |||
If scale_fluid_usage is false, the generator consumes the full <code>fluid_usage_per_tick</code> 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 exchanger]]s. | |||
{{Prototype property|destroy_non_fuel_fluid|[[Types/bool|bool]]|true|optional=true}} | |||
This property is used when: | |||
* <code>burns_fluid</code> is true and the fluid has a [[Prototype/Fluid#fuel_value|fuel_value]] of 0 | |||
* or <code>burns_fluid</code> 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 <code>fluid_usage_per_tick</code>, without producing any power. | |||
{{Prototype property|min_perceived_performance|[[Types/double|double]]|0.25|optional=true}} | {{Prototype property|min_perceived_performance|[[Types/double|double]]|0.25|optional=true}} | ||
Line 41: | Line 54: | ||
{{Prototype property|max_power_output|[[Types/Energy|Energy]]|optional=true}} | {{Prototype property|max_power_output|[[Types/Energy|Energy]]|optional=true}} | ||
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. | |||
<code>fluid_box</code> must have a filter if this is not defined. |
Latest revision as of 13:29, 22 April 2022
Prototype definitions » PrototypeBase » Prototype/Entity » Prototype/EntityWithHealth » Prototype/EntityWithOwner » Prototype/Generator
An entity that produces power from fluids, for example a steam engine.
Mandatory properties
This prototype inherits all the properties from Prototype/EntityWithOwner.
energy_source
Type: EnergySource
Must be an electric energy source.
fluid_box
Type: FluidBox
This must have a filter if max_power_output
is not defined.
horizontal_animation
Type: Animation
vertical_animation
Type: Animation
effectivity
Type: double
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.
fluid_usage_per_tick
Type: double
The number of fluid units the generator uses per tick.
maximum_temperature
Type: double
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
smoke
Type: table of SmokeSource
Array of 1 or more smoke sources.
burns_fluid
Type: bool
Default: false
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.
scale_fluid_usage
Type: bool
Default: false
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.
destroy_non_fuel_fluid
Type: bool
Default: true
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.
min_perceived_performance
Type: double
Default: 0.25
Animation runs at least this fast. This corresponds to the sound.
performance_to_sound_speedup
Type: double
Default: 0.5
max_power_output
Type: Energy
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.