Factorio Prototype DocsVersion 1.1.107

TurretPrototype - 'turret'

A turret that needs no extra ammunition. See the children for turrets that need some kind of ammunition.

Inherits from EntityWithOwnerPrototype « EntityWithHealthPrototype « EntityPrototype « PrototypeBase
Children

Properties

attack_parameters :: AttackParameters

Requires ammo_type in attack_parameters unless this is a AmmoTurretPrototype.

Requires ammo_type in attack_parameters unless this is a AmmoTurretPrototype.

folded_animation :: RotatedAnimation4Way
call_for_help_radius :: double
attack_target_mask optional :: TriggerTargetMask
ignore_target_mask optional :: TriggerTargetMask
shoot_in_prepare_state optional :: bool
turret_base_has_direction optional :: bool
random_animation_offset optional :: bool
secondary_animation optional :: bool

Whether the secondary (animation) speeds should always be used.

Whether the secondary (animation) speeds should always be used.

attack_from_start_frame optional :: bool
allow_turning_when_starting_attack optional :: bool
base_picture_secondary_draw_order optional :: uint8
gun_animation_secondary_draw_order optional :: uint8
base_picture_render_layer optional :: RenderLayer
gun_animation_render_layer optional :: RenderLayer
base_picture optional :: Animation4Way
preparing_animation optional :: RotatedAnimation4Way
prepared_animation optional :: RotatedAnimation4Way
prepared_alternative_animation optional :: RotatedAnimation4Way
starting_attack_animation optional :: RotatedAnimation4Way
attacking_animation optional :: RotatedAnimation4Way
energy_glow_animation optional :: RotatedAnimation4Way
ending_attack_animation optional :: RotatedAnimation4Way
folding_animation optional :: RotatedAnimation4Way
integration optional :: Sprite
glow_light_intensity optional :: float

The intensity of light in the form of energy_glow_animation drawn on top of energy_glow_animation.

The intensity of light in the form of energy_glow_animation drawn on top of energy_glow_animation.

energy_glow_animation_flicker_strength optional :: float

The range of the flickering of the alpha of energy_glow_animation. [...]

The range of the flickering of the alpha of energy_glow_animation. [...]

starting_attack_sound optional :: Sound
dying_sound optional :: Sound
preparing_sound optional :: Sound
folding_sound optional :: Sound
prepared_sound optional :: Sound
prepared_alternative_sound optional :: Sound
rotation_speed optional :: float
preparing_speed optional :: float

Controls the speed of the preparing_animation: 1 ÷ preparing_speed = duration of the preparing_animation

Controls the speed of the preparing_animation: 1 ÷ preparing_speed = duration of the preparing_animation

folded_speed optional :: float

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

folded_speed_secondary optional :: float

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

prepared_speed optional :: float

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

prepared_speed_secondary optional :: float

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

prepared_alternative_speed optional :: float

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

prepared_alternative_speed_secondary optional :: float

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

It's randomized whether a particular turret uses the primary or the secondary speed for its animations. [...]

prepared_alternative_chance optional :: float

The chance for prepared_alternative_animation to be used.

The chance for prepared_alternative_animation to be used.

starting_attack_speed optional :: float

Controls the speed of the starting_attack_animation: 1 ÷ starting_attack_speed = duration of the starting_attack_animation

Controls the speed of the starting_attack_animation: 1 ÷ starting_attack_speed = duration of the starting_attack_animation

attacking_speed optional :: float

Controls the speed of the attacking_animation: 1 ÷ attacking_speed = duration of the attacking_animation

Controls the speed of the attacking_animation: 1 ÷ attacking_speed = duration of the attacking_animation

ending_attack_speed optional :: float

Controls the speed of the ending_attack_animation: 1 ÷ ending_attack_speed = duration of the ending_attack_animation

Controls the speed of the ending_attack_animation: 1 ÷ ending_attack_speed = duration of the ending_attack_animation

folding_speed optional :: float

Controls the speed of the folding_animation: 1 ÷ folding_speed = duration of the folding_animation

Controls the speed of the folding_animation: 1 ÷ folding_speed = duration of the folding_animation

prepare_range optional :: double
alert_when_attacking optional :: bool
spawn_decorations_on_expansion optional :: bool

Whether spawn_decoration should be spawned when this turret is created through enemy expansion.

Whether spawn_decoration should be spawned when this turret is created through enemy expansion.

spawn_decoration optional :: CreateDecorativesTriggerEffectItem or array[CreateDecorativesTriggerEffectItem]

Decoratives to be created when the spawner is created by the map generator. [...]

Decoratives to be created when the spawner is created by the map generator. [...]

Inherited from EntityWithOwnerPrototype
is_military_target[overridden] optional :: bool

Whether this prototype should be a high priority target for enemy forces. [...]

Whether this prototype should be a high priority target for enemy forces. [...]

allow_run_time_change_of_is_military_target optional :: bool

If this is true, this entity's is_military_target property can be changed during runtime (on the entity, not on the prototype itself).

If this is true, this entity's is_military_target property can be changed during runtime (on the entity, not on the prototype itself).

max_health optional :: float

The unit health can never go over the maximum. [...]

The unit health can never go over the maximum. [...]

healing_per_tick optional :: float

The amount of health automatically regenerated per tick. [...]

The amount of health automatically regenerated per tick. [...]

repair_speed_modifier optional :: float
dying_explosion optional :: ExplosionDefinition or array[ExplosionDefinition]

The entities that are spawned in place of this one when it dies.

The entities that are spawned in place of this one when it dies.

dying_trigger_effect optional :: TriggerEffect
damaged_trigger_effect optional :: TriggerEffect
loot optional :: array[LootItem]

The loot is dropped on the ground when the entity is killed.

The loot is dropped on the ground when the entity is killed.

resistances optional :: array[Resistance]

See damage.

See damage.

attack_reaction optional :: AttackReactionItem or array[AttackReactionItem]
repair_sound optional :: Sound
alert_when_damaged optional :: bool
hide_resistances optional :: bool

Whether the resistances of this entity should be hidden in the entity tooltip.

Whether the resistances of this entity should be hidden in the entity tooltip.

create_ghost_on_death optional :: bool
random_corpse_variation optional :: bool
integration_patch_render_layer optional :: RenderLayer
corpse[overridden] optional :: EntityID or array[EntityID]

Specifies the names of the CorpsePrototype to be used when this entity dies.

Specifies the names of the CorpsePrototype to be used when this entity dies.

integration_patch optional :: Sprite4Way

Sprite drawn on ground under the entity to make it feel more integrated into the ground.

Sprite drawn on ground under the entity to make it feel more integrated into the ground.

Inherited from EntityPrototype
icons optional :: array[IconData]

This will be used in the electric network statistics, editor building selection, and the bonus gui. [...]

This will be used in the electric network statistics, editor building selection, and the bonus gui. [...]

icon optional :: FileName

Path to the icon file. [...]

Path to the icon file. [...]

icon_size optional :: SpriteSizeType

The size of the square icon, in pixels. [...]

The size of the square icon, in pixels. [...]

icon_mipmaps optional :: IconMipMapType

Icons of reduced size will be used at decreased scale.

Icons of reduced size will be used at decreased scale.

collision_box optional :: BoundingBox

Specification of the entity collision boundaries. [...]

Specification of the entity collision boundaries. [...]

collision_mask optional :: CollisionMask

Two entities can collide only if they share a layer from the collision mask.

Two entities can collide only if they share a layer from the collision mask.

map_generator_bounding_box optional :: BoundingBox

Used instead of the collision box during map generation. [...]

Used instead of the collision box during map generation. [...]

selection_box optional :: BoundingBox

Specification of the entity selection area. [...]

Specification of the entity selection area. [...]

drawing_box optional :: BoundingBox

Specification of space needed to see the whole entity in GUIs. [...]

Specification of space needed to see the whole entity in GUIs. [...]

sticker_box optional :: BoundingBox

Used to set the area of the entity that can have stickers on it, currently only used for units to specify the area where the green slow down stickers can appear.

Used to set the area of the entity that can have stickers on it, currently only used for units to specify the area where the green slow down stickers can appear.

hit_visualization_box optional :: BoundingBox

Where beams should hit the entity. [...]

Where beams should hit the entity. [...]

trigger_target_mask optional :: TriggerTargetMask
flags optional :: EntityPrototypeFlags
minable optional :: MinableProperties

The item given to the player when they mine the entity and other properties relevant to mining this entity.

The item given to the player when they mine the entity and other properties relevant to mining this entity.

subgroup optional :: ItemSubGroupID

The name of the subgroup this entity should be sorted into in the map editor building selection.

The name of the subgroup this entity should be sorted into in the map editor building selection.

allow_copy_paste optional :: bool
selectable_in_game optional :: bool
selection_priority optional :: uint8

The entity with the higher number is selectable before the entity with the lower number. [...]

The entity with the higher number is selectable before the entity with the lower number. [...]

build_grid_size optional :: uint8

Supported values are 1 (for 1x1 grid) and 2 (for 2x2 grid, like rails). [...]

Supported values are 1 (for 1x1 grid) and 2 (for 2x2 grid, like rails). [...]

remove_decoratives optional :: "automatic" or "true" or "false"

Whether this entity should remove decoratives that collide with it when this entity is built. [...]

Whether this entity should remove decoratives that collide with it when this entity is built. [...]

emissions_per_second optional :: double

Amount of emissions created (positive number) or cleaned (negative number) every second by the entity. [...]

Amount of emissions created (positive number) or cleaned (negative number) every second by the entity. [...]

shooting_cursor_size optional :: float

The cursor size used when shooting at this entity.

The cursor size used when shooting at this entity.

created_smoke optional :: CreateTrivialSmokeEffectItem

The smoke that is shown when the entity is placed.

The smoke that is shown when the entity is placed.

working_sound optional :: WorkingSound

Will also work on entities that don't actually do work.

Will also work on entities that don't actually do work.

created_effect optional :: Trigger

The effect/trigger that happens when the entity is placed.

The effect/trigger that happens when the entity is placed.

build_sound optional :: Sound
mined_sound optional :: Sound
mining_sound optional :: Sound
rotated_sound optional :: Sound
vehicle_impact_sound optional :: Sound

When playing this sound, the volume is scaled by the speed of the vehicle when colliding with this entity.

When playing this sound, the volume is scaled by the speed of the vehicle when colliding with this entity.

open_sound optional :: Sound
close_sound optional :: Sound
radius_visualisation_specification optional :: RadiusVisualisationSpecification
build_base_evolution_requirement optional :: double
alert_icon_shift optional :: Vector
alert_icon_scale optional :: float
fast_replaceable_group optional :: string

This allows you to replace an entity that's already placed, with a different one in your inventory. [...]

This allows you to replace an entity that's already placed, with a different one in your inventory. [...]

next_upgrade optional :: EntityID

Name of the entity that will be automatically selected as the upgrade of this entity when using the upgrade planner without configuration. [...]

Name of the entity that will be automatically selected as the upgrade of this entity when using the upgrade planner without configuration. [...]

protected_from_tile_building optional :: bool

When this is true, this entity prototype should be included during tile collision checks with tiles that have TilePrototype::check_collision_with_entities set to true.

When this is true, this entity prototype should be included during tile collision checks with tiles that have TilePrototype::check_collision_with_entities set to true.

placeable_by optional :: ItemToPlace or array[ItemToPlace]

Item that when placed creates this entity. [...]

Item that when placed creates this entity. [...]

remains_when_mined optional :: EntityID or array[EntityID]

The entity that remains when this one is mined, deconstructed or fast-replaced. [...]

The entity that remains when this one is mined, deconstructed or fast-replaced. [...]

additional_pastable_entities optional :: array[EntityID]

Names of the entity prototypes this entity prototype can be pasted on to in addition to the standard supported types. [...]

Names of the entity prototypes this entity prototype can be pasted on to in addition to the standard supported types. [...]

tile_width optional :: uint32

Used to determine how the center of the entity should be positioned when building (unless the off-grid flag is specified). [...]

Used to determine how the center of the entity should be positioned when building (unless the off-grid flag is specified). [...]

tile_height optional :: uint32
autoplace optional :: AutoplaceSpecification

Used to specify the rules for placing this entity during map generation.

Used to specify the rules for placing this entity during map generation.

map_color optional :: Color
friendly_map_color optional :: Color
enemy_map_color optional :: Color
water_reflection optional :: WaterReflectionDefinition

May also be defined inside graphics_set instead of directly in the entity prototype. [...]

May also be defined inside graphics_set instead of directly in the entity prototype. [...]

Inherited from PrototypeBase
type :: string

Specifies the kind of prototype this is. [...]

Specifies the kind of prototype this is. [...]

name :: string

Unique textual identification of the prototype. [...]

Unique textual identification of the prototype. [...]

order optional :: Order

Used to order prototypes in inventory, recipes and GUIs. [...]

Used to order prototypes in inventory, recipes and GUIs. [...]

localised_name optional :: LocalisedString

Overwrites the name set in the locale file. [...]

Overwrites the name set in the locale file. [...]

localised_description optional :: LocalisedString

Overwrites the description set in the locale file. [...]

Overwrites the description set in the locale file. [...]

Properties

attack_parameters :: AttackParameters

Requires ammo_type in attack_parameters unless this is a AmmoTurretPrototype.

folded_animation :: RotatedAnimation4Way

call_for_help_radius :: double

attack_target_mask :: TriggerTargetMask optional

Default: all masks

ignore_target_mask :: TriggerTargetMask optional

Default: no masks

shoot_in_prepare_state :: bool optional

Default: false

turret_base_has_direction :: bool optional

Default: false

random_animation_offset :: bool optional

Default: false

secondary_animation :: bool optional

Default: false

Whether the secondary (animation) speeds should always be used.

attack_from_start_frame :: bool optional

Default: false

allow_turning_when_starting_attack :: bool optional

Default: false

base_picture_secondary_draw_order :: uint8 optional

Default: 0

gun_animation_secondary_draw_order :: uint8 optional

Default: 0

base_picture_render_layer :: RenderLayer optional

Default: "lower-object"

gun_animation_render_layer :: RenderLayer optional

Default: "object"

base_picture :: Animation4Way optional

preparing_animation :: RotatedAnimation4Way optional

prepared_animation :: RotatedAnimation4Way optional

prepared_alternative_animation :: RotatedAnimation4Way optional

starting_attack_animation :: RotatedAnimation4Way optional

attacking_animation :: RotatedAnimation4Way optional

energy_glow_animation :: RotatedAnimation4Way optional

ending_attack_animation :: RotatedAnimation4Way optional

folding_animation :: RotatedAnimation4Way optional

integration :: Sprite optional

glow_light_intensity :: float optional

Default: 0

The intensity of light in the form of energy_glow_animation drawn on top of energy_glow_animation.

energy_glow_animation_flicker_strength :: float optional

Default: 0.2

The range of the flickering of the alpha of energy_glow_animation. Default is range 0.2, so animation alpha can be anywhere between 0.8 and 1.0.

starting_attack_sound :: Sound optional

dying_sound :: Sound optional

preparing_sound :: Sound optional

folding_sound :: Sound optional

prepared_sound :: Sound optional

prepared_alternative_sound :: Sound optional

rotation_speed :: float optional

Default: 1

preparing_speed :: float optional

Default: 1

Controls the speed of the preparing_animation: 1 ÷ preparing_speed = duration of the preparing_animation

folded_speed :: float optional

Default: 1

It's randomized whether a particular turret uses the primary or the secondary speed for its animations.

Controls the speed of the folded_animation: 1 ÷ folded_speed = duration of the folded_animation

folded_speed_secondary :: float optional

Default: 1

It's randomized whether a particular turret uses the primary or the secondary speed for its animations.

Controls the speed of the folded_animation: 1 ÷ folded_speed_secondary = duration of the folded_animation

prepared_speed :: float optional

Default: 1

It's randomized whether a particular turret uses the primary or the secondary speed for its animations.

Controls the speed of the prepared_animation: 1 ÷ prepared_speed = duration of the prepared_animation

prepared_speed_secondary :: float optional

Default: 1

It's randomized whether a particular turret uses the primary or the secondary speed for its animations.

Controls the speed of the prepared_animation: 1 ÷ prepared_speed_secondary = duration of the prepared_animation

prepared_alternative_speed :: float optional

Default: 1

It's randomized whether a particular turret uses the primary or the secondary speed for its animations.

Controls the speed of the prepared_alternative_animation: 1 ÷ prepared_alternative_speed = duration of the prepared_alternative_animation

prepared_alternative_speed_secondary :: float optional

Default: 1

It's randomized whether a particular turret uses the primary or the secondary speed for its animations.

Controls the speed of the prepared_alternative_animation: 1 ÷ prepared_alternative_speed_secondary = duration of the prepared_alternative_animation

prepared_alternative_chance :: float optional

Default: 0

The chance for prepared_alternative_animation to be used.

starting_attack_speed :: float optional

Default: 1

Controls the speed of the starting_attack_animation: 1 ÷ starting_attack_speed = duration of the starting_attack_animation

attacking_speed :: float optional

Default: 1

Controls the speed of the attacking_animation: 1 ÷ attacking_speed = duration of the attacking_animation

ending_attack_speed :: float optional

Default: 1

Controls the speed of the ending_attack_animation: 1 ÷ ending_attack_speed = duration of the ending_attack_animation

folding_speed :: float optional

Default: 1

Controls the speed of the folding_animation: 1 ÷ folding_speed = duration of the folding_animation

prepare_range :: double optional

Default: The range defined in the attack_parameters

alert_when_attacking :: bool optional

Default: true

spawn_decorations_on_expansion :: bool optional

Default: false

Whether spawn_decoration should be spawned when this turret is created through enemy expansion.

spawn_decoration :: CreateDecorativesTriggerEffectItem or array[CreateDecorativesTriggerEffectItem] optional

Decoratives to be created when the spawner is created by the map generator. Placed when enemies expand if spawn_decorations_on_expansion is set to true.

Overridden Properties

corpse :: EntityID optional

Default: Empty

Specifies the name of the CorpsePrototype to be used when this entity dies.

is_military_target :: bool optional

Default: true

Whether this prototype should be a high priority target for enemy forces. See Military units and structures.

Prototypes

Types