AIController
This is the parent class of all AI-based controllers.
Properties
- 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
- 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
- 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
AIController +- ScriptedController | +- Bot | | +- xBot | | +- InvasionBot? (Epic Bonuspack & UT2004) | +- MonsterController (Epic Bonuspack & UT2004) | +- ScriptedTriggerController? +- TurretController? (UT2004) +- LinkTurretController? +- ONSTurretController? +- SentinelController? +- ASSentinelController?
Relevant Links
- AIScript
- AI Scripting Reference
- Controller Overview
- PlayerController – Controllers for player characters
Discussion
SuperApe: Updated known subclasses.