Prototype/Rail: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
m (included abstract in description)
(Updated styling of prototype doc migration note)
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Prototype parent|Prototype/EntityWithHealth}}
<div class="stub"><p>'''The prototype docs have moved to a new website with an improved format.''' This documentation page can now be found here: [https://lua-api.factorio.com/latest/prototypes/RailPrototype.html https://lua-api.factorio.com/latest/prototypes/RailPrototype.html]
 
</p><p>This wiki page is no longer updated and '''will be removed at some point in the future''', so please update your browser bookmarks or other links that sent you here. If you'd like to contribute to the new docs, you can leave your feedback [https://forums.factorio.com/viewforum.php?f=233 on the forums].</p></div>
 
 
 
{{Prototype parent|Prototype/EntityWithOwner}}
The abstract base of both rail prototypes.
The abstract base of both rail prototypes.


Line 10: Line 16:


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


{{Prototype property|pictures|[[Types/table|table]]}}
{{Prototype property|pictures|[[Types/table|table]]}}
Line 30: Line 36:
* curved_rail_horizontal_left_bottom - [[Types/RailPieceLayers|RailPieceLayers]]
* curved_rail_horizontal_left_bottom - [[Types/RailPieceLayers|RailPieceLayers]]
* rail_endings - [[Types/Sprite8Way|Sprite8Way]]
* rail_endings - [[Types/Sprite8Way|Sprite8Way]]
== Optional properties ==
{{Prototype property|walking_sound|[[Types/Sound|Sound]]|optional=true}}
Sound played when a character walks over this rail.


== Mandatory values ==
== Mandatory values ==
Line 38: Line 49:
* curved_rail_primary_bounding_box = {-0.75, -0.55, 0.75, 1.6}
* curved_rail_primary_bounding_box = {-0.75, -0.55, 0.75, 1.6}
* secondary_bounding_box = {-0.68, -2.7, 0.68, 2.7}
* secondary_bounding_box = {-0.68, -2.7, 0.68, 2.7}
Furthermore, the [[Prototype/Entity#selection_box|selection_box]]es are automatically calculated from the bounding boxes, so effectively also hardcoded.

Latest revision as of 10:43, 21 September 2023

The prototype docs have moved to a new website with an improved format. This documentation page can now be found here: https://lua-api.factorio.com/latest/prototypes/RailPrototype.html

This wiki page is no longer updated and will be removed at some point in the future, so please update your browser bookmarks or other links that sent you here. If you'd like to contribute to the new docs, you can leave your feedback on the forums.


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


The abstract base of both rail prototypes.


Prototype/Rail — abstract
pictures::table
walking_sound::Sound (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.

pictures

Type: table
Table with the following mandatory members:

Optional properties

walking_sound

Type: Sound
Sound played when a character walks over this rail.

Mandatory values

All rail collision_boxes are hardcoded and cannot be modified. The hardcoded values are:

  • straight_rail_primary_bounding_box = {-0.7, -0.99, 0.7, 0.99}
  • diagonal_straight_rail_primary_bounding_box = {-0.65, -0.7, 0.65, 0.7}
  • curved_rail_primary_bounding_box = {-0.75, -0.55, 0.75, 1.6}
  • secondary_bounding_box = {-0.68, -2.7, 0.68, 2.7}

Furthermore, the selection_boxes are automatically calculated from the bounding boxes, so effectively also hardcoded.