Passer au contenu principal
Version: latest - a1.156.0 ⚖️

Base Vehicle

Base class for all Vehicle entities.

👪Base Class🧑‍💻API Source
👪Base Class
This is a Base Class, an abstract definition that shares common methods and events with it's child classes. You cannot spawn it, and you cannot call anything on the Base Class name itself. Use any class that inherits it.

Classes that share methods and events from this Base Class: VehicleWheeled, VehicleWater.

🦠 Fonctions​

ReturnsNameDescription
AddSkeletalMeshAttachedAttaches a Skeletal Mesh as master pose to this entity
AddStaticMeshAttachedAttaches a Static Mesh to this entity
functionBindAnimationBlueprintEventDispatcherAssigns and Binds an Animation Blueprint Event Dispatcher
varargs of anyCallAnimationBlueprintEventCalls an Animation Blueprint Event or Function
table of stringGetAllSkeletalMeshAttachedGets all Skeletal Meshes attached to this entity
table of stringGetAllStaticMeshAttachedGets all Static Meshes attached to this entity
anyGetAnimationBlueprintPropertyValueGets an Animation Blueprint Property/Variable value directly
tableGetDoorsGets all configured Doors
SkeletalMesh ReferenceGetMeshGets the Asset name
CharacterGetPassengerGets a passenger from a seat
table of CharacterGetPassengersGets all passengers
HideBoneHides a bone of this Vehicle
booleanIsBoneHiddenGets if a bone is hidden
booleanIsEngineStartedChecks if the engine is started
PlayAnimationPlays an Animation on this Vehicle
RemoveAllSkeletalMeshesAttachedRemoves all SkeletalMeshes attached
RemoveAllStaticMeshesAttachedRemoves all StaticMeshes attached
RemoveSkeletalMeshAttachedRemoves, if it exists, a SkeletalMesh from this Vehicle given its custom ID
RemoveStaticMeshAttachedRemoves, if it exists, a StaticMesh from this Vehicle given its custom ID
SetAnimationBlueprintPropertyValueSets an Animation Blueprint Property/Variable value directly
SetBuoyancyPontoonsSets the Buoyancy Pontoons used by the Water simulation
SetBuoyancySettingsSets how this entity behaves on Water
SetCameraArmLengthSets how far the camera stays from this Vehicle while driving it
SetCameraOffsetSets the Vehicle Camera Offset
SetDoorAdds a Door to the Vehicle
SetExplosionSettingsConfigures the Explosion Settings when health reaches zero
SetStaticMeshAttachedTransformSets a Static Mesh Attached location and rotation
StopAnimationStops an Animation Montage on this Vehicle
UnbindAnimationBlueprintEventDispatcherUnbinds an Animation Blueprint Event Dispatcher
UnHideBoneUnHide a bone of this Vehicle

Slow

AddSkeletalMeshAttached​

Spawns and attaches a SkeletalMesh to this entity, the SkeletalMesh must have the same skeleton used by this Actor's mesh, and will follow all animations from it. Uses a custom ID to be used for removing/customizing it afterwards
🆕Updated Function
This method was recently updated in ver. 1.144. See the Compatibility Versions page for more information.
my_vehicle:AddSkeletalMeshAttached(id, skeletal_mesh_path, socket?, relative_location?, relative_rotation?, use_parent_bounds?, use_base_leader_pose_component?, animation_path?, attachable_id?)

Parameters

TypeParameterDefaultDescription
stringid Required parameter Used further for removing or applying material settings on it
SkeletalMesh Referenceskeletal_mesh_path Required parameter Path to SkeletalMesh asset to attach
stringsocket?
Bone socket to attach to
Vectorrelative_location?Vector(0, 0, 0)
Relative location
Rotatorrelative_rotation?Rotator(0, 0, 0)
Relative rotation
booleanuse_parent_bounds?true
If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together
booleanuse_base_leader_pose_component?true
If true, this component will use the base leader pose component for copying its animation
Animation Referenceanimation_path?
Path to Animation asset to play on the Skeletal Mesh attached
stringattachable_id?
Optionally attaches this to another attached skeletal mesh (instead of attaching to the root component)

See also RemoveSkeletalMeshAttached.


Slow

AddStaticMeshAttached​

Spawns and attaches a StaticMesh to this Vehicle in a Socket with a relative location and rotation. Uses a custom ID to be used for removing/customizing it afterwards
my_vehicle:AddStaticMeshAttached(id, static_mesh_path, socket?, relative_location?, relative_rotation?, use_parent_bounds?, attachable_id?)

Parameters

TypeParameterDefaultDescription
stringid Required parameter Unique ID to assign to the StaticMesh
StaticMesh Referencestatic_mesh_path Required parameter Path to StaticMesh asset to attach
stringsocket?
Bone socket to attach to
Vectorrelative_location?Vector(0, 0, 0)
Relative location
Rotatorrelative_rotation?Rotator(0, 0, 0)
Relative rotation
booleanuse_parent_bounds?true
If true, this component uses its parents bounds when attached. This can be a significant optimization with many components attached together
stringattachable_id?
Optionally attaches this to another attached static mesh (instead of attaching to the root component)

See also SetStaticMeshAttachedTransform, RemoveStaticMeshAttached.


Slow

BindAnimationBlueprintEventDispatcher​

Assigns and Binds an Animation Blueprint Event Dispatcher.

Note: only VehicleWheeled has an Animation Blueprint, on any other Vehicle type this does nothing.
local ret = my_vehicle:BindAnimationBlueprintEventDispatcher(dispatcher_name, callback)

Parameters

TypeParameterDefaultDescription
stringdispatcher_name Required parameter Event Dispatcher name
functioncallback Required parameter Callback function to call with this format

Returns

TypeDescription
functionthe callback itself

Slow

CallAnimationBlueprintEvent​

Calls an Animation Blueprint Event or Function
Returns all Function return values on Client Side

Note: only VehicleWheeled has an Animation Blueprint, on any other Vehicle type this does nothing.
local ret_01, ret_02, ... = my_vehicle:CallAnimationBlueprintEvent(event_name, arguments...?)

Parameters

TypeParameterDefaultDescription
stringevent_name Required parameter Nom de l'événement ou de la fonction
anyarguments...?nil
Sequence of arguments to pass to the event

Returns

TypeDescription
varargs of anythe function return values

Optimal

GetAllSkeletalMeshAttached​

Gets all Skeletal Meshes attached to this entity
local ret = my_vehicle:GetAllSkeletalMeshAttached()

Returns

TypeDescription
table of stringthe key as the Attached ID, and the value as the Asset Path

Optimal

GetAllStaticMeshAttached​

Gets all Static Meshes attached to this entity
local ret = my_vehicle:GetAllStaticMeshAttached()

Returns

TypeDescription
table of stringthe key as the Attached ID, and the value as the Asset Path

Slow

GetAnimationBlueprintPropertyValue​

Gets an Animation Blueprint Property/Variable value directly.

Note: only VehicleWheeled has an Animation Blueprint, on any other Vehicle type this returns nil.
local ret = my_vehicle:GetAnimationBlueprintPropertyValue(property_name)

Parameters

TypeParameterDefaultDescription
stringproperty_name Required parameter Name of the Animation Blueprint variable

Returns

TypeDescription
anythe property value

See also SetAnimationBlueprintPropertyValue.


Moderate

GetDoors​

Gets all configured Doors
local ret = my_vehicle:GetDoors()

Returns

TypeDescription
tableAll configured Doors with this format

Optimal

GetMesh​

Gets the Asset name
local asset = my_vehicle:GetMesh()

Returns

TypeDescription
SkeletalMesh Referenceasset path

Optimal

GetPassenger​

Gets a passenger from a seat
local passenger = my_vehicle:GetPassenger(seat)

Parameters

TypeParameterDefaultDescription
integerseat Required parameter Index of the seat, 0 is the driver

Returns

TypeDescription
Characteror nil if no passenger in seat

Moderate

GetPassengers​

Gets all passengers
local passengers = my_vehicle:GetPassengers()

Returns

TypeDescription
table of CharacterAll passengers

Optimal

HideBone​

Hides a bone of this Vehicle
my_vehicle:HideBone(bone_name)

Parameters

TypeParameterDefaultDescription
stringbone_name Required parameter Bone to hide

See also UnHideBone, IsBoneHidden.


Optimal

IsBoneHidden​

Gets if a bone is hidden
local is_hidden = my_vehicle:IsBoneHidden(bone_name)

Parameters

TypeParameterDefaultDescription
stringbone_name Required parameter Bone to check

Returns

TypeDescription
booleanif the bone is hidden

See also UnHideBone, HideBone.


Optimal

IsEngineStarted​

Checks if the engine is started
local is_started = my_vehicle:IsEngineStarted()

Returns

TypeDescription
booleanWhether the engine is started

Moderate

PlayAnimation​

Plays an Animation on this Vehicle
my_vehicle:PlayAnimation(animation_path, slot_name?, loop_indefinitely?, blend_in_time?, blend_out_time?, play_rate?, stop_all_montages?)

Parameters

TypeParameterDefaultDescription
Animation Referenceanimation_path Required parameter The Animation asset to play
stringslot_name?DefaultSlot
The Animation Slot to play it on
booleanloop_indefinitely?false
This parameter is only used if the Vehicle has an Animation Blueprint
floatblend_in_time?0.25
This parameter is only used if the Vehicle has an Animation Blueprint
floatblend_out_time?0.25
This parameter is only used if the Vehicle has an Animation Blueprint
floatplay_rate?1.0
This parameter is only used if the Vehicle has an Animation Blueprint
booleanstop_all_montages?false
Stops all running Montages from the same Group. This parameter is only used if the Vehicle has an Animation Blueprint

Optimal

RemoveAllSkeletalMeshesAttached​

Removes all SkeletalMeshes attached
my_vehicle:RemoveAllSkeletalMeshesAttached()

Optimal

RemoveAllStaticMeshesAttached​

Removes all StaticMeshes attached
my_vehicle:RemoveAllStaticMeshesAttached()

Optimal

RemoveSkeletalMeshAttached​

Removes, if it exists, a SkeletalMesh from this Vehicle given its custom ID
my_vehicle:RemoveSkeletalMeshAttached(id)

Parameters

TypeParameterDefaultDescription
stringid Required parameter Unique ID of the SkeletalMesh to remove

See also AddSkeletalMeshAttached.


Optimal

RemoveStaticMeshAttached​

Removes, if it exists, a StaticMesh from this Vehicle given its custom ID
my_vehicle:RemoveStaticMeshAttached(id)

Parameters

TypeParameterDefaultDescription
stringid Required parameter Unique ID of the StaticMesh to remove

See also AddStaticMeshAttached.


Slow

SetAnimationBlueprintPropertyValue​

Sets an Animation Blueprint Property/Variable value directly on the Animation Blueprint passed in the constructor.

Note: only VehicleWheeled has an Animation Blueprint, on any other Vehicle type this does nothing.
my_vehicle:SetAnimationBlueprintPropertyValue(property_name, value)

Parameters

TypeParameterDefaultDescription
stringproperty_name Required parameter Name of the Animation Blueprint variable
anyvalue Required parameter La valeur à définir

See also GetAnimationBlueprintPropertyValue.


Moderate

SetBuoyancyPontoons​

Sets the spherical Pontoons used to float this entity on Water, overriding the ones automatically calculated from the Mesh bounds and mass.

Pass no value (or an empty table) to go back to the automatically calculated ones.

Pontoons only have an effect on Maps with Water Buoyancy enabled
my_vehicle:SetBuoyancyPontoons(pontoons?)

Parameters

TypeParameterDefaultDescription
tablepontoons?nil
Array with the Pontoons, or nil to restore the automatically calculated ones with this format

Moderate

SetBuoyancySettings​

Any value passed as nil restores that setting's default.

While the Pontoons are being automatically calculated, changing buoyancy_coefficient also recalculates them, as their radius derives from it.
my_vehicle:SetBuoyancySettings(enabled?, buoyancy_coefficient?, buoyancy_damp?, max_buoyant_force?)

Parameters

TypeParameterDefaultDescription
booleanenabled?true
Whether Buoyancy forces are applied at all
floatbuoyancy_coefficient?0.1
How much it floats, the higher the more
floatbuoyancy_damp?1000
First order damping on the vertical velocity, reduces bobbing
floatmax_buoyant_force?5000000
Clamp on the upwards force, stops light objects being launched out of the water

Optimal

SetCameraArmLength​

Sets how far the camera stays from this Vehicle while driving it, in centimeters.

This overrides the Player's own Camera Arm Length for as long as they are driving it. Set it to 0 to use the Player's value instead, which is the default.
my_vehicle:SetCameraArmLength(arm_length)

Parameters

TypeParameterDefaultDescription
integerarm_length Required parameter The distance in centimeters, or 0 to use the Player's own value

Optimal

SetCameraOffset​

Sets the Vehicle Camera Offset
my_vehicle:SetCameraOffset(offset)

Parameters

TypeParameterDefaultDescription
Vectoroffset Required parameter The new Vehicle Camera Offset

Optimal

SetDoor​

Adds a Door at offset_location from root which will pose the Character at seat_location with seat_rotation rotation.
my_vehicle:SetDoor(seat_index, offset_location, seat_location, seat_rotation, trigger_radius, leave_lateral_offset)

Parameters

TypeParameterDefaultDescription
integerseat_index Required parameter Index of the seat, 0 is the driver
Vectoroffset_location Required parameter Location of the door trigger relative to the vehicle
Vectorseat_location Required parameter Location of the seat relative to the vehicle
Rotatorseat_rotation Required parameter Rotation of the seat relative to the vehicle
integertrigger_radius Required parameter Radius of the trigger used to enter through this door
integerleave_lateral_offset Required parameter It's where the Character will be ejected when leaving it (e.g. -150 for left door or 150 for right door)

Optimal

SetExplosionSettings​

Configures the Explosion Settings when health reaches zero
my_vehicle:SetExplosionSettings(engine_relative_location, materials_index_burnt_override, materials_index_burnt_invisible)

Parameters

TypeParameterDefaultDescription
Vectorengine_relative_location Required parameter Relative location of the Engine. Used to apply particles and effects.
tablematerials_index_burnt_override Required parameter List of material indexes to override to burnt when exploded. Leave it empty for all indexes.
tablematerials_index_burnt_invisible Required parameter List of material indexes to override to invisible when exploded. Leave it empty for all indexes.
Vehicle.SetExplosionSettings Examples
Vehicle Explosion Settings
my_vehicle:SetExplosionSettings(Vector(-50, 0, 0), { 1, 2, 4 }, { 3 })

Optimal

SetStaticMeshAttachedTransform​

Sets a Static Mesh Attached location and rotation
my_vehicle:SetStaticMeshAttachedTransform(id, relative_location, relative_rotation)

Parameters

TypeParameterDefaultDescription
stringid Required parameter Unique ID of the StaticMesh set with AddStaticMeshAttached
Vectorrelative_location Required parameter New relative location
Rotatorrelative_rotation Required parameter New relative rotation

See also AddStaticMeshAttached.


Optimal

StopAnimation​

Stops an Animation Montage on this Vehicle
my_vehicle:StopAnimation(animation_asset?)

Parameters

TypeParameterDefaultDescription
Animation Referenceanimation_asset?
Leave empty to stop all Montages

Optimal

UnbindAnimationBlueprintEventDispatcher​

Unbinds an Animation Blueprint Event Dispatcher
my_vehicle:UnbindAnimationBlueprintEventDispatcher(dispatcher_name, callback?)

Parameters

TypeParameterDefaultDescription
stringdispatcher_name Required parameter Event Dispatcher name
functioncallback?nil
Optional callback to unbind

Optimal

UnHideBone​

UnHide a bone of this Vehicle
my_vehicle:UnHideBone(bone_name)

Parameters

TypeParameterDefaultDescription
stringbone_name Required parameter Bone to unhide

See also HideBone, IsBoneHidden.

🚀 Événements​

NameDescription
CharacterAttemptEnterTriggered when a Character attempts to enter the Vehicle
CharacterAttemptLeaveTriggered when a Character attempts to leave the Vehicle
CharacterEnterTriggered when a Character fully enters the Vehicle
CharacterLeaveTriggered when a Character fully leaves the Vehicle
EngineStartTriggered when the engine starts
EngineStopTriggered when the engine stops
HitTriggered when Vehicle hits something

CharacterAttemptEnter​

Triggered when a Character attempts to enter the Vehicle

Return false to prevent it
<AnyVehicleClass>.Subscribe("CharacterAttemptEnter", function(self, character, seat)
-- CharacterAttemptEnter was called
return true
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event
CharactercharacterThe Character
integerseatThe seat index

CharacterAttemptLeave​

Triggered when a Character attempts to leave the Vehicle

Return false to prevent it
<AnyVehicleClass>.Subscribe("CharacterAttemptLeave", function(self, character)
-- CharacterAttemptLeave was called
return true
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event
CharactercharacterThe Character

CharacterEnter​

Triggered when a Character fully enters the Vehicle
<AnyVehicleClass>.Subscribe("CharacterEnter", function(self, character, seat_index)
-- CharacterEnter was called
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event
CharactercharacterThe Character
integerseat_indexThe seat entered, 0 is the driver

CharacterLeave​

Triggered when a Character fully leaves the Vehicle
<AnyVehicleClass>.Subscribe("CharacterLeave", function(self, character, seat_index)
-- CharacterLeave was called
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event
CharactercharacterThe Character
integerseat_indexThe seat left, 0 is the driver

EngineStart​

Triggered when the engine starts
<AnyVehicleClass>.Subscribe("EngineStart", function(self)
-- EngineStart was called
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event

EngineStop​

Triggered when the engine stops
<AnyVehicleClass>.Subscribe("EngineStop", function(self)
-- EngineStop was called
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event

Hit​

Triggered when Vehicle hits something
<AnyVehicleClass>.Subscribe("Hit", function(self, impact_force, normal_impulse, impact_location, velocity, other_actor)
-- Hit was called
end)

Arguments

TypeArgumentDescription
Base VehicleselfThe Vehicle that triggered the event
floatimpact_forceThe intensity of the Hit normalized by the Vehicle's weight
Vectornormal_impulseLa direction de l'impulsion qu'elle donne
Vectorimpact_locationLa position dans le monde de l'impact
VectorvelocityThe Vehicle velocity at the moment it hits
Base Actor or nilother_actorThe other actor that hit this Vehicle