Player Datablock¶
Member Function Documentation¶
-
void PlayerData::animationDone ( Player *obj* ) Called on the server when a scripted animation completes.
Parameters: obj – The Player object
- See also:
Player::setActionThread()for setting a scripted animation and its ‘hold’ parameter to determine if this callback is used.
-
void PlayerData::doDismount ( Player *obj* ) Called when attempting to dismount the player from a vehicle.
It is up to the
doDismount()method to actually perform the dismount. Often there are some conditions that prevent this, such as the vehicle moving too fast.Parameters: obj – The Player object
-
void
PlayerData::onEnterLiquid(Player obj, float coverage, string type)¶ Called when the player enters a liquid.
Parameters: - obj – The Player object
- coverage – Percentage of the player’s bounding box covered by the liquid
- type – The type of liquid the player has entered
-
void
PlayerData::onEnterMissionArea(Player obj)¶ Called when the player enters the mission area.
Parameters: obj – The Player object
- See also:
- MissionArea
-
void
PlayerData::onLeaveLiquid(Player obj, string type)¶ Called when the player leaves a liquid.
Parameters: - obj – The Player object
- type – The type of liquid the player has left
-
void
PlayerData::onLeaveMissionArea(Player obj)¶ Called when the player leaves the mission area.
:param obj The Player object
- See also:
- MissionArea
-
void
PlayerData::onPoseChange(Player obj, string oldPose, string newPose)¶ Called when the player changes poses.
Parameters: - obj – The Player object
- oldPose – The pose the player is switching from.
- newPose – The pose the player is switching to.
-
void
PlayerData::onStartSprintMotion(Player obj)¶ Called when the player starts moving while in a Sprint pose.
Parameters: obj – The Player object
-
void
PlayerData::onStartSwim(Player obj)¶ Called when the player starts swimming.
Parameters: obj – The Player object
-
void
PlayerData::onStopSprintMotion(Player obj)¶ Called when the player stops moving while in a Sprint pose.
Parameters: obj – The Player object
-
void
PlayerData::onStopSwim(Player obj)¶ Called when the player stops swimming.
Parameters: obj – The Player object
Member Data Documentation¶
-
float PlayerData::airControl Amount of movement control the player has when in the air.
This is applied as a multiplier to the player’s x and y motion.
-
bool PlayerData::allowImageStateAnimation Allow mounted images to request a sequence be played on the Player.
When true a new thread is added to the player to allow for mounted images to request a sequence be played on the player through the image’s state machine. It is only optional so that we don’t create a TSThread on the player if we don’t need to.
-
Point3F PlayerData::boundingBox Size of the bounding box used by the player for collision.
Dimensions are given as “width depth height”.
-
float PlayerData::boxHeadBackPercentage Percentage of the player’s bounding box depth that represents the back side of the head.
Used when computing the damage location.
See also: Player::getDamageLocation
-
float PlayerData::boxHeadFrontPercentage Percentage of the player’s bounding box depth that represents the front side of the head. Used when computing the damage location.
See also: Player::getDamageLocation
-
float PlayerData::boxHeadLeftPercentage Percentage of the player’s bounding box width that represents the left side of the head. Used when computing the damage location.
See also: Player::getDamageLocation
-
float PlayerData::boxHeadPercentage Percentage of the player’s bounding box height that represents the head. Used when computing the damage location.
See also: Player::getDamageLocation
-
float PlayerData::boxHeadRightPercentage Percentage of the player’s bounding box width that represents the right side of the head. Used when computing the damage location.
See also: Player::getDamageLocation
-
float PlayerData::boxTorsoPercentage Percentage of the player’s bounding box height that represents the torso. Used when computing the damage location.
See also: Player::getDamageLocation
-
float PlayerData::bubbleEmitTime Time in seconds to generate bubble particles after entering the water.
-
Point3F PlayerData::crouchBoundingBox Collision bounding box used when the player is crouching.
See also: boundingBox
-
float PlayerData::crouchForce Force used to accelerate the player when crouching.
-
DecalData PlayerData::DecalData Decal to place on the ground for player footsteps.
-
float PlayerData::decalOffset Distance from the center of the model to the right foot.
While this defines the distance to the right foot, it is also used to place the left foot decal as well. Just on the opposite side of the player.
-
ParticleEmitterData PlayerData::dustEmitter Emitter used to generate dust particles.
Note
Currently unused.
-
SFXTrack PlayerData::exitingWater Sound to play when exiting the water with velocity >= exitSplashSoundVelocity.
See also: exitSplashSoundVelocity
-
float PlayerData::exitSplashSoundVelocity Minimum velocity when leaving the water for the exitingWater sound to play.
See also: exitingWater
-
float PlayerData::fallingSpeedThreshold Downward speed at which we consider the player falling.
-
SFXTrack PlayerData::FootBubblesSound Sound to play when walking in water and coverage equals 1.0 (fully underwater).
-
SFXTrack PlayerData::FootHardSound Sound to play when walking on a surface with Material footstepSoundId 1.
-
SFXTrack PlayerData::FootMetalSound Sound to play when walking on a surface with Material footstepSoundId 2.
-
ParticleEmitterData PlayerData::footPuffEmitter Particle emitter used to generate footpuffs (particles created as the player walks along the ground).
Note
The generation of foot puffs requires the appropriate triggeres to be defined in the player’s animation sequences. Without these, no foot puffs will be generated.
-
int PlayerData::footPuffNumParts Number of footpuff particles to generate each step.
Each foot puff is randomly placed within the defined foot puff radius. This includes having footPuffNumParts set to one.
See also: footPuffRadius
-
float PlayerData::footPuffRadius Particle creation radius for footpuff particles.
This is applied to each foot puff particle, even if footPuffNumParts is set to one. So set this value to zero if you want a single foot puff placed at exactly the same location under the player each time.
-
SFXTrack PlayerData::FootShallowSound Sound to play when walking in water and coverage is less than footSplashHeight.
See also: footSplashHeight
-
SFXTrack PlayerData::FootSnowSound Sound to play when walking on a surface with Material footstepSoundId 3.
-
SFXTrack PlayerData::FootSoftSound Sound to play when walking on a surface with Material footstepSoundId 0.
-
float PlayerData::footstepSplashHeight Water coverage level to choose between FootShallowSound and FootWadingSound.
- See also:
- FootShallowSound
- FootWadingSound
-
SFXTrack PlayerData::FootUnderwaterSound Sound to play when walking in water and coverage equals 1.0 (fully underwater).
-
SFXTrack PlayerData::FootWadingSound Sound to play when walking in water and coverage is less than 1, but > footSplashHeight.
See also: footSplashHeight
-
float PlayerData::groundImpactMinSpeed Minimum falling impact speed to apply damage and initiate the camera shaking effect.
-
Point3F PlayerData::groundImpactShakeAmp Amplitude of the camera shake effect after falling.
This is how much to shake the camera.
-
float PlayerData::groundImpactShakeDuration Duration (in seconds) of the camera shake effect after falling.
This is how long to shake the camera.
-
float PlayerData::groundImpactShakeFalloff Falloff factor of the camera shake effect after falling.
This is how to fade the camera shake over the duration.
-
Point3F PlayerData::groundImpactShakeFreq Frequency of the camera shake effect after falling.
This is how fast to shake the camera.
-
float PlayerData::hardSplashSoundVelocity Minimum velocity when entering the water for choosing between the impactWaterMedium and impactWaterHard sound to play.
- See also:
- impactWaterMedium
- impactWaterHard
-
float PlayerData::horizMaxSpeed Maximum horizontal speed.
Note
This limit is only enforced if the player’s horizontal speed exceeds horizResistSpeed.
- See also:
- horizResistSpeed
- horizResistFactor
-
float PlayerData::horizResistFactor Factor of resistence once horizResistSpeed has been reached.
- See also:
- horizMaxSpeed
- horizResistSpeed
-
float PlayerData::horizResistSpeed Horizontal speed at which resistence will take place.
- See also:
- horizMaxSpeed
- horizResistFactor
-
caseString PlayerData::imageAnimPrefix Optional prefix to all mounted image animation sequences in third person.
This defines a prefix that will be added when looking up mounted image animation sequences while in third person. It allows for the customization of a third person image based on the type of player.
-
caseString PlayerData::imageAnimPrefixFP Optional prefix to all mounted image animation sequences in first person.
This defines a prefix that will be added when looking up mounted image animation sequences while in first person. It allows for the customization of a first person image based on the type of player.
-
SFXTrack PlayerData::impactHardSound Sound to play after falling on a surface with Material footstepSoundId 1.
-
SFXTrack PlayerData::impactMetalSound Sound to play after falling on a surface with Material footstepSoundId 2.
-
SFXTrack PlayerData::impactSnowSound Sound to play after falling on a surface with Material footstepSoundId 3.
-
SFXTrack PlayerData::impactSoftSound Sound to play after falling on a surface with Material footstepSoundId 0.
-
SFXTrack PlayerData::impactWaterEasy Sound to play when entering the water with velocity < mediumSplashSoundVelocity.
See also: mediumSplashSoundVelocity
-
SFXTrack PlayerData::impactWaterHard Sound to play when entering the water with velocity >= hardSplashSoundVelocity.
See also: hardSplashSoundVelocity
-
SFXTrack PlayerData::impactWaterMedium Sound to play when entering the water with velocity >= mediumSplashSoundVelocity and < hardSplashSoundVelocity.
- See also:
- mediumSplashSoundVelocity
- hardSplashSoundVelocity
-
float PlayerData::jetJumpEnergyDrain Energy level drained each time the player jet jumps.
See also: jetMinJumpEnergy
Note
Setting this to zero will disable any energy drain
-
float PlayerData::jetJumpForce Force used to accelerate the player when a jet jump is initiated.
-
float PlayerData::jetJumpSurfaceAngle Angle from vertical (in degrees) where the player can jet jump.
-
float PlayerData::jetMaxJumpSpeed Maximum vertical speed before the player can no longer jet jump.
-
float PlayerData::jetMinJumpEnergy Minimum energy level required to jet jump.
See also: jetJumpEnergyDrain
-
float PlayerData::jetMinJumpSpeed Minimum speed needed to jet jump.
If the player’s own z velocity is greater than this, then it is used to scale the jet jump speed, up to jetMaxJumpSpeed.
See also: jetMaxJumpSpeed
-
int PlayerData::jumpDelay Delay time in number of ticks ticks between jumps.
-
float PlayerData::jumpEnergyDrain Energy level drained each time the player jumps.
See also: minJumpEnergy
Note
Setting this to zero will disable any energy drain
-
float PlayerData::jumpForce Force used to accelerate the player when a jump is initiated.
-
float PlayerData::jumpSurfaceAngle Angle from vertical (in degrees) where the player can jump.
-
bool PlayerData::jumpTowardsNormal Controls the direction of the jump impulse.
When false, jumps are always in the vertical (+Z) direction. When true jumps are in the direction of the ground normal so long as the player is not directly facing the surface. If the player is directly facing the surface, then they will jump straight up.
-
float PlayerData::landSequenceTime Time of land sequence play back when using new recover system.
If greater than 0 then the legacy fall recovery system will be bypassed in favour of just playing the player’s land sequence. The time to recover from a fall then becomes this parameter’s time and the land sequence’s playback will be scaled to match.
See also: transitionToLand
-
float PlayerData::maxBackwardSpeed Maximum backward speed when running.
-
float PlayerData::maxCrouchBackwardSpeed Maximum backward speed when crouching.
-
float PlayerData::maxCrouchForwardSpeed Maximum forward speed when crouching.
-
float PlayerData::maxCrouchSideSpeed Maximum sideways speed when crouching.
-
float PlayerData::maxForwardSpeed Maximum forward speed when running.
-
float PlayerData::maxFreelookAngle Defines the maximum left and right angles (in radians) the player can look in freelook mode.
-
float PlayerData::maxJumpSpeed Maximum vertical speed before the player can no longer jump.
-
float PlayerData::maxLookAngle Highest angle (in radians) the player can look.
Note
An angle of zero is straight ahead, with positive up and negative down.
-
float PlayerData::maxProneBackwardSpeed Maximum backward speed when prone (laying down).
-
float PlayerData::maxProneForwardSpeed Maximum forward speed when prone (laying down).
-
float PlayerData::maxProneSideSpeed Maximum sideways speed when prone (laying down).
-
float PlayerData::maxSideSpeed Maximum sideways speed when running.
-
float PlayerData::maxSprintBackwardSpeed Maximum backward speed when sprinting.
-
float PlayerData::maxSprintForwardSpeed Maximum forward speed when sprinting.
-
float PlayerData::maxSprintSideSpeed Maximum sideways speed when sprinting.
-
float PlayerData::maxStepHeight Maximum height the player can step up.
The player will automatically step onto changes in ground height less than maxStepHeight. The player will collide with ground height changes greater than this.
-
float PlayerData::maxTimeScale Maximum time scale for action animations.
If an action animation has a defined ground frame, it is automatically scaled to match the player’s ground velocity. This field limits the maximum time scale used even if the player’s velocity exceeds it.
-
float PlayerData::maxUnderwaterBackwardSpeed Maximum backward speed when underwater.
-
float PlayerData::maxUnderwaterForwardSpeed Maximum forward speed when underwater.
-
float PlayerData::maxUnderwaterSideSpeed Maximum sideways speed when underwater.
-
float PlayerData::mediumSplashSoundVelocity Minimum velocity when entering the water for choosing between the impactWaterEasy and impactWaterMedium sounds to play.
- See also:
- impactWaterEasy
- impactWaterMedium
-
float PlayerData::minImpactSpeed Minimum impact speed to apply falling damage.
This field also sets the minimum speed for the onImpact callback to be invoked.
See also: ShapeBaseData::onImpact()
-
float PlayerData::minJumpEnergy Minimum energy level required to jump.
See also: jumpEnergyDrain
-
float PlayerData::minJumpSpeed Minimum speed needed to jump.
If the player’s own z velocity is greater than this, then it is used to scale the jump speed, up to maxJumpSpeed.
See also: maxJumpSpeed
-
float PlayerData::minLateralImpactSpeed Minimum impact speed to apply non-falling damage.
This field also sets the minimum speed for the onLateralImpact callback to be invoked.
See also: ShapeBaseData::onLateralImpact()
-
float PlayerData::minLookAngle Lowest angle (in radians) the player can look.
Note
An angle of zero is straight ahead, with positive up and negative down.
-
float PlayerData::minRunEnergy Minimum energy level required to run or swim.
See also: runEnergyDrain
-
float PlayerData::minSprintEnergy Minimum energy level required to sprint.
See also: sprintEnergyDrain
-
SFXTrack PlayerData::movingBubblesSound Sound to play when in water and coverage equals 1.0 (fully underwater).
Note that unlike
FootUnderwaterSound, this sound plays even if the player is not moving around in the water.
-
string PlayerData::physicsPlayerType Specifies the type of physics used by the player.
This depends on the physics module used. An example is ‘Capsule’.
Note
Not current used.
-
float PlayerData::pickupRadius Radius around the player to collide with Items in the scene (on server).
Internally the pickupRadius is added to the larger side of the initial bounding box to determine the actual distance, to a maximum of 2 times the bounding box size. The initial bounding box is that used for the root pose, and therefore doesn’t take into account the change in pose.
-
Point3F PlayerData::proneBoundingBox Collision bounding box used when the player is prone (laying down).
See also: boundingBox
-
float PlayerData::proneForce Force used to accelerate the player when prone (laying down).
-
int PlayerData::recoverDelay Number of ticks for the player to recover from falling.
-
float PlayerData::recoverRunForceScale Scale factor applied to runForce while in the recover state.
This can be used to temporarily slow the player’s movement after a fall, or prevent the player from moving at all if set to zero.
-
bool PlayerData::renderFirstPerson Flag controlling whether to render the player shape in first person view.
-
float PlayerData::runEnergyDrain Energy value drained each tick that the player is moving.
The player will not be able to move when his energy falls below minRunEnergy.
See also: minRunEnergy
Note
Setting this to zero will disable any energy drain.
-
float PlayerData::runForce Force used to accelerate the player when running.
-
float PlayerData::runSurfaceAngle Maximum angle from vertical (in degrees) the player can run up.
-
filename PlayerData::shapeNameFP[4] File name of this player’s shape that will be used in conjunction with the corresponding mounted image.
These optional parameters correspond to each mounted image slot to indicate a shape that is rendered in addition to the mounted image shape. Typically these are a player’s arms (or arm) that is animated along with the mounted image’s state animation sequences.
-
SplashData PlayerData::Splash SplashData datablock used to create splashes when the player moves through water.
-
float PlayerData::splashAngle Maximum angle (in degrees) from pure vertical movement in water to generate splashes.
-
ParticleEmitterData PlayerData::splashEmitter[3] Particle emitters used to generate splash particles.
-
float PlayerData::splashFreqMod Multipled by speed to determine the number of splash particles to generate.
-
float PlayerData::splashVelEpsilon Minimum speed to generate splash particles.
-
float PlayerData::splashVelocity Minimum velocity when moving through water to generate splashes.
-
bool PlayerData::sprintCanJump Can the player jump while sprinting.
-
float PlayerData::sprintEnergyDrain Energy value drained each tick that the player is sprinting.
The player will not be able to move when his energy falls below sprintEnergyDrain.
See also: minSprintEnergy
Note
Setting this to zero will disable any energy drain.
-
float PlayerData::sprintForce Force used to accelerate the player when sprinting.
-
float PlayerData::sprintPitchScale Amount to scale pitch motion while sprinting.
-
float PlayerData::sprintStrafeScale Amount to scale strafing motion vector while sprinting.
-
float PlayerData::sprintYawScale Amount to scale yaw motion while sprinting.
-
Point3F PlayerData::swimBoundingBox Collision bounding box used when the player is swimming.
See also: boundingBox
-
float PlayerData::swimForce Force used to accelerate the player when swimming.
-
bool PlayerData::transitionToLand When going from a fall to a land, should we transition between the two.
See also: landSequenceTime
Note
Only takes affect when landSequenceTime is greater than 0.
-
float PlayerData::upMaxSpeed Maximum upwards speed.
- See also:
- upResistSpeed
- upResistFactor
Note
This limit is only enforced if the player’s upward speed exceeds upResistSpeed.
-
float PlayerData::upResistFactor Factor of resistence once upResistSpeed has been reached.
- See also:
- upMaxSpeed
- upResistSpeed
-
float PlayerData::upResistSpeed Upwards speed at which resistence will take place.
- See also:
- upMaxSpeed
- upResistFactor
-
SFXTrack PlayerData::waterBreathSound Sound to play when in water and coverage equals 1.0 (fully underwater).
Note that unlike
FootUnderwaterSound, this sound plays even if the player is not moving around in the water.