Prototype/EnemySpawner: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(Set prototype parent)
(Converted to SMW format)
Line 1: Line 1:
{{Prototype parent|Prototype/EntityWithHealth}}
{{Prototype parent|Prototype/EntityWithHealth}}
Can spawn entities. Used for biter/spitter nests.


== Basics ==
{{Prototype TOC|unit-spawner}}
Prototype type: '''unit-spawner'''
 
Extends [[Prototype/EntityWithHealth]].


== Mandatory properties ==
== Mandatory properties ==
This prototype inherits all the properties from [[Prototype/EntityWithHealth]].
This prototype inherits all the properties from [[Prototype/EntityWithHealth]].


=== dying_sound ===
{{Prototype property|dying_sound|[[Types/Sound|Sound]]}}
'''Type''': [[Types/Sound]]


=== animations ===
{{Prototype property|animations|[[Types/AnimationVariations|AnimationVariations]]}}
'''Type''': [[Types/AnimationVariations]]
 
=== max_count_of_owned_units ===
'''Type''': [[Types/uint32]]


{{Prototype property|max_count_of_owned_units|[[Types/uint32|uint32]]}}
Count of enemies this spawner can sustain.
Count of enemies this spawner can sustain.


=== max_friends_around_to_spawn ===
{{Prototype property|max_friends_around_to_spawn|[[Types/uint32|uint32]]}}
'''Type''': [[Types/uint32]]
 
How many friendly units are required within the [[#spawning_radius|spawning_radius]] of this spawner for it to stop producing more units.
How many friendly units are required within the [[#spawning_radius|spawning_radius]] of this spawner for it to stop producing more units.


=== spawning_cooldown ===
{{Prototype property|spawning_cooldown|[[Types/Range|Range]]}}
'''Type''': [[Types/Range]]
 
Ticks for cooldown after unit is spawned
Ticks for cooldown after unit is spawned


=== spawning_radius ===
{{Prototype property|spawning_radius|[[Types/double|double]]}}
'''Type''': [[Types/double]]
 
How far from the spawner can the units be spawned.
How far from the spawner can the units be spawned.


=== spawning_spacing ===
{{Prototype property|spawning_spacing|[[Types/double|double]]}}
'''Type''': [[Types/double]]
 
What spaces should be between the spawned units.
What spaces should be between the spawned units.


=== max_richness_for_spawn_shift ===
{{Prototype property|max_richness_for_spawn_shift|[[Types/double|double]]}}
'''Type''': [[Types/double]]
 
Max richness to determine spawn shift. Spawn shift is linear interpolation between 0 and maxSpawnShift.
Max richness to determine spawn shift. Spawn shift is linear interpolation between 0 and maxSpawnShift.


=== max_spawn_shift ===
{{Prototype property|max_spawn_shift|[[Types/double|double]]}}
'''Type''': [[Types/double]]
 
Caps how much richness can be added on top of evolution when spawning units. (See also [https://www.reddit.com/r/factorio/comments/8pjscm/friday_facts_246_the_gui_update_part_3/e0bttnp/])
Caps how much richness can be added on top of evolution when spawning units. (See also [https://www.reddit.com/r/factorio/comments/8pjscm/friday_facts_246_the_gui_update_part_3/e0bttnp/])


=== pollution_absorption_absolute ===
{{Prototype property|pollution_absorption_absolute|[[Types/double|double]]}}
'''Type''': [[Types/double]]
 
=== pollution_absorption_proportional ===
'''Type''': [[Types/double]]


=== call_for_help_radius ===
{{Prototype property|pollution_absorption_proportional|[[Types/double|double]]}}
'''Type''': [[Types/double]]


=== result_units ===
{{Prototype property|call_for_help_radius|[[Types/double|double]]}}
'''Type''': [[Types/table]] of [[Types/UnitSpawnDefinition]]


Array of the [[Prototype/Unit]]s that this spawner can spawn and their spawn probabilities. The sum of probabilities is expected to be 1.0. The array must not be empty.
{{Prototype property|result_units|[[Types/table|table]] of [[Types/UnitSpawnDefinition|UnitSpawnDefinition]]}}
Array of the [[Prototype/Entity|entities]] that this spawner can spawn and their spawn probabilities. The sum of probabilities is expected to be 1.0. The array must not be empty.


== Optional properties ==
== Optional properties ==


=== integration ===
{{Prototype property|integration|[[Types/SpriteVariations|SpriteVariations]]|optional=true}}
'''Type''': [[Types/SpriteVariations]]
 
=== random_animation_offset ===
'''Type''': [[Types/bool]]
 
'''Default''': true
 
=== min_darkness_to_spawn ===
'''Type''': [[Types/float]]


'''Default''': 0.0
{{Prototype property|random_animation_offset|[[Types/bool|bool]]|true|optional=true}}


=== max_darkness_to_spawn ===
{{Prototype property|min_darkness_to_spawn|[[Types/float|float]]|0.0|optional=true}}
'''Type''': [[Types/float]]


'''Default''': 1.0
{{Prototype property|max_darkness_to_spawn|[[Types/float|float]]|1.0|optional=true}}

Revision as of 20:06, 29 July 2019

Prototype definitions » PrototypeBase » Prototype/Entity » Prototype/EntityWithHealth » Prototype/EntityWithOwner » Prototype/EnemySpawner


Can spawn entities. Used for biter/spitter nests.


Prototype/EnemySpawner — unit-spawner
animations::AnimationVariations
call_for_help_radius::double
max_count_of_owned_units::uint32
max_friends_around_to_spawn::uint32
max_richness_for_spawn_shift::double
max_spawn_shift::double
pollution_absorption_absolute::double
pollution_absorption_proportional::double
result_units::table of UnitSpawnDefinition
spawning_cooldown::array of two double
spawning_radius::double
spawning_spacing::double
dying_sound::Sound (optional)
integration::SpriteVariations (optional)
max_darkness_to_spawn::float (optional)
min_darkness_to_spawn::float (optional)
random_animation_offset::bool (optional)
spawn_decoration::CreateDecorativesTriggerEffectItem or table of CreateDecorativesTriggerEffectItem (optional)
spawn_decorations_on_expansion::bool (optional)
Inherited from Prototype/EntityWithOwner
allow_run_time_change_of_is_military_target::bool (optional)
is_military_target::bool (optional)
Inherited from Prototype/EntityWithHealth
alert_when_damaged::bool (optional)
attack_reaction::AttackReaction (optional)
corpse::string or table of strings (optional)
create_ghost_on_death::bool (optional)
damaged_trigger_effect::TriggerEffect (optional)
dying_explosion::ExplosionDefinition or table of ExplosionDefinition (optional)
dying_trigger_effect::TriggerEffect (optional)
healing_per_tick::float (optional)
hide_resistances::bool (optional)
integration_patch::Sprite4Way (optional)
integration_patch_render_layer::RenderLayer (optional)
loot::Loot (optional)
max_health::float (optional)
random_corpse_variation::bool (optional)
repair_sound::Sound (optional)
repair_speed_modifier::float (optional)
resistances::Resistances (optional)
Inherited from Prototype/Entity
icons, icon, icon_size (IconSpecification)::IconSpecification
additional_pastable_entities::table of string (optional)
alert_icon_scale::float (optional)
alert_icon_shift::vector (optional)
allow_copy_paste::bool (optional)
autoplace::AutoplaceSpecification (optional)
build_base_evolution_requirement::double (optional)
build_grid_size::uint8 (optional)
build_sound::Sound (optional)
close_sound::Sound (optional)
collision_box::BoundingBox (optional)
collision_mask::CollisionMask (optional)
created_effect::Trigger (optional)
created_smoke::CreateTrivialSmokeEffectItem (optional)
drawing_box::BoundingBox (optional)
emissions_per_second::double (optional)
enemy_map_color::Color (optional)
fast_replaceable_group::string (optional)
flags::EntityPrototypeFlags (optional)
friendly_map_color::Color (optional)
hit_visualization_box::BoundingBox (optional)
map_color::Color (optional)
map_generator_bounding_box::BoundingBox (optional)
minable::MinableProperties (optional)
mined_sound::Sound (optional)
mining_sound::Sound (optional)
next_upgrade::string (optional)
open_sound::Sound (optional)
placeable_by::ItemToPlace or table of ItemToPlace (optional)
protected_from_tile_building::bool (optional)
radius_visualisation_specification::RadiusVisualisationSpecification (optional)
remains_when_mined::string or table of string (optional)
remove_decoratives::string (optional)
rotated_sound::Sound (optional)
selectable_in_game::bool (optional)
selection_box::BoundingBox (optional)
selection_priority::uint8 (optional)
shooting_cursor_size::double (optional)
sticker_box::BoundingBox (optional)
subgroup::string (optional)
tile_height::uint32 (optional)
tile_width::uint32 (optional)
trigger_target_mask::TriggerTargetMask (optional)
vehicle_impact_sound::Sound (optional)
water_reflection::WaterReflectionDefinition (optional)
working_sound::WorkingSound (optional)
Inherited from PrototypeBase
name::string
type::string
localised_description::LocalisedString (optional)
localised_name::LocalisedString (optional)
order::Order (optional)

Mandatory properties

This prototype inherits all the properties from Prototype/EntityWithHealth.

dying_sound

Type: Sound

animations

Type: AnimationVariations

max_count_of_owned_units

Type: uint32
Count of enemies this spawner can sustain.

max_friends_around_to_spawn

Type: uint32
How many friendly units are required within the spawning_radius of this spawner for it to stop producing more units.

spawning_cooldown

Type: Range
Ticks for cooldown after unit is spawned

spawning_radius

Type: double
How far from the spawner can the units be spawned.

spawning_spacing

Type: double
What spaces should be between the spawned units.

max_richness_for_spawn_shift

Type: double
Max richness to determine spawn shift. Spawn shift is linear interpolation between 0 and maxSpawnShift.

max_spawn_shift

Type: double
Caps how much richness can be added on top of evolution when spawning units. (See also [1])

pollution_absorption_absolute

Type: double

pollution_absorption_proportional

Type: double

call_for_help_radius

Type: double

result_units

Type: table of UnitSpawnDefinition
Array of the entities that this spawner can spawn and their spawn probabilities. The sum of probabilities is expected to be 1.0. The array must not be empty.

Optional properties

integration

Type: SpriteVariations

random_animation_offset

Type: bool
Default: true

min_darkness_to_spawn

Type: float
Default: 0.0

max_darkness_to_spawn

Type: float
Default: 1.0