Prototype/TransportBeltConnectable

From Official Factorio Wiki
Jump to navigation Jump to search

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


Abstract class that anything that is a belt or can connect to belts uses.


Prototype/TransportBeltConnectable — abstract
speed::double
animation_speed_coefficient::double (optional)
belt_animation_set::table (optional)
belt_horizontal::Animation (optional)
belt_vertical::Animation (optional)
ending_bottom::Animation (optional)
ending_patch::Sprite4Way (optional)
ending_side::Animation (optional)
ending_top::Animation (optional)
ends_with_stopper::bool (optional)
starting_bottom::Animation (optional)
starting_side::Animation (optional)
starting_top::Animation (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)

Extensions

Mandatory properties

This prototype inherits all the properties from Prototype/EntityWithOwner.

speed

Type: double
The speed of the belt (since 0.17): speed × 480 = x Items/second

The raw value is expressed as the number of tiles traveled by each item on the belt per tick, relative to the belt's maximum density - e.g. x items/second ÷ (4 items/lane × 2 lanes/belt × 60 ticks/second) = <speed> belts/tick where a "belt" is the size of one tile. See Transport_belts/Physics for more details.

Must be a positive non-infinite number. The number is a fixed point number with 8 bits reserved for decimal precision, meaning the smallest value step is 1/2^8 = 0.00390625.

Optional properties

animation_speed_coefficient

Type: double
Default: 1

belt_animation_set

Type: table
Either this, or all of the properties below this one have to be present.

Table with the following properties:

  • animation_set - RotatedAnimation - Mandatory.
  • east_index - uint8 - Optional. - Default: 1
  • west_index - uint8 - Optional. - Default: 2
  • north_index - uint8 - Optional. - Default: 3
  • south_index - uint8 - Optional. - Default: 4
  • starting_south_index - uint8 - Optional. - Default: 13
  • ending_south_index - uint8 - Optional. - Default: 14
  • starting_west_index - uint8 - Optional. - Default: 15
  • ending_west_index - uint8 - Optional. - Default: 16
  • starting_north_index - uint8 - Optional. - Default: 17
  • ending_north_index - uint8 - Optional. - Default: 18
  • starting_east_index - uint8 - Optional. - Default: 19
  • ending_east_index - uint8 - Optional. - Default: 20
  • ending_patch - Sprite4Way - Optional.
  • ends_with_stopper - bool - Optional. - Default: false

belt_horizontal

Type: Animation
Mandatory if belt_animation_set is not present.

belt_vertical

Type: Animation
Mandatory if belt_animation_set is not present.

ending_top

Type: Animation
Mandatory if belt_animation_set is not present.

ending_bottom

Type: Animation
Mandatory if belt_animation_set is not present.

ending_side

Type: Animation
Mandatory if belt_animation_set is not present.

starting_top

Type: Animation
Mandatory if belt_animation_set is not present.

starting_bottom

Type: Animation
Mandatory if belt_animation_set is not present.

starting_side

Type: Animation
Mandatory if belt_animation_set is not present.

ending_patch

Type: Sprite4Way
Always optional. Only read if belt_animation_set is not present.

ends_with_stopper

Type: bool
Default: false

Mandatory values

Transport belt connectables have additional requirements for the properties inherited from Prototype/Entity:

  • Transport belt connectable entities must collide with "transport-belt-layer".
  • Transport belt connectable entities must have collision mask that collides with itself.
  • Transport belt connectable entities cannot have collision mask that collides only with tiles (must collide with entities in some way).
  • Transport belt connectable entities must have collision box of an appropriate minimal size, they should occupy more than half of every tile the entity covers.
  • Transport belt connectable entities cannot have the "placeable-off-grid" flag specified.