| Home Page | Recent Changes | Preferences

# Controller

UT2003 :: Object >> Actor >> Controller (Package: Engine)

This class is a handle to a pawn. Pawns are the physical player characters, the controller is the, well, controlling entity moving it around. There are two subclasses from this class, both are important AIController and PlayerController. Controller Overview covers this in more depth.

From this class, you can control everything from godmode to the pawn that you are focusing on to the adrenaline it has.

Notes:

- Adrenaline is here, not in the pawn class.
- There is a linked list- esque set up of the controllers, allowing you to move to the next controller in the list.

## Properties

#### Main

Pawn Pawn
  The Pawn that this entity is controlling.
const int PlayerNum
  The player number - per-match player number.
float SightCounter
  Used to keep track of when to check player visibility.
float FovAngle
  X field of view angle in degrees, usually 90.
globalconfig float Handedness
  Left or Right.
bool bIsPlayer
  Pawn is a player or a player-bot.
bool bGodMode
  cheat - when true, can't be killed or hurt

#### AI

const bool bLOSflag
  used for alternating LineOfSight traces
bool bAdvancedTactics
  serpentine movement between pathnodes
bool bCanOpenDoors
  (maybe used for matinees?)
bool bCanDoSpecial
  No clue, experiments to try it out didn't work...
bool bAdjusting
  adjusting around obstacle
bool bPreparingMove
  set true while pawn sets up for a latent move
bool bControlAnimations
  take control of animations from pawn (don't let pawn play animations based on notifications)
bool bEnemyInfoValid
  false when change enemy, true when LastSeenPos etc updated
bool bNotifyApex
  event NotifyJumpApex() when at apex of jump
bool bUsePlayerHearing
  No clue
bool bJumpOverWall
  true when jumping to clear obstacle
bool bEnemyAcquired
  Used to get notification when a bot sees someone
bool bSoaking
  pause and focus (anyone know what this "focus" is?) on this bot if it encounters a problem
bool bHuntPlayer
  hunting player
bool bAllowedToTranslocate
bool bAllowedToImpactJump
bool bAdrenalineEnabled
  Interesting property - may be useful for a couple of mods?

#### Input

input byte bRun, bDuck, bFire, bAltFire
  Used (I think) to drive ai reactionary cycles

Spark: Those are input flags which are set in your User.ini. It seems that the engine is also checking bFire to automagically trigger the fire event, see Firing Projectile Weapons.

vector AdjustLoc
  location to move to while adjusting around obstacle
const Controller nextController
  chained Controller list
float Stimulus
  Strength of stimulus - Set when stimulus happens

#### Navigation

float MoveTimer
  used in matinee and in AI pathing
Actor MoveTarget
  actor being moved toward
vector Destination
  location being moved toward
vector FocalPoint
  location being looked at
Actor Focus
  actor being looked at
Mover PendingMover
  a mover the pawn is waiting for to complete its move
Actor GoalList[4]
  used by navigation AI - list of intermediate goals
NavigationPoint home
  set when begin play, used for retreating and attitude checks
float MinHitWall
  Minimum HitNormal dot Velocity.Normal to get a HitWall event from the physics
float RespawnPredictionTime
  how far ahead to predict respawns when looking for inventory
int AcquisitionYawRate
  how fast to move on the z axis to aquire a new target (??)

#### Enemy Info

Pawn Enemy
  Pawn of my enemy
Actor Target
  My enemy
vector LastSeenPos
  enemy position when I last saw enemy (auto updated if EnemyNotVisible() enabled)
vector LastSeeingPos
  position where I last saw enemy (auto updated if EnemyNotVisible enabled)
float LastSeenTime
  Time I saw the last enemy (auto updated if EnemyNotVisible enabled)
string VoiceType
  for speech
float OldMessageTime
  to limit frequency of voice messages

## Comments

Chemos: This page really needed to be written, and I am compiling information at the moment. I will finish all this up in a bit. (First page BTW) *phew* Typing that many "controller"s is getting quite annoying.

## Related Pages

- Controller Overview
- PlayerController

Category Class (UT2003)

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands

Terminology

Mapping Topics

Mapping Lessons

UnrealEd Interface

Questions&Answers

Scripting Topics

Scripting Lessons

Making Mods

Class Tree

Questions&Answers

Modeling Topics

Questions&Answers

Log In