Prototype/Vehicle: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
(0.17)
(1.1.51: Prototype/EntityWithOwner added)
 
(12 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Basics ==
{{Prototype parent|Prototype/EntityWithOwner}}
This type is abstract and cannot be created directly.
Abstract base of all vehicles.


Abstract base of all vehicles. Extends [[Prototype/EntityWithHealth]].
{{Prototype TOC|''abstract''}}


== Extensions ==
== Extensions ==
Line 11: Line 11:
** [[Prototype/FluidWagon]] '''fluid-wagon'''
** [[Prototype/FluidWagon]] '''fluid-wagon'''
** [[Prototype/Locomotive]] '''locomotive'''
** [[Prototype/Locomotive]] '''locomotive'''
* [[Prototype/SpiderVehicle]] '''spider-vehicle'''


== Mandatory properties ==
== Mandatory properties ==
This prototype inherits all the properties from [[Prototype/EntityWithHealth]].
This prototype inherits all the properties from [[Prototype/EntityWithOwner]].
 
=== weight ===
'''Type''': [[Types/double]]


{{Prototype property|weight|[[Types/double|double]]}}
Must be positive.  
Must be positive.  
Weight of the entity used for physics calculation when car hits something.
Weight of the entity used for physics calculation when car hits something.


=== braking_power or braking_force ===
{{Prototype property|braking_power or braking_force|[[Types/Energy|Energy]] or [[Types/double|double]]}}
'''Type''': [[Types/Energy]] or [[Types/double]]
 
Two different ways to set braking force. At least one must exist. Must be positive.
Two different ways to set braking force. At least one must exist. Must be positive.


=== friction or friction_force ===
{{Prototype property|friction or friction_force|[[Types/double|double]]}}
'''Type''': [[Types/double]]
 
Two different ways to set friction force. At least one must exist. Must be positive.
Two different ways to set friction force. At least one must exist. Must be positive.


=== energy_per_hit_point ===
{{Prototype property|energy_per_hit_point|[[Types/double|double]]}}
'''Type''': [[Types/double]]
The (movement) energy used per hit point (1 hit point = 1 health damage) taken and dealt for this vehicle during collisions. The smaller the number, the more damage this vehicle and the rammed entity take during collisions: <code>damage = energy / energy_per_hit_point</code>.


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


=== terrain_friction_modifier ===
{{Prototype property|terrain_friction_modifier|[[Types/float|float]]|1|optional=true}}
'''Type''': [[Types/float]]
 
'''Default''': 1
 
Must be in the [0, 1] interval.
Must be in the [0, 1] interval.


=== sound_minimum_speed ===
{{Prototype property|sound_minimum_speed|[[Types/double|double]]|1 / 60.0|optional=true}}
'''Type''': [[Types/double]]
Must be positive. Sound is scaled by speed.
 
'''Default''': 1 / 60.0
 
Must be positive.


=== stop_trigger_speed ===
{{Prototype property|sound_scaling_ratio|[[Types/double|double]]|1.0|optional=true}}
'''Type''': [[Types/double]]
Must be positive. Sound is scaled by speed.


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


=== crash_trigger ===
{{Prototype property|crash_trigger|[[Types/TriggerEffect|TriggerEffect]]|optional=true}}
'''Type''': [[Types/TriggerEffect]]


=== stop_trigger ===
{{Prototype property|stop_trigger|[[Types/TriggerEffect|TriggerEffect]]|optional=true}}
'''Type''': [[Types/TriggerEffect]]


=== equipment_grid ===
{{Prototype property|equipment_grid|[[Types/string|string]]|optional=true}}
'''Type''': [[Types/string]]
The name of the [[Prototype/EquipmentGrid|equipment grid]] this vehicle has.


The name of the equipment grid this vehicle has.
{{Prototype property|minimap_representation|[[Types/Sprite|Sprite]]|optional=true}}
The sprite that represents this vehicle on the map/minimap.


=== minimap_representation ===
{{Prototype property|selected_minimap_representation|[[Types/Sprite|Sprite]]|optional=true}}
'''Type''': [[Types/Sprite]]
The sprite that represents this vehicle on the map/minimap when it is selected.


=== selected_minimap_representation ===
{{Prototype property|allow_passengers|[[Types/bool|bool]]|true|optional=true}}
'''Type''': [[Types/Sprite]]
Determines whether this vehicle accepts passengers. This includes both drivers and gunners, if applicable.

Latest revision as of 19:27, 21 January 2022

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


Abstract base of all vehicles.


Prototype/Vehicle — abstract
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/EntityWithOwner.

weight

Type: double
Must be positive. Weight of the entity used for physics calculation when car hits something.

braking_power or braking_force

Type: Energy or double
Two different ways to set braking force. At least one must exist. Must be positive.

friction or friction_force

Type: double
Two different ways to set friction force. At least one must exist. Must be positive.

energy_per_hit_point

Type: double
The (movement) energy used per hit point (1 hit point = 1 health damage) taken and dealt for this vehicle during collisions. The smaller the number, the more damage this vehicle and the rammed entity take during collisions: damage = energy / energy_per_hit_point.

Optional properties

terrain_friction_modifier

Type: float
Default: 1
Must be in the [0, 1] interval.

sound_minimum_speed

Type: double
Default: 1 / 60.0
Must be positive. Sound is scaled by speed.

sound_scaling_ratio

Type: double
Default: 1.0
Must be positive. Sound is scaled by speed.

stop_trigger_speed

Type: double
Default: 0.0

crash_trigger

Type: TriggerEffect

stop_trigger

Type: TriggerEffect

equipment_grid

Type: string
The name of the equipment grid this vehicle has.

minimap_representation

Type: Sprite
The sprite that represents this vehicle on the map/minimap.

selected_minimap_representation

Type: Sprite
The sprite that represents this vehicle on the map/minimap when it is selected.

allow_passengers

Type: bool
Default: true
Determines whether this vehicle accepts passengers. This includes both drivers and gunners, if applicable.