Skip to main content
Version: bleeding-edge 🩸

πŸ§‘ Character

Characters represents Actors which can be possessed, can move and interact with world. They are the default Skeletal Mesh Character built for nanos world

info

🟦 Authority: This class can only be spawned on Server.

⏬ Inheritance: This class inherits from Actor and Paintable.

info

Characters are Skeletal Meshes using Unreal's Mannequin Skeletal, with animations and interactivity already natively integrated into nanos world. It is possible to import any Skeletal Mesh (which uses Unreal's Mannequin Skeletal) to this Character.

Usage​

Server/Index.lua
-- The following examples are using all Skeletal Meshes which we currently have for examples, including the officials Woman, Man and Mannequin:
local woman = Character(Vector(100, 0, 100), Rotator(0, 0, 0), "nanos-world::SK_Female")
local man = Character(Vector(200, 0, 100), Rotator(0, 0, 0), "nanos-world::SK_Male")
local mannequin = Character(Vector(300, 0, 100), Rotator(0, 0, 0), "nanos-world::SK_Mannequin")
local mannequin_female = Character(Vector(400, 0, 100), Rotator(0, 0, 0), "nanos-world::SK_Mannequin_Female")

local post_apocalyptic = Character(Vector(400, 0, 100), Rotator(0, 0, 0), "nanos-world::SK_PostApocalyptic")
local classic_male = Character(Vector(500, 0, 100), Rotator(0, 0, 0), "nanos-world::SK_ClassicMale")

-- Adds Clothes to Man. Note: some Meshes only supports a specific Mesh (Men/Woman)
man:AddSkeletalMeshAttached("shirt", "nanos-world::SK_Shirt") -- Men only
man:AddSkeletalMeshAttached("shirt", "nanos-world::SK_Underwear") -- Men only
man:AddSkeletalMeshAttached("pants", "nanos-world::SK_Pants") -- Men only
man:AddSkeletalMeshAttached("shoes", "nanos-world::SK_Shoes_01")
man:AddSkeletalMeshAttached("tie", "nanos-world::SK_Tie")

-- Adds Clothes to Woman
woman:AddSkeletalMeshAttached("full", "nanos-world::SK_CasualSet") -- Woman only
woman:AddSkeletalMeshAttached("shoes", "nanos-world::SK_Sneakers")

-- Adds Beard to Man
man:AddStaticMeshAttached("beard", "nanos-world::SM_Beard_Extra", "beard")
man:AddStaticMeshAttached("beard", "nanos-world::SM_Beard_Middle", "beard")
man:AddStaticMeshAttached("beard", "nanos-world::SM_Beard_Mustache_01", "beard")
man:AddStaticMeshAttached("beard", "nanos-world::SM_Beard_Mustache_02", "beard")
man:AddStaticMeshAttached("beard", "nanos-world::SM_Beard_Side", "beard")

-- Adds Hair to Man
man:AddStaticMeshAttached("hair", "nanos-world::SM_Hair_Long", "hair_male")
man:AddStaticMeshAttached("hair", "nanos-world::SM_Hair_Short", "hair_male")

-- Adds Hair to Woman
woman:AddStaticMeshAttached("hair", "nanos-world::SM_Hair_Kwang", "hair_female")

Constructor Parameters​

TypeNameDefault
VectorlocationVector(0, 0, 0)
RotatorrotationRotator(0, 0, 0)
SkeletalMesh Assetskeletal_meshnanos-world::SK_Mannequin
CollisionTypecollision_typeCollisionType.Normal
booleangravity_enabledtrue
numberhealth/max_health100
stringdeath_soundsnanos-world::A_Male_01_Death
stringpain_soundsnanos-world::A_Male_01_Pain
Play as Propgetting-started/tutorials-and-examples/play-as-propNametagsgetting-started/tutorials-and-examples/name-tagsCharacter Meshes Guideassets-modding/creating-assets/skeletal-meshes/characters-meshes

Functions​

Inherited Actor Functions
ReturnsNameDescription
AddImpulseApplies a Force in world space to this Actor
AttachToAttaches this Actor to another Actor
DestroyDestroys this Actor
DetachDetaches this Actor if attached
SetCollisionSets this Actor's collision type
SetForceAdds a permanent force to this Actor
SetGravityEnabledSets whether gravity is enabled on this Actor
SetVisibilitySets the Actor visibility
SetHighlightEnabledSets whether the highlight is enabled on this Actor, and which highlight index to use
SetOutlineEnabledSets whether the outline is enabled on this Actor, and which outline index to use
SetLifeSpanSets the time (in seconds) before this Actor is destroyed
SetLocationSets this Actor's location in the game world
SetNetworkAuthoritySets the Player this Actor will have its physics calculated on Network Authority
SetRelativeLocationSets this Actor's relative location in local space
SetRelativeRotationSets this Actor's relative rotation in local space
SetRotationSets this Actor's rotation in the game world
SetScaleSets this Actor's scale
SetValueSets a value in this Actor, which can be accessed by any package
TranslateToSmoothly moves this Actor to the specified location
RotateToSmoothly rotates this Actor to the specified angle
booleanHasNetworkAuthorityGets if the LocalPlayer is currently the Network Authority of this Actor
booleanHasAuthorityGets if this Actor was spawned by the client side
booleanIsBeingDestroyedGets if this Actor is being destroyed
booleanIsGravityEnabledGets whether gravity is enabled on this Actor
booleanIsVisibleGets whether this actor is Visible or not
booleanIsInWaterGets if this Actor is in water
booleanIsNetworkDistributedGets if this Actor is currently Network Distributed
booleanIsValidReturns if this Actor is valid (i.e. not destroyed)
tableGetAttachedEntitiesGets all Actors attached to this Actor
anyGetAttachedToGets the Actor this Actor is attached to
tableGetBoundsGets this Actor's bounds
numberGetCollisionGets this Actor's collision type
numberGetIDGets the universal network ID of this Actor
VectorGetLocationGets this Actor's location in the game world
RotatorGetRotationGets this Actor's angle in the game world
VectorGetForceGets this Actor's scale
VectorGetScaleGets this Actor's scale
stringGetTypeGets the type of this Actor
anyGetValueGets a value stored on this Actor at the given key
VectorGetVelocityReturns this Actor's current velocity
stringAddActorTagAdds an Unreal Actor Tag to this Actor
stringRemoveActorTag`Remove an Unreal Actor Tag from this Actor
tableGetActorTagsGets all Unreal Actor Tags from this Actor
functionSubscribeSubscribes to an Event
UnsubscribeUnsubscribes from an Event
Inherited Paintable Functions
ReturnsNameDescription
SetMaterialSets the material at the specified index of this Actor
SetMaterialFromWebUISets the material at the specified index of this Actor to a WebUI object
SetMaterialFromSceneCaptureSets the material at the specified index of this Actor to a SceneCapture object
ResetMaterialResets the material from the specified index to the original one
SetMaterialColorParameterSets a Color parameter in this Actor’s material
SetMaterialScalarParameterSets a scalar parameter in this Actor’s material
SetMaterialTextureParameterSets a texture parameter in this Actor's material to an image on disk
SetMaterialVectorParameterSets a Vector parameter in this Actor’s material
SetPhysicalMaterialOverrides this Actor's Physical Material with a new one
ReturnsNameDescription
numberApplyDamageDo damage in a character
AddSkeletalMeshAttachedSpawns and Attaches a SkeletalMesh into this Character
AddStaticMeshAttachedSpawns and Attaches a StaticMesh into this Character
DropDrops any Pickable the Character is holding
EnterVehicleEnters the Vehicle at Seat (0 - Driver)
GrabPropGives a Prop to the Character
HideBoneHides a bone of this Character
UnHideBoneUnHides a bone of this Character
IsBoneHiddenGets if a bone is hidden
JumpTriggers this Character to jump
LeaveVehicleLeaves the current Vehicle
LookAtAI: Tries to make this Character to look at Location
MoveToAI: Makes this Character to walk to the Location
FollowAI: Makes this Character to follow another actor
StopMovementAI: Stops the movement
PickUpGives a Melee/Grenade/Weapon (Pickable) to the Character
PlayAnimationPlays an Animation Montage on this character
RemoveSkeletalMeshAttachedRemoves, if existing, a SkeletalMesh from this Character given it's custom ID
RemoveStaticMeshAttachedRemoves, if existing, a StaticMesh from this Character given it's custom ID
RemoveAllStaticMeshesAttachedRemoves all StaticMeshes attached
RemoveAllSkeletalMeshesAttachedRemoves all SkeletalMeshes attached
RespawnRespawns the Character, fullying it's Health and moving it to it's Initial Location
SetAccelerationSettingsSets the Movement Max Acceleration of this Character.
SetBrakingSettingsSets the Movement Braking Settings of this Character.
SetCameraModeSets the Camera Mode
SetCameraOffsetSets the Camera Offset (only affects TPS)
SetCanCrouchSets if this Character is allowed to Crouch and to Prone
SetCanAimSets if this Character is allowed to Aim
SetCanDropSets if this Character is allowed to Drop the Picked Up pickable
SetCanSprintSets if this Character is allowed to Sprint
SetCanGrabPropsSets if this Character is allowed to Grab any Prop
SetCanPickupPickablesSets if this Character is allowed to Pick up any Pickable (Weapon, Grenade, Melee)
SetCanPunchSets if this Character is allowed to Punch
SetCanDeployParachuteSets if this Character is allowed to open the parachute
SetCapsuleSizeSets this Character's Capsule size
SetDamageMultiplierChanges how much damage this character takes
SetDeathSoundChanges the Death sound when Character dies
SetFallDamageTakenSet the Fall Damage multiplier taken when falling from High places
SetFlyingModeSets the Flying Mode
SetHighFallingTimeSets time elapsed until automatically transition to HighFalling state
SetFOVMultiplierSets the FOV multiplier
SetGaitModeSets the Gait Mode
SetGravityScaleChanges the Gravity Scale of this Character
SetHealthSets the Health of this Character. If the character is dead, respawns it with full health
SetImpactDamageTakenSet the Impact Damage taken when being roamed by things
SetInvulnerableSets if the Character can receive any damage
SetJumpZVelocitySets the velocity of the jump
SetMaxHealthSets the MaxHealth of this Character
SetMeshChanges the Character Mesh on the fly
SetMorphTargetSet Morph Target with Name and Value
GetMorphTargetGet Morph target with given name
ClearMorphTargetsClear all Morph Target that are set to this Mesh
GetAllMorphTargetNamesReturns the list of all morph targets of this Skeletal Mesh
SetPhysicalAnimationSettingsApplies the physical animation settings to the body given
ResetPhysicalAnimationSettingsResets all Physical Animation settings
SetMovementEnabledEnables/Disables Character's Movement
SetParachuteTextureChanges the Parachute Texture
SetPainSoundChanges the Pain sound when Character takes damage
SetPunchDamageSet the Punch Damage this Character will apply on others
SetRagdollModeSets Character Ragdoll Mode
SetSpeedMultiplier1 = normal
SetStanceModeStance Modes: None, Standing, Crouching, Proning
SetTeamSets a Team which will disable damaging same Team Members. 0 for Neutral
SetViewModeView Modes: FPS, TPS1, TPS2, TPS3
SetWeaponAimModeAim Modes: None, ADS, ZoomedZoom, Zoomed, ZoomedFar
StopAnimationStops an Animation Montage on this character
UnGrabPropUnGrabs/Drops the Prop the Character is holding
booleanIsInRagdollModeGets Character Ragdoll Mode
booleanIsInvulnerableGets if the Character can receive damage
booleanIsMovementEnabledGets Character Movement Enabled
CameraModeGetCameraMode
booleanGetCanAim
booleanGetCanCrouch
booleanGetCanDrop
booleanGetCanGrabProps
booleanGetCanPunch
booleanGetCanSprint
booleanGetCanPickupPickables
tableGetCapsuleSize
tableGetBoneTransformGets a bone Location and Rotation
RotatorGetControlRotationGets the rotation this character is looking at
numberGetDamageMultiplier
numberGetFallDamageTaken
FallingModeGetFallingModeGets the Falling Mode
booleanGetFlyingModeGets if the Character is in Flying Mode
CollisionTypeGetGaitModeGets the Gait Mode
PropGetGrabbedPropGets the Grabbing Prop
numberGetGravityScaleGets the Gravity Scale of this Character
numberGetHealthGets the Character's Health.
numberGetImpactDamageTaken
numberGetJumpZVelocity
numberGetMaxHealthGets the Character's MaxHealth.
stringGetMeshGets the Mesh Asset name
VectorGetMovingToGets if Character is moving to
PickableGetPickedGets the holding Picked Melee/Grenade/Weapon
PlayerGetPlayerGets the Player controlling this Character
numberGetPunchDamage
numberGetSpeedMultiplier
StanceModeGetStanceMode
SwimmingModeGetSwimmingMode
numberGetTeam
VehicleGetVehicleGets the Vehicle the Character is on
ViewModeGetViewModeGets Character View Mode
AimModeGetWeaponAimModeGets Character Aim Mode

Events​

Inherited Actor Events
NameDescription
DestroyTriggered when an Actor is destroyed
SpawnTriggered when an Actor is spawned/created
ValueChangeTriggered when an Actor has a value changed with :SetValue()
NameDescription
AnimationBeginNotifyWhen an Animation Montage Notify begins
AnimationEndNotifyWhen an Animation Montage Notify ends
DeathWhen Character Dies
DropWhen Character drops anything
EnterVehicleWhen Character enters a vehicle
AttemptEnterVehicleWhen Character attempts to enter a vehicle
FallingModeChanged
FireWhen Character fires a Weapon
GaitModeChanged
GrabPropWhen Character grabs up a Prop
HealthChangedWhen Character health is changed
HighlightWhen Character highlights/looks at a Prop or a Pickable
InteractWhen a Character interacts with a Prop or Pickable to pick it up
LeaveVehicleWhen Character leaves a vehicle
AttemptLeaveVehicleWhen Character attempts to leave a vehicle
MoveCompletedCalled when AI reaches it's destination, or when it fails
PickUpWhen Character picks up anything
PossessedWhen Character is possessed
PunchWhen Character punches
RagdollModeChanged
AttemptReloadWhen Character attempts to reload a weapon
ReloadWhen Character reloads a weapon
RespawnWhen Character Respawns
StanceModeChanged
SwimmingModeChanged
TakeDamageWhen Character takes Damage
UnGrabPropWhen Character drops a Prop
UnPossessedWhen Character is unpossessed
ViewModeChanged
WeaponAimModeChanged

Functions Detailed​

ApplyDamage​

Do damage in a character, will trigger all related events and apply modified damage based on bone. Also will apply impulse if it's a heavy explosion

my_character:ApplyDamage(damage, bone_name, damage_type, from_direction, instigator, causer)
TypeParameterDefault ValueDescription
numberdamage
stringbone_name``
DamageTypedamage_typeDamageType.Shot
Vectorfrom_directionVector()
Playerinstigatornil
anycausernilThe object which caused the damage

AddSkeletalMeshAttached​

Spawns and Attaches a SkeletalMesh into this Character, the SkeletalMesh must have the same Skeletal used by the Character Mesh, and will follow all animations from it. Uses a custom ID to be used for removing it further

For customizing the Materials specific of a SkeletalMeshAttached, please use the following syntax in the Paintable methods: attachable///[ATTACHABLE_ID]/[PARAMETER_NAME], where [ATTACHABLE_ID] is the ID of the Attachable, and [PARAMETER_NAME] is the name of the parameter you want to change.

my_character:AddSkeletalMeshAttached(id, skeletal_mesh_path)
TypeParameterDefault ValueDescription
stringid
stringskeletal_mesh_path``

AddStaticMeshAttached​

Spawns and Attaches a StaticMesh into this Character in a Socket with relative Location and Rotation. Uses a custom ID to be used for removing it further

For customizing the Materials specific of a StaticMeshAttached, please use the following syntax as the parameter_name in the Paintable methods: attachable///[ATTACHABLE_ID]/[PARAMETER_NAME], where [ATTACHABLE_ID] is the ID of the Attachable, and [PARAMETER_NAME] is the name of the parameter you want to change.

my_character:AddStaticMeshAttached( id, static_mesh_path, socket, relative_location, relative_rotation)
TypeParameterDefault ValueDescription
stringid
stringstatic_mesh_path``
stringsocket``
Vectorrelative_locationVector()
Rotatorrelative_rotationRotator()

Drop​

Drops any Pickable the Character is holding

my_character:Drop()

EnterVehicle​

Enters the Vehicle at Seat (0 - Driver)

my_character:EnterVehicle(vehicle, seat)
TypeParameterDefault ValueDescription
Vehiclevehicle
numberseat0

GrabProp​

Gives a Prop to the Character

my_character:GrabProp(prop)
TypeParameterDefault ValueDescription
Propprop

HideBone​

Hides a bone of this Character. Check Bone Names List for all Bone names

my_character:HideBone(bone_name)
TypeParameterDefault ValueDescription
stringbone_name

UnHideBone​

UnHide a bone of this Character. Check Bone Names List for all Bone names

my_character:UnHideBone(bone_name)
TypeParameterDefault ValueDescription
stringbone_name

IsBoneHidden​

Check if a Bone is Hidden

Returns boolean

my_character:IsBoneHidden(bone_name)
TypeParameterDefault ValueDescription
stringbone_name

Jump​

Triggers this Character to jump

my_character:Jump()

LeaveVehicle​

Leaves the current Vehicle

my_character:LeaveVehicle()

LookAt​

AI: Tries to make this Character to look at Location

my_character:LookAt(location)
TypeParameterDefault ValueDescription
Vectorlocation

MoveTo​

AI: Makes this Character to walk to the Location

Triggers event MoveCompleted.

my_character:MoveTo(location, acceptance_radius)
TypeParameterDefault ValueDescription
Vectorlocation
numberacceptance_radius50

Follow​

AI: Makes this Character to follow another Actor

Triggers event MoveCompleted.

my_character:Follow(actor, acceptance_radius, stop_on_succeed, stop_on_fail, update_rate)
TypeParameterDefault ValueDescription
Actoractor
numberacceptance_radius50
booleanstop_on_succeedfalseWhether to stop when reaching the target
booleanstop_on_failfalseWhether to stop when failed to reach the target
numberupdate_rate0.25How often to recalculate the AI path

StopMovement​

AI: Stops the movement

Triggers event MoveCompleted.

my_character:StopMovement()

PickUp​

Gives a Melee/Grenade/Weapon (Pickable) to the Character

my_character:PickUp(pickable)
TypeParameterDefault ValueDescription
Pickablepickable

PlayAnimation​

Plays an Animation Montage on this character

my_character:PlayAnimation(animation_path, slot_type, loop_indefinitely, blend_in_time, blend_out_time, play_rate, stop_all_montages)
TypeParameterDefault ValueDescription
stringanimation_path
AnimationSlotTypeslot_typeAnimationSlotType.FullBody
booleanloop_indefinitelyfalse
numberblend_in_time0.25
numberblend_out_time0.25
numberplay_rate1.0
booleanstop_all_montagesfalseStops all running Montages from the same Group

RemoveSkeletalMeshAttached​

Removes, if existing, a SkeletalMesh from this Character given it's custom ID

my_character:RemoveSkeletalMeshAttached(id)
TypeParameterDefault ValueDescription
stringid

RemoveStaticMeshAttached​

Removes, if existing, a StaticMesh from this Character given it's custom ID

my_character:RemoveStaticMeshAttached(id)
TypeParameterDefault ValueDescription
stringid

RemoveAllStaticMeshesAttached​

Removes all StaticMeshes attached

my_character:RemoveAllStaticMeshesAttached()

RemoveAllSkeletalMeshesAttached​

Removes all SkeletalMeshes attached

my_character:RemoveAllSkeletalMeshesAttached()

Respawn​

Respawns the Character, fullying it's Health and moving it to it's Initial Location

my_character:Respawn(location, rotation)
TypeParameterDefault ValueDescription
Vectorlocationinitial locationIf not passed will use the initial location passed when the Character spawned
RotatorrotationRotator(0, 0, 0)

SetAccelerationSettings​

Sets the Movement Max Acceleration of this Character.

my_character:SetAccelerationSettings(walking, parachuting, skydiving, falling, swimming, swimming_surface, flying)
TypeParameterDefault ValueDescription
numberwalking768
numberparachuting512
numberskydiving768
numberfalling128
numberswimming256
numberswimming_surface256
numberflying1024

SetBrakingSettings​

Sets the Movement Braking Settings of this Character.

my_character:SetBrakingSettings(ground_friction, braking_friction_factor, braking_walking, braking_flying, braking_swimming, braking_falling)
TypeParameterDefault ValueDescription
numberground_friction2
numberbraking_friction_factor2
numberbraking_walking96
numberbraking_flying3000
numberbraking_swimming10
numberbraking_falling0

SetCameraMode​

Sets the Camera Mode (i.e. Only TPS, FPS or if allow both)

info

Using FPSOnly CameraMode on AI will lock his body rotation (when using LookAt).

my_character:SetCameraMode(camera_mode)
TypeParameterDefault ValueDescription
CameraModecamera_mode

SetCameraOffset​

Sets the Camera Offset (only affects TPS)

my_character:SetCameraOffset(camera_offset)
TypeParameterDefault ValueDescription
Vectorcamera_offset

SetCanCrouch​

Sets if this Character is allowed to Crouch and to Prone

my_character:SetCanCrouch(can_crouch)
TypeParameterDefault ValueDescription
booleancan_crouch

SetCanAim​

Sets if this Character is allowed to Aim

my_character:SetCanAim(can_aim)
TypeParameterDefault ValueDescription
booleancan_aim

SetCanDrop​

Sets if this Character is allowed to Drop the Picked up item

my_character:SetCanDrop(can_drop)
TypeParameterDefault ValueDescription
booleancan_drop

SetCanSprint​

Sets if this Character is allowed to Sprint

my_character:SetCanSprint(can_sprint)
TypeParameterDefault ValueDescription
booleancan_sprint

SetCanGrabProps​

Sets if this Character is allowed to Grab any Prop

my_character:SetCanGrabProps(can_grab_props)
TypeParameterDefault ValueDescription
booleancan_grab_props

SetCanPickupPickables​

Sets if this Character is allowed to Pick up any Pickable (Weapon, Grenade, Melee...)

my_character:SetCanPickupPickables(can_pickup)
TypeParameterDefault ValueDescription
booleancan_pickup

SetCanPunch​

Sets if this Character is allowed to Punch

my_character:SetCanPunch(can_punch)
TypeParameterDefault ValueDescription
booleancan_punch

SetCanDeployParachute​

Sets if this Character is allowed to deploy the Parachute

my_character:SetCanDeployParachute(can_deploy_parachute)
TypeParameterDefault ValueDescription
booleancan_deploy_parachute

SetCapsuleSize​

Sets this Character's Capsule size (will affect Camera location and Character's collision) - default is (42, 96)

my_character:SetCapsuleSize(radius, half_height)
TypeParameterDefault ValueDescription
booleanradius
booleanhalf_height

SetDamageMultiplier​

Changes how much damage this character takes

my_character:SetDamageMultiplier(bone_name, multiplier)
TypeParameterDefault ValueDescription
stringbone_name
numbermultiplier

SetDeathSound​

Changes the Death sound when Character dies

my_character:SetDeathSound(sound_asset)
TypeParameterDefault ValueDescription
stringsound_asset

SetFallDamageTaken​

Set the Fall Damage multiplier taken when falling from High places (default: 10). Setting to 0 will make the Character to do not take damage or enter ragdoll mode

my_character:SetFallDamageTaken(damage)
TypeParameterDefault ValueDescription
numberdamage

SetFlyingMode​

Sets the Flying Mode

my_character:SetFlyingMode(flying_mode)
TypeParameterDefault ValueDescription
booleanflying_mode

SetFOVMultiplier​

Sets the Field of View multiplier

my_character:SetFOVMultiplier(multiplier)
TypeParameterDefault ValueDescription
numbermultiplier

SetHighFallingTime​

Sets time elapsed until automatically transition to HighFalling state (from SmallFalling). Default is 1 second

my_character:SetHighFallingTime(time)
TypeParameterDefault ValueDescription
numbertime

SetGaitMode​

Gait Modes: None, Walking, Sprinting

my_character:SetGaitMode(mode)
TypeParameterDefault ValueDescription
GaitModemode

SetGravityScale​

Changes the Gravity Scale of this Character (can be negative)

my_character:SetGravityScale(scale)
TypeParameterDefault ValueDescription
Vectorscale

SetHealth​

Sets the Health of this Character. If the character is dead, respawns it with full health

my_character:SetHealth(new_health)
TypeParameterDefault ValueDescription
numbernew_health

SetImpactDamageTaken​

Set the Impact Damage taken when being roamed by things (default: 10). Setting to 0 will make the Character to do not take damage or enter ragdoll mode

my_character:SetImpactDamageTaken(damage)
TypeParameterDefault ValueDescription
numberdamage

SetInvulnerable​

Sets if the Character can receive any damage

my_character:SetInvulnerable(is_invulnerable)
TypeParameterDefault ValueDescription
booleanis_invulnerable

SetJumpZVelocity​

Sets the velocity of the jump. Default is 450.

my_character:SetJumpZVelocity(velocity)
TypeParameterDefault ValueDescription
numbervelocity

SetMaxHealth​

Sets the MaxHealth of this Character

my_character:SetMaxHealth(new_max_health)
TypeParameterDefault ValueDescription
numbernew_max_health

SetMesh​

Changes the Character Mesh on the fly

my_character:SetMesh(skeletal_mesh_asset)
TypeParameterDefault ValueDescription
SkeletalMesh Assetskeletal_mesh_asset

SetMorphTarget​

Set Morph Target with Name and Value

my_character:SetMorphTarget(name, value)
TypeParameterDefault ValueDescription
stringnameMorph Target Name
numbervalue

GetMorphTarget​

Get Morph target with given name

Returns number

my_character:GetMorphTarget(name)
TypeParameterDefault ValueDescription
stringnameMorph Target Name

ClearMorphTargets​

Clear all Morph Target that are set to this Mesh

my_character:ClearMorphTargets()

GetAllMorphTargetNames​

Returns the list of all morph targets of this Skeletal Mesh

Returns a table

my_character:GetAllMorphTargetNames()

SetPhysicalAnimationSettings​

Applies the physical animation settings to the body given

my_character:SetPhysicalAnimationSettings(bone, include_self, is_local_simulation, orientation_strength, angular_velocity_strength, position_strength, velocity_strength, max_linear_force, max_angular_force)
TypeParameterDefault ValueDescription
stringboneThe body we will be driving
booleaninclude_selfWhether to modify the given body
booleanis_local_simulationWhether the drive targets are in world space or local
booleanorientation_strength0The strength used to correct orientation error
booleanangular_velocity_strength0The strength used to correct angular velocity error
booleanposition_strength0The strength used to correct linear position error. Only used for non-local simulation
booleanvelocity_strength0The strength used to correct linear velocity error. Only used for non-local simulation
booleanmax_linear_force0The max force used to correct linear errors
booleanmax_angular_force0The max force used to correct angular errors

ResetPhysicalAnimationSettings​

Resets all Physical Animation settings

my_character:ResetPhysicalAnimationSettings()

SetMovementEnabled​

Resets all Physical Animation settings

my_character:SetMovementEnabled(is_movement_enabled)
TypeParameterDefault ValueDescription
booleanis_movement_enabled

SetParachuteTexture​

Changes the Parachute Texture

my_character:SetParachuteTexture(texture)
TypeParameterDefault ValueDescription
Image Special Pathtexture

SetPainSound​

Changes the Pain sound when Character takes damage

my_character:SetPainSound(sound_asset)
TypeParameterDefault ValueDescription
stringsound_asset

SetPunchDamage​

Set the Punch Damage this Character will apply on others (default is 15)

my_character:SetPunchDamage(damage)
TypeParameterDefault ValueDescription
numberdamage

SetRagdollMode​

Sets Character Ragdoll Mode

my_character:SetRagdollMode(ragdoll_enabled)
TypeParameterDefault ValueDescription
booleanragdoll_enabled

SetSpeedMultiplier​

1 = normal

my_character:SetSpeedMultiplier(multiplier)
TypeParameterDefault ValueDescription
numbermultiplier

SetStanceMode​

Stance Modes: None, Standing, Crouching, Proning

my_character:SetStanceMode(mode)
TypeParameterDefault ValueDescription
StanceModemode

SetTeam​

Sets a Team which will disable damaging same Team Members. 0 for Neutral

my_character:SetTeam(team)
TypeParameterDefault ValueDescription
numberteam

SetViewMode​

Changes the Predefined View Mode

View Modes: FPS, TPS1, TPS2, TPS3

my_character:SetViewMode(view_mode)
TypeParameterDefault ValueDescription
ViewModeview_mode

SetWeaponAimMode​

Aim Modes: None, ADS, ZoomedZoom, Zoomed, ZoomedFar

my_character:SetWeaponAimMode(aim_mode)
TypeParameterDefault ValueDescription
AimModeaim_mode

StopAnimation​

Stops an Animation Montage on this character

my_character:StopAnimation(animation_path = "")
TypeParameterDefault ValueDescription
stringanimation_path``

UnGrabProp​

UnGrabs/Drops the Prop the Character is holding

my_character:UnGrabProp()

IsInRagdollMode​

Gets Character Ragdoll Mode

Returns boolean

my_character:IsInRagdollMode()

IsInvulnerable​

Gets if the Character can receive damage

Returns boolean

my_character:IsInvulnerable()

IsMovementEnabled​

Gets Character Movement Enabled

Returns boolean

my_character:IsMovementEnabled()

GetCameraMode​

Returns CameraMode

my_character:GetCameraMode()

GetCanDrop​

Returns boolean

my_character:GetCanDrop()

GetCanPunch​

Returns boolean

my_character:GetCanPunch()

GetCanAim​

Returns boolean

my_character:GetCanAim()

GetCanCrouch​

Returns boolean

my_character:GetCanCrouch()

GetCanSprint​

Returns boolean

my_character:GetCanSprint()

GetCanGrabProps​

Returns boolean

my_character:GetCanGrabProps()

GetCanPickupPickables​

Returns boolean

my_character:GetCanPickupPickables()

GetCapsuleSize​

Gets the Capsule Size set by :SetCapsuleSize()

Returns a table in the format { Radius, HalfHeight }

my_character:GetCapsuleSize()

GetBoneTransform​

Gets the Bone Transform in World Space

Returns a table in the format { Location, Rotation }

my_character:GetBoneTransform(bone_name)
TypeParameterDescription
stringbone_name

GetControlRotation​

Gets the rotation this character is looking at

Returns Rotator

my_character:GetControlRotation()

GetDamageMultiplier​

Returns number

my_character:GetDamageMultiplier(bone_name)
TypeParameterDescription
stringbone_name

GetFallDamageTaken​

Returns number

my_character:GetFallDamageTaken()

GetFallingMode​

Gets the Falling Mode

Returns FallingMode

my_character:GetFallingMode()

GetFlyingMode​

Gets if the Character is in Flying Mode

Returns FlyingMode

my_character:GetFlyingMode()

GetGaitMode​

Gets the Gait Mode

Returns GaitMode

my_character:GetGaitMode()

GetGrabbedProp​

Gets the Grabbing Prop

Returns Prop

my_character:GetGrabbedProp()

GetGravityScale​

Gets the Gravity Scale of this Character

Returns number

my_character:GetGravityScale()

GetHealth​

Gets the Character's Health.

Returns number

my_character:GetHealth()

GetImpactDamageTaken​

Returns number

my_character:GetImpactDamageTaken()

GetJumpZVelocity​

Returns number

my_character:GetJumpZVelocity()

GetMaxHealth​

Gets the Character's MaxHealth.

Returns number

my_character:GetMaxHealth()

GetMesh​

Gets the Mesh Asset name

Returns string

my_character:GetMesh()

GetMovingTo​

Gets the Character moving to location, returns Vector(0, 0, 0) if it's not

Returns Vector

my_character:GetMovingTo()

GetPicked​

Gets the holding Picked Melee/Grenade/Weapon

Returns Pickable

my_character:GetPicked()

GetPlayer​

Gets the Player controlling this Character

Returns Player

my_character:GetPlayer()

GetPunchDamage​

Returns number

my_character:GetPunchDamage()

GetSpeedMultiplier​

Returns number

my_character:GetSpeedMultiplier()

GetStanceMode​

Returns StanceMode

my_character:GetStanceMode()

GetSwimmingMode​

Returns SwimmingMode

my_character:GetSwimmingMode()

GetTeam​

Returns number

my_character:GetTeam()

GetVehicle​

Gets the Vehicle the Character is on

Returns Vehicle

my_character:GetVehicle()

GetViewMode​

Gets Character View Mode

Returns ViewMode

my_character:GetViewMode()

GetWeaponAimMode​

Gets Character Aim Mode

Returns AimMode

my_character:GetWeaponAimMode()

Events Detailed​

AnimationBeginNotify​

When an Animation Montage Notify begins

Character.Subscribe("AnimationBeginNotify", function(self, notify_name)

end)
TypeParameterDescription
Characterself
stringnotify_name

AnimationEndNotify​

When an Animation Montage Notify ends

Character.Subscribe("AnimationEndNotify", function(self, notify_name)

end)
TypeParameterDescription
Characterself
stringnotify_name

Death​

When Character Dies

Character.Subscribe("Death", function(self, last_damage_taken, last_bone_damage, damage_type_reason, hit_from_direction, instigator, causer)

end)
TypeParameterDescription
Characterself
numberlast_damage_taken
stringlast_bone_damaged
DamageTypedamage_type_reason
Vectorhit_from_direction
Playerinstigator
anycauserThe object which caused the damage

Drop​

When Character drops the currently picked up Pickable

Character.Subscribe("Drop", function(self, object, triggered_by_player)

end)
TypeParameterDescription
Characterself
Pickableobject
booleantriggered_by_player

EnterVehicle​

When Character enters a vehicle

Character.Subscribe("EnterVehicle", function(self, vehicle, seat_index)

end)
TypeParameterDescription
Characterself
Vehiclevehicle
numberseat_index

AttemptEnterVehicle​

When Character attempts to enter a vehicle

Return false to prevent it

Character.Subscribe("AttemptEnterVehicle", function(self, vehicle, seat_index)

end)
TypeParameterDescription
Characterself
Vehiclevehicle
numberseat_index

FallingModeChanged​

Falling Modes: None, Jumping, Climbing, Vaulting, Falling, HighFalling, Parachuting, SkyDiving

Character.Subscribe("FallingModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
FallingModeold_state
FallingModenew_state

Fire​

When Character fires a Weapon

Character.Subscribe("Fire", function(self, weapon)

end)
TypeParameterDescription
Characterself
Weaponweapon

GaitModeChanged​

Gait Modes: None, Walking, Sprinting

Character.Subscribe("GaitModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
GaitModeold_state
GaitModenew_state

GrabProp​

When Character grabs up a Prop

Character.Subscribe("GrabProp", function(self, prop)

end)
TypeParameterDescription
Characterself
Propprop

HealthChanged​

When Character has it's Health changed, or because took damage or manually set through scripting or respawning

Character.Subscribe("HealthChanged", function(self, old_health, new_health)

end)
TypeParameterDescription
Characterself
numberold_health
numbernew_health

Highlight​

When Character highlights/looks at a Prop or a Pickable

Character.Subscribe("Highlight", function(self, is_highlighted, object)

end)
TypeParameterDescription
Characterself
booleanis_highlightedWhether the object is being highlighted or not
Prop or Pickableobject

Interact​

When a Character interacts with a Prop or Pickable to pick it up

Return false to prevent it

Character.Subscribe("Interact", function(self, object)

end)
TypeParameterDescription
Characterself
Pickable or Propobject

LeaveVehicle​

When Character leaves a vehicle

Character.Subscribe("LeaveVehicle", function(self, vehicle)

end)
TypeParameterDescription
Characterself
Vehiclevehicle

AttemptLeaveVehicle​

When Character attempts to leave a vehicle

Return false to prevent it

Character.Subscribe("AttemptLeaveVehicle", function(self, vehicle)

end)
TypeParameterDescription
Characterself
Vehiclevehicle

MoveCompleted​

Called when AI reaches it's destination, or when it fails

Character.Subscribe("MoveCompleted", function(self, succeeded)

end)
TypeParameterDescription
Characterself
booleansucceeded

PickUp​

When Character picks up anything

Character.Subscribe("PickUp", function(self, object)

end)
TypeParameterDescription
Characterself
Pickableobject

Possessed​

When Character is possessed

Character.Subscribe("Possessed", function(self, possesser)

end)
TypeParameterDescription
Characterself
Playerpossesser

Punch​

When Character punches

Character.Subscribe("Punch", function(self)

end)
TypeParameterDescription
Characterself

RagdollModeChanged​

When Character enters or leaves ragdoll

Character.Subscribe("RagdollModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
booleanold_state
booleannew_state

AttemptReload​

When Character attempts to reload a weapon

Return false to prevent it

Character.Subscribe("AttemptReload", function(self, weapon)

end)
TypeParameterDescription
Characterself
Weaponweapon

Reload​

When Character reloads a weapon

Character.Subscribe("Reload", function(self, weapon, ammo_to_reload)

end)
TypeParameterDescription
Characterself
Weaponweapon
numberammo_to_reload

Respawn​

When Character Respawns

Character.Subscribe("Respawn", function(self)

end)
TypeParameterDescription
Characterself

StanceModeChanged​

Stance Modes: None, Standing, Crouching, Proning

Character.Subscribe("StanceModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
StanceModeold_state
StanceModenew_state

SwimmingModeChanged​

Swimming Modes: None, Surface, Underwater

Character.Subscribe("SwimmingModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
SwimmingModeold_state
SwimmingModenew_state

TakeDamage​

When Character takes Damage

Return false to cancel the damage (will still display animations, particles and apply impact forces)

Character.Subscribe("TakeDamage", function(self, damage, bone, type, from_direction, instigator, causer)

end)
TypeParameterDescription
Characterself
numberdamage
stringboneDamaged bone
DamageTypetypeDamage Type
Vectorfrom_directionDirection of the damage relative to the damaged actor
PlayerinstigatorThe player which caused the damage
anycauserThe object which caused the damage

UnGrabProp​

When Character drops a Prop

Character.Subscribe("UnGrabProp", function(self, prop)

end)
TypeParameterDescription
Characterself
Propprop

UnPossessed​

When Character is unpossessed

Character.Subscribe("UnPossessed", function(self, old_possesser)

end)
TypeParameterDescription
Characterself
Playerold_possesser

ViewModeChanged​

When Character changes it's View Mode: FPS, TPS1, TPS2, TPS3

Character.Subscribe("ViewModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
ViewModeold_state
ViewModenew_state

WeaponAimModeChanged​

Aim Modes: None, ADS, ZoomedZoom, Zoomed, ZoomedFar

Character.Subscribe("WeaponAimModeChanged", function(self, old_state, new_state)

end)
TypeParameterDescription
Characterself
AimModeold_state
AimModenew_state

Male & Female Customization​

The following items can be used to customize Male & Female (nanos-world::SK_Male & nanos-world::SK_Female) default meshes from nanos world.

Morph TargetsMat. Scalar ParamsMat. Color ParamsMat. Texture Params
nose1BaseColorPowerLipstickTintTexture
nose2MuscularBrowsTintLipstickMask
browsSpecularBlushTintBrowsMask
mouthRoughnessEyeShadowTintBlushMask
fatScatterUnderwearTintEyeShadowMask
nose3DetailAmountHairTintNormal
chinDetailScaleTintNormalMuscular
faceUnderwearRoughnessUnderwearMask
nose4UnderwearSpecularSR
skinnyHairScatterHairTexture
jawHairAlphaPowerHairSpecular
brows2HairSpecularMultiplierHairRoughness
angryHairRoughnessMultiplierHairTangent
smirkHairPixelDepth
smirk2
smirk3
smile
nose6
jaw_forward
lips
lips2
mouth_wide
eyes1
eyes2
eyes3
eyes4
eyes_retraction
lips3
eyes5
nose7
forehead
bodyfat

Character's Skeleton Bone Names​

info

Ugly list I know.

  • root
    • pelvis
      • spine_01
        • spine_02
          • spine_03
            • clavicle_l
              • upperarm_l
                • lowerarm_l
                  • hand_l
                    • index_01_l
                      • index_02_l
                        • index_03_l
                    • middle_01_l
                      • middle_02_l
                        • middle_03_l
                    • pinky_01_l
                      • pinky_02_l
                        • pinky_03_l
                    • ring_01_l
                      • ring_02_l
                        • ring_03_l
                    • thumb_01_l
                      • thumb_02_l
                        • thumb_03_l
                    • weapon_l
            • clavicle_r
              • upperarm_r
                • lowerarm_r
                  • hand_r
                    • index_01_r
                      • index_02_r
                        • index_03_r
                    • middle_01_r
                      • middle_02_r
                        • middle_03_r
                    • pinky_01_r
                      • pinky_02_r
                        • pinky_03_r
                    • ring_01_r
                      • ring_02_r
                        • ring_03_r
                    • thumb_01_r
                      • thumb_02_r
                        • thumb_03_r
                    • weapon_r
            • neck_01
              • head
                • lefteye
                • righteye
                • leftlidup
                • leftlidlow
                • rightlidup
                • rightlitlow
      • thigh_l
        • calf_l
          • foot_l
            • ball_l
      • thigh_r
        • calf_r
          • foot_r
            • ball_r