The three virtues of a programmer: Laziness, Impatience, and Hubris. – Larry Wall

Legacy:Actor/Methods

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT2003 :: Object >> Actor (Methods)

Uncategorized[edit]

string ConsoleCommand( string Command ) [native] 
Execute a console command in the context of the current level and game engine. See console commands.
Error( coerce string S ) [native, final] 
Handle an error and kill this one actor.
Sleep( float Seconds ) [native, final, latent] 
See latent function.

Collision[edit]

SetCollision( optional bool NewColActors, optional bool NewBlockActors, optional bool NewBlockPlayers ) [native, final] 
Sets bCollideActors, bBlockActors and bBlockPlayers to the values given by the parameters. bBlockPlayers is obsolete.
bool SetCollisionSize( float NewRadius, float NewHeight ) [native, final] 
Sets CollisionRadius and CollisionHeight to the values given by the parameters.

Drawing[edit]

As their names suggest, these functions set the corresponding properties, which can't be changed directly since they are declared as const.

SetDrawScale( float NewScale ) [native, final]
SetDrawScale3D( vector NewScale3D ) [native, final]
SetStaticMesh( StaticMesh NewStaticMesh ) [native, final]
SetDrawType( EDrawType NewDrawType ) [native, final]

Movement[edit]

bool Move( vector Delta ) [native, final] 
Like SetLocation but parameter is used relative to current location. It will consider the collision of the actor, so it will not pass through walls and other blockers.
bool SetLocation( vector NewLocation ) [native, final] 
This function sets the location of the actor it is called on. It will not work on actors with PHYS_Karma or PHYS_KarmaRagdoll. If the actor cannot occupy the new location because it is colliding with an actor that can block it, it will be placed at the nearest valid location. Note that because Terrain has no "volume" and is just a bent up sheet, the actor may not be moved in this manner when it penetrates terrain.
bool SetRotation( rotator NewRotation ) [native, final] 
This function sets the rotation of the actor it is called on. It will not work on actors with PHYS_Karma or PHYS_KarmaRagdoll. Does this relocate actors with more complex collision hulls if their new rotation causes them to penetrate an actor that can block them?
bool SetRelativeRotation( rotator NewRotation ) [native, final] 
Sets the rotation relative to the actor's base.
bool SetRelativeLocation( vector NewLocation ) [native, final] 
Sets the rotation reletive to the actor's base.
bool MoveSmooth( vector Delta ) [native, final] 
AutonomousPhysics( float DeltaSeconds ) [native, final] 

Relations[edit]

SetBase( Actor NewBase, optional vector NewFloor ) [native, final] 
Sets the actor's new base. NewFloor is the optional new floor normal (default is vect(0,0,1)) and it is only used for classes inherited from Pawn.
SetOwner( Actor NewOwner ) [native, final] 
Sets the actor's new owner.

Animation[edit]

string GetMeshName() [native, final] 
bool PlayAnim( name Sequence, optional float Rate, optional float TweenTime, optional int Channel ) [native, final] 
Plays one of the animation sequences available for the actor's mesh. Rate is the relative playback speed of the animation sequence. TweenTime is the amount of game time the current animation frame is crossfaded to the start frame of the new animation before the animation sequence actually starts. Channel refers to the channel that this animation should be played on, for blended animations. See Skeletal Mesh. (What does the function return?) Category:Legacy Answer Needed
bool LoopAnim( name Sequence, optional float Rate, optional float TweenTime, optional int Channel ) [native, final] 
Same as PlayAnim, except that the animation sequence is restarted after it finished. Channel refers to the channel that this animation should be played on, for blended animations. See Skeletal Mesh. (What does the function return?) Category:Legacy Answer Needed
bool TweenAnim( name Sequence, float Time, optional int Channel ) [native, final] 
Crossfades from the current animation frame to the first frame of the specified animation sequence. Channel refers to the channel that this animation should be played on, for blended animations. See Skeletal Mesh. (What does the function return?) Category:Legacy Answer Needed
bool IsAnimating(optional int Channel) [native, final] 
Returns whether there's an animation playing in the specified channel.
FinishAnim(optional int Channel) [native, final, latent] 
A latent function which returns when the animation sequence in the specified channel has reached its last frame.
bool HasAnim( name Sequence ) [native, final] 
Returns whether the actor's current mesh has an animation sequence with the specified name.
StopAnimating( optional bool ClearAllButBase ) [native, final] 
Immediately stops the animation(s) the actor is currently playing. (What does ClearAllButBase do?) Category:Legacy Answer Needed
FreezeAnimAt( float Time, optional int Channel) [native, final] 
Freezes the specified channel's animation. (How exactly does this work?) Category:Legacy Answer Needed
SetAnimFrame( float Time, optional int Channel, optional int UnitFlag ) [native, final] 
Sets an animation in a certain channel to the specified time index. If the UnitFlag is 0 then the time value ranges from 0 to 1, 1 being the end of the animation (last frame) and 0 being the beginning (first frame). If the UnitFlag is 1 then the time is the frame that you want it to go to.
bool IsTweening(int Channel) [native, final] 
Returns whether the specified channel is currently fading in (tweening to) a new animation sequence.
AnimStopLooping(optional int Channel) [native, final] 
Prevents an animation sequence from starting over by itself once it has reached its last frame.

Animation Notifications[edit]

AnimEnd( int Channel ) [event] 
Notification that the current animation has ended. Allows an object to wait for animation completion before proceeding with other activities.
EnableChannelNotify ( int Channel, int Switch ) [native, final] 
int GetNotifyChannel() [native, final] 

Skeletal Animation[edit]

LinkSkelAnim( MeshAnimation Anim, optional Mesh NewMesh ) [simulated, native, final] 
Links a new animation set and mesh to the actor.
LinkMesh( Mesh NewMesh, optional bool bKeepAnim ) [simulated, native, final] 
Loads a new mesh for the actor and optionally keeps the animation set of the previous mesh.

LinkMesh note> vaptor: seems in 2004 and 2003 for subclassed xpawns link mesh won't work cause theres a undocumented native function that changes the set mesh in net mode to the default character mesh each tick the only work around is to stop replicateing player replication info by seting it to role_none but thats not a good solution either cause it tends cause the actor to not be useable for playercontrollers.


BoneRefresh() [native, final] 
Updates the bone coords.
AnimBlendParams( int Stage, optional float BlendAlpha, optional float InTime, optional float OutTime, optional name BoneName, optional bool bGlobalPose) [native, final] 
See udn2:SkeletalBlending.
AnimBlendToAlpha( int Stage, float TargetAlpha, float TimeInterval ) [native, final] 
coords GetBoneCoords( name BoneName ) [native, final] 
rotator GetBoneRotation( name BoneName, optional int Space ) [native, final] 
vector GetRootLocation() [native, final] 
rotator GetRootRotation() [native, final] 
vector GetRootLocationDelta() [native, final] 
rotator GetRootRotationDelta() [native, final] 
bool AttachToBone( Actor Attachment, name BoneName ) [native, final] 
Attaches the actor to the bone/socket alias using the attachment offset/rotation defined within the socket.
bool DetachFromBone( Actor Attachment ) [native, final] 
LockRootMotion( int Lock ) [native, final] 
SetBoneScale( int Slot, optional float BoneScale, optional name BoneName ) [native, final] 
Scales the specified bone, overriding any other bone scaling associated with the specified slot. Not sure of the rationale in exposing the slots.
SetBoneDirection( name BoneName, rotator BoneTurn, optional vector BoneTrans, optional float Alpha, optional int Space ) [native, final] 
SetBoneLocation( name BoneName, optional vector BoneTrans, optional float Alpha ) [native, final] 
SetBoneRotation( name BoneName, optional rotator BoneTurn, optional int Space, optional float Alpha ) [native, final, simulated] 
GetAnimParams( int Channel, out name OutSeqName, out float OutAnimFrame, out float OutAnimRate ) [native, final] 
bool AnimIsInGroup( int Channel, name GroupName ) [native, final] 
Name GetClosestBone( Vector loc, Vector ray, out float boneDist, optional Name BiasBone, optional float BiasDistance ) [native, final] 
Returns the closest socket alias, not the bone (UT2004).

URLs[edit]

UpdateURL( String NewOption, String NewValue, bool bSaveDefault ) [native, final] 
Updates an URL option and optionally saves it as default URL option.
string GetUrlOption( String Option ) [native, final] 
Returns the value of an URL option.

Rendering[edit]

plane GetRenderBoundingSphere() [native, final] 
Returns a plane struct which represents a sphere surrounding the actor. (X, Y, Z represent the center, W the radius)
DrawDebugLine( vector LineStart, vector LineEnd, byte R, byte G, byte B) [native, final] 
SLOW! Use for debugging only!

Physics[edit]

DebugClock() [native, final] 
DebugUnclock() [native, final] 
FinishInterpolation() [native, final, latent] 
Latent function, which returns when the actor has finished following its assigned interpolation path.
SetPhysics( EPhysics newPhysics ) [native, final] 
Sets a new physics mode.
OnlyAffectPawns( bool B ) [native, final] 

Karma[edit]

Note that SimParams take affect until you quit the game! Make sure you reset them to defaults when leaving your mod etc.

KGetSimParams( out KSimParams SimParams ) [native, final] 
KSetSimParams( KSimParams SimParams ) [native, final] 
quat KGetRBQuaternion() [native, final] 
KGetRigidBodyState( out KRigidBodyState RBstate ) [native, final] 
Returns the current Karma state of the actor in the RBstate variable
KDrawRigidBodyState( KRigidBodyState RBState, bool AltColour ) [native, final] 
SLOW! Use for debugging only!
vector KRBVecToVector( KRBVec RBvec ) [native, final] 
Returns a vector created from the Karma KRBVec
KRBVec KRBVecFromVector( vector v ) [native, final] 
Returns a Karma KBBVec created from the regular Unreal vector
KSetMass( float mass ) [native, final] 
Sets the Karma KMass property of an Actor
float KGetMass() [native, final] 
Returns the Karma KMass
KSetInertiaTensor( vector it1, vector it2 ) [native, final] 
Set inertia tensor assuming a mass of 1. Scaled by mass internally to calculate actual inertia tensor.
KGetInertiaTensor( out vector it1, out vector it2 ) [native, final] 
KSetDampingProps( float lindamp, float angdamp ) [native, final] 
KGetDampingProps( out float lindamp, out float angdamp ) [native, final] 
KSetFriction( float friction ) [native, final] 
Sets the Karma Friction property
float KGetFriction() [native, final] 
Returns the Karma Friction property
KSetRestitution( float rest ) [native, final] 
Sets the Karma Restitution (Bounciness) property
float KGetRestitution() [native, final] 
Returns the Karma Restitution property
KSetCOMOffset( vector offset ) [native, final] 
KGetCOMOffset( out vector offset ) [native, final] 
KGetCOMPosition( out vector pos ) [native, final] 
Get actual position of actors COM in world space.
KSetImpactThreshold( float thresh ) [native, final] 
Sets the threshold for velocity at which a moving Karma actor must strike something before it's KImpact() event is called
float KGetImpactThreshold() [native, final] 
Returns the Impact Threshhold
KWake() [native, final] 
Begins Karma simulation
bool KIsAwake() [native, final] 
Returns true if Karma is simulating for this Actor
KAddImpulse( vector Impulse, vector Position, optional name BoneName ) [native, final] 
Adds a Karma impulse to the actor from Position, applying to BoneName
KSetStayUpright( bool stayUpright, bool allowRotate ) [native, final] 
Sets the KStayUpright poperty
KSetBlockKarma( bool newBlock ) [native, final] 
Sets the actor to block Karma
KSetActorGravScale( float ActorGravScale ) [native, final] 
Sets the Karma GravScale
float KGetActorGravScale() [native, final] 
Returns the Karma GravScale
KDisableCollision( Actor Other ) [native, final] 
Disable Karma contact generation between this actor, and another actor. Collision is on by default.
KEnableCollision( Actor Other ) [native, final] 
Enable Karma contact generation between this actor, and another actor. Collision is on by default.

The Karma functions are discussed in more detail on the Karma Functions And Events page.

Karma Ragdoll[edit]

KSetSkelVel( vector Velocity, optional vector AngVelocity, optional bool AddToCurrent ) [native, final] 
float KGetSkelMass() [native, final] 
KFreezeRagdoll() [native, final] 
KAddBoneLifter( name BoneName, InterpCurve LiftVel, float LateralFriction, InterpCurve Softness ) [native, final] 
Note you MUST turn collision off (KSetBlockKarma) before using bone lifters!
KRemoveLifterFromBone( name BoneName ) [native, final] 
KRemoveAllBoneLifters() [native, final] 
Used for only allowing a fixed maximum number of ragdolls in action.
KMakeRagdollAvailable() [native, final] 
bool KIsRagdollAvailable() [native, final] 

Karma Events[edit]

KImpact( Actor other, vector pos, vector impactVel, vector impactNorm) [event] 
called when Karma actor hits with impact velocity over KImpactThreshold
KVelDropBelow() [event] 
called when karma actor's velocity drops below KVelDropBelowThreshold
KSkelConvulse() [event] 
called when a ragdoll convulses (see KarmaParamsSkel)
KApplyForce( out vector Force, out vector Torque ) [event] 
called just before sim to allow user to apply force (location movement) and torque (rotation movement) to the actor. You should ONLY put numbers into Force and Torque during this event!!!!
bool KUpdateState(out KRigidBodyState newState) [event] 
This is called from inside C++ Karma physics code at the appropriate time to update state of Karma rigid body. If you return true, newState will be set into the rigid body. Return false and it will do nothing.
It seems this is only called on subclasses of KActor, KVehicle and SVehicle.

The Karma functions are discussed in more detail on the Karma Functions And Events page.

Optimization[edit]

Clock( out float time ) [native, final] 
This is called at the beginning of a section of code to be timed. The variable time does not need to be initialized. See Code Optimization for a code sample.
UnClock( out float time ) [native, final] 
This is called at the end of a section of code to be timed passing in the same time variable supplied to Clock. See Code Optimization for a code sample.
CyclesToSeconds( int cycles) [native, final] 
Available for Deus Ex. Converts the cycles created by Clock/UnClock to seconds.

Timing[edit]

SetTimer( float NewTimerRate, bool bLoop ) [native, final] 
Causes Timer() events every NewTimerRate seconds. If bLoop is true, causes Timer() events every NewTimerRate seconds. Otherwise, causes Timer() to be called once in NewTimerRate seconds. SetTimer(0.0, False); stops the timer. Actors with bStatic true do not get ticked, and as such the timer will not function if bStatic is true.

Music[edit]

int PlayMusic( string Song, float FadeInTime ) [native, final] 
Plays a song name, given a FadeInTime, returns a SongHandle.
StopMusic( int SongHandle, float FadeOutTime ) [native, final] 
Stops the specified SongHandle (as given to you by PlayMusic)
StopAllMusic( float FadeOutTime ) [native, final] 
Stops all music

Engine notification functions[edit]

Destroyed() [event] 
called when an actor is destroyed. See Destroying Objects.
GainedChild( Actor Other ) [event] 
Called when another actor sets this actor as its Owner through SetOwner() or Spawn().
LostChild( Actor Other ) [event] 
Called when another actor is no longer owned by this actor. Ownership was changed through SetOwner() or the other actor was destroyed.
Tick( float DeltaTime ) [event] 
Called when time passes if this actor isn't bStatic. DeltaTime is the time in seconds that has passed since the last tick. Child actors are ticket after their owners have been ticked. Temporarily toggle with Enable('Tick'), Disable('Tick'). See Probe Function.
Timer() [event] 
When a timer has been started with SetTimer(), this function is executed when the amount of time that was specified in SetTimer has passed. Like Tick() this event will only be called when the actor is not static and has not been disabled via Disable('Timer'). See Probe Function.
PostNetReceive() [event] 
If bNetNotify is True, this event is called when the actor receives an update to any variable through replication. See Replication.
TornOff() [event] 
Networking - called on client when actor is torn off. (bTearOff==true)

Triggers[edit]

Trigger( Actor Other, Pawn EventInstigator ) [event] 
Called when this actor's Event is triggered.
UnTrigger( Actor Other, Pawn EventInstigator ) [event] 
Called when this actor's Event is untriggered.
BeginEvent() [event] 
EndEvent() [event] 

Physics & world interaction[edit]

HitWall( vector HitNormal, Actor HitWall ) [event] 
Called when the actor can collide with world geometry and just hit a wall.
Falling() [event] 
Called with PHYS_Falling when the actor starts to fall.
Landed( vector HitNormal ) [event] 
Called when the actor is no longer falling. If you want to receive HitWall() instead of Landed() set bBounce=True.
ZoneChange( ZoneInfo NewZone ) [event] 
Called when the actor's zone is about to change to NewZone.
PhysicsVolumeChange( PhysicsVolume NewVolume ) [event] 
Called when the actor's PhysicsVolume is about to change to NewVolume.
Touch( Actor Other ) [event] 
Called when the actor's collision hull is touching another actor's collision hull.
PostTouch( Actor Other ) [event] 
called for PendingTouch actor after physics completes
UnTouch( Actor Other ) [event] 
Called when the actor's collision hull no longer touches another actor's collision hull.
Bump( Actor Other ) [event] 
BaseChange() [event] 
Called when the actor's base has changed.
Attach( Actor Other ) [event] 
Called by SetBase() to notify an actor that another actor Other has been attached to it.
Detach( Actor Other ) [event] 
Called by SetBase() to notify an actor that a previously attached actor Other has been detached from it.
Actor SpecialHandling( Pawn Other) [event] 
bool EncroachingOn( Actor Other ) [event] 
Called when this actor's collision hull intersects a blocking actor's collision hull. Returns whether this actor is "encroaching" on the other actor.
EncroachedBy( Actor Other ) [event] 
When another actor has determined that it "encroaches" this actor, this event is called.
FinishedInterpolation() [event] 
The actor has finished folowing its assigned interpolation path.
EndedRotation() [event] 
Called when rotation completes.
UsedBy( Pawn user ) [event] 
Called if this Actor was touching a Pawn who pressed Use.
FellOutOfWorld( eKillZType KillType ) [simulated, event] 
Called when the actor fell below the current zone's KillZ height. By default this sets physics to none and destroys the actor.
Actor Trace( out vector HitLocation, out vector HitNormal, vector TraceEnd, optional vector TraceStart, optional bool bTraceActors, optional vector Extent, optional out Material Material ) [native, final] 
This traces a path to find what it collides with first. The line will be traced starting at TraceStart and ending at TraceEnd. If bTraceActors is true, actors will be considered for the tracing, otherwise only pieces of the world (terrain, staticmeshactors, BSP) will be considered for collision. When the trace hits something, HitLocation and HitNormal will be set to contain the location and normal of the impact. If specified, the material of the surface hit can also be returned. If an Extent is specified, you can have the trace have "width." It will have a box of the size specified as a vector (corner to corner) as the "thickness" of the trace. Note that traces are not very fast, so should be avoided or kept to a minimum where possible. Note that if you want actors to be considered for traces they must be able to block the trace, either by bCollideActors, or easier with bBlockZeroExtentTraces or bBlockNonZeroExtentTraces if your trace uses extents. See Trace for more.

Foxpaw: Can someone elaborate on the extents of a trace? Specifically, is the box aligned on the world axes or along the trace? IE, does the X of the extents point "foreward" along the trace, with Y and Z perpindicular to the trace, or do they define a box in the world coordinate system that gets "dragged along" the length of the trace?

Foxpaw: Tracing doesn't seem to interact properly with terrain if you use extents. I have been able to get zero extent traces to hit terrain, but not extent traces.

Devi: In theory the extent vector gets interpreted as a world aligned rectangular prism when doing Terrain checks, when it's testing versus actors it gets interpreted as a vertical cylinder. The cylinder collision type can go a bit weird if the X and Y values in the extent vector don't match...

bool FastTrace( vector TraceEnd, optional vector TraceStart ) [native, final] 
Similar to trace. Returns true if there is a clear path between the two points, false if the trace is blocked by world geometry. It will pass right through anything that is not set as world geometry.
Actor Spawn( class<Actor> SpawnClass, optional Actor SpawnOwner, optional name SpawnTag, optional vector SpawnLocation, optional rotator SpawnRotation ) [native, final] 
Spawn an actor. Returns an actor of the specified class, not of class Actor (this is hardcoded in the compiler). Returns None if the actor could not be spawned (either the actor wouldn't fit in the specified location, or the actor list is full). Defaults to spawning at the spawner's location. See Chain Of Events When Spawning Actors.
bool Destroy() [native, final] 
Destroy this actor. Returns true if destroyed, false if indestructable. Destruction is latent. It occurs at the end of the tick. See Destroying Objects.

Damage & Kills[edit]

KilledBy( Pawn EventInstigator ) [event] 
This actor was "killed" by a Pawn.
TakeDamage( int Damage, Pawn EventInstigator, vector HitLocation, vector Momentum, class<DamageType> DamageType ) [event] 
Called when the actor is taking damage.

Sound[edit]

PlaySound( Sound Sound, optional ESoundSlot Slot, optional float Volume, optional bool bNoOverride, optional float Radius, optional float Pitch, optional bool Attenuate ) [native, final] 
Play a sound effect. If called from a simulated function or on a client, the sound is propagated only to the local player, i.e. only he will hear the sound. If called from a non-simulated function on the server, the sound is propagated to all players. (They will hear it as long as they are in range.)
PlayOwnedSound( Sound Sound, optional ESoundSlot Slot, optional float Volume, optional bool bNoOverride, optional float Radius, optional float Pitch, optional bool Attenuate ) [native, simulated, final] 
Play a sound effect. On clients this function behaves identical to PlaySound. If called on the server the sound os propagated to all players but the remote owner. It will be propagated to a local owner, though.
DemoPlaySound( Sound Sound, optional ESoundSlot Slot, optional float Volume, optional bool bNoOverride, optional float Radius, optional float Pitch, optional bool Attenuate ) [native, simulated, event] 
float GetSoundDuration( Sound Sound ) [native, final] 
Get a sound duration in seconds. (not affected by Level.TimeDilation)

Force Feedback[edit]

PlayFeedbackEffect( String EffectName ) [native, final] 
StopFeedbackEffect( optional String EffectName ) [native, final] 
Pass no parameter or "" to stop all.
bool ForceFeedbackSupported( optional bool Enable ) [native, final] 

AI[edit]

MakeNoise( float Loudness ) [native, final] 
Inform other creatures that you've made a noise they might hear (they are sent a HearNoise message). Senders of MakeNoise should have an instigator if they are not pawns. The noise is blocked by walls (only tested BSP, not SM)

Foxpaw: This probrably does a "FastTrace" and will be blocked by any object that is set as being world geometry. I haven't tested that either though.

Wormbo: It's not simply a trace. it also takes into account that noise travels around corners etc. by doing path (NavigationPoint.bPropagatesSound) and zone checks.

bool PlayerCanSeeMe() [native, final] 
Returns true if any player (server) or the local player (standalone or client) has a line of sight to actor's location. Note: If the Actor in question is set to bHidden=True, this will always return false.
vector SuggestFallVelocity( vector Destination, vector Start, float MaxZ, float MaxXYSpeed ) [native, final] 

???[edit]

bool PreTeleport( Teleporter InTeleporter ) [event] 
Called when an actor is about to be moved by a teleporter
PostTeleport( Teleporter OutTeleporter ) [event] 
Called when an actor exits a teleporter

Disk access[edit]

string GetMapName( string NameEnding, string MapName, int Dir ) [native, final] 
GetNextSkin( string Prefix, string CurrentSkin, int Dir, out string SkinName, out string SkinDesc ) [native, final] 
string GetURLMap() [native, final] 
string GetNextInt( string ClassName, int Num ) [native, final] 
GetNextIntDesc( string ClassName, int Num, out string Entry, out string Description ) [native, final] 
bool GetCacheEntry( int Num, out string GUID, out string Filename ) [native, final] 
bool MoveCacheEntry( string GUID, optional string NewFilename ) [native, final] 

Iterator functions[edit]

Iterator functions for dealing with sets of actors.

AllActors( class<Actor> BaseClass, out Actor Actor, optional name MatchTag ) [native, final, iterator] 
Returns all Actors of class BaseClass and its sub classes in Actor.
Avoid using AllActors() too often as it iterates through the whole actor list and is therefore slow.
DynamicActors( class<Actor> BaseClass, out Actor Actor, optional name MatchTag ) [native, final, iterator] 
Only iterates through the non-static actors on the list (still relatively slow, but much better than AllActors). This should be used in most cases and replaces AllActors in most of Epic's game code.
ChildActors( class<Actor> BaseClass, out Actor Actor ) [native, final, iterator] 
Returns all actors owned by this actor. Slow like AllActors().
BasedActors( class<Actor> BaseClass, out Actor Actor ) [native, final, iterator] 
Returns all actors based on the current actor (slow, like AllActors).
TouchingActors( class<Actor> BaseClass, out Actor Actor ) [native, final, iterator] 
Returns all actors touching the current actor (fast). Actors that are attached are ignored.
TraceActors( class<Actor> BaseClass, out Actor Actor, out vector HitLoc, out vector HitNorm, vector End, optional vector Start, optional vector Extent ) [native, final, iterator] 
TraceActors() return all actors along a traced line. Reasonably fast (like any trace).
RadiusActors( class<Actor> BaseClass, out Actor Actor, float Radius, optional vector Loc ) [native, final, iterator] 
Returns all actors within a give radius. Slow like AllActors(). Use CollidingActors() or VisibleCollidingActors() instead if desired actor types are visible (not bHidden) and in the collision hash (bCollideActors is true).
VisibleActors( class<Actor> BaseClass, out Actor Actor, optional float Radius, optional vector Loc ) [native, final, iterator] 
Returns all visible actors within a radius. Slow like AllActors(). Use VisibleCollidingActors() instead if desired actor types are in the collision hash (bCollideActors is true).
VisibleCollidingActors( class<Actor> BaseClass, out Actor Actor, float Radius, optional vector Loc, optional bool bIgnoreHidden ) [native, final, iterator] 
VisibleCollidingActors() returns visible (not bHidden) colliding (bCollideActors==true) actors within a certain radius. Much faster than AllActors() since it uses the collision hash.
CollidingActors( class<Actor> BaseClass, out Actor Actor, float Radius, optional vector Loc ) [native, final, iterator] 
Returns colliding (bCollideActors==true) actors within a certain radius. Much faster than AllActors() for reasonably small radii since it uses the collision hash.

Scripted Actor functions[edit]

BecomeViewTarget() 
Called by PlayerController when this actor becomes its ViewTarget.
BroadcastLocalizedMessage( class<LocalMessage> MessageClass, optional int Switch, optional PlayerReplicationInfo RelatedPRI_1, optional PlayerReplicationInfo RelatedPRI_2, optional Object OptionalObject ) [event] 
Broadcast a localized message to all players. Most message deal with 0 to 2 related PRIs. The LocalMessage class defines how the PRI's and optional actor are used.
DisplayDebug( Canvas Canvas, out float YL, out float YPos ) [simulated] 
lists important actor variable on canvas. HUD will call DisplayDebug() on the current ViewTarget when the ShowDebug exec is used.
HurtRadius( float DamageAmount, float DamageRadius, class<DamageType> DamageType, float Momentum, vector HitLocation ) [simulated, final] 
Hurt locally authoritative actors within the radius.
MatchStarting() 
Called when gameplay actually starts.
PlayTeleportEffect( bool bOut, bool bSound ) 
PreBeginPlay() [event] 
Called immediately before gameplay begins. See chain of events at level startup and chain of events when spawning actors.
BeginPlay() [event] 
Called when gameplay begins. See chain of events at level startup and chain of events when spawning actors.
PostBeginPlay() [event] 
Called immediately after gameplay begins. See chain of events at level startup and chain of events when spawning actors.
PostNetBeginPlay() [event] 
called after PostBeginPlay. On a net client, PostNetBeginPlay() is spawned after replicated variables have been initialized to their replicated values. See chain of events at level startup and chain of events when spawning actors.
RenderOverlays( Canvas Canvas ) 
Called by player's hud to request drawing of actor-specific overlays onto canvas. Called every frame. Whatever is drawn on the canvas here only lasts for the current frame.
Note: This function has to be called explicitly by another canvas drawing function, it's not called automatically for all actors.
RenderTexture( ScriptedTexture Tex ) [event] 
ReplaceText( out string Text, string Replace, string With ) [final] 
Reset() 
Reset actor to initial state - used when restarting level without reloading.
SetDefaultDisplayProperties() 
SetDisplayProperties( ERenderStyle NewStyle, Material NewTexture, bool bLighting ) 
Set the display properties of an actor. By setting them through this function, it allows the actor to modify other components (such as a Pawn's weapon) or to adjust the result based on other factors (such as a Pawn's other inventory wanting to affect the result).
SetGRI( GameReplicationInfo GRI ) 
SetInitialState() [simulated, event] 
Called after PostBeginPlay. See chain of events at level startup and chain of events when spawning actors.
SetOverlayMaterial( Material mat, float time, bool bOverride ) [simulated] 
StartInterpolation() [simulated] 
when this function is called, the actor will start moving along an interpolation path beginning at Dest.
String GetHumanReadableName() [simulated] 
Returns the human readable string representation of an object.
String GetItemName( string FullName ) 
Returns the string representation of the name of an object without the package prefixes.
String GetLocalString( optional int Switch, optional PlayerReplicationInfo RelatedPRI_1, optional PlayerReplicationInfo RelatedPRI_2 ) [static] 
Get localized message string associated with this actor.
TravelPostAccept() [event] 
Called when carried into a new level, after AcceptInventory.
TravelPreAccept() [event] 
Called when carried onto a new level, before AcceptInventory.
TriggerEvent( Name EventName, Actor Other, Pawn EventInstigator ) [event] 
Trigger an event
UntriggerEvent( Name EventName, Actor Other, Pawn EventInstigator ) 
Untrigger an event (is this an event? if not, why?)
UpdatePrecacheMaterials() [simulated] 
UpdatePrecacheStaticMeshes() [simulated] 
bool CanSplash() 
return True in this function if the actor should make splashies
bool EffectIsRelevant( vector SpawnLocation, bool bForceDedicated ) [simulated] 
bool IsInPain() 
Returns true if the actor is inside a PhysicsVolume that can cause pain.
bool IsInVolume( Volume aVolume ) 
Returns true if the actor is inside the volume Volume.
bool NearSpot(vector Spot) [simulated, final] 
returns true is spot is within collision cylinder.
bool TouchingActor( Actor A ) [simulated, final] 
Returns true if the collision cylinders of the calling actor and the actor A overlap.
string GetDebugName() 
vector GetCollisionExtent() 

MythOpus: Do you think we could add some documentation on how to get these functions to work?

MythOpus: Since there are various functions only available for certain games on this page, I suggest we page different pages for each seperate game for methods.

Tarquin: Good idea

MythOpus: Thanks :)

EricBlade: Couple things. I did make a Land of the Dead page to root for that game, I hope that's acceptable. I'm not sure if I should detail only the changes from the 2k3 Actor there, or keep the whole thing? Second thing, the recent note on PlayerCanSeeMe() notes that bHidden makes it fail all the time, which was something that boggled my mind for a while. So, if I wanted to make something that was invisible, but used this call, I could say, SetDrawType(DT_NONE); bHidden=False; and that would cause PlayerCanSeeMe() to work? One last one.. I see "KRemoveAllBoneLifters" says "used to limit ragdolls" .. how is it used to do that? what does it do?

EricBlade: I actually just got to testing that, setting DrawType=DT_NONE and bHidden=False will cause PlayerCanSeeMe() to work for invisible actors. \o/

Xian: Sounds accurate. DT_None doesn't make the object disappear, but just to not render. bHidden does that. I also noticed a lot of funcs here are missing descriptions, although the UE1 pages (namely UT) have them. Think I'll get busy tomorrow :)

Related Topics[edit]


Category:Legacy To Do : Still needs work... lots to document, the functions need to be better organized into groups, and then it can all be broken up into sub-pages by group. Some initial groups... rendering, movement, collision, physics, etc.