Prototype/CraftingMachine: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(0.16)
(added Extensions)
Line 4: Line 4:
== Mandatory properties ==
== Mandatory properties ==
This prototype inherits all the properties from [[Prototype/EntityWithHealth]].
This prototype inherits all the properties from [[Prototype/EntityWithHealth]].
== Extensions ==
* [[Prototype/AssemblingMachine]] '''assembling-machine'''
** [[Prototype/RocketSilo]] '''rocket-silo'''
* [[Prototype/Furnace]] '''furnace'''


=== energy_usage ===
=== energy_usage ===

Revision as of 17:54, 23 July 2018

Basics

The abstract basis of the assembling machines and furnaces. Contains the properties that both of them have.

Mandatory properties

This prototype inherits all the properties from Prototype/EntityWithHealth.

Extensions

energy_usage

Type: Types/Energy

Sets how much energy this machine uses while crafting. Energy usage has to be positive.

crafting_speed

Type: Types/double

How fast this crafting machine can craft. 1 means that for example a 1 second long recipe take 1 second to craft. 0.5 means it takes 2 seconds, and 2 means it takes 0.5 seconds.

Crafting speed has to be positive.

crafting_categories

Type: Types/table of Types/strings

A list of recipe categories this crafting machine can use.

Example:

crafting_categories = {"crafting", "smelting"}

energy_source

Type: Types/EnergySource

Defines how the crafting machine is powered.

animation

Type: Types/Animation4Way

The animation played when crafting. When the crafting machine is idle, the animation will be paused.

idle_animation

Type: Types/Animation4Way

The animation played when idle. Idle animation must have the same frame count as animation.

Optional properties

fluid_boxes

Type: Types/table of Types/FluidBox

Can have off_when_no_fluid_recipe key that has a Types/bool value.

fluid_boxes =
    {
      {
        production_type = "input",
        pipe_picture = assembler2pipepictures(),
        pipe_covers = pipecoverspictures(),
        base_area = 10,
        base_level = -1,
        pipe_connections = {{ type="input", position = {0, -2} }},
        secondary_draw_orders = { north = -1 }
      },
      {
        production_type = "output",
        pipe_picture = assembler2pipepictures(),
        pipe_covers = pipecoverspictures(),
        base_area = 10,
        base_level = 1,
        pipe_connections = {{ type="output", position = {0, 2} }},
        secondary_draw_orders = { north = -1 }
      },
      off_when_no_fluid_recipe = true
    },

allowed_effects

Type: Types/EffectTypeLimitation

Sets the module effects that are allowed to be used on this machine.

has_backer_name

Type: Types/bool

Default: false

scale_entity_info_icon

Type: Types/bool

Default: false

always_draw_idle_animation

Type: Types/bool

Default: false

module_specification

Type: Types/ModuleSpecification

The number of module slots in this machine, and their icon positions.

module_specification = {
  module_info_icon_shift = {
    0,
    0.8
  },
  module_slots = 2
},

working_visualisations

Type: Types/table of Types/WorkingVisualisation