Show / Hide Table of Contents

Class AIController

AIController is the base class of controllers for AI-controlled Pawns.

Inheritance
System.Object
UObject
Actor
Controller
AIController
DetourCrowdAIController
GridPathAIController
Inherited Members
Controller.ReceiveInstigatedAnyDamage
Controller.CastToPlayerController()
Controller.GetControlRotation()
Controller.GetDesiredRotation()
Controller.GetViewTarget()
Controller.IsLocalController()
Controller.IsLocalPlayerController()
Controller.IsLookInputIgnored()
Controller.IsMoveInputIgnored()
Controller.IsPlayerController()
Controller.K2_GetPawn()
Controller.LineOfSightTo(Actor, Vector, Boolean)
Controller.Possess(Pawn)
Controller.ResetIgnoreInputFlags()
Controller.ResetIgnoreLookInput()
Controller.ResetIgnoreMoveInput()
Controller.SetControlRotation(Rotator)
Controller.SetIgnoreLookInput(Boolean)
Controller.SetIgnoreMoveInput(Boolean)
Controller.SetInitialLocationAndRotation(Vector, Rotator)
Controller.StopMovement()
Controller.UnPossess()
Controller.PlayerState
Controller.StateName
Controller.Pawn
Controller.Character
Controller.TransformComponent
Controller.ControlRotation
Controller.bAttachToPawn
Controller.bIsPlayerController
Actor.K2_OnBecomeViewTarget
Actor.K2_OnEndViewTarget
Actor.K2_OnReset
Actor.ReceiveActorBeginCursorOver
Actor.ReceiveActorBeginOverlap
Actor.ReceiveActorEndCursorOver
Actor.ReceiveActorEndOverlap
Actor.ReceiveActorOnClicked
Actor.ReceiveActorOnInputTouchBegin
Actor.ReceiveActorOnInputTouchEnd
Actor.ReceiveActorOnInputTouchEnter
Actor.ReceiveActorOnInputTouchLeave
Actor.ReceiveActorOnReleased
Actor.ReceiveAnyDamage
Actor.ReceiveBeginPlay
Actor.ReceiveDestroyed
Actor.ReceiveEndPlay
Actor.ReceiveHit
Actor.ReceivePointDamage
Actor.ReceiveRadialDamage
Actor.ReceiveTick
Actor.UserConstructionScript
Actor.ActorHasTag(Name)
Actor.AddComponent(Name, Boolean, Transform, UObject)
Actor.AddTickPrerequisiteActor(Actor)
Actor.AddTickPrerequisiteComponent(ActorComponent)
Actor.DetachRootComponentFromParent(Boolean)
Actor.DisableInput(PlayerController)
Actor.EnableInput(PlayerController)
Actor.FlushNetDormancy()
Actor.ForceNetUpdate()
Actor.GetActorBounds(Boolean)
Actor.GetActorEnableCollision()
Actor.GetActorEyesViewPoint()
Actor.GetActorForwardVector()
Actor.GetActorLabel()
Actor.GetActorRelativeScale3D()
Actor.GetActorRightVector()
Actor.GetActorScale3D()
Actor.GetActorTickInterval()
Actor.GetActorTimeDilation()
Actor.GetActorUpVector()
Actor.GetAllChildActors(Boolean)
Actor.GetAttachedActors()
Actor.GetAttachParentActor()
Actor.GetAttachParentSocketName()
Actor.GetComponentByClass(SubclassOf<ActorComponent>)
Actor.GetComponentsByClass(SubclassOf<ActorComponent>)
Actor.GetComponentsByTag(SubclassOf<ActorComponent>, Name)
Actor.GetDistanceTo(Actor)
Actor.GetDotProductTo(Actor)
Actor.GetFolderPath(Name)
Actor.GetGameTimeSinceCreation()
Actor.GetHorizontalDistanceTo(Actor)
Actor.GetHorizontalDotProductTo(Actor)
Actor.GetInputAxisKeyValue(Key)
Actor.GetInputAxisValue(Name)
Actor.GetInputVectorAxisValue(Key)
Actor.GetInstigator()
Actor.GetInstigatorController()
Actor.GetLifeSpan()
Actor.GetLocalRole()
Actor.GetOverlappingActors(SubclassOf<Actor>)
Actor.GetOverlappingComponents()
Actor.GetOwner()
Actor.GetParentActor()
Actor.GetParentComponent()
Actor.GetRemoteRole()
Actor.GetSquaredDistanceTo(Actor)
Actor.GetTickableWhenPaused()
Actor.GetTransform()
Actor.GetVelocity()
Actor.GetVerticalDistanceTo(Actor)
Actor.HasAuthority()
Actor.IsActorBeingDestroyed()
Actor.IsActorTickEnabled()
Actor.IsChildActor()
Actor.IsEditable()
Actor.IsHiddenEd()
Actor.IsHiddenEdAtStartup()
Actor.IsOverlappingActor(Actor)
Actor.IsSelectable()
Actor.IsTemporarilyHiddenInEditor(Boolean)
Actor.K2_AddActorLocalOffset(Vector, Boolean, Boolean)
Actor.K2_AddActorLocalRotation(Rotator, Boolean, Boolean)
Actor.K2_AddActorLocalTransform(Transform, Boolean, Boolean)
Actor.K2_AddActorWorldOffset(Vector, Boolean, Boolean)
Actor.K2_AddActorWorldRotation(Rotator, Boolean, Boolean)
Actor.K2_AddActorWorldTransform(Transform, Boolean, Boolean)
Actor.K2_AttachRootComponentTo(SceneComponent, Name, Byte, Boolean)
Actor.K2_AttachRootComponentToActor(Actor, Name, Byte, Boolean)
Actor.K2_AttachToActor(Actor, Name, EAttachmentRule, EAttachmentRule, EAttachmentRule, Boolean)
Actor.K2_AttachToComponent(SceneComponent, Name, EAttachmentRule, EAttachmentRule, EAttachmentRule, Boolean)
Actor.K2_DestroyActor()
Actor.K2_DestroyComponent(ActorComponent)
Actor.K2_DetachFromActor(EDetachmentRule, EDetachmentRule, EDetachmentRule)
Actor.K2_GetActorLocation()
Actor.K2_GetActorRotation()
Actor.K2_GetRootComponent()
Actor.K2_SetActorLocation(Vector, Boolean, Boolean)
Actor.K2_SetActorLocationAndRotation(Vector, Rotator, Boolean, Boolean)
Actor.K2_SetActorRelativeLocation(Vector, Boolean, Boolean)
Actor.K2_SetActorRelativeRotation(Rotator, Boolean, Boolean)
Actor.K2_SetActorRelativeTransform(Transform, Boolean, Boolean)
Actor.K2_SetActorRotation(Rotator, Boolean)
Actor.K2_SetActorTransform(Transform, Boolean, Boolean)
Actor.K2_TeleportTo(Vector, Rotator)
Actor.MakeMIDForMaterial(MaterialInterface)
Actor.MakeNoise(Single, Pawn, Vector, Single, Name)
Actor.PrestreamTextures(Single, Boolean, Int32)
Actor.RemoveTickPrerequisiteActor(Actor)
Actor.RemoveTickPrerequisiteComponent(ActorComponent)
Actor.SetActorEnableCollision(Boolean)
Actor.SetActorHiddenInGame(Boolean)
Actor.SetActorLabel(String, Boolean)
Actor.SetActorRelativeScale3D(Vector)
Actor.SetActorScale3D(Vector)
Actor.SetActorTickEnabled(Boolean)
Actor.SetActorTickInterval(Single)
Actor.SetFolderPath(Name)
Actor.SetIsTemporarilyHiddenInEditor(Boolean)
Actor.SetLifeSpan(Single)
Actor.SetNetDormancy(Byte)
Actor.SetOwner(Actor)
Actor.SetReplicateMovement(Boolean)
Actor.SetReplicates(Boolean)
Actor.SetTickableWhenPaused(Boolean)
Actor.SetTickGroup(Byte)
Actor.SnapRootComponentTo(Actor, Name)
Actor.TearOff()
Actor.WasRecentlyRendered(Single)
Actor.PrimaryActorTick
Actor.bHidden
Actor.bNetTemporary
Actor.bNetStartup
Actor.bOnlyRelevantToOwner
Actor.bAlwaysRelevant
Actor.bReplicateMovement
Actor.bTearOff
Actor.bExchangedRoles
Actor.bNetLoadOnClient
Actor.bNetUseOwnerRelevancy
Actor.bRelevantForNetworkReplays
Actor.bReplayRewindable
Actor.bAllowTickBeforeBeginPlay
Actor.bAutoDestroyWhenFinished
Actor.bBlockInput
Actor.bCanBeDamaged
Actor.bCollideWhenPlacing
Actor.bFindCameraComponentWhenViewTarget
Actor.bGenerateOverlapEventsDuringLevelStreaming
Actor.bIgnoresOriginShifting
Actor.bEnableAutoLODGeneration
Actor.bIsEditorOnlyActor
Actor.bActorSeamlessTraveled
Actor.bReplicates
Actor.bCanBeInCluster
Actor.bAllowReceiveTickEventOnDedicatedServer
Actor.bActorEnableCollision
Actor.bActorIsBeingDestroyed
Actor.RemoteRole
Actor.ReplicatedMovement
Actor.InitialLifeSpan
Actor.CustomTimeDilation
Actor.AttachmentReplication
Actor.Owner
Actor.NetDriverName
Actor.Role
Actor.NetDormancy
Actor.AutoReceiveInput
Actor.InputPriority
Actor.InputComponent
Actor.NetCullDistanceSquared
Actor.NetTag
Actor.NetUpdateFrequency
Actor.MinNetUpdateFrequency
Actor.NetPriority
Actor.Instigator
Actor.Children
Actor.RootComponent
Actor.PivotOffset
Actor.ControllingMatineeActors
Actor.GroupActor
Actor.SpriteScale
Actor.FolderPath
Actor.bHiddenEd
Actor.bIsEditorPreviewActor
Actor.bHiddenEdLayer
Actor.bHiddenEdLevel
Actor.bLockLocation
Actor.bActorLabelEditable
Actor.bEditable
Actor.bListedInSceneOutliner
Actor.bHiddenEdTemporary
Actor.InstanceComponents
Actor.BlueprintCreatedComponents
UObject.TransientPackage
UObject.CastTo<T>(UObject)
UObject.CastTo(UObject, Type)
UObject.RemoveObject(UObject)
UObject.MakeObjectArrayField<T>(NativeArray*)
UObject.NotImplemented<T>()
UObject.Construct()
UObject.GetHashCode()
UObject.GetName()
UObject.ToString()
UObject.Name
UObject._None
UObject.None
UObject.ObjPointer
UObject.LoadObjectFromClass(Class, UObject, String, String, LoadFlags, PackageMap, Boolean)
UObject.LoadClass(Class, UObject, String, String, LoadFlags, PackageMap)
UObject.GetPropertyFor<T>(Name)
UObject.ExecuteUbergraph
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
Namespace: UE4.AIModule
Assembly: UE4DotNet.dll
Syntax
public class AIController : Controller
Remarks

Controllers are non-physical actors that can be attached to a pawn to control its actions. AIControllers manage the artificial intelligence for the pawns they control. In networked games, they only exist on the server.

@see https://docs.unrealengine.com/latest/INT/Gameplay/Framework/Controller/

Properties

| Improve this Doc View Source

ActionsComp

Actions Comp

Declaration
public PawnActionsComponent ActionsComp { get; }
Property Value
Type Description
PawnActionsComponent
| Improve this Doc View Source

bAllowStrafe

Declaration
public bool bAllowStrafe { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

Blackboard

blackboard

Declaration
public BlackboardComponent Blackboard { get; }
Property Value
Type Description
BlackboardComponent
| Improve this Doc View Source

bLOSflag

Declaration
public bool bLOSflag { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

BrainComponent

Component responsible for behaviors.

Declaration
public BrainComponent BrainComponent { get; set; }
Property Value
Type Description
BrainComponent
| Improve this Doc View Source

bSetControlRotationFromPawnOrientation

Declaration
public bool bSetControlRotationFromPawnOrientation { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

bSkipExtraLOSChecks

Declaration
public bool bSkipExtraLOSChecks { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

bStopAILogicOnUnposses

Declaration
public bool bStopAILogicOnUnposses { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

bWantsPlayerState

Declaration
public bool bWantsPlayerState { get; set; }
Property Value
Type Description
System.Boolean
| Improve this Doc View Source

CachedGameplayTasksComponent

Cached Gameplay Tasks Component

Declaration
public GameplayTasksComponent CachedGameplayTasksComponent { get; set; }
Property Value
Type Description
GameplayTasksComponent
| Improve this Doc View Source

DefaultNavigationFilterClass

Default Navigation Filter Class

Declaration
public SubclassOf<NavigationQueryFilter> DefaultNavigationFilterClass { get; set; }
Property Value
Type Description
SubclassOf<NavigationQueryFilter>
| Improve this Doc View Source

DefaultObject

Get UE4 Default Object for this Class

Declaration
public static AIController DefaultObject { get; }
Property Value
Type Description
AIController
| Improve this Doc View Source

PathFollowingComponent

Component used for moving along a path.

Declaration
public PathFollowingComponent PathFollowingComponent { get; set; }
Property Value
Type Description
PathFollowingComponent
| Improve this Doc View Source

PerceptionComponent

Perception Component

Declaration
public AIPerceptionComponent PerceptionComponent { get; set; }
Property Value
Type Description
AIPerceptionComponent
| Improve this Doc View Source

StaticClass

Get UE4 Class

Declaration
public static Class StaticClass { get; }
Property Value
Type Description
Class

Methods

| Improve this Doc View Source

ClaimTaskResource(SubclassOf<GameplayTaskResource>)

Claim Task Resource

Declaration
public void ClaimTaskResource(SubclassOf<GameplayTaskResource> ResourceClass)
Parameters
Type Name Description
SubclassOf<GameplayTaskResource> ResourceClass
| Improve this Doc View Source

GetAIPerceptionComponent()

Get AIPerception Component

Declaration
public AIPerceptionComponent GetAIPerceptionComponent()
Returns
Type Description
AIPerceptionComponent
| Improve this Doc View Source

GetFocalPoint()

Retrieve the final position that controller should be looking at.

Declaration
public Vector GetFocalPoint()
Returns
Type Description
Vector
| Improve this Doc View Source

GetFocalPointOnActor(Actor)

Retrieve the focal point this controller should focus to on given actor.

Declaration
public Vector GetFocalPointOnActor(Actor Actor)
Parameters
Type Name Description
Actor Actor
Returns
Type Description
Vector
| Improve this Doc View Source

GetFocusActor()

Get the focused actor.

Declaration
public Actor GetFocusActor()
Returns
Type Description
Actor
| Improve this Doc View Source

GetImmediateMoveDestination()

Returns position of current path segment's end.

Declaration
public Vector GetImmediateMoveDestination()
Returns
Type Description
Vector
| Improve this Doc View Source

GetMoveStatus()

Returns status of path following

Declaration
public byte GetMoveStatus()
Returns
Type Description
System.Byte
| Improve this Doc View Source

GetPathFollowingComponent()

Returns PathFollowingComponent subobject *

Declaration
public PathFollowingComponent GetPathFollowingComponent()
Returns
Type Description
PathFollowingComponent
| Improve this Doc View Source

HasPartialPath()

Returns true if the current PathFollowingComponent's path is partial (does not reach desired destination).

Declaration
public bool HasPartialPath()
Returns
Type Description
System.Boolean
| Improve this Doc View Source

K2_ClearFocus()

Clears Focus, will also clear FocalPoint as a result

Declaration
public void K2_ClearFocus()
| Improve this Doc View Source

K2_SetFocalPoint(Vector)

Set the position that controller should be looking at.

Declaration
public void K2_SetFocalPoint(Vector FP)
Parameters
Type Name Description
Vector FP
| Improve this Doc View Source

K2_SetFocus(Actor)

Set Focus for actor, will set FocalPoint as a result.

Declaration
public void K2_SetFocus(Actor NewFocus)
Parameters
Type Name Description
Actor NewFocus
| Improve this Doc View Source

MoveToActor(Actor, Single, Boolean, Boolean, Boolean, SubclassOf<NavigationQueryFilter>, Boolean)

Makes AI go toward specified Goal actor (destination will be continuously updated), aborts any active path following @

Declaration
public byte MoveToActor(Actor Goal, float AcceptanceRadius, bool bStopOnOverlap, bool bUsePathfinding, bool bCanStrafe, SubclassOf<NavigationQueryFilter> FilterClass, bool bAllowPartialPath)
Parameters
Type Name Description
Actor Goal
System.Single AcceptanceRadius
System.Boolean bStopOnOverlap
System.Boolean bUsePathfinding
System.Boolean bCanStrafe
SubclassOf<NavigationQueryFilter> FilterClass
System.Boolean bAllowPartialPath
Returns
Type Description
System.Byte
Remarks

param AcceptanceRadius - finish move if pawn gets close enough @param bStopOnOverlap - add pawn's radius to AcceptanceRadius @param bUsePathfinding - use navigation data to calculate path (otherwise it will go in straight line) @param bCanStrafe - set focus related flag: bAllowStrafe @param FilterClass - navigation filter for pathfinding adjustments. If none specified DefaultNavigationFilterClass will be used @param bAllowPartialPath - use incomplete path when goal can't be reached @note AcceptanceRadius has default value or -1 due to Header Parser not being able to recognize UPathFollowingComponent::DefaultAcceptanceRadius

| Improve this Doc View Source

MoveToLocation(Vector, Single, Boolean, Boolean, Boolean, Boolean, SubclassOf<NavigationQueryFilter>, Boolean)

Makes AI go toward specified Dest location, aborts any active path following @

Declaration
public byte MoveToLocation(Vector Dest, float AcceptanceRadius, bool bStopOnOverlap, bool bUsePathfinding, bool bProjectDestinationToNavigation, bool bCanStrafe, SubclassOf<NavigationQueryFilter> FilterClass, bool bAllowPartialPath)
Parameters
Type Name Description
Vector Dest
System.Single AcceptanceRadius
System.Boolean bStopOnOverlap
System.Boolean bUsePathfinding
System.Boolean bProjectDestinationToNavigation
System.Boolean bCanStrafe
SubclassOf<NavigationQueryFilter> FilterClass
System.Boolean bAllowPartialPath
Returns
Type Description
System.Byte
Remarks

param AcceptanceRadius - finish move if pawn gets close enough @param bStopOnOverlap - add pawn's radius to AcceptanceRadius @param bUsePathfinding - use navigation data to calculate path (otherwise it will go in straight line) @param bProjectDestinationToNavigation - project location on navigation data before using it @param bCanStrafe - set focus related flag: bAllowStrafe @param FilterClass - navigation filter for pathfinding adjustments. If none specified DefaultNavigationFilterClass will be used @param bAllowPartialPath - use incomplete path when goal can't be reached @note AcceptanceRadius has default value or -1 due to Header Parser not being able to recognize UPathFollowingComponent::DefaultAcceptanceRadius

| Improve this Doc View Source

New(UObject, Name)

Spawn an object of this class

Declaration
public static AIController New(UObject obj = null, Name name = default(Name))
Parameters
Type Name Description
UObject obj
Name name
Returns
Type Description
AIController
| Improve this Doc View Source

RunBehaviorTree(BehaviorTree)

Starts executing behavior tree.

Declaration
public bool RunBehaviorTree(BehaviorTree BTAsset)
Parameters
Type Name Description
BehaviorTree BTAsset
Returns
Type Description
System.Boolean
| Improve this Doc View Source

SetMoveBlockDetection(Boolean)

Updates state of movement block detection.

Declaration
public void SetMoveBlockDetection(bool bEnable)
Parameters
Type Name Description
System.Boolean bEnable
| Improve this Doc View Source

SetPathFollowingComponent(PathFollowingComponent)

Note that his function does not do any pathfollowing state transfer.

Declaration
public void SetPathFollowingComponent(PathFollowingComponent NewPFComponent)
Parameters
Type Name Description
PathFollowingComponent NewPFComponent
Remarks

Intended to be called as part of initialization/setup process

| Improve this Doc View Source

UnclaimTaskResource(SubclassOf<GameplayTaskResource>)

Unclaim Task Resource

Declaration
public void UnclaimTaskResource(SubclassOf<GameplayTaskResource> ResourceClass)
Parameters
Type Name Description
SubclassOf<GameplayTaskResource> ResourceClass
| Improve this Doc View Source

UseBlackboard(BlackboardData)

Declaration
public (BlackboardComponent, bool) UseBlackboard(BlackboardData BlackboardAsset)
Parameters
Type Name Description
BlackboardData BlackboardAsset
Returns
Type Description
System.ValueTuple<BlackboardComponent, System.Boolean>

Events

| Improve this Doc View Source

OnPossess

Event called when PossessedPawn is possessed by this controller.

Declaration
public event AIController.OnPossess_delegate OnPossess
Event Type
Type Description
AIController.OnPossess_delegate
| Improve this Doc View Source

OnUnpossess

Gets triggered after given pawn has been unpossesed

Declaration
public event AIController.OnUnpossess_delegate OnUnpossess
Event Type
Type Description
AIController.OnUnpossess_delegate
| Improve this Doc View Source

OnUsingBlackBoard

On Using Black Board

Declaration
public event AIController.OnUsingBlackBoard_delegate OnUsingBlackBoard
Event Type
Type Description
AIController.OnUsingBlackBoard_delegate

Operators

| Improve this Doc View Source

Implicit(IntPtr to AIController)

Convert from IntPtr to UObject

Declaration
public static implicit operator AIController(IntPtr p)
Parameters
Type Name Description
System.IntPtr p
Returns
Type Description
AIController
  • Improve this Doc
  • View Source
Back to top Generated by DocFX