Prototype/RollingStock

From Official Factorio Wiki
Revision as of 08:48, 21 May 2021 by Bilka (talk | contribs) (max_speed for trains, max_speed, tie_distance unit, tie explanation)
Jump to navigation Jump to search

Prototype definitions » PrototypeBase » Prototype/Entity » Prototype/EntityWithHealth » Prototype/EntityWithOwner » Prototype/Vehicle » Prototype/RollingStock


The abstract base of all rolling stock.


Prototype/RollingStock — abstract
air_resistance::double
connection_distance::double
joint_distance::double
max_speed::double
pictures::RotatedSprite
vertical_selection_shift::double
allow_manual_color::bool (optional)
allow_robot_dispatch_in_automatic_mode::bool (optional)
back_light::LightDefinition (optional)
color::Color (optional)
drive_over_tie_trigger::TriggerEffect (optional)
horizontal_doors::Animation (optional)
stand_by_light::LightDefinition (optional)
tie_distance::double (optional)
vertical_doors::Animation (optional)
wheels::RotatedSprite (optional)
Inherited from Prototype/Vehicle
braking_power or braking_force::Energy or double
energy_per_hit_point::double
friction or friction_force::double
weight::double
allow_passengers::bool (optional)
crash_trigger::TriggerEffect (optional)
equipment_grid::string (optional)
minimap_representation::Sprite (optional)
selected_minimap_representation::Sprite (optional)
sound_minimum_speed::double (optional)
sound_scaling_ratio::double (optional)
stop_trigger::TriggerEffect (optional)
stop_trigger_speed::double (optional)
terrain_friction_modifier::float (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/Vehicle.

max_speed

Type: double
Maximum speed of the rolling stock in tiles/tick.

In-game, the max speed of a train is min(all_rolling_stock_max_speeds) × average(all_fuel_modifiers_in_all_locomotives). This calculated train speed is then silently capped to 7386.3km/h.

air_resistance

Type: double

joint_distance

Type: double
The length between this rolling stocks front and rear joints. Joints are the point where connection_distance is measured from when rolling stock are connected to one another. Wheels sprite are placed based on the joint position.

Maximum joint distance is 15.

Note: There needs to be border at least 0.2 between the bounding box edge and joint.

connection_distance

Type: double
The distance between the joint of this rolling stock and its connected rolling stocks joint.

pictures

Type: RotatedSprite

vertical_selection_shift

Type: double

Optional properties

drive_over_tie_trigger

Type: TriggerEffect
Usually a sound to play when the rolling stock drives over a tie. The rolling stock is considered to be driving over a tie every tie_distance tiles.

tie_distance

Type: double
Default: 10.0
In tiles. Used to determine how often drive_over_tie_trigger is triggered.

back_light

Type: LightDefinition

stand_by_light

Type: LightDefinition

wheels

Type: RotatedSprite

horizontal_doors

Type: Animation

vertical_doors

Type: Animation

color

Type: Color

allow_manual_color

Type: bool
Default: true

allow_robot_dispatch_in_automatic_mode

Type: bool
Default: false