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

Legacy:AIController

From Unreal Wiki, The Unreal Engine Documentation Site
Jump to: navigation, search
UT2003 :: Actor >> Controller >> AIController

This is the parent class of all AI-based controllers.

Properties[edit]

bool bHunting 
This is true if the controlled pawn is hunting another pawn.
bool bAdjustFromWalls 
Auto-adjust around corners, with no hitwall notification for controller or pawn (???)
AIScript MyScript 
The AIScript that controls this AIController.
float Skill 
The skill of the AI. Generally, from 0 to 7.

Functions[edit]

WaitToSeeEnemy() (native, final, latent) 
Returns when the pawn is looking directly at a visible enemy.
bool WeaponFireAgain( float RefireRate, bool bFinishedFire ) 
Called by Weapon. Returns true if the weapon should fire.
bool TriggerScript( Actor Other, Pawn EventInstigator ) 
Any trigger is sent to this function, which in turn triggers MyScript if it exists.
DisplayDebug( Canvas Canvas, out float YL, out float YPos ) 
If the "showdebug" console command is on, this is called to display debug information on the screen.
float AdjustDesireFor( Pickup P ) 
In subclasses, returns a float indicating how much the AI wants the Pickup P. In this class, it always returns 0.
int GetFacingDirection() 
Returns direction faced relative to movement dir, where 0 = forward, 16384 = right, 32768 = back, and 49152 = left
AdjustView( float DeltaTime ) 
Called if Controller's pawn is the viewtarget of a player
SetOrders( name NewOrders, Controller OrderGiver ) 
Actor GetOrderObject()
name GetOrders() 
In subclasses, sets and gets info about the AI's orders, but in this class they don't do anything.
WaitForMover( Mover M ) 
Sets up the AI to wait for Mover M to tell the AI that it has completed its move. Sets PendingMover.
MoverFinished() 
Called by Mover when it finishes a move, and this pawn has the mover set as its PendingMover.
UnderLift( Mover M ) 
Called by mover when it hits a pawn with that mover as its pendingmover while moving to its destination.
bool PriorityObjective() 
This always returns false here.
Startle( Actor A ) 
"Startles" the AI. Basically, this is a message to the AI to stop everything and re-evaluate its situation as soon as possible. Something calls this when the AI absolutely needs to know about it RIGHT NOW. The Actor A being the cause of the startle.

Events[edit]

PrepareForMove( NavigationPoint Goal, ReachSpec Path ) 
Called if the reachspec doesn't support the pawn's current configuration. The code should tell the Pawn what to do to deal with it (e.g. crouch). It's implemented in subclasses; here it doesn't do anything.

Known Subclasses[edit]

AIController
  +- ScriptedController
  |   +- Bot
  |   |   +- xBot
  |   |       +- InvasionBot (Epic Bonuspack & UT2004)
  |   +- MonsterController (Epic Bonuspack & UT2004)
  |   +- ScriptedTriggerController
  +- TurretController (UT2004)
      +- LinkTurretController
      +- ONSTurretController
      +- SentinelController
           +- ASSentinelController

Relevant Links[edit]

Discussion[edit]

SuperApe: Updated known subclasses.