Notifies AIController of changes in given actors' perception

virtual void ActorsPerceptionUpdated ( const [TArray](API\Runtime\Core\Containers\TArray)< [AActor](API\Runtime\Engine\GameFramework\AActor) * > & UpdatedActors )


If true, AI controllers will ignore players.


void ClaimTaskResource ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UGameplayTaskResource](API\Runtime\GameplayTasks\UGameplayTaskResource) > ResourceClass )


Helper function for creating pathfinding query for this agent from move request data

bool BuildPathfindingQuery ( const [FAIMoveRequest](API\Runtime\AIModule\FAIMoveRequest) & MoveRequest, [FPathFindingQuery](API\Runtime\NavigationSystem\FPathFindingQuery) & Query ) const


virtual void DisplayDebug ( [UCanvas](API\Runtime\Engine\Engine\UCanvas) * Canvas, const [FDebugDisplayInfo](API\Runtime\Engine\FDebugDisplayInfo) & DebugDisplay, float & YL, float & YPos )


Clears Focus for given priority, will also clear FocalPoint as a result

virtual void ClearFocus ( [EAIFocusPriority::Type](API\Runtime\AIModule\Type) InPriority )


Finds path for given move request

virtual void FindPathForMoveRequest ( const [FAIMoveRequest](API\Runtime\AIModule\FAIMoveRequest) & MoveRequest, [FPathFindingQuery](API\Runtime\NavigationSystem\FPathFindingQuery) & Query, FNavPathSharedPtr & OutPath ) const


DEPRECATED.


const [UAIPerceptionComponent](API\Runtime\AIModule\Perception\UAIPerceptionComponent) * GetAIPerceptionComponent() const


const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) * GetBlackboardComponent() const


[UBrainComponent](API\Runtime\AIModule\UBrainComponent) * GetBrainComponent() const


Returns the Move Request ID for the current move


Debug/dev-time

virtual [FString](API\Runtime\Core\Containers\FString) GetDebugIcon() const


Retrieve the final position that controller should be looking at.


FVector GetFocalPointForPriority ( [EAIFocusPriority::Type](API\Runtime\AIModule\Type) InPriority ) const


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

virtual FVector GetFocalPointOnActor ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * Actor ) const


Get the focused actor.

[AActor](API\Runtime\Engine\GameFramework\AActor) * GetFocusActor() const


[AActor](API\Runtime\Engine\GameFramework\AActor) * GetFocusActorForPriority ( [EAIFocusPriority::Type](API\Runtime\AIModule\Type) InPriority ) const


Get "body" of task's owner / default, having location in world (e.g. Owner = AIController, Avatar = Pawn)

virtual [AActor](API\Runtime\Engine\GameFramework\AActor) * GetGameplayTaskAvatar ( const [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask) * Task ) const


Get default priority for running a task

virtual uint8 GetGameplayTaskDefaultPriority() const


Get owner of a task or default one when task is null

virtual [AActor](API\Runtime\Engine\GameFramework\AActor) * GetGameplayTaskOwner ( const [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask) * Task ) const


[UGameplayTasksComponent](API\Runtime\GameplayTasks\UGameplayTasksComponent) * GetGameplayTasksComponent() const


Finds tasks component for given GameplayTask, Task.GetGameplayTasksComponent() may not be initialized at this point!

virtual [UGameplayTasksComponent](API\Runtime\GameplayTasks\UGameplayTasksComponent) * GetGameplayTasksComponent ( const [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask) & Task ) const


Retrieve team identifier in form ofFGenericTeamId

virtual [FGenericTeamId](API\Runtime\AIModule\FGenericTeamId) GetGenericTeamId() const


Returns position of current path segment's end.


Returns status of path following


Retrieves PathFollowingAgent for this NavAgent

virtual [IPathFollowingAgentInterface](API\Runtime\Engine\AI\Navigation\IPathFollowingAgentInterface) * GetPathFollowingAgent() const


Returns PathFollowingComponent subobject

[UPathFollowingComponent](API\Runtime\AIModule\Navigation\UPathFollowingComponent) * GetPathFollowingComponent() const


virtual [UAIPerceptionComponent](API\Runtime\AIModule\Perception\UAIPerceptionComponent) * GetPerceptionComponent()


virtual void GrabDebugSnapshot ( [FVisualLogEntry](API\Runtime\Engine\VisualLogger\FVisualLogEntry) * Snapshot ) const


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


virtual bool InitializeBlackboard ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & BlackboardComp, [UBlackboardData](API\Runtime\AIModule\BehaviorTree\UBlackboardData) & BlackboardAsset )


Checks if the agent is actively following a navigation path


Clears Focus, will also clear FocalPoint as a result


Set the position that controller should be looking at.


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

void K2_SetFocus ( [AActor](API\Runtime\Engine\GameFramework\AActor) * NewFocus )


Checks line to center and top of other actor
true if controller's pawn can see Other actor.

virtual bool LineOfSightTo ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * Other, FVector ViewPoint, bool bAlternateChecks ) const


Makes AI go toward specified destination
struct holding MoveId and enum code

virtual [FPathFollowingRequestResult](API\Runtime\AIModule\Navigation\FPathFollowingRequestResult) MoveTo ( const [FAIMoveRequest](API\Runtime\AIModule\FAIMoveRequest) & MoveRequest, FNavPathSharedPtr * OutPath )


AcceptanceRadius has default value or -1 due to Header Parser not being able to recognize UPathFollowingComponent::DefaultAcceptanceRadius

[EPathFollowingRequestResult::Type](API\Runtime\AIModule\Navigation\EPathFollowingRequestResult__Typ-) MoveToActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * Goal, float AcceptanceRadius, bool bStopOnOverlap, bool bUsePathfinding, bool bCanStrafe, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UNavigationQueryFilter](API\Runtime\NavigationSystem\NavFilters\UNavigationQueryFilter) > FilterClass, bool bAllowPartialPath )


[EPathFollowingRequestResult::Type](API\Runtime\AIModule\Navigation\EPathFollowingRequestResult__Typ-) MoveToLocation ( const FVector & Dest, float AcceptanceRadius, bool bStopOnOverlap, bool bUsePathfinding, bool bProjectDestinationToNavigation, bool bCanStrafe, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UNavigationQueryFilter](API\Runtime\NavigationSystem\NavFilters\UNavigationQueryFilter) > FilterClass, bool bAllowPartialPath )


Notify called after GameplayTask changes state to Active (initial activation or resuming)

virtual void OnGameplayTaskActivated ( [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask) & Task )


Notify called after GameplayTask changes state from Active (finishing or pausing)

virtual void OnGameplayTaskDeactivated ( [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask) & Task )


Add empty overrides to fix linker errors if project implements a child class without adding GameplayTasks module dependency

virtual void OnGameplayTaskInitialized ( [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask) & Task )


Called on completing current movement request

virtual void OnMoveCompleted ( [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestID, const [FPathFollowingResult](API\Runtime\AIModule\Navigation\FPathFollowingResult) & Result )


virtual void OnGameplayTaskResourcesClaimed ( [FGameplayResourceSet](API\Runtime\GameplayTasks\FGameplayResourceSet) NewlyClaimed, [FGameplayResourceSet](API\Runtime\GameplayTasks\FGameplayResourceSet) FreshlyReleased )


virtual void OnMoveCompleted ( [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestID, [EPathFollowingResult::Type](API\Runtime\AIModule\Navigation\EPathFollowingResult__Type) Result )


Overridable native function for when this controller is asked to possess a pawn.

virtual void OnPossess ( [APawn](API\Runtime\Engine\GameFramework\APawn) * InPawn )


Overridable native function for when this controller unpossesses its pawn.


void OnUsingBlackBoard ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) * BlackboardComp, [UBlackboardData](API\Runtime\AIModule\BehaviorTree\UBlackboardData) * BlackboardAsset )


If AI is currently moving due to request given by RequestToPause, then the move will be paused

bool PauseMove ( [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestToPause )


Deprecated* PawnActions have been deprecated and are no longer being supported. It will get removed in following UE5 releases. Use GameplayTasks or AITasks instead.

bool PerformAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action, [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority, [UObject](API\Runtime\CoreUObject\UObject\UObject) *const Instigator )


Called after all the components in the Components array are registered, called both in editor and during gameplay. bHasRegisteredAllComponents must be set true prior to calling this function.


Overridden to create the player replication info and perform other mundane initialization tasks.


virtual bool PreparePathfinding ( const [FAIMoveRequest](API\Runtime\AIModule\FAIMoveRequest) & MoveRequest, [FPathFindingQuery](API\Runtime\NavigationSystem\FPathFindingQuery) & Query )


Passes move request and path object to path following

virtual [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestMove ( const [FAIMoveRequest](API\Runtime\AIModule\FAIMoveRequest) & MoveRequest, FNavPathSharedPtr Path )


virtual [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestPathAndMove ( const [FAIMoveRequest](API\Runtime\AIModule\FAIMoveRequest) & MoveRequest, [FPathFindingQuery](API\Runtime\NavigationSystem\FPathFindingQuery) & Query )


Reset actor to initial state - used when restarting level without reloading.


Resumes last AI-performed, paused request provided it's ID was equivalent to RequestToResume

bool ResumeMove ( [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestToResume )


Starts executing behavior tree.

virtual bool RunBehaviorTree ( [UBehaviorTree](API\Runtime\AIModule\BehaviorTree\UBehaviorTree) * BTAsset )


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

virtual void SetFocus ( [AActor](API\Runtime\Engine\GameFramework\AActor) * NewFocus, [EAIFocusPriority::Type](API\Runtime\AIModule\Type) InPriority )


Set FocalPoint for given priority as absolute position or offset from base.

virtual void SetFocalPoint ( FVector NewFocus, [EAIFocusPriority::Type](API\Runtime\AIModule\Type) InPriority )


Assigns Team Agent to given TeamID

virtual void SetGenericTeamId ( const [FGenericTeamId](API\Runtime\AIModule\FGenericTeamId) & TeamID )


Updates state of movement block detection.

void SetMoveBlockDetection ( bool bEnable )


Note that this function does not do any pathfollowing state transfer. Intended to be called as part of initialization/setup process

void SetPathFollowingComponent ( [UPathFollowingComponent](API\Runtime\AIModule\Navigation\UPathFollowingComponent) * NewPFComponent )


Setter for Pawn. Normally should only be used internally when possessing/unpossessing a Pawn.

virtual void SetPawn ( [APawn](API\Runtime\Engine\GameFramework\APawn) * InPawn )


void SetPerceptionComponent ( [UAIPerceptionComponent](API\Runtime\AIModule\Perception\UAIPerceptionComponent) & InPerceptionComponent )


Allows delaying repath requests

virtual bool ShouldPostponePathUpdates() const


Does this AIController allow givenUBlackboardComponentsync data with it

virtual bool ShouldSyncBlackboardWith ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OtherBlackboardComponent ) const


Aborts the move the controller is currently performing


Computes a launch velocity vector to toss a projectile and hit the given destination. Performance note: Potentially expensive. Nonzero CollisionRadius and bOnlyTraceUp=false are the more expensive options.

bool SuggestTossVelocity ( FVector & OutTossVelocity, FVector Start, FVector End, float TossSpeed, bool bPreferHighArc, float CollisionRadius, bool bOnlyTraceUp )


Function called every frame on this Actor. Override this function to implement custom logic to be executed every frame. Note that Tick is disabled by default, and you will need to check PrimaryActorTick.bCanEverTick is set to true to enable it.

virtual void Tick ( float DeltaSeconds )


Cheat/debugging functions.


void UnclaimTaskResource ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UGameplayTaskResource](API\Runtime\GameplayTasks\UGameplayTaskResource) > ResourceClass )


Update direction AI is looking based on FocalPoint

virtual void UpdateControlRotation ( float DeltaTime, bool bUpdatePawn )


Makes AI use the specified Blackboard asset & creates a Blackboard Component if one does not already exist.
true if we successfully linked the blackboard asset to the blackboard component.

bool UseBlackboard ( [UBlackboardData](API\Runtime\AIModule\BehaviorTree\UBlackboardData) * BlackboardAsset, [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) *& BlackboardComponent )


AAIController ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


bAllowStrafe

Is strafing allowed during movement?

Blackboard

Blackboard

bLOSflag

Used for alternating LineOfSight traces

BrainComponent

Component responsible for behaviors.

bSetControlRotationFromPawnOrientation

Copy Pawn rotation to ControlRotation, if there is no focus point.

bSkipExtraLOSChecks

Skip extra line of sight traces to extremities of target being checked.

bStartAILogicOnPossess

Bydefault AI's logic does not start when controlled Pawn is possessed.

bStopAILogicOnUnposses

Bydefault AI's logic gets stopped when controlled Pawn is unpossessed.

bWantsPlayerState

Specifies if this AI wants its own PlayerState.

ReceiveMoveCompleted

Blueprint notification that we've completed the current movement request


namespace EPawnActionFailHandling { enum Type { RequireSuccess, IgnoreFailure, } }


namespace EPawnActionMoveMode { enum Type { UsePathfinding, StraightLine, } }


namespace EPawnSubActionTriggeringPolicy { enum Type { CopyBeforeTriggering, ReuseInstances, } }


Used for markingFPawnActionEventinstances created solely for comparisons uses

static const int32 FakeActionIndex = INDEX_NONE;


bool operator== ( const [FPawnActionEvent](API\Runtime\AIModule\Actions\FPawnActionEvent) & Other ) const


FPawnActionEvent ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action, [EPawnActionEventType::Type](API\Runtime\AIModule\EPawnActionEventType__Type) EventType, uint32 Index )


Index

Used to maintain order of equally-important messages


Debugging-testing purposes.


[UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * GetTop() const


Looks through the double-linked action list looking for specified action and if found action will be popped along with all it's siblings

void PopAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & ActionToPop )


All it does is tie actions into a double-linked list making NewTopAction new stack's top

void PushAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & NewTopAction )


Triggers aborting of an Action
current state of task abort  do not make this virtual! Contains some essential logic.

[EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) Abort ( [EAIForceParam::Type](API\Runtime\AIModule\EAIForceParam__Type) ShouldForce )


Starts or resumes action, depending on internal state


template<class TActionClass> static TActionClass * CreateActionInstance ( [UWorld](API\Runtime\Engine\Engine\UWorld) & World )


Deprecated* PawnActions have been deprecated and are no longer being supported. It will get removed in following UE5 releases. Use GameplayTasks or AITasks instead.

static [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * CreateActionInstance ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * WorldContextObject, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) > ActionClass )


virtual void Finish ( [TEnumAsByte](API\Runtime\Core\Containers\TEnumAsByte)< [EPawnActionResult::Type](API\Runtime\AIModule\EPawnActionResult__Type) > WithResult )


const [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * GetChildAction() const


Blueprint inlines.


[AController](API\Runtime\Engine\GameFramework\AController) * GetController() const


virtual [FString](API\Runtime\Core\Containers\FString) GetDisplayName() const


[UObject](API\Runtime\CoreUObject\UObject\UObject) * GetInstigator() const


const [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * GetParentAction() const


[APawn](API\Runtime\Engine\GameFramework\APawn) * GetPawn() const


Debug


BeginUObject.

virtual [UWorld](API\Runtime\Engine\Engine\UWorld) * GetWorld() const


This function will change its signature once AI messaging is rewritten

virtual void HandleAIMessage ( [UBrainComponent](API\Runtime\AIModule\UBrainComponent) *, const [FAIMessage](API\Runtime\AIModule\FAIMessage) & )


Called to give Action chance to react to child action finishing.  gets calledAFTERchild's OnFinished to give child action chance to prepare "finishing data" for parent to read.  clears parent-child binding

virtual void OnChildFinished ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action, [EPawnActionResult::Type](API\Runtime\AIModule\EPawnActionResult__Type) WithResult )


Called when this action is being removed from action stacks

virtual void OnFinished ( [EPawnActionResult::Type](API\Runtime\AIModule\EPawnActionResult__Type) WithResult )


Performs actual work on aborting Action. Should be called exclusively by Abort function
only valid return values here are LatendAbortInProgress and AbortDone

virtual [EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) PerformAbort ( [EAIForceParam::Type](API\Runtime\AIModule\EAIForceParam__Type) ShouldForce )


Called to pause action when higher priority or child action kicks in

virtual bool Pause ( const [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * PausedBy )


Apart from doing regular push request copies additional values from Parent, like Priority and Instigator

bool PushChildAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action )


Called to resume action after being paused


void SendEvent ( [EPawnActionEventType::Type](API\Runtime\AIModule\EPawnActionEventType__Type) Event )


void SetActionObserver ( const FPawnActionEventDelegate & InActionObserver )


void SetInstigator ( [UObject](API\Runtime\CoreUObject\UObject\UObject) *const InInstigator )


void SetOwnerComponent ( [UDEPRECATED_PawnActionsComponent](API\Runtime\AIModule\Actions\UDEPRECATED_PawnActionsComponent) * Component )


Called to start off the Action
'true' if actions successfully started.  if action fails to start no finishing or aborting mechanics will be triggered


Messaging

void WaitForMessage ( [FName](API\Runtime\Core\UObject\FName) MessageType, [FAIRequestID](API\Runtime\AIModule\FAIRequestID) RequestID )


UDEPRECATED_PawnAction ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Things to remember:

class UDEPRECATED_PawnAction : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bAllowNewSameClassInstance

If this is FALSE and we're trying to push a new instance of a given class, but the top of the stack is already an instance of that class ignore the attempted push

bAlwaysNotifyOnFinished

If set, action will call OnFinished notify even when ending as FailedToStart

BrainComp

: THIS IS HEREONLYBECAUSE OF THE WAY AI MESSAGING IS CURRENTLY IMPLEMENTED. WILL GO AWAY!

bReplaceActiveSameClassInstance

If this is TRUE, when we try to push a new instance of an action who has the same class as the action on the top of the stack, pop the one on the stack, and push the new one NOTE: This trumps bAllowNewClassInstance (e.g. if this is true and bAllowNewClassInstance is false the active instance will still be replaced)

bShouldPauseMovement

This is a temporary solution to allow having movement action running in background while there's another action on top doing its thing

bWantsTick

TickAction will get called only if this flag is set.

RequiredResources

Specifies which resources will be locked by this action.


[EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) AbortAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & ActionToAbort )


Removes all actions instigated with Priority by Instigator
number of action abortions requested (performed asyncronously)

uint32 AbortActionsInstigatedBy ( [UObject](API\Runtime\CoreUObject\UObject\UObject) *const Instigator, [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority )


static [FString](API\Runtime\Core\Containers\FString) DescribeEventType ( [EPawnActionEventType::Type](API\Runtime\AIModule\EPawnActionEventType__Type) EventType )


void DescribeSelfToVisLog ( struct [FVisualLogEntry](API\Runtime\Engine\VisualLogger\FVisualLogEntry) * Snapshot ) const


Deprecated* PawnActions have been deprecated and are no longer being supported. It will get removed in following UE5 releases. Use GameplayTasks or AITasks instead.

[EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) ForceAbortAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & ActionToAbort )


Debugging-testing purposes.

int32 GetActionStackSize ( [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority ) const


[UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * GetActiveAction ( [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority ) const


const [APawn](API\Runtime\Engine\GameFramework\APawn) * GetControlledPawn() const


bool HasActiveActionOfType ( [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) > PawnActionClass ) const


Aborts given action instance

[EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) K2_AbortAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * ActionToAbort )


Aborts given action instance

[EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) K2_ForceAbortAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * ActionToAbort )


static bool K2_PerformAction ( [APawn](API\Runtime\Engine\GameFramework\APawn) * Pawn, [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * Action, [TEnumAsByte](API\Runtime\Core\Containers\TEnumAsByte)< [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) > Priority )


bool K2_PushAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * NewAction, [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Instigator )


bool OnEvent ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action, [EPawnActionEventType::Type](API\Runtime\AIModule\EPawnActionEventType__Type) Event )


UActorComponent.


static bool PerformAction ( [APawn](API\Runtime\Engine\GameFramework\APawn) & Pawn, [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action, [TEnumAsByte](API\Runtime\Core\Containers\TEnumAsByte)< [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) > Priority )


Use it to save component work to figure out what it's controlling or if component can't/won't be able to figure it out properly  will throw a log warning if trying to set ControlledPawn if it's already set

void SetControlledPawn ( [APawn](API\Runtime\Engine\GameFramework\APawn) * NewPawn )


bool PushAction ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & NewAction, [EAIRequestPriority::Type](API\Runtime\AIModule\EAIRequestPriority__Type) Priority, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Instigator )


Function called every frame on this ActorComponent. Override this function to implement custom logic to be executed every frame. Only executes if the component is registered, and also PrimaryComponentTick.bCanEverTick must be set to true.

virtual void TickComponent ( float DeltaTime, enum ELevelTick TickType, [FActorComponentTickFunction](API\Runtime\Engine\Engine\FActorComponentTickFunction) * ThisTickFunction )


Finds the action that should be running. If it's different from CurrentAction then CurrentAction gets paused and newly selected action gets started up


UDEPRECATED_PawnActionsComponent ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UDEPRECATED_PawnActionsComponent : public [UActorComponent](API\Runtime\Engine\Components\UActorComponent)

bLockedAILogic

Set when logic was locked by hi priority stack


void ActionFinished ( [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn, [EPawnActionResult::Type](API\Runtime\AIModule\EPawnActionResult__Type) WithResult )


void ActionPause ( [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


void ActionResume ( [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


void ActionStart ( [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


void ActionTick ( [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn, float DeltaSeconds )


Called when this action is being removed from action stacks

virtual void OnFinished ( [EPawnActionResult::Type](API\Runtime\AIModule\EPawnActionResult__Type) WithResult )


Called to pause action when higher priority or child action kicks in

virtual bool Pause ( const [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * PausedBy )


Called to resume action after being paused


UDEPRECATED_PawnAction_BlueprintBase ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Called to start off the Action
'true' if actions successfully started.  if action fails to start no finishing or aborting mechanics will be triggered


class UDEPRECATED_PawnAction_BlueprintBase : public [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction)


Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.


static bool CheckAlreadyAtGoal ( [AAIController](API\Runtime\AIModule\AAIController) & Controller, const FVector & TestLocation, float Radius )


static bool CheckAlreadyAtGoal ( [AAIController](API\Runtime\AIModule\AAIController) & Controller, const [AActor](API\Runtime\Engine\GameFramework\AActor) & TestGoal, float Radius )


static [UDEPRECATED_PawnAction_Move](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction_Move) * CreateAction ( [UWorld](API\Runtime\Engine\Engine\UWorld) & World, [AActor](API\Runtime\Engine\GameFramework\AActor) * GoalActor, [EPawnActionMoveMode::Type](API\Runtime\AIModule\Actions\EPawnActionMoveMode__Type) Mode )


static [UDEPRECATED_PawnAction_Move](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction_Move) * CreateAction ( [UWorld](API\Runtime\Engine\Engine\UWorld) & World, const FVector & GoalLocation, [EPawnActionMoveMode::Type](API\Runtime\AIModule\Actions\EPawnActionMoveMode__Type) Mode )


Deprecated* Use SetAbortSubActionOnPathUpdate instead.

void EnableChildAbortionOnPathUpdate ( bool bEnable )


void EnablePathUpdateOnMoveGoalLocationChange ( bool bEnable )


void EnableGoalLocationProjectionToNavigation ( bool bEnable )


void EnableStrafing ( bool bNewStrafing )


This function will change its signature once AI messaging is rewritten

virtual void HandleAIMessage ( [UBrainComponent](API\Runtime\AIModule\UBrainComponent) *, const [FAIMessage](API\Runtime\AIModule\FAIMessage) & )


virtual bool IsPartialPathAllowed() const


virtual void OnPathUpdated ( [FNavigationPath](API\Runtime\NavigationSystem\FNavigationPath) * UpdatedPath, [ENavPathEvent::Type](API\Runtime\Engine\AI\Navigation\ENavPathEvent__Type) Event )


Performs actual work on aborting Action. Should be called exclusively by Abort function
only valid return values here are LatendAbortInProgress and AbortDone

virtual [EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) PerformAbort ( [EAIForceParam::Type](API\Runtime\AIModule\EAIForceParam__Type) ShouldForce )


virtual [EPathFollowingRequestResult::Type](API\Runtime\AIModule\Navigation\EPathFollowingRequestResult__Typ-) RequestMove ( [AAIController](API\Runtime\AIModule\AAIController) & Controller )


void SetAbortSubActionOnPathUpdate ( bool bEnable )


void SetAllowPartialPath ( bool bEnable )


void SetAcceptableRadius ( float NewAcceptableRadius )


void SetFilterClass ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UNavigationQueryFilter](API\Runtime\NavigationSystem\NavFilters\UNavigationQueryFilter) > NewFilterClass )


void SetFinishOnOverlap ( bool bNewFinishOnOverlap )


void SetPath ( FNavPathSharedRef InPath )


UDEPRECATED_PawnAction_Move ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UDEPRECATED_PawnAction_Move : public [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction)

bAbortSubActionOnPathChange

If set, other actions with the same priority will be aborted when path is changed

bAllowPartialPath

If set, use incomplete path when goal can't be reached

bFinishOnOverlap

If set to true (default) will make action succeed when the pawn's collision component overlaps with goal's collision component

bProjectGoalToNavigation

If set, GoalLocation will be projected on navigation before using

bUpdatePathToGoal

If set, path to GoalActor will be updated with goal's movement

bUsePathfinding

If set, movement will use path finding

FilterClass

"None" will result in default filter being used

Path

Currently followed path

Handle for efficient management of DeferredPerformMoveAction timer

Handle for efficient management of TryToRepath timer


static [UDEPRECATED_PawnAction_Repeat](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction_Repeat) * CreateAction ( [UWorld](API\Runtime\Engine\Engine\UWorld) & World, [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * ActionToRepeat, int32 NumberOfRepeats, [EPawnSubActionTriggeringPolicy::Type](API\Runtime\AIModule\Actions\EPawnSubActionTriggeringPolicy__-) InSubActionTriggeringPolicy )


Called to give Action chance to react to child action finishing.  gets calledAFTERchild's OnFinished to give child action chance to prepare "finishing data" for parent to read.  clears parent-child binding

virtual void OnChildFinished ( [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) & Action, [EPawnActionResult::Type](API\Runtime\AIModule\EPawnActionResult__Type) WithResult )


UDEPRECATED_PawnAction_Repeat ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UDEPRECATED_PawnAction_Repeat : public [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction)


static [UDEPRECATED_PawnAction_Sequence](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction_Sequence) * CreateAction ( [UWorld](API\Runtime\Engine\Engine\UWorld) & World, [TArray](API\Runtime\Core\Containers\TArray)< [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * > & ActionSequence, [EPawnSubActionTriggeringPolicy::Type](API\Runtime\AIModule\Actions\EPawnSubActionTriggeringPolicy__-) InSubActionTriggeringPolicy )


UDEPRECATED_PawnAction_Sequence ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UDEPRECATED_PawnAction_Sequence : public [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction)


virtual bool Pause ( const [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction) * PausedBy )


InTimeToWait < 0 (or just FAISystem::InfiniteInterval) will result in waiting forever

static [UDEPRECATED_PawnAction_Wait](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction_Wait) * CreateAction ( [UWorld](API\Runtime\Engine\Engine\UWorld) & World, float InTimeToWait )


virtual [EPawnActionAbortState::Type](API\Runtime\AIModule\EPawnActionAbortState__Type) PerformAbort ( [EAIForceParam::Type](API\Runtime\AIModule\EAIForceParam__Type) ShouldForce )


UDEPRECATED_PawnAction_Wait ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Uses system timers rather then ticking

class UDEPRECATED_PawnAction_Wait : public [UDEPRECATED_PawnAction](API\Runtime\AIModule\Actions\UDEPRECATED_PawnAction)


ADetourCrowdAIController ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class ADetourCrowdAIController : public [AAIController](API\Runtime\AIModule\AAIController)


AGridPathAIController ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class AGridPathAIController : public [AAIController](API\Runtime\AIModule\AAIController)


namespace EArithmeticKeyOperation { enum Type { Equal, NotEqual, Less, LessOrEqual, Greater, GreaterOrEqual, } }


namespace EBasicKeyOperation { enum Type { Set, NotSet, } }


namespace EBlackboardCompare { enum Type { Less = -1, Equal = 0, Greater = 1, NotEqual = 1, } }


namespace EBlackboardKeyOperation { enum Type { Basic, Arithmetic, Text, } }


namespace ETextKeyOperation { enum Type { Equal, NotEqual, Contain, NotContain, } }


KeyIdx

Index of instanced key in UBlackboardComponent::InstancedKeys


namespace FBlackboard { uint32 FBlackboard::GetTypeHash ( const [FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) & Key ) }


constexpr bool operator== ( const [FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) & Other ) const


constexpr bool operator!= ( const [FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) & Other ) const


The default BB key size is now 16


Sets value to the default, works directly on provided memory/properties

virtual void Clear ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


Compares two values

virtual [EBlackboardCompare::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBlackboardCompare__Type) CompareValues ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * OtherKeyOb, const uint8 * OtherMemoryBlock ) const


Copy value from other key, works directly on provided memory/properties

virtual void CopyValues ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * SourceKeyOb, const uint8 * SourceBlock )


Describe params of arithmetic test

virtual [FString](API\Runtime\Core\Containers\FString) DescribeArithmeticParam ( int32 IntValue, float FloatValue ) const


Description of params for property view

virtual [FString](API\Runtime\Core\Containers\FString) DescribeSelf() const


Convert value to text, works directly on provided memory/properties

virtual [FString](API\Runtime\Core\Containers\FString) DescribeValue ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


Free value before removing from blackboard, works directly on provided memory/properties

virtual void FreeMemory ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


key instance if bCreateKeyInstance was set

const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * GetKeyInstance ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


[UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * GetKeyInstance ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


Extract location from entry, works directly on provided memory/properties

virtual bool GetLocation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FVector & Location ) const


Extract rotation from entry, works directly on provided memory/properties

virtual bool GetRotation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FRotator & Rotation ) const


Get test supported by this type


Helper function for reading typed data from memory block

template<typename T> static T GetValueFromMemory ( const uint8 * MemoryBlock )


Get ValueSize


true if key wants to be instanced


Handle instancing if needed

void InitializeKey ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, [FBlackboard::FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) KeyID )


Initialize memory, works directly on provided memory/properties

virtual void InitializeMemory ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


Does it match settings in filter?

virtual bool IsAllowedByFilter ( [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * FilterOb ) const


true if this object is instanced key


Check if key has stored value, works directly on provided memory/properties

virtual bool IsEmpty ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


Handle dynamic data size

virtual void PreInitialize ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp )


Helper function for writing typed data to memory block, returns true if value has changed

template<typename T> static bool SetValueInMemory ( uint8 * MemoryBlock, const T & Value )


Helper function for witting weak object data to memory block, returns true if value has changed

template<typename T> static bool SetWeakObjectInMemory ( uint8 * MemoryBlock, const [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< T > & Value )


virtual bool TestArithmeticOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EArithmeticKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EArithmeticKeyOperation__Type) Op, int32 OtherIntValue, float OtherFloatValue ) const


Various value testing, works directly on provided memory/properties

virtual bool TestBasicOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EBasicKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBasicKeyOperation__Type) Op ) const


virtual bool TestTextOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [ETextKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\ETextKeyOperation__Type) Op, const [FString](API\Runtime\Core\Containers\FString) & OtherString ) const


Create replacement key for deprecated data

virtual [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * UpdateDeprecatedKey()


Free value before removing from blackboard, supports instanced keys

void WrappedFree ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


Sets value to the default, supports instanced keys

void WrappedClear ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock ) const


Convert value to text, supports instanced keys

[FString](API\Runtime\Core\Containers\FString) WrappedDescribeValue ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


Extract location from entry, supports instanced keys

bool WrappedGetLocation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FVector & Location ) const


Extract rotation from entry, supports instanced keys

bool WrappedGetRotation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FRotator & Rotation ) const


Check if key has stored value, supports instanced keys

bool WrappedIsEmpty ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


bool WrappedTestArithmeticOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EArithmeticKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EArithmeticKeyOperation__Type) Op, int32 OtherIntValue, float OtherFloatValue ) const


Various value testing, used by decorators, supports instanced keys

bool WrappedTestBasicOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EBasicKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBasicKeyOperation__Type) Op ) const


bool WrappedTestTextOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [ETextKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\ETextKeyOperation__Type) Op, const [FString](API\Runtime\Core\Containers\FString) & OtherString ) const


UBlackboardKeyType ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bCreateKeyInstance

If set, key will be instanced instead of using memory block

bIsInstanced

Set automatically for node instances

SupportedOp

Decorator operation supported with this type

ValueSize

Size of value for this type


Compares two values

virtual [EBlackboardCompare::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBlackboardCompare__Type) CompareValues ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * OtherKeyOb, const uint8 * OtherMemoryBlock ) const


Convert value to text, works directly on provided memory/properties

virtual [FString](API\Runtime\Core\Containers\FString) DescribeValue ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


static bool GetValue ( const [UBlackboardKeyType_Bool](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Bool) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Bool\FDataType) InvalidValue = false;


static bool SetValue ( [UBlackboardKeyType_Bool](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Bool) * KeyOb, uint8 * RawData, bool bValue )


virtual bool TestBasicOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EBasicKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBasicKeyOperation__Type) Op ) const


UBlackboardKeyType_Bool ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Bool : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


Compares two values


Description of params for property view

virtual [FString](API\Runtime\Core\Containers\FString) DescribeSelf() const


typedef [UClass](API\Runtime\CoreUObject\UObject\UClass) * FDataType


static [UClass](API\Runtime\CoreUObject\UObject\UClass) * GetValue ( const [UBlackboardKeyType_Class](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Class) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Class\FDataType) InvalidValue = nullptr;


Does it match settings in filter?

virtual bool IsAllowedByFilter ( [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * FilterOb ) const


static bool SetValue ( [UBlackboardKeyType_Class](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Class) * KeyOb, uint8 * RawData, [UClass](API\Runtime\CoreUObject\UObject\UClass) * Value )


UBlackboardKeyType_Class ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Class : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


Describe params of arithmetic test

virtual [FString](API\Runtime\Core\Containers\FString) DescribeArithmeticParam ( int32 IntValue, float FloatValue ) const


Description of params for property view


static [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Enum\FDataType) GetValue ( const [UBlackboardKeyType_Enum](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Enum) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Enum\FDataType) InvalidValue = UBlackboardKeyType_Enum::FDataType(0);


Does it match settings in filter?


Called when a property on this object has been modified externally

virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


static bool SetValue ( [UBlackboardKeyType_Enum](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Enum) * KeyOb, uint8 * RawData, [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Enum\FDataType) Value )


virtual bool TestArithmeticOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EArithmeticKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EArithmeticKeyOperation__Type) Op, int32 OtherIntValue, float OtherFloatValue ) const


static bool ValidateEnum ( const [UEnum](API\Runtime\CoreUObject\UObject\UEnum) & EnumType )


UBlackboardKeyType_Enum ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Compares two values

virtual [EBlackboardCompare::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBlackboardCompare__Type) CompareValues ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * OtherKeyOb, const uint8 * OtherMemoryBlock ) const


class UBlackboardKeyType_Enum : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)

bIsEnumNameValid

Set when EnumName override is valid and active

EnumName

Name of enum defined in c++ code, will take priority over asset from EnumType property


Describe params of arithmetic test


virtual [FString](API\Runtime\Core\Containers\FString) DescribeValue ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


static float GetValue ( const [UBlackboardKeyType_Float](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Float) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Float\FDataType) InvalidValue = UBlackboardKeyType_Float::FDataType(0);


static bool SetValue ( [UBlackboardKeyType_Float](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Float) * KeyOb, uint8 * RawData, float Value )


UBlackboardKeyType_Float ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Float : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


Compares two values


static int32 GetValue ( const [UBlackboardKeyType_Int](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Int) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Int\FDataType) InvalidValue = UBlackboardKeyType_Int::FDataType(0);


static bool SetValue ( [UBlackboardKeyType_Int](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Int) * KeyOb, uint8 * RawData, int32 Value )


UBlackboardKeyType_Int ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Int : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Name\FDataType) InvalidValue = NAME_None;


static [FName](API\Runtime\Core\UObject\FName) GetValue ( const [UBlackboardKeyType_Name](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Name) * KeyOb, const uint8 * RawData )


static bool SetValue ( [UBlackboardKeyType_Name](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Name) * KeyOb, uint8 * RawData, const [FName](API\Runtime\Core\UObject\FName) & Value )


virtual bool TestTextOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [ETextKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\ETextKeyOperation__Type) Op, const [FString](API\Runtime\Core\Containers\FString) & OtherString ) const


UBlackboardKeyType_Name ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Name : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


static uint8 GetValue ( const [UBlackboardKeyType_NativeEnum](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_NativeEnum) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_NativeEnum\FDataType) InvalidValue = UBlackboardKeyType_NativeEnum::FDataType(0);


static bool SetValue ( [UBlackboardKeyType_NativeEnum](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_NativeEnum) * KeyOb, uint8 * RawData, uint8 Value )


virtual [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * UpdateDeprecatedKey()


UBlackboardKeyType_NativeEnum ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_NativeEnum : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


Compares two values

virtual [EBlackboardCompare::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBlackboardCompare__Type) CompareValues ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * OtherKeyOb, const uint8 * OtherMemoryBlock ) const


Description of params for property view

virtual [FString](API\Runtime\Core\Containers\FString) DescribeSelf() const


virtual [FString](API\Runtime\Core\Containers\FString) DescribeValue ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


typedef [UObject](API\Runtime\CoreUObject\UObject\UObject) * FDataType


Extract location from entry, works directly on provided memory/properties

virtual bool GetLocation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FVector & Location ) const


Extract rotation from entry, works directly on provided memory/properties

virtual bool GetRotation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FRotator & Rotation ) const


static [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetValue ( const [UBlackboardKeyType_Object](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Object) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Object\FDataType) InvalidValue = nullptr;


Does it match settings in filter?

virtual bool IsAllowedByFilter ( [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * FilterOb ) const


static bool SetValue ( [UBlackboardKeyType_Object](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Object) * KeyOb, uint8 * RawData, [UObject](API\Runtime\CoreUObject\UObject\UObject) * Value )


Various value testing, works directly on provided memory/properties

virtual bool TestBasicOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EBasicKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBasicKeyOperation__Type) Op ) const


UBlackboardKeyType_Object ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Object : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


Sets value to the default, works directly on provided memory/properties

virtual void Clear ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


Compares two values


static FRotator GetValue ( const [UBlackboardKeyType_Rotator](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Rotator) * KeyOb, const uint8 * RawData )


Initialize memory, works directly on provided memory/properties

virtual void InitializeMemory ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Rotator\FDataType) InvalidValue = FAISystem::InvalidRotation;


Check if key has stored value, works directly on provided memory/properties

virtual bool IsEmpty ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


static bool SetValue ( [UBlackboardKeyType_Rotator](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Rotator) * KeyOb, uint8 * RawData, const FRotator & Value )


UBlackboardKeyType_Rotator ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Rotator : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


Compares two values

virtual [EBlackboardCompare::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBlackboardCompare__Type) CompareValues ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * OtherKeyOb, const uint8 * OtherMemoryBlock ) const


Copy value from other key, works directly on provided memory/properties

virtual void CopyValues ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock, const [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType) * SourceKeyOb, const uint8 * SourceBlock )


virtual [FString](API\Runtime\Core\Containers\FString) DescribeValue ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


static [FString](API\Runtime\Core\Containers\FString) GetValue ( const [UBlackboardKeyType_String](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_String) * KeyOb, const uint8 * RawData )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_String\FDataType) InvalidValue = FString();


static bool SetValue ( [UBlackboardKeyType_String](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_String) * KeyOb, uint8 * RawData, const [FString](API\Runtime\Core\Containers\FString) & Value )


virtual bool TestTextOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [ETextKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\ETextKeyOperation__Type) Op, const [FString](API\Runtime\Core\Containers\FString) & OtherString ) const


UBlackboardKeyType_String ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_String : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


virtual void Clear ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


Compares two values


virtual bool GetLocation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, FVector & Location ) const


static FVector GetValue ( const [UBlackboardKeyType_Vector](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Vector) * KeyOb, const uint8 * RawData )


virtual void InitializeMemory ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, uint8 * MemoryBlock )


static const [FDataType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Vector\FDataType) InvalidValue = FAISystem::InvalidLocation;


virtual bool IsEmpty ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock ) const


static bool SetValue ( [UBlackboardKeyType_Vector](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType_Vector) * KeyOb, uint8 * RawData, const FVector & Value )


virtual bool TestBasicOperation ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & OwnerComp, const uint8 * MemoryBlock, [EBasicKeyOperation::Type](API\Runtime\AIModule\BehaviorTree\Blackboard\EBasicKeyOperation__Type) Op ) const


UBlackboardKeyType_Vector ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBlackboardKeyType_Vector : public [UBlackboardKeyType](API\Runtime\AIModule\BehaviorTree\Blackboard\UBlackboardKeyType)


namespace EBTParallelChild { enum Type { MainTask, BackgroundTree, } }


namespace EBTParallelMode { enum Type { AbortBackground, WaitForBackground, } }


struct FBTParallelMemory : public [FBTCompositeMemory](API\Runtime\AIModule\BehaviorTree\FBTCompositeMemory)

bForceBackgroundTree

Try running background tree task even if main task has finished

bMainTaskIsActive

Set when main task is running

bRepeatMainTask

Set when main task needs to be repeated

LastSearchId

Last Id of search, detect infinite loops when there isn't any valid task in background tree

MainTaskResult

Finish result of main task


virtual int32 GetNextChildHandler ( struct [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, int32 PrevChild, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) LastResult ) const


Get the name of the icon used to display this node in the editor

virtual [FName](API\Runtime\Core\UObject\FName) GetNodeIconName() const


UBTComposite_Selector ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Selector composite node. Selector Nodes execute their children from left to right, and will stop executing its children when one of their children succeeds. If a Selector's child succeeds, the Selector succeeds. If all the Selector's children fail, the Selector fails.

class UBTComposite_Selector : public [UBTCompositeNode](API\Runtime\AIModule\BehaviorTree\UBTCompositeNode)


allowed flow abort modes for decorators

virtual bool CanAbortLowerPriority() const


UBTComposite_Sequence ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Sequence composite node. Sequence Nodes execute their children from left to right, and will stop executing its children when one of their children fails. If a child fails, then the Sequence fails. If all the Sequence's children succeed, then the Sequence succeeds.

class UBTComposite_Sequence : public [UBTCompositeNode](API\Runtime\AIModule\BehaviorTree\UBTCompositeNode)


allowed flow abort modes for decorators


Check if NotifyDecoratorsOnDeactivation is allowed, requires bUseDecoratorsDeactivationCheck flag bUseDecoratorsDeactivationCheck must be set to true for this function to be called Calling INIT_COMPOSITE_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual bool CanNotifyDecoratorsOnDeactivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, int32 ChildIdx, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) & NodeResult ) const


Check if child node can execute new subtree

virtual bool CanPushSubtree ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, int32 ChildIdx ) const


Helper for showing values of EBTParallelMode enum

static [FString](API\Runtime\Core\Containers\FString) DescribeFinishMode ( [EBTParallelMode::Type](API\Runtime\AIModule\BehaviorTree\Composites\EBTParallelMode__Type) Mode )


Gathers description of all runtime parameters

virtual void DescribeRuntimeValues ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTDescriptionVerbosity::Type](API\Runtime\AIModule\BehaviorTree\EBTDescriptionVerbosity__Type) Verbosity, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Values ) const


Size of instance memory

virtual uint16 GetInstanceMemorySize() const


Handle child updates

virtual int32 GetNextChildHandler ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, int32 PrevChild, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) LastResult ) const


string containing description of this node with all setup values

virtual [FString](API\Runtime\Core\Containers\FString) GetStaticDescription() const


Called just after child execution, allows to modify result bUseChildExecutionNotify must be set to true for this function to be called Calling INIT_COMPOSITE_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void NotifyChildExecution ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, int32 ChildIdx, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) & NodeResult ) const


Called when start leaves this node bUseNodeDeactivationNotify must be set to true for this function to be called Calling INIT_COMPOSITE_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void NotifyNodeDeactivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) & NodeResult ) const


Set override for next child index

virtual void SetChildOverride ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, int8 Index ) const


UBTComposite_SimpleParallel ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Simple Parallel composite node. Allows for running two children: one which must be a single task node (with optional decorators), and the other of which can be a complete subtree.

class UBTComposite_SimpleParallel : public [UBTCompositeNode](API\Runtime\AIModule\BehaviorTree\UBTCompositeNode)

FinishMode

How background tree should be handled when main task finishes execution


namespace EBlackBoardEntryComparison { enum Type { Equal, NotEqual, } }


Decorator for accessing blackboard values

namespace EBTBlackboardRestart { enum Type { ValueChange, ResultChange, } }


namespace EPathExistanceQueryType { enum Type { NavmeshRaycast2D, HierarchicalQuery, RegularPathFinding, } }


Describe decorator and cache it


Calculates raw, core value of decorator's condition. Should not include calling IsInversed

virtual bool CalculateRawConditionValue ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory ) const


Take blackboard value and evaluate decorator's condition

bool EvaluateOnBlackboard ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & BlackboardComp ) const


Initialize any asset related data

virtual void InitializeFromAsset ( [UBehaviorTree](API\Runtime\AIModule\BehaviorTree\UBehaviorTree) & Asset )


Called when a property on this object has been modified externally

virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


Notify about change in blackboard keys

virtual EBlackboardNotificationResult OnBlackboardKeyValueChange ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & Blackboard, [FBlackboard::FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) ChangedKeyID )


using custom serialization version was not possible since we require blackboard and used types (e.g. UserDefinedEnumerations) to be loaded and keys to be resolved (i.e. InitializeFromAsset).

void RefreshEnumBasedDecorator ( const [FBlackboardEntry](API\Runtime\AIModule\BehaviorTree\FBlackboardEntry) & Entry )


UBTDecorator_Blackboard ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Blackboard decorator node. A decorator node that bases its condition on a Blackboard key.

class UBTDecorator_Blackboard : public [UBTDecorator_BlackboardBase](API\Runtime\AIModule\BehaviorTree\Decorators\UBTDecorator_BlackboardBase)

CachedDescription

Cached description

FloatValue

Value for arithmetic operations

IntValue

Value for arithmetic operations

NotifyObserver

When observer can try to request abort?

OperationType

Operation type

StringValue

Value for string operations


Get the name of the icon used to display this node in the editor

virtual [FName](API\Runtime\Core\UObject\FName) GetNodeIconName() const


Get name of selected blackboard key


Initialize any asset related data


Called when execution flow controller becomes active

virtual void OnBecomeRelevant ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory )


Notify about change in blackboard keys


Called when execution flow controller becomes inactive

virtual void OnCeaseRelevant ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory )


class UBTDecorator_BlackboardBase : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

BlackboardKey

Blackboard key selector


virtual void DescribeRuntimeValues ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTDescriptionVerbosity::Type](API\Runtime\AIModule\BehaviorTree\EBTDescriptionVerbosity__Type) Verbosity, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Values ) const


enum EAbortType { NoAbort, ActivateBranch, DeactivateBranch, Unknown, }


Return this decorator abort type in current circumstances

[EAbortType](API\Runtime\AIModule\BehaviorTree\Decorators\UBTDecorator_BlueprintBase\EAbortType) EvaluateAbortType ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp ) const


Deprecated* Use GetShouldAbortType instead

bool GetShouldAbort ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp ) const


virtual [FString](API\Runtime\Core\Containers\FString) GetStaticDescription() const


Initialize data about blueprint defined properties


UBTDecorator_BlackboardBase ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Check if decorator's observer is currently active


Called when auxiliary node becomes active this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyBecomeRelevant must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically


Notify about changes in blackboard

EBlackboardNotificationResult OnBlackboardKeyValueChange ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & Blackboard, [FBlackboard::FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) ChangedKeyID )


Called when auxiliary node becomes inactive this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyCeaseRelevant must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically


Called when node instance is removed from tree

virtual void OnInstanceDestroyed ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp )


Called when underlying node is activated this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyActivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeActivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData )


Check if decorator is part of currently active branch


Called when underlying node has finished this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyDeactivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeDeactivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) NodeResult )


Called when testing if underlying node can be executed, must call FinishConditionCheck  that if both generic and AI event versions are implemented only the more suitable one will be called, meaning the AI version if called for AI, generic one otherwise

bool PerformConditionCheck ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor )


generic one otherwise

bool PerformConditionCheckAI ( [AAIController](API\Runtime\AIModule\AAIController) * OwnerController, [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


Setup node name


Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.


Called on execution of underlying node  that if both generic and AI event versions are implemented only the more suitable one will be called, meaning the AI version if called for AI, generic one otherwise

void ReceiveExecutionStart ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor )


Called when execution of underlying node is finished  that if both generic and AI event versions are implemented only the more suitable one will be called, meaning the AI version if called for AI, generic one otherwise

void ReceiveExecutionFinish ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor, enum [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) NodeResult )


generic one otherwise

void ReceiveExecutionStartAI ( [AAIController](API\Runtime\AIModule\AAIController) * OwnerController, [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


generic one otherwise

void ReceiveExecutionFinishAI ( [AAIController](API\Runtime\AIModule\AAIController) * OwnerController, [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn, enum [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) NodeResult )


Called when observer is activated (flow controller)  that if both generic and AI event versions are implemented only the more suitable one will be called, meaning the AI version if called for AI, generic one otherwise

void ReceiveObserverActivated ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor )


generic one otherwise

void ReceiveObserverActivatedAI ( [AAIController](API\Runtime\AIModule\AAIController) * OwnerController, [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


generic one otherwise

void ReceiveObserverDeactivatedAI ( [AAIController](API\Runtime\AIModule\AAIController) * OwnerController, [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn )


Called when observer is deactivated (flow controller)  that if both generic and AI event versions are implemented only the more suitable one will be called, meaning the AI version if called for AI, generic one otherwise

void ReceiveObserverDeactivated ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor )


Tick function  that if both generic and AI event versions are implemented only the more suitable one will be called, meaning the AI version if called for AI, generic one otherwise

void ReceiveTick ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor, float DeltaSeconds )


generic one otherwise

void ReceiveTickAI ( [AAIController](API\Runtime\AIModule\AAIController) * OwnerController, [APawn](API\Runtime\Engine\GameFramework\APawn) * ControlledPawn, float DeltaSeconds )


Handle abort request calls from the specified abort type

void RequestAbort ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, const [EAbortType](API\Runtime\AIModule\BehaviorTree\Decorators\UBTDecorator_BlueprintBase\EAbortType) Type )


Gets called only for instanced nodes(bCreateNodeInstance == true). In practive overridden by BP-implemented BT nodes

virtual void SetOwner ( [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorOwner )


Tick function this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyTick must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void TickNode ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, float DeltaSeconds )


Get whether this node is using a blueprint for its logic


UBTDecorator_BlueprintBase ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Helper functions:

class UBTDecorator_BlueprintBase : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

ActorOwner

Cached AIController owner of BehaviorTreeComponent.

bCheckConditionOnlyBlackBoardChanges

Applies only if Decorator has anyFBlackboardKeySelectorproperty and if decorator is set to abort BT flow.

bIsObservingBB

Gets set to true if decorator declared BB keys it can potentially observe

bShowPropertyDetails

Show detailed information about properties

ObservedKeyNames

Blackboard key names that should be observed

PerformConditionCheckImplementations

Set if ReceiveConditionCheck is implemented by blueprint

PropertyData

Properties with runtime values, stored only in class default object

ReceiveExecutionFinishImplementations

Set if ReceiveExecutionFinish is implemented by blueprint

ReceiveExecutionStartImplementations

Set if ReceiveExecutionStart is implemented by blueprint

ReceiveObserverActivatedImplementations

Set if ReceiveObserverActivated is implemented by blueprint

Set if ReceiveObserverDeactivated is implemented by blueprint

ReceiveTickImplementations

Set if ReceiveTick is implemented by blueprint


Describe decorator and cache it


Calculates raw, core value of decorator's condition. Should not include calling IsInversed

virtual bool CalculateRawConditionValue ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory ) const


Gathers description of all runtime parameters

virtual void DescribeRuntimeValues ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTDescriptionVerbosity::Type](API\Runtime\AIModule\BehaviorTree\EBTDescriptionVerbosity__Type) Verbosity, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Values ) const


string containing description of this node with all setup values

virtual [FString](API\Runtime\Core\Containers\FString) GetStaticDescription() const


Called when a property on this object has been modified externally

virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


Initialize any asset related data

virtual void InitializeFromAsset ( [UBehaviorTree](API\Runtime\AIModule\BehaviorTree\UBehaviorTree) & Asset )


UBTDecorator_CheckGameplayTagsOnActor ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


GameplayTag decorator node. A decorator node that bases its condition on whether the specified Actor (in the blackboard) has a Gameplay Tag or Tags specified.

class UBTDecorator_CheckGameplayTagsOnActor : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

CachedDescription

Cached description


Get the name of the icon used to display this node in the editor

virtual [FName](API\Runtime\Core\UObject\FName) GetNodeIconName() const


Initialize any asset related data


virtual EBlackboardNotificationResult OnBlackboardKeyValueChange ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & Blackboard, [FBlackboard::FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) ChangedKeyID )


Called when auxiliary node becomes active this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyBecomeRelevant must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void OnBecomeRelevant ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory )


Called when auxiliary node becomes inactive this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyCeaseRelevant must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void OnCeaseRelevant ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory )


UBTDecorator_CompareBBEntries ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Blackboard comparison decorator node. A decorator node that bases its condition on a comparison between two Blackboard keys.

class UBTDecorator_CompareBBEntries : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

BlackboardKeyA

Blackboard key selector

BlackboardKeyB

Blackboard key selector

Operator

Operation type


Size of instance memory

virtual uint16 GetInstanceMemorySize() const


Notify about change in blackboard keys


Called when underlying node has finished this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyDeactivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeDeactivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) NodeResult )


UBTDecorator_ConditionalLoop ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Conditional loop decorator node. A decorator node that loops execution as long as condition is satisfied.

class UBTDecorator_ConditionalLoop : public [UBTDecorator_Blackboard](API\Runtime\AIModule\BehaviorTree\Decorators\UBTDecorator_Blackboard)


bool CalculateDirection ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) * BlackboardComp, const [FBlackboardKeySelector](API\Runtime\AIModule\BehaviorTree\FBlackboardKeySelector) & Origin, const [FBlackboardKeySelector](API\Runtime\AIModule\BehaviorTree\FBlackboardKeySelector) & End, FVector & Direction ) const


virtual bool CalculateRawConditionValue ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory ) const


virtual void DescribeRuntimeValues ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTDescriptionVerbosity::Type](API\Runtime\AIModule\BehaviorTree\EBTDescriptionVerbosity__Type) Verbosity, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Values ) const


Size of instance memory


virtual [FString](API\Runtime\Core\Containers\FString) GetStaticDescription() const


Initialize any asset related data

virtual void InitializeFromAsset ( [UBehaviorTree](API\Runtime\AIModule\BehaviorTree\UBehaviorTree) & Asset )


void OnBlackboardChange ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & Blackboard, [FBlackboard::FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) ChangedKeyID )


Tick function this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyTick must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void TickNode ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, float DeltaSeconds )


UBTDecorator_ConeCheck ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Cone check decorator node. A decorator node that bases its condition on a cone check, using Blackboard entries to form the parameters of the check.

class UBTDecorator_ConeCheck : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

ConeDirection

"None" means "use ConeOrigin's direction"

ConeHalfAngle

Angle between cone direction and code cone edge, or a half of the total cone angle

ConeOrigin

Blackboard key selector

Observed

Blackboard key selector


Initialize memory block

virtual void InitializeMemory ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTMemoryInit::Type](API\Runtime\AIModule\BehaviorTree\EBTMemoryInit__Type) InitType ) const


virtual [FName](API\Runtime\Core\UObject\FName) GetNodeIconName() const


Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.


UBTDecorator_Cooldown ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Cooldown decorator node. A decorator node that bases its condition on whether a cooldown timer has expired.

class UBTDecorator_Cooldown : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

CoolDownTime

Max allowed time for execution of underlying node


Calculates raw, core value of decorator's condition. Should not include calling IsInversed


string containing description of this node with all setup values


Initialize any asset related data


UBTDecorator_DoesPathExist ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Cooldown decorator node. A decorator node that bases its condition on whether a path exists between two points from the Blackboard.

class UBTDecorator_DoesPathExist : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

BlackboardKeyA

Blackboard key selector

BlackboardKeyB

Blackboard key selector

bUseSelf

Deprecated, set value of blackboard key A on initialization

FilterClass

"None" will result in default filter being used


Get the name of the icon used to display this node in the editor


Called when underlying node was processed (deactivated or failed to activate) this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyProcessed must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeProcessed ( struct [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) & NodeResult )


UBTDecorator_ForceSuccess ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Forcing failed result was not implemented, because it doesn't make sense in both basic composites:

class UBTDecorator_ForceSuccess : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)


virtual bool CalculateRawConditionValue ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory ) const


[FVector::FReal](API\Runtime\Core\Math\TVector\FReal) GetGeometricDistanceSquared ( const FVector & A, const FVector & B ) const


virtual [FString](API\Runtime\Core\Containers\FString) GetStaticDescription() const


UBTDecorator_IsAtLocation ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Is At Location decorator node. A decorator node that checks if AI controlled pawn is at given location.

class UBTDecorator_IsAtLocation : public [UBTDecorator_BlackboardBase](API\Runtime\AIModule\BehaviorTree\Decorators\UBTDecorator_BlackboardBase)

AcceptableRadius

Distance threshold to accept as being at location

bPathFindingBasedTest

If true the result will be consistent with tests done while following paths.

bUseNavAgentGoalLocation

If moving to an actor and this actor is a nav agent, then we will move to their nav agent location


Gathers description of all runtime parameters

virtual void DescribeRuntimeValues ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTDescriptionVerbosity::Type](API\Runtime\AIModule\BehaviorTree\EBTDescriptionVerbosity__Type) Verbosity, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Values ) const


Notify about change in blackboard keys

virtual EBlackboardNotificationResult OnBlackboardKeyValueChange ( const [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & Blackboard, [FBlackboard::FKey](API\Runtime\AIModule\BehaviorTree\Blackboard\FKey) ChangedKeyID )


UBTDecorator_IsBBEntryOfClass ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


class UBTDecorator_IsBBEntryOfClass : public [UBTDecorator_BlackboardBase](API\Runtime\AIModule\BehaviorTree\Decorators\UBTDecorator_BlackboardBase)


bool CalculateCurrentDirection ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, FVector & Direction ) const


Size of instance memory

virtual uint16 GetInstanceMemorySize() const


virtual [FName](API\Runtime\Core\UObject\FName) GetNodeIconName() const


Initialize any asset related data

virtual void InitializeFromAsset ( [UBehaviorTree](API\Runtime\AIModule\BehaviorTree\UBehaviorTree) & Asset )


Called when auxiliary node becomes active this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyBecomeRelevant must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void OnBecomeRelevant ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory )


Tick function this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyTick must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void TickNode ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, float DeltaSeconds )


UBTDecorator_KeepInCone ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Cooldown decorator node. A decorator node that bases its condition on whether the observed position is still inside a cone. The cone's direction is calculated when the node first becomes relevant.

class UBTDecorator_KeepInCone : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

bUseSelfAsObserved

Deprecated, set value of Observed on initialization

bUseSelfAsOrigin

Deprecated, set value of ConeOrigin on initialization

ConeHalfAngle

Max allowed time for execution of underlying node

ConeOrigin

Blackboard key selector

Observed

Blackboard key selector


Size of instance memory


string containing description of this node with all setup values


Called when underlying node is activated this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyActivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeActivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData )


UBTDecorator_Loop ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Loop decorator node. A decorator node that bases its condition on whether its loop counter has been exceeded.

class UBTDecorator_Loop : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

bInfiniteLoop

Infinite loop

InfiniteLoopTimeoutTime

Timeout (when looping infinitely, when we finish a loop we will check whether we have spent this time looping, if we have we will stop looping).

NumLoops

Number of executions


Get the name of the icon used to display this node in the editor


Calculates raw, core value of decorator's condition. Should not include calling IsInversed

virtual bool CalculateRawConditionValue ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory ) const


UBTDecorator_ReachedMoveGoal ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Reached Move Goal decorator node. A decorator node that bases its condition on whether the AI controller's path following component returns that it has reached its goal.

class UBTDecorator_ReachedMoveGoal : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)


virtual [FString](API\Runtime\Core\Containers\FString) GetStaticDescription() const


Called when underlying node has finished this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyDeactivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeDeactivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData, [EBTNodeResult::Type](API\Runtime\AIModule\BehaviorTree\EBTNodeResult__Type) NodeResult )


UBTDecorator_SetTagCooldown ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Set tag cooldown decorator node. A decorator node that sets a gameplay tag cooldown.

class UBTDecorator_SetTagCooldown : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

bAddToExistingDuration

True if we are adding to any existing duration, false if we are setting the duration (potentially invalidating an existing end time).

CooldownDuration

Value we will add or set to the Cooldown tag when this task runs.

CooldownTag

Gameplay tag that will be used for the cooldown.


Gathers description of all runtime parameters

virtual void DescribeRuntimeValues ( const [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTDescriptionVerbosity::Type](API\Runtime\AIModule\BehaviorTree\EBTDescriptionVerbosity__Type) Verbosity, [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Values ) const


Size of instance memory

virtual uint16 GetInstanceMemorySize() const


virtual [FName](API\Runtime\Core\UObject\FName) GetNodeIconName() const


Initialize memory block

virtual void InitializeMemory ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, [EBTMemoryInit::Type](API\Runtime\AIModule\BehaviorTree\EBTMemoryInit__Type) InitType ) const


Tick function this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyTick must be set to true for this function to be called Calling INIT_AUXILIARY_NODE_NOTIFY_FLAGS in the constructor of the node will set this flag automatically

virtual void TickNode ( [UBehaviorTreeComponent](API\Runtime\AIModule\BehaviorTree\UBehaviorTreeComponent) & OwnerComp, uint8 * NodeMemory, float DeltaSeconds )


Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.


UBTDecorator_TagCooldown ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Cooldown decorator node. A decorator node that bases its condition on whether a cooldown timer based on a gameplay tag has expired.

class UBTDecorator_TagCooldown : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

bActivatesCooldown

Whether or not we are adding/setting to the cooldown tag's value when the decorator deactivates.

CooldownDuration

Value we will add or set to the Cooldown tag when this node is deactivated.


string containing description of this node with all setup values


Called when underlying node is activated this function should be considered as const (don't modify state of object) if node is not instanced! bNotifyActivation must be set to true for this function to be called Calling INIT_DECORATOR_NODE_NOTIFY_FLAGS in the constructor of the decorator will set this flag automatically

virtual void OnNodeActivation ( [FBehaviorTreeSearchData](API\Runtime\AIModule\BehaviorTree\FBehaviorTreeSearchData) & SearchData )


UBTDecorator_TimeLimit ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


Time Limit decorator node. A decorator node that bases its condition on whether a timer has exceeded a specified value. The timer is reset each time the node becomes relevant.

class UBTDecorator_TimeLimit : public [UBTDecorator](API\Runtime\AIModule\BehaviorTree\UBTDecorator)

TimeLimit

Max allowed time for execution of underlying node


namespace EBlackboardDescription { enum Type { OnlyValue, KeyWithValue, DetailedKeyWithValue, Full, } }


Keep in sync with DescribeActiveNode()

namespace EBTActiveNode { enum Type { Composite, ActiveTask, AbortingTask, InactiveTask, } }


namespace EBTDecoratorLogic { enum Type { Invalid, Test, And, Or, Not, } }


namespace EBTDescriptionVerbosity { enum Type { Basic, Detailed, } }


namespace EBTExecutionMode { enum Type { SingleRun, Looped, } }


namespace EBTExecutionSnap { enum Type { Regular, OutOfNodes, } }


namespace EBTFlowAbortMode { enum Type { None, LowerPriority, Self, Both, } }


namespace EBTMemoryClear { enum Type { Destroy, StoreSubtree, } }


namespace EBTMemoryInit { enum Type { Initialize, RestoreSubtree, } }


Keep in sync with DescribeNodeResult()

namespace EBTNodeResult { enum Type { Succeeded, Failed, Aborted, InProgress, } }


Keep in sync with DescribeNodeUpdateMode()

namespace EBTNodeUpdateMode { enum Type { Unknown, Add, Remove, } }


namespace EBTStopMode { enum Type { Safe, Forced, } }


Keep in sync with DescribeTaskStatus()

namespace EBTTaskStatus { enum Type { Active, Aborting, Inactive, } }


template<typename T2> bool SetValue ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & BBComponent, const T2 InValue )


True is value has changed

bool SetValue ( [UBlackboardComponent](API\Runtime\AIModule\BehaviorTree\UBlackboardComponent) & BBComponent, const FStoredType InValue )