description: Uninstalls any game data stored for this GameFeaturePlugin and terminates the GameFeaturePlugin. If the given PluginURL is not found this will create a GameFeaturePlugin first and attempt to run it through the uninstall flow. This allows for the uninstalling of data that was installed on previous runs of the application where we haven't yet requested the GameFeaturePlugin that we would like to uninstall data for on this run.

code: void UninstallGameFeaturePlugin ( const [FString](API\Runtime\Core\Containers\FString) & PluginURL, const [FGameFeaturePluginUninstallComplete](API\Plugins\GameFeatures\FGameFeaturePluginUninstallCompl-) & CompleteDelegate )


module: GameFeatures

code: void UninstallGameFeaturePlugin ( const [FString](API\Runtime\Core\Containers\FString) & PluginURL )


code: static void UnloadGameFeatureData ( const [UGameFeatureData](API\Plugins\GameFeatures\UGameFeatureData) * GameFeatureToUnload )


description: Unloads the specified game feature plugin.

code: void UnloadGameFeaturePlugin ( const [FString](API\Runtime\Core\Containers\FString) & PluginURL, bool bKeepRegistered )


code: void UnloadGameFeaturePlugin ( const [FString](API\Runtime\Core\Containers\FString) & PluginURL, const [FGameFeaturePluginUnloadComplete](API\Plugins\GameFeatures\FGameFeaturePluginUnloadComplete) & CompleteDelegate, bool bKeepRegistered )


description: Changes the URL data of a game feature plugin. Useful to change any options data that is parsed from the URL such as settings flags

code: void UpdateGameFeaturePluginURL ( const [FString](API\Runtime\Core\Containers\FString) & NewPluginURL )


code: void UpdateGameFeaturePluginURL ( const [FString](API\Runtime\Core\Containers\FString) & NewPluginURL, const [FGameFeaturePluginUpdateURLComplete](API\Plugins\GameFeatures\FGameFeaturePluginUpdateURLCompl-) & CompleteDelegate )


description: Returns true if the specified (fully qualified) path is a game feature plugin.

code: bool IsValidGameFeaturePlugin ( const [FString](API\Runtime\Core\Containers\FString) & PluginDescriptorFilename ) const


className: UGameFeaturesSubsystem

description: The manager subsystem for game features

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UGameFeaturesSubsystem : public [UEngineSubsystem](API\Runtime\Engine\Subsystems\UEngineSubsystem)


className: LoadStateClient

description: State/Bundle to always load on clients

code: static const [FName](API\Runtime\Core\UObject\FName) LoadStateClient;


className: LoadStateServer

description: State/Bundle to always load on dedicated server

code: static const [FName](API\Runtime\Core\UObject\FName) LoadStateServer;


code: UGameFeaturesSubsystemSettings()


className: UGameFeaturesSubsystemSettings

description: Settings for the Game Features framework

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Game, defaultconfig, Meta=(DisplayName="Game Features")) class UGameFeaturesSubsystemSettings : public [UDeveloperSettings](API\Runtime\DeveloperSettings\Engine\UDeveloperSettings)

AdditionalPluginMetadataKeys

type: TArray<FString...

description: List of metadata (additional keys) to try parsing from the .uplugin to provide toFGameFeaturePluginDetails

DisabledPlugins

description: List of plugins that are forcibly disabled (e.g., via a hotfix)

EnabledPlugins

description: List of plugins that are forcibly enabled (e.g., via a hotfix)

GameFeaturesManagerClassName

type: FSoftClassPath

description: Name of a singleton class to spawn as the game feature project policy.


className: UGameFeatureStateChangeObserver

code: class UGameFeatureStateChangeObserver : public [UInterface](API\Runtime\CoreUObject\UObject\UInterface)


description: Entry point for your commandlet

code: virtual int32 Main ( const [FString](API\Runtime\Core\Containers\FString) & Params )


className: bEnableBasicHUD

module: GameplayAbilities

code: static bool bEnableBasicHUD = false;


className: DrawDebugDelegateHandle


description: Main HUD update loop

code: void DrawDebugHUD ( [UCanvas](API\Runtime\Engine\Engine\UCanvas) * Canvas, [APlayerController](API\Runtime\Engine\GameFramework\APlayerController) * PC )


className: HUDClass

code: static [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AAbilitySystemDebugHUD](API\Plugins\GameplayAbilities\AAbilitySystemDebugHUD) > HUDClass = AAbilitySystemDebugHUD::StaticClass();


description: Notifies the AbilitySystemDebugHUD that an extension has been enabled/disabled This will create the HUD if it did not exist and there are any extensions enabled or destroy the HUD if it did exist and there are no extensions enabled

code: static void NotifyExtensionEnableChanged ( [UWorld](API\Runtime\Engine\Engine\UWorld) * InWorld )


description: Returns whether debug information should be drawn for a given actor

code: virtual bool ShouldDisplayDebugForActor ( [UCanvas](API\Runtime\Engine\Engine\UCanvas) * InCanvas, const [AActor](API\Runtime\Engine\GameFramework\AActor) * Actor, const FVector & CameraPosition, const FVector & CameraDir ) const


description: Replaces the AbilitySystemDebugHUD with a user class NOTE: Only one AbilitySystemDebugHUD class can be active at a time.

code: static void RegisterHUDClass ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AAbilitySystemDebugHUD](API\Plugins\GameplayAbilities\AAbilitySystemDebugHUD) > InHUDClass )


code: static void ToggleBasicHUD ( const [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Args, [UWorld](API\Runtime\Engine\Engine\UWorld) * World )


code: AAbilitySystemDebugHUD ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UGameFeatureVersePathMapperCommandlet


className: AAbilitySystemDebugHUD

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class AAbilitySystemDebugHUD : public [AHUD](API\Runtime\Engine\GameFramework\AHUD)


className: AbilitySystemComponentName


description: Returns the ability system component to use for this actor. It may live on another actor, such as a Pawn using the PlayerState's component

code: virtual [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * GetAbilitySystemComponent() const


description: Returns AbilitySystemComponent subobject


description: Allow actors to initialize themselves on the C++ side after all of their components have been initialized, only called during gameplay

code: virtual void PostInitializeComponents()


code: AAbilitySystemTestPawn ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: AAbilitySystemTestPawn

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Blueprintable, BlueprintType, NotPlaceable) class AAbilitySystemTestPawn : public [ADefaultPawn](API\Runtime\Engine\GameFramework\ADefaultPawn), public [IGameplayCueInterface](API\Plugins\GameplayAbilities\IGameplayCueInterface), public [IAbilitySystemInterface](API\Plugins\GameplayAbilities\IAbilitySystemInterface)


description: Overridable function called whenever this actor is being removed from a level

code: virtual void EndPlay ( const [EEndPlayReason::Type](API\Runtime\Engine\Engine\EEndPlayReason__Type) EndPlayReason )


description: Initialize and begin targeting logic

code: virtual void StartTargeting ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * Ability )


code: AGameplayAbilityTargetActor_ActorPlacement ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


ActorVisualizationReticle

type: TWeakObjectPtr<...

description: Visualization for the intended location of the placed actor.

PlacedActorClass

type: TObjectPtr<UCl...

description: Actor we intend to place.

PlacedActorMaterial

type: TObjectPtr<UMa...

description: Override Material 0 on our placed actor's meshes with this material for visualization.


code: virtual [FHitResult](API\Runtime\Engine\Engine\FHitResult) PerformTrace ( [AActor](API\Runtime\Engine\GameFramework\AActor) * InSourceActor )


code: AGameplayAbilityTargetActor_SingleLineTrace ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Returns CollisionComponent subobject


code: void InitializeReticleVisualizationInformation ( [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) * InTargetingActor, [AActor](API\Runtime\Engine\GameFramework\AActor) * VisualizationActor, [UMaterialInterface](API\Runtime\Engine\Materials\UMaterialInterface) * VisualizationMaterial )


code: AGameplayAbilityWorldReticle_ActorVisualization ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: This is a dummy reticle for internal use by visualization placement tasks. It builds a custom visual model of the visualization being placed.

VisualizationComponents

type: TArray<TObject...


description: Outside code is saying 'stop everything and just forget about it'

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() virtual void CancelTargeting()


description: Requesting targeting data, but not necessarily stopping/destroying the task. Useful for external target data requests.


description: Outside code is saying 'stop and just give me what you have.' Returns true if the ability accepts this and can be forgotten.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() virtual void ConfirmTargeting()


description:
Checks to see if this actor is relevant for a specific network connection
bool - true if this actor is network relevant to the client associated with RealViewer

code: virtual bool IsNetRelevantFor ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * RealViewer, const [AActor](API\Runtime\Engine\GameFramework\AActor) * ViewTarget, const FVector & SrcLocation ) const


description: Replicated target data was received from a client. Possibly sanitize/verify. return true if data is good and we should broadcast it as valid data.

code: virtual bool OnReplicatedTargetDataReceived ( [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & Data ) const


code: virtual bool ShouldProduceTargetData() const


code: AGameplayAbilityTargetActor ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: AGameplayAbilityTargetActor

description: WARNING: These actors are spawned once per ability activation and in their default form are not very efficient For most games you will need to subclass and heavily modify this actor, or you will want to implement similar functions in a game-specific actor or blueprint to avoid actor spawn costs This class is not well tested by internal games, but it is a useful class to look at to learn how target replication occurs

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Blueprintable, Abstract, NotPlaceable) class AGameplayAbilityTargetActor : public [AActor](API\Runtime\Engine\GameFramework\AActor)

bDebug

type: bool

description: Draw the debug information (if applicable) for this targeting actor.

CanceledDelegate

type: FAbilityTargetD...

Filter

type: FGameplayTarget...

GenericCancelHandle

type: FDelegateHandle

GenericDelegateBoundASC

type: TObjectPtr<UAb...

OwningAbility

type: TObjectPtr<UGa...

PrimaryPC

type: TObjectPtr<APl...

ReticleClass

type: TSubclassOf<AG...

description: Reticle that will appear on top of acquired targets.

ReticleParams

type: FWorldReticlePa...

description: Parameters for world reticle. Usage of these parameters is dependent on the reticle.

ShouldProduceTargetDataOnServer

description: The TargetData this class produces can be entirely generated on the server.

SourceActor

type: TObjectPtr<AAc...

StartLocation

type: FGameplayAbilit...

description: Describes where the targeting action starts, usually the player character or a socket on the player character.


code: bool AdjustCollisionResultForShape ( const FVector OriginalStartPoint, const FVector OriginalEndPoint, const [FCollisionQueryParams](API\Runtime\Engine\FCollisionQueryParams) Params, [FHitResult](API\Runtime\Engine\Engine\FHitResult) & OutHitResult ) const


description: Initialize and begin targeting logic


code: AGameplayAbilityTargetActor_GroundTrace ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


CollisionHeight

type: float

description: Height for a capsule. Implicitly indicates a capsule is desired if this is greater than zero.

CollisionRadius

description: Radius for a sphere or capsule.

CollisionShape

type: FCollisionShape


code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) MakeTargetData ( const [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) >> & Actors, const FVector & Origin ) const


code: [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) > > PerformOverlap ( const FVector & Origin )


description: Selects everything within a given radius of the source actor.

Radius

description: Radius of target acquisition around the ability's start location.


code: void AimWithPlayerController ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * InSourceActor, [FCollisionQueryParams](API\Runtime\Engine\FCollisionQueryParams) Params, const FVector & TraceStart, FVector & OutTraceEnd, bool bIgnorePitch ) const


code: static bool ClipCameraRayToAbilityRange ( FVector CameraLocation, FVector CameraDirection, FVector AbilityCenter, float AbilityRange, FVector & ClippedPosition )


code: AGameplayAbilityTargetActor_Radius ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Overridable function called whenever this actor is being removed from a level

code: virtual void EndPlay ( const [EEndPlayReason::Type](API\Runtime\Engine\Engine\EEndPlayReason__Type) EndPlayReason )


description: Traces as normal, but will manually filter all hit actors

code: static void LineTraceWithFilter ( [FHitResult](API\Runtime\Engine\Engine\FHitResult) & OutHitResult, const [UWorld](API\Runtime\Engine\Engine\UWorld) * World, const [FGameplayTargetDataFilterHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayTargetDataFilterHandle) FilterHandle, const FVector & Start, const FVector & End, [FName](API\Runtime\Core\UObject\FName) ProfileName, const [FCollisionQueryParams](API\Runtime\Engine\FCollisionQueryParams) Params )


code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) MakeTargetData ( const [FHitResult](API\Runtime\Engine\Engine\FHitResult) & HitResult ) const


code: virtual [FHitResult](API\Runtime\Engine\Engine\FHitResult) PerformTrace ( [AActor](API\Runtime\Engine\GameFramework\AActor) * InSourceActor )


description: Sweeps as normal, but will manually filter all hit actors

code: static void SweepWithFilter ( [FHitResult](API\Runtime\Engine\Engine\FHitResult) & OutHitResult, const [UWorld](API\Runtime\Engine\Engine\UWorld) * World, const [FGameplayTargetDataFilterHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayTargetDataFilterHandle) FilterHandle, const FVector & Start, const FVector & End, const FQuat & Rotation, const [FCollisionShape](API\Runtime\PhysicsCore\FCollisionShape) CollisionShape, [FName](API\Runtime\Core\UObject\FName) ProfileName, const [FCollisionQueryParams](API\Runtime\Engine\FCollisionQueryParams) Params )


description: 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.

code: virtual void Tick ( float DeltaSeconds )


code: AGameplayAbilityTargetActor_Trace ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Intermediate base class for all line-trace type targeting actors.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, Blueprintable, NotPlaceable, Config=Game) class AGameplayAbilityTargetActor_Trace : public [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor)

bTraceAffectsAimPitch

description: Does the trace affect the aiming pitch.

ReticleActor

type: TWeakObjectPtr<...

TraceProfile

type: FCollisionProfi...


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=Reticle) void FaceTowardSource ( bool bFaceIn2D )


code: virtual bool IsNetRelevantFor ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * RealViewer, const [AActor](API\Runtime\Engine\GameFramework\AActor) * ViewTarget, const FVector & SrcLocation ) const


code: void InitializeReticle ( [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) * InTargetingActor, [APlayerController](API\Runtime\Engine\GameFramework\APlayerController) * PlayerController, [FWorldReticleParameters](API\Plugins\GameplayAbilities\Abilities\FWorldReticleParameters) InParameters )


description: Called whenever bIsTargetValid changes value.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category=Reticle) void OnValidTargetChanged ( bool bNewValue )


description: Called whenever bIsTargetAnActor changes value.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category=Reticle) void OnTargetingAnActor ( bool bNewValue )


code: void SetIsTargetValid ( bool bNewValue )


code: void SetIsTargetAnActor ( bool bNewValue )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category=Reticle) void SetReticleMaterialParamFloat ( [FName](API\Runtime\Core\UObject\FName) ParamName, float value )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category=Reticle) void SetReticleMaterialParamVector ( [FName](API\Runtime\Core\UObject\FName) ParamName, FVector value )


code: AGameplayAbilityWorldReticle ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: AGameplayAbilityWorldReticle

description: Reticles allow targeting to be visualized. Tasks can spawn these. Artists/designers can create BPs for these.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Blueprintable, NotPlaceable) class AGameplayAbilityWorldReticle : public [AActor](API\Runtime\Engine\GameFramework\AActor)

bFaceOwnerFlat

description: Makes the reticle's default owner-facing behavior operate in 2D (flat) instead of 3D (pitched).

bIsTargetAnActor

description: This indicates whether or not the targeting reticle is pointed at an actor. Defaults to false.

bIsTargetValid

description: This indicates whether or not the targeting actor considers the current target to be valid.

bSnapToTargetedActor

description: If the target is an actor snap to it's location.

PrimaryPC

description: This is used in the process of determining whether we should replicate to a specific client.

TargetingActor

type: TObjectPtr<AGa...

description: In the future, we may want to grab things like sockets off of this.


className: FAsyncWaitGameplayTagQueryDelegate


description: Cancel an asynchronous action, this attempts to cancel any lower level processes and also prevents delegates from being fired

code: virtual void Cancel()


description: Explicitly end the action, will disable any callbacks and allow action to be destroyed

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Async") virtual void EndAction()


description: Returns the ability system component this action is bound to

code: virtual [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * GetAbilitySystemComponent() const


description: Sets the bound component by searching actor for one

code: virtual void SetAbilityActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * InActor )


description: Sets the bound component

code: virtual void SetAbilitySystemComponent ( [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * InAbilitySystemComponent )


description: This should be called prior to broadcasting delegates back into the event graph, this ensures the action and ability system component are still valid

code: virtual bool ShouldBroadcastDelegates() const


className: UAbilityAsync

description: AbilityAsync is a base class for ability-specific BlueprintAsyncActions. These are similar to ability tasks, but they can be executed from any blueprint like an actor and are not tied to a specific ability lifespan.Bydefault these actions are only kept alive by the blueprint graph that spawns them and will eventually be destroyed if the graph instance is deleted or spawns a replacement. EndAction should be called when a one-time action has succeeded or failed, but for longer-lived actions with multiple triggers it can be called from blueprints.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, Meta=(ExposedAsyncProxy=AsyncAction)) class UAbilityAsync : public [UCancellableAsyncAction](API\Runtime\Engine\Engine\UCancellableAsyncAction)


description: Called to trigger the action once the delegates have been bound

code: virtual void Activate()


code: virtual void EndAction()


className: FOnAppliedDelegate

code: class FOnAppliedDelegate


code: void OnApplyGameplayEffectCallback ( [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * Target, const [FGameplayEffectSpec](API\Plugins\GameplayAbilities\FGameplayEffectSpec) & SpecApplied, [FActiveGameplayEffectHandle](API\Plugins\GameplayAbilities\FActiveGameplayEffectHandle) ActiveHandle )


description: Wait until a GameplayEffect is applied to a target actor If TriggerOnce is true, this action will only activate one time. Otherwise it will return every time a GE is applied that meets the requirements over the life of the ability If used in an ability graph, this async action will wait even after activation ends. It's recommended to use WaitGameplayEffectApplied instead.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Async", Meta=(DefaultToSelf="TargetActor", BlueprintInternalUseOnly="TRUE")) static [UAbilityAsync_WaitGameplayEffectApplied](API\Plugins\GameplayAbilities\Abilities\Async\UAbilityAsync_Wa-) * WaitGameplayEffectAppliedToActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, const [FGameplayTargetDataFilterHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayTargetDataFilterHandle) SourceFilter, [FGameplayTagRequirements](API\Plugins\GameplayAbilities\FGameplayTagRequirements) SourceTagRequirements, [FGameplayTagRequirements](API\Plugins\GameplayAbilities\FGameplayTagRequirements) TargetTagRequirements, bool TriggerOnce, bool ListenForPeriodicEffect )


description: This action listens for specific gameplay effect applications based off specified tags. Effects themselves are not replicated; rather the tags they grant, the attributes they change, and the gameplay cues they emit are replicated. This will only listen for local server or predicted client effects.

OnApplied

type: FOnAppliedDeleg...

SourceTagRequirements

type: FGameplayTagReq...


code: virtual void BroadcastDelegate()


description: Wait until the specified gameplay tag is Removed from Target Actor's ability component If the tag is not present when this task is started, it will immediately broadcast the Removed event. It will keep listening as long as OnlyTriggerOnce = false. If used in an ability graph, this async action will wait even after activation ends. It's recommended to use WaitGameplayTagRemove instead.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(DefaultToSelf="TargetActor", BlueprintInternalUseOnly="TRUE")) static [UAbilityAsync_WaitGameplayTagRemoved](API\Plugins\GameplayAbilities\Abilities\Async\UAbilityAsync_Wa-_1) * WaitGameplayTagRemoveFromActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) Tag, bool OnlyTriggerOnce )


className: FAsyncWaitAttributeChangedDelegate


code: void OnAttributeChanged ( const [FOnAttributeChangeData](API\Plugins\GameplayAbilities\FOnAttributeChangeData) & ChangeData )


description: Wait until the specified gameplay attribute is changed on a target ability system component It will keep listening as long as OnlyTriggerOnce = false If used in an ability graph, this async action will wait even after activation ends. It's recommended to use WaitForAttributeChange instead.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(DefaultToSelf="TargetActor", BlueprintInternalUseOnly="TRUE")) static [UAbilityAsync_WaitAttributeChanged](API\Plugins\GameplayAbilities\Abilities\Async\UAbilityAsync_WaitAttributeChang-) * WaitForAttributeChanged ( [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, [FGameplayAttribute](API\Plugins\GameplayAbilities\FGameplayAttribute) Attribute, bool OnlyTriggerOnce )


Attribute

type: FGameplayAttrib...

Changed

type: FAsyncWaitAttri...

OnlyTriggerOnce

type: bool


className: FEventReceivedDelegate

code: class FEventReceivedDelegate


code: virtual void GameplayEventCallback ( const [FGameplayEventData](API\Plugins\GameplayAbilities\Abilities\FGameplayEventData) * Payload )


code: virtual void GameplayEventContainerCallback ( [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) MatchingTag, const [FGameplayEventData](API\Plugins\GameplayAbilities\Abilities\FGameplayEventData) * Payload )


description: Wait until the specified gameplay tag event is triggered on a target ability system component It will keep listening as long as OnlyTriggerOnce = false If OnlyMatchExact = false it will trigger for nested tags If used in an ability graph, this async action will wait even after activation ends. It's recommended to use WaitGameplayEvent instead.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Async", Meta=(DefaultToSelf="TargetActor", BlueprintInternalUseOnly="TRUE")) static [UAbilityAsync_WaitGameplayEvent](API\Plugins\GameplayAbilities\Abilities\Async\UAbilityAsync_WaitGameplayEvent) * WaitGameplayEventToActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) EventTag, bool OnlyTriggerOnce, bool OnlyMatchExact )


EventReceived

type: FEventReceivedD...

MyHandle

type: FDelegateHandle

Tag

type: FGameplayTag


className: FAsyncWaitGameplayTagDelegate

code: class FAsyncWaitGameplayTagDelegate


code: virtual void GameplayTagCallback ( const [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) Tag, int32 NewCount )


description: Wait until the specified gameplay tag is Added to Target Actor's ability component If the tag is already present when this task is started, it will immediately broadcast the Added event. It will keep listening as long as OnlyTriggerOnce = false. If used in an ability graph, this async action will wait even after activation ends. It's recommended to use WaitGameplayTagAdd instead.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(DefaultToSelf="TargetActor", BlueprintInternalUseOnly="TRUE")) static [UAbilityAsync_WaitGameplayTagAdded](API\Plugins\GameplayAbilities\Abilities\Async\UAbilityAsync_WaitGameplayTagAdd-) * WaitGameplayTagAddToActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) Tag, bool OnlyTriggerOnce )


description: Activates this AbilityAsync node.


description: Ends this AbilityAsync node, unregistering all tag changed delagates.


description: Returns if this AbilityAsync node should currently broadcast it's delegates.

code: virtual bool ShouldBroadcastDelegates() const


description: This will update the tags in the TargetTags container to reflect that tags that are on the target ASC.

code: void UpdateTargetTags ( const [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) Tag, int32 NewCount )


description: This will evaluate the TargetTags using the given TagQuery, executing the Trigger delegate if needed.

code: void EvaluateTagQuery()


description: Wait until the given gameplay tag query has become true or false, based on TriggerCondition, looking at the target actors ASC. If the the tag query already satisfies the TriggerCondition when this task is started, it will immediately broadcast the Triggered event. It will keep listening as long as bOnlyTriggerOnce = false. If used in an ability graph, this async action will wait even after activation ends. It's recommended to use WaitGameplayTagQuery instead.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(DefaultToSelf="TargetActor", BlueprintInternalUseOnly="TRUE")) static [UAbilityAsync_WaitGameplayTagQuery](API\Plugins\GameplayAbilities\Abilities\Async\UAbilityAsync_WaitGameplayTagQue-) * WaitGameplayTagQueryOnActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, const [FGameplayTagQuery](API\Runtime\GameplayTags\FGameplayTagQuery) TagQuery, const [EWaitGameplayTagQueryTriggerCondition](API\Plugins\GameplayAbilities\Abilities\Tasks\EWaitGameplayTag-) TriggerCondition, const bool bOnlyTriggerOnce )


description: This class defines an async node to wait on a gameplay tag query.

bOnlyTriggerOnce

description: This indicates if this node should only trigger once, or any number of times.

bQueryState

description: This was the last result of evaluating the TagQuery.

bRegisteredCallbacks

description: Indicates if the callbacks for tag changes have been registered.

TagHandleMap

type: TMap<FGameplay...

description: This is the handles to the tag changed delegate for each gameplay tag in the TagQuery.

TagQuery

type: FGameplayTagQue...

description: This is the tag query to evaluate for triggering this node.

TargetTags

type: FGameplayTagCon...

description: This is the tag container of the targets the target ASC currently has.

TriggerCondition

type: EWaitGameplayTa...

description: This indicates when to Trigger the Triggered output for this node.

Triggered

type: FAsyncWaitGamep...

description: This delegate will be triggered when the trigger condition has been met.


description: What type of location calculation to use when an ability asks for our transform

code: namespace EGameplayAbilityTargetingLocationType { enum Type { LiteralTransform, ActorTransform, SocketTransform, } }


description: These are generic, nonpayload carrying events that are replicated between the client and server

code: namespace EAbilityGenericReplicatedEvent { enum Type { GenericConfirm = 0, GenericCancel, InputPressed, InputReleased, GenericSignalFromClient, GenericSignalFromServer, GameCustom1, GameCustom2, GameCustom3, GameCustom4, GameCustom5, GameCustom6, MAX, } }


description: How the ability is instanced when executed. This limits what an ability can do in its implementation. For example, a NonInstanced Ability cannot have state. It is probably unsafe for an InstancedPerActor ability to have latent actions, etc.

code: namespace EGameplayAbilityInstancingPolicy { enum Type { NonInstanced, InstancedPerActor, InstancedPerExecution, } }


description: What protections does this ability have? Should the client be allowed to request changes to the execution of the ability?

code: namespace EGameplayAbilityNetSecurityPolicy { enum Type { ClientOrServer, ServerOnlyExecution, ServerOnlyTermination, ServerOnly, } }


description: Where does an ability execute on the network. Does a client "ask and predict", "ask and wait", "don't ask (just do it)"

code: namespace EGameplayAbilityNetExecutionPolicy { enum Type { LocalPredicted, LocalOnly, ServerInitiated, ServerOnly, } }


description: How an ability replicates state/events to everyone on the network

code: namespace EGameplayAbilityReplicationPolicy { enum Type { ReplicateNo, ReplicateYes, } }


description: Defines what type of trigger will activate the ability, paired to a tag

code: namespace EGameplayAbilityTriggerSource { enum Type { GameplayEvent, OwnedTagAdded, OwnedTagPresent, } }


description: Describes how the targeting information is confirmed

code: namespace EGameplayTargetingConfirmation { enum Type { Instant, UserConfirmed, Custom, CustomMulti, } }


className: ERepAnimPositionMethod

description: Enum used by the Ability Rep Anim Montage struct to rep the quantized position or the current section id

code: enum ERepAnimPositionMethod { Position = 0, CurrentSectionId = 1, }


description: Set rather it is possible to target self

code: namespace ETargetDataFilterSelf { enum Type { TDFS_Any, TDFS_NoSelf, TDFS_NoOthers, } }


code: FAbilityEndedData ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * InAbility, [FGameplayAbilitySpecHandle](API\Plugins\GameplayAbilities\FGameplayAbilitySpecHandle) InHandle, bool bInReplicateEndAbility, bool bInWasCancelled )


className: FAbilityEndedData

description: Ability Ended Data

AbilitySpecHandle

type: FGameplayAbilit...

description: Specific ability spec that ended

AbilityThatEnded

type: TObjectPtr<UGa...

description: Ability that ended, normally instance but could be CDO

bReplicateEndAbility

description: Rather to replicate the ability to ending

bWasCancelled

description: True if this was cancelled deliberately, false if it ended normally


className: FAbilityReplicatedData

description: Payload for generic replicated events

code: struct FAbilityReplicatedData

bTriggered

description: Event has triggered

Delegate

type: FSimpleMulticas...

description: Delegate that will be called on replication

VectorPayload

description: Optional Vector payload for event


code: FAbilityReplicatedData()


description: Resets any cached data, leaves delegates up

code: void Reset()


description: Resets cached data and clears delegates.

code: void ResetAll()


code: FAbilityReplicatedDataCache()


code: virtual ~FAbilityReplicatedDataCache()


className: FAbilityReplicatedDataCache

description: Struct defining the cached data for a specific gameplay ability. This data is generally synchronized client->server in a network game.

code: struct FAbilityReplicatedDataCache

ApplicationTag

description: What tag to pass through when doing an application

bTargetCancelled

description: True if we've been positively cancelled our targeting, false if we don't know

bTargetConfirmed

description: True if we've been positively confirmed our targeting, false if we don't know

GenericEvents

type: FAbilityReplica...

description: Generic events that contain no payload data

PredictionKey

type: FPredictionKey

description: Prediction Key when this data was set

TargetCancelledDelegate

description: Delegate to call whenever this is confirmed (without target data)

TargetData

description: What elements this activation is targeting

TargetSetDelegate

type: FAbilityTargetD...

description: Delegate to call whenever this is modified


description: Used for cleaning up predicted data on network clients

code: typedef TMulticastDelegate_NoParams< void > FAbilitySystemComponentPredictionKeyClear


className: FAbilityTargetDataSetDelegate

description: Generic callback for returning when target data is available

code: typedef TMulticastDelegate_TwoParams< void, const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) &, [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag) > FAbilityTargetDataSetDelegate


className: FAbilityTargetData

code: typedef TMulticastDelegate_OneParam< void, const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & > FAbilityTargetData


code: FAbilityTaskDebugMessage()


className: FAbilityTaskDebugMessage

description: Debug message emitted by ability tasks

Message

type: FString


className: FAbilityTriggerData

description: Structure that defines how an ability will be triggered by external events

TriggerSource

type: TEnumAsByte<EG...

description: The type of trigger to respond to

TriggerTag

description: The tag to respond to


className: FAttributeDefaults

description: Used to initialize default values for attributes

Attributes

type: TSubclassOf<UA...

DefaultStartingTable

type: TObjectPtr<UDa...


code: bool operator== ( const [FGameplayAbilitySpecHandleAndPredictionKey](API\Plugins\GameplayAbilities\Abilities\FGameplayAbility-) & Other ) const


code: bool operator!= ( const [FGameplayAbilitySpecHandleAndPredictionKey](API\Plugins\GameplayAbilities\Abilities\FGameplayAbility-) & Other ) const


code: FGameplayAbilitySpecHandleAndPredictionKey ( const [FGameplayAbilitySpecHandle](API\Plugins\GameplayAbilities\FGameplayAbilitySpecHandle) & HandleRef, const [FPredictionKey](API\Plugins\GameplayAbilities\FPredictionKey) & PredictionKeyAtCreationRef )


description: Used as a key for storing internal ability data


description: Returns all actors targeted, almost always overridden

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) > > GetActors() const


description: Override to return a target/end point

code: virtual FVector GetEndPoint() const


description: Override to return a hit result

code: virtual const [FHitResult](API\Runtime\Engine\Engine\FHitResult) * GetHitResult() const


description: Override to return an origin point, which may be derived from other data

code: virtual FTransform GetOrigin() const


description: Returns the serialization data, must always be overridden

code: virtual [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * GetScriptStruct() const


description: Override to true if GetEndPoint/Transform will work

code: virtual bool HasEndPoint() const


description: Return true in subclasses if GetHitResult will work

code: virtual bool HasHitResult() const


description: Override to true if GetOrigin will work

code: virtual bool HasOrigin() const


code: bool NetSerialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar, class [UPackageMap](API\Runtime\CoreUObject\UObject\UPackageMap) * Map, bool & bOutSuccess )


code: virtual void ReplaceHitWith ( [AActor](API\Runtime\Engine\GameFramework\AActor) * NewHitActor, const [FHitResult](API\Runtime\Engine\Engine\FHitResult) * NewHitResult )


code: FGameplayAbilityTargetData_SingleTargetHit ( [FHitResult](API\Runtime\Engine\Engine\FHitResult) InHitResult )


description: Target data with a single hit result, data is packed into the hit result

bHitReplaced

type: bool

HitResult

type: FHitResult

description: Hit result that stores data


description: Clears out any actor info, both owner and avatar

code: virtual void ClearActorInfo()


description: Accessor to get the affected anim instance from the SkeletalMeshComponent

code: [UAnimInstance](API\Runtime\Engine\Animation\UAnimInstance) * GetAnimInstance() const


description: Initializes the info from an owning actor. Will set both owner and avatar

code: virtual void InitFromActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * OwnerActor, [AActor](API\Runtime\Engine\GameFramework\AActor) * AvatarActor, [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * InAbilitySystemComponent )


description: Returns true if this actor has a PlayerController that is locally controlled.

code: bool IsLocallyControlledPlayer() const


description: Returns true if this actor is locally controlled. Only true for players on the client that owns them (differs fromAPawn::IsLocallyControlledwhich requires a Controller)

code: bool IsLocallyControlled() const


description: Returns true if the owning actor has net authority

code: bool IsNetAuthority() const


description: Sets a new avatar actor, keeps same owner and ability system component

code: virtual void SetAvatarActor ( [AActor](API\Runtime\Engine\GameFramework\AActor) * AvatarActor )


code: virtual ~FGameplayAbilityActorInfo()


className: FGameplayAbilityActorInfo

description: Cached data associated with an Actor using an Ability. -Initialized from an AActor* in InitFromActor -Abilities use this to know what to actor upon. E.g., instead of being coupled to a specific actor class. -These are generally passed around as pointers to support polymorphism. -Projects can overrideUAbilitySystemGlobals::AllocAbilityActorInfoto override the default struct type that is created.

AbilitySystemComponent

type: TWeakObjectPtr<...

description: Ability System component associated with the owner actor, shouldn't be null

AffectedAnimInstanceTag

type: FName

description: The linked Anim Instance that this component will play montages in.

AnimInstance

description: Anim instance of the avatar actor. Often null

AvatarActor

description: The physical representation of the owner, used for targeting and animation.

MovementComponent

description: Movement component of the avatar actor. Often null

OwnerActor

description: The actor that owns the abilities, shouldn't be null

PlayerController

description: PlayerController associated with the owning actor. This will often be null!

SkeletalMeshComponent

description: Skeletal mesh of the avatar actor. Often null


className: FGameplayAbilityEndedDelegate

description: Notification delegate definition for when the gameplay ability ends

code: typedef TMulticastDelegate_OneParam< void, const [FAbilityEndedData](API\Plugins\GameplayAbilities\Abilities\FAbilityEndedData) & > FGameplayAbilityEndedDelegate


code: [FGameplayAbilityInputBinds](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityInputBinds) & operator= ( [FGameplayAbilityInputBinds](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityInputBinds) && )


code: [FGameplayAbilityInputBinds](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityInputBinds) & operator= ( const [FGameplayAbilityInputBinds](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityInputBinds) & )


code: PRAGMA_DISABLE_DEPRECATION_WARNINGS FGameplayAbilityInputBinds ( [FGameplayAbilityInputBinds](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityInputBinds) && )


code: FGameplayAbilityInputBinds ( const [FGameplayAbilityInputBinds](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityInputBinds) & )


description: Deprecated* Enum names are now represented by path names. Please use a version ofFGameplayAbilityInputBindsconstructor that acceptsFTopLevelAssetPath.

code: FGameplayAbilityInputBinds ( [FString](API\Runtime\Core\Containers\FString) InConfirmTargetCommand, [FString](API\Runtime\Core\Containers\FString) InCancelTargetCommand, [FString](API\Runtime\Core\Containers\FString) InEnumName, int32 InConfirmTargetInputID, int32 InCancelTargetInputID )


code: FGameplayAbilityInputBinds ( [FString](API\Runtime\Core\Containers\FString) InConfirmTargetCommand, [FString](API\Runtime\Core\Containers\FString) InCancelTargetCommand, [FTopLevelAssetPath](API\Runtime\CoreUObject\UObject\FTopLevelAssetPath) InEnumPathName, int32 InConfirmTargetInputID, int32 InCancelTargetInputID )


className: FGameplayAbilityInputBinds

description: Structure that tells AbilitySystemComponent what to bind to an InputComponent (see BindAbilityActivationToInputComponent)

code: struct FGameplayAbilityInputBinds

CancelTargetCommand

description: Defines command string that will be bound to Cancel Targeting

CancelTargetInputID

description: If >=0, Cancel is bound to an entry in the enum

ConfirmTargetCommand

description: Defines command string that will be bound to Confirm Targeting

ConfirmTargetInputID

description: If >=0, Confirm is bound to an entry in the enum

EnumPathName

type: FTopLevelAssetP...

description: Returns enum to use for ability binds.


code: FGameplayAbilityLocalAnimMontage()


className: FGameplayAbilityLocalAnimMontage

description: Data about montages that were played locally (all montages in case of server. predictive montages in case of client). Never replicated directly.

AnimatingAbility

description: The ability, if any, that instigated this montage

AnimMontage

type: TObjectPtr<UAn...

description: What montage is being played

PlayInstanceId

description: ID tied to a particular play of a montage, used to trigger replication when the same montage is played multiple times.

PredictionKey

description: Prediction key that started the montage play


code: bool NetSerialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar, class [UPackageMap](API\Runtime\CoreUObject\UObject\UPackageMap) * Map, bool & bOutSuccess )


code: void SetRepAnimPositionMethod ( [ERepAnimPositionMethod](API\Plugins\GameplayAbilities\Abilities\ERepAnimPositionMethod) InMethod )


code: FGameplayAbilityRepAnimMontage()


className: FGameplayAbilityRepAnimMontage

description: Data about montages that is replicated to simulated clients

AnimMontage

description: AnimMontage ref

BlendTime

type: float

description: Montage current blend time

bRepPosition

type: uint8:  1

description: Flag indicating we should serialize the position or the current section id

bSkipPlayRate

description: Stops PlayRate from replicating to save bandwidth. PlayRate will be assumed to be 1.f.

IsStopped

description: Bit set when montage has been stopped.

NextSectionID

description: NextSectionID

PlayInstanceId

description: ID incremented every time a montage is played, used to trigger replication when the same montage is played multiple times.

PlayRate

description: Play Rate

Position

description: Montage position

SectionIdToPlay

description: The current section Id used by the montage. Will only be valid if bRepPosition is false

SkipPositionCorrection

description: Stops montage position from replicating at all to save bandwidth


code: [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FAbilityReplicatedDataCache](API\Plugins\GameplayAbilities\Abilities\FAbilityReplicatedDataCache) > FindOrAdd ( const [FGameplayAbilitySpecHandleAndPredictionKey](API\Plugins\GameplayAbilities\Abilities\FGameplayAbility-) & Key )


code: [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< [FAbilityReplicatedDataCache](API\Plugins\GameplayAbilities\Abilities\FAbilityReplicatedDataCache) > Find ( const [FGameplayAbilitySpecHandleAndPredictionKey](API\Plugins\GameplayAbilities\Abilities\FGameplayAbility-) & Key ) const


code: void Remove ( const [FGameplayAbilitySpecHandleAndPredictionKey](API\Plugins\GameplayAbilities\Abilities\FGameplayAbility-) & Key )


className: FGameplayAbilityReplicatedDataContainer

description: TheFAbilityReplicatedDataCacheinstances are recycled rather than allocated each time via ::FreeData.


description: Modifies the context and adds this target data to the target data handle stored within

code: virtual void AddTargetDataToContext ( [FGameplayEffectContextHandle](API\Plugins\GameplayAbilities\FGameplayEffectContextHandle) & Context, bool bIncludeActorArray ) const


description: Applies a gameplay effect to each target represented

code: [TArray](API\Runtime\Core\Containers\TArray)< [FActiveGameplayEffectHandle](API\Plugins\GameplayAbilities\FActiveGameplayEffectHandle) > ApplyGameplayEffect ( const [UGameplayEffect](API\Plugins\GameplayAbilities\UGameplayEffect) * GameplayEffect, const [FGameplayEffectContextHandle](API\Plugins\GameplayAbilities\FGameplayEffectContextHandle) & InEffectContext, float Level, [FPredictionKey](API\Plugins\GameplayAbilities\FPredictionKey) PredictionKey )


description: Applies a previously created gameplay effect spec to each target represented

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FActiveGameplayEffectHandle](API\Plugins\GameplayAbilities\FActiveGameplayEffectHandle) > ApplyGameplayEffectSpec ( [FGameplayEffectSpec](API\Plugins\GameplayAbilities\FGameplayEffectSpec) & Spec, [FPredictionKey](API\Plugins\GameplayAbilities\FPredictionKey) PredictionKey )


description: Returns all actors targeted, almost always overridden

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) > > GetActors() const


description: Override to return a transform, default will create one from just the location

code: virtual FTransform GetEndPointTransform() const


description: Override to return a target/end point

code: virtual FVector GetEndPoint() const


description: Override to return a hit result

code: virtual const [FHitResult](API\Runtime\Engine\Engine\FHitResult) * GetHitResult() const


description: Override to return an origin point, which may be derived from other data

code: virtual FTransform GetOrigin() const


description: Returns the serialization data, must always be overridden

code: virtual [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * GetScriptStruct() const


description: Override to true if GetEndPoint/Transform will work

code: virtual bool HasEndPoint() const


description: Return true in subclasses if GetHitResult will work

code: virtual bool HasHitResult() const


description: Override to true if GetOrigin will work

code: virtual bool HasOrigin() const


description: See notes on delegate definition FOnTargetActorSwapped

code: virtual bool ShouldCheckForTargetActorSwap() const


code: virtual void ReplaceHitWith ( [AActor](API\Runtime\Engine\GameFramework\AActor) * NewHitActor, const [FHitResult](API\Runtime\Engine\Engine\FHitResult) * NewHitResult )


description: Returns a debug string representation

code: virtual [FString](API\Runtime\Core\Containers\FString) ToString() const


code: virtual ~FGameplayAbilityTargetData()


className: FGameplayAbilityTargetData

description: Maybe it is better to distinguish between actor list targeting vs positional targeting data? -AOE/aura type of targeting data blurs the line


description: Adds a new target data to handle, it must have been created with new

code: void Add ( [FGameplayAbilityTargetData](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetData) * DataPtr )


description: Returns data at index, or nullptr if invalid

code: const [FGameplayAbilityTargetData](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetData) * Get ( int32 Index ) const


description: Resets handle to have no targets

code: void Clear()


code: [FGameplayAbilityTargetData](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetData) * Get ( int32 Index )


description: Modify the actor list

code: virtual bool SetActors ( [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) >> NewActorArray )


description: Serialize for networking, handles polymorphism

code: bool NetSerialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar, class [UPackageMap](API\Runtime\CoreUObject\UObject\UPackageMap) * Map, bool & bOutSuccess )


description: Returns true if there are any valid targets

code: bool IsValid ( int32 Index ) const


description: Returns number of target data, not number of actors/targets as target data may contain multiple actors

code: int32 Num() const


code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & operator= ( [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) && Other )


description: Does a shallow copy of target data from one handle to another

code: void Append ( const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & OtherHandle )


code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & operator= ( const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & Other )


description: Comparison operator

code: bool operator== ( const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & Other ) const


code: FGameplayAbilityTargetDataHandle()


description: Comparison operator

code: bool operator!= ( const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & Other ) const


code: FGameplayAbilityTargetDataHandle ( [FGameplayAbilityTargetData](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetData) * DataPtr )


code: FGameplayAbilityTargetDataHandle ( const [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) & Other )


code: FGameplayAbilityTargetDataHandle ( [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) && Other )


className: FGameplayAbilityTargetDataHandle

description: -Replication by value -Pass by reference in blueprints -Polymophism in TargetData structure

Data

type: TArray<TShared...

description: Raw storage of target data, do not modify this directly


code: virtual FTransform GetOrigin() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) > > GetActors() const


description: Override to return a target/end point

code: virtual FVector GetEndPoint() const


code: virtual [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * GetScriptStruct() const


code: virtual bool HasEndPoint() const


description: Override to true if GetOrigin will work

code: virtual bool HasOrigin() const


code: bool NetSerialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar, class [UPackageMap](API\Runtime\CoreUObject\UObject\UPackageMap) * Map, bool & bOutSuccess )


description: Modify the actor list

code: virtual bool SetActors ( [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) >> NewActorArray )


description: Returns a debug string representation

code: virtual [FString](API\Runtime\Core\Containers\FString) ToString() const


description: Target data with a source location and a list of targeted actors, makes sense for AOE attacks

SourceLocation

type: FGameplayAbilit...

description: We could be selecting this group of actors from any type of location, so use a generic location type

TargetActorArray

type: TArray<TWeakOb...

description: Rather than targeting a single point, this type of targeting selects multiple actors.


description: Override to return a transform, default will create one from just the location

code: virtual FTransform GetEndPointTransform() const


description: Target data with just a source and target location in space

SourceLocation

description: Generic location data for source

TargetLocation

description: Generic location data for target


description: Initializes new target data and fills in with hit results

code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) MakeTargetDataHandleFromHitResult ( [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) > Ability, const [FHitResult](API\Runtime\Engine\Engine\FHitResult) & HitResult ) const


description: Converts internal format into a literal world space transform


code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) MakeTargetDataHandleFromHitResults ( [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) > Ability, const [TArray](API\Runtime\Core\Containers\TArray)< [FHitResult](API\Runtime\Engine\Engine\FHitResult) > & HitResults ) const


description: Optimized serialize function


description: Initializes new actor list target data, and sets this as the origin

code: [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) MakeTargetDataHandleFromActors ( const [TArray](API\Runtime\Core\Containers\TArray)< [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) >> & TargetActors, bool OneActorPerHandle ) const


code: void operator= ( const [FGameplayAbilityTargetingLocationInfo](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetingLocatio-) & Other )


code: FGameplayAbilityTargetingLocationInfo()


className: FGameplayAbilityTargetingLocationInfo

description: Structure that stores a location in one of several different formats

LiteralTransform

type: FTransform

description: A literal world transform can be used, if one has been calculated outside of the actor using the ability.

LocationType

description: Type of location used - will determine what data is transmitted over the network and what fields are used when calculating position.

SourceAbility

type: TObjectPtr<UGa...

description: Ability that will be using the targeting data

SourceActor

type: TObjectPtr<AAc...

description: A source actor is needed for Actor-based targeting, but not for Socket-based targeting.

SourceComponent

type: TObjectPtr<UMe...

description: Socket-based targeting requires a skeletal mesh component to check for the named socket.

SourceSocketName

description: If SourceComponent is valid, this is the name of the socket transform that will be used.


className: FGameplayEventData

description: Metadata for a tag-based Gameplay Event, that can activate other abilities or run ability-specific logic

ContextHandle

type: FGameplayEffect...

description: Polymorphic context information

EventMagnitude

description: The magnitude of the triggering event

EventTag

type: FGameplayTag

description: Tag of the event that triggered this

Instigator

type: TObjectPtr< con...

description: The instigator of the event

InstigatorTags

type: FGameplayTagCon...

description: Tags that the instigator has

OptionalObject

description: An optional ability-specific object to be passed though the event

description: A second optional ability-specific object to be passed though the event

Target

description: The target of the event

TargetData

description: The polymorphic target information for the event

TargetTags

description: Tags that the target has


className: FGameplayEventMulticastDelegate

description: Delegate for handling gameplay event data

code: typedef TMulticastDelegate_OneParam< void, const [FGameplayEventData](API\Plugins\GameplayAbilities\Abilities\FGameplayEventData) * > FGameplayEventMulticastDelegate


className: FGameplayEventTagMulticastDelegate

description: Delegate for handling gameplay event data, includes tag as the Event Data does not always have it filled out

code: typedef TMulticastDelegate_TwoParams< void, [FGameplayTag](API\Runtime\GameplayTags\FGameplayTag), const [FGameplayEventData](API\Plugins\GameplayAbilities\Abilities\FGameplayEventData) * > FGameplayEventTagMulticastDelegate


description: Returns true if the actor passes the filter and will be targeted

code: virtual bool FilterPassesForActor ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorToBeFiltered ) const


description: Initializes SelfActor

code: void InitializeFilterContext ( [AActor](API\Runtime\Engine\GameFramework\AActor) * FilterActor )


code: virtual ~FGameplayTargetDataFilter()


className: FGameplayTargetDataFilter

description: Simple actor target filter, games can subclass this

bReverseFilter

type: bool

description: Reverses the meaning of the filter, so it will exclude all actors that pass.

RequiredActorClass

type: TSubclassOf<AA...

description: Subclass actors must be to pass the filter.

SelfActor

description: Actor we're comparing against.

SelfFilter

type: TEnumAsByte<ET...

description: Filter based on whether or not this actor is "self."


code: bool FilterPassesForActor ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorToBeFiltered ) const


code: bool FilterPassesForActor ( const [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) > ActorToBeFiltered ) const


code: bool operator() ( const [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [AActor](API\Runtime\Engine\GameFramework\AActor) > ActorToBeFiltered ) const


code: bool operator() ( const [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorToBeFiltered ) const


className: FGameplayTargetDataFilterHandle

description: Polymorphic handle to filter structure that handles checking if actors should be targeted

Filter

type: TSharedPtr<FGa...


className: FGenericAbilityDelegate

description: Generic delegate for ability 'events'/notifies

code: typedef TMulticastDelegate_OneParam< void, [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * > FGenericAbilityDelegate


className: FOnGameplayAbilityCancelled

description: Notification delegate definition for when the gameplay ability is cancelled

code: typedef TMulticastDelegate_NoParams< void > FOnGameplayAbilityCancelled


className: FOnGameplayAbilityEnded

description: To support state or event replication, an ability must be instanced. This can be done with the InstancingPolicy property.Notification delegate definition for when the gameplay ability ends

code: typedef TMulticastDelegate_OneParam< void, [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * > FOnGameplayAbilityEnded


className: FOnGameplayAbilityStateEnded

description: Used to notify ability state tasks that a state is being ended

code: typedef TMulticastDelegate_OneParam< void, [FName](API\Runtime\Core\UObject\FName) > FOnGameplayAbilityStateEnded


className: FPostLockDelegate

description: Used to delay execution until we leave a critical section

code: typedef TBaseDelegate_NoParams< void > FPostLockDelegate


code: static bool IsLoggingEnabled()


className: LogEnablerCounter

code: static int32 LogEnablerCounter = 0;


code: FScopedCanActivateAbilityLogEnabler()


code: ~FScopedCanActivateAbilityLogEnabler()


className: FScopedCanActivateAbilityLogEnabler


code: FScopedServerAbilityRPCBatcher ( [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * InASC, [FGameplayAbilitySpecHandle](API\Plugins\GameplayAbilities\FGameplayAbilitySpecHandle) InAbilityHandle )


code: ~FScopedServerAbilityRPCBatcher()


className: FScopedServerAbilityRPCBatcher

description: Helper struct for defining ServerRPC batch windows. If null ASC is passed in, this becomes a noop.

code: struct FScopedServerAbilityRPCBatcher


description: To allow FindByKey etc.

code: bool operator== ( const [FGameplayAbilitySpecHandle](API\Plugins\GameplayAbilities\FGameplayAbilitySpecHandle) & InHandle ) const


code: FServerAbilityRPCBatch()


className: FServerAbilityRPCBatch

description: This struct holds state to batch server RPC calls: ServerTryActivateAbility, ServerSetReplicatedTargetData, ServerEndAbility.

PredictionKey

type: FPredictionKey

Started

description: Safety bool to make sure ServerTryActivate was called exactly one time in a batch


description: Use this so that we can't slip in new parameters without some actor knowing about it.

code: void Initialize ( FVector InAOEScale )


className: FWorldReticleParameters

AOEScale

type: FVector


className: EAbilityTaskNetSyncType

code: enum EAbilityTaskNetSyncType { BothWait, OnlyServerWait, OnlyClientWait, }


className: EAbilityTaskWaitState

description: This is a lot of steps but in general, AbilityTask_SpawnActor() gives a clear, minimal example. Latent tasks are waiting on something. This is to differeniate waiting on the user to do something vs waiting on the game to do something. Tasks start WaitingOnGame, and are set to WaitingOnUser when appropriate (see WaitTargetData, WaitIiputPress, etc)

code: enum EAbilityTaskWaitState { WaitingOnGame = 0x01, WaitingOnUser = 0x02, WaitingOnAvatar = 0x04, }


className: ERootMotionMoveToActorTargetOffsetType

code: enum ERootMotionMoveToActorTargetOffsetType { AlignFromTargetToSource = 0, AlignToTargetForward, AlignToWorldSpace, }


code: namespace EWaitAttributeChangeComparison { enum Type { None, GreaterThan, LessThan, GreaterThanOrEqualTo, LessThanOrEqualTo, NotEqualTo, ExactlyEqualTo, MAX, } }


className: EWaitGameplayTagQueryTriggerCondition

description: This enum defines the condition in which the wait gameplay tag query node will trigger.

code: enum EWaitGameplayTagQueryTriggerCondition { WhenTrue = 0, WhenFalse, }


code: bool operator() ( const [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask) > A ) const


className: FAbilityInstanceClassPredicate

code: struct FAbilityInstanceClassPredicate

TaskClass

type: TSubclassOf<UA...


code: FAbilityInstanceClassPredicate ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask) > Class )


code: FAbilityInstanceNamePredicate ( [FName](API\Runtime\Core\UObject\FName) DesiredInstanceName )


className: FAbilityInstanceNamePredicate

description: For searching through lists of ability instances.

code: struct FAbilityInstanceNamePredicate

InstanceName

type: FName


className: FAbilityStateDelegate

code: class FAbilityStateDelegate


className: FApplyRootMotionConstantForceDelegate


className: FApplyRootMotionJumpForceDelegate

code: class FApplyRootMotionJumpForceDelegate


className: FApplyRootMotionMoveToForceDelegate


className: FApplyRootMotionRadialForceDelegate


className: FGameplayEffectAppliedTargetDelegate


className: FGameplayEffectBlockedDelegate

code: class FGameplayEffectBlockedDelegate


className: FInputPressDelegate

code: class FInputPressDelegate


className: FInputReleaseDelegate

code: class FInputReleaseDelegate


className: FMontageWaitSimpleDelegate

code: class FMontageWaitSimpleDelegate


className: FMovementModeChangedDelegate

code: class FMovementModeChangedDelegate


className: FMoveToLocationDelegate

code: class FMoveToLocationDelegate


className: FNetworkSyncDelegate

code: class FNetworkSyncDelegate


className: FSpawnActorDelegate

code: class FSpawnActorDelegate


className: FRepeatedActionDelegate

code: class FRepeatedActionDelegate


className: FVisualizeTargetingDelegate

code: class FVisualizeTargetingDelegate


className: FGameplayEffectAppliedSelfDelegate


className: FWaitAbilityActivateDelegate

code: class FWaitAbilityActivateDelegate


className: FWaitAbilityCommitDelegate

code: class FWaitAbilityCommitDelegate


className: FWaitAttributeChangeThresholdDelegate


className: FWaitAttributeChangeDelegate

code: class FWaitAttributeChangeDelegate


className: FWaitCancelDelegate

code: class FWaitCancelDelegate


className: FWaitConfirmCancelDelegate

code: class FWaitConfirmCancelDelegate


className: FWaitDelayDelegate

code: class FWaitDelayDelegate


className: FWaitGameplayEffectStackChangeDelegate


className: FWaitGameplayEffectRemovedDelegate


className: FWaitGameplayEventDelegate

code: class FWaitGameplayEventDelegate


className: FWaitGameplayTagDelegate

code: class FWaitGameplayTagDelegate


className: FWaitGameplayTagQueryDelegate

code: class FWaitGameplayTagQueryDelegate


className: FWaitOverlapDelegate

code: class FWaitOverlapDelegate


className: FWaitTargetDataDelegate

code: class FWaitTargetDataDelegate


className: FWaitVelocityChangeDelegate

code: class FWaitVelocityChangeDelegate


description: 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.

code: virtual void BeginDestroy()


description: Helper method for registering client replicated callbacks

code: bool CallOrAddReplicatedDelegate ( [EAbilityGenericReplicatedEvent::Type](API\Plugins\GameplayAbilities\Abilities\EAbilityGenericReplicatedEvent__-) Event, FSimpleMulticastDelegate::FDelegate Delegate )


code: void ClearWaitingOnAvatar()


code: void ClearWaitingOnRemotePlayerData()


code: static void DebugRecordAbilityTaskCreatedByAbility ( const [UObject](API\Runtime\CoreUObject\UObject\UObject) * Ability )


description: Returns spec handle for owning ability


code: template<typename T> static bool DelayedFalse()


description: Returns ActivationPredictionKey of owning ability


code: virtual void InitSimulatedTask ( [UGameplayTasksComponent](API\Runtime\GameplayTasks\UGameplayTasksComponent) & InGameplayTasksComponent )


description: Returns true if we are executing the ability on the server for a non locally controlled client

code: bool IsForRemoteClient() const


description: Returns true if we are executing the ability on the locally controlled client

code: bool IsLocallyControlled() const


description: Returns true if the ability is a locally predicted ability running on a client. Usually this means we need to tell the server something.

code: bool IsPredictingClient() const


code: virtual bool IsWaitingOnAvatar() const


code: virtual bool IsWaitingOnRemotePlayerdata() const


description: Helper function for instantiating and initializing a new task

code: template<class T> static T * NewAbilityTask ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * ThisAbility, [FName](API\Runtime\Core\UObject\FName) InstanceName )


description: This function has been added to make sure AbilityTasks don't use this method

code: template<class T> static T * NewTask ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * WorldContextObject, [FName](API\Runtime\Core\UObject\FName) InstanceName )


description: End and CleanUp the task - may be called by the task itself or by the task owner if the owner is ending. IMPORTANT! Do NOT call directly! CallEndTask()orTaskOwnerEnded()IMPORTANT! When overriding this function make sure to call Super::OnDestroy(bOwnerFinished) as the last thing, since the function internally marks the task as "Pending Kill", and this may interfere with internal BP mechanics

code: virtual void OnDestroy ( bool bInOwnerFinished )


code: void SetAbilitySystemComponent ( [UAbilitySystemComponent](API\Plugins\GameplayAbilities\UAbilitySystemComponent) * InAbilitySystemComponent )


description: Same as RemotePlayerData but forACharactertype of state (movement state, etc)

code: void SetWaitingOnAvatar()


description: Called when the ability task is waiting on remote player data. IF the remote player ends the ability prematurely, and a task with this set is still running, the ability is killed.

code: void SetWaitingOnRemotePlayerData()


description: This should be called prior to broadcasting delegates back into the ability graph. This makes sure the ability is still active.


code: UAbilityTask ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UAbilityTask

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class UAbilityTask : public [UGameplayTask](API\Runtime\GameplayTasks\UGameplayTask)

Ability

description: GameplayAbility that created us

AbilitySystemComponent

type: TWeakObjectPtr<...

bWasSuccessfullyDestroyed

type: uint8:  1

WaitStateBitMask

description: What we are waiting on


description: Apply force to character's movement

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_ApplyRootMotionConstantForce](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_App-) * ApplyRootMotionConstantForce ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, FVector WorldDirection, float Strength, float Duration, bool bIsAdditive, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * StrengthOverTime, ERootMotionFinishVelocityMode VelocityOnFinishMode, FVector SetVelocityOnFinish, float ClampVelocityOnFinish, bool bEnableGravity )


description: Called right before being marked for destruction due to network replication


code: virtual void SharedInitAndApply()


description: Tick function for this task, if bTickingTask == true

code: virtual void TickTask ( float DeltaTime )


code: UAbilityTask_ApplyRootMotionConstantForce ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Called to trigger the actual task once the delegates have been set up Note that the default implementation does nothing and you don't have to call it

code: virtual void Activate()


description: Applies force to character's movement

Duration

type: float

OnFinish

type: FApplyRootMotio...

StrengthOverTime

type: TObjectPtr<UCu...


description: Apply force to character's movement

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_ApplyRootMotionJumpForce](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_App-_1) * ApplyRootMotionJumpForce ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, FRotator Rotation, float Distance, float Height, float Duration, float MinimumLandedTriggerTime, bool bFinishOnLanded, ERootMotionFinishVelocityMode VelocityOnFinishMode, FVector SetVelocityOnFinish, float ClampVelocityOnFinish, [UCurveVector](API\Runtime\Engine\Curves\UCurveVector) * PathOffsetCurve, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TimeMappingCurve )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() void OnLandedCallback ( const [FHitResult](API\Runtime\Engine\Engine\FHitResult) & Hit )


description: Work-around for OnLanded being called during bClientUpdating in movement replay code Don't want to trigger our Landed logic during a replay, so we wait until next frame If we don't, we end up removing root motion from a replay root motion set instead of the real one

code: void TriggerLanded()


code: UAbilityTask_ApplyRootMotionJumpForce ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Apply force to character's movement

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_ApplyRootMotionMoveToActorForce](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_App-_2) * ApplyRootMotionMoveToActorForce ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, [AActor](API\Runtime\Engine\GameFramework\AActor) * TargetActor, FVector TargetLocationOffset, [ERootMotionMoveToActorTargetOffsetType](API\Plugins\GameplayAbilities\Abilities\Tasks\ERootMotionMoveT-) OffsetAlignment, float Duration, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TargetLerpSpeedHorizontal, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TargetLerpSpeedVertical, bool bSetNewMovementMode, EMovementMode MovementMode, bool bRestrictSpeedToExpected, [UCurveVector](API\Runtime\Engine\Curves\UCurveVector) * PathOffsetCurve, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TimeMappingCurve, ERootMotionFinishVelocityMode VelocityOnFinishMode, FVector SetVelocityOnFinish, float ClampVelocityOnFinish, bool bDisableDestinationReachedInterrupt )


code: FVector CalculateTargetOffset() const


description: Apply force to character's movement using an index into targetData instead of using an actor directly.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_ApplyRootMotionMoveToActorForce](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_App-_2) * ApplyRootMotionMoveToTargetDataActorForce ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) TargetDataHandle, int32 TargetDataIndex, int32 TargetActorIndex, FVector TargetLocationOffset, [ERootMotionMoveToActorTargetOffsetType](API\Plugins\GameplayAbilities\Abilities\Tasks\ERootMotionMoveT-) OffsetAlignment, float Duration, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TargetLerpSpeedHorizontal, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TargetLerpSpeedVertical, bool bSetNewMovementMode, EMovementMode MovementMode, bool bRestrictSpeedToExpected, [UCurveVector](API\Runtime\Engine\Curves\UCurveVector) * PathOffsetCurve, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * TimeMappingCurve, ERootMotionFinishVelocityMode VelocityOnFinishMode, FVector SetVelocityOnFinish, float ClampVelocityOnFinish, bool bDisableDestinationReachedInterrupt )


code: virtual void OnDestroy ( bool bInOwnerFinished )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() void OnTargetActorSwapped ( class [AActor](API\Runtime\Engine\GameFramework\AActor) * OriginalTarget, class [AActor](API\Runtime\Engine\GameFramework\AActor) * NewTarget )


code: void SetRootMotionTargetLocation ( FVector NewTargetLocation )


code: bool UpdateTargetLocation ( float DeltaTime )


description: Applies force to character's movement

Rotation

type: FRotator

TimeMappingCurve

description: Maps real time to movement fraction curve to affect the speed of the movement through the path Curve X is 0 to 1 normalized real time (a fraction of the duration) Curve Y is 0 to 1 is what percent of the move should be at a given X Default if unset is a 1:1 correspondence


code: UAbilityTask_ApplyRootMotionMoveToActorForce ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Applies force to character's movement

bDisableDestinationReachedInterrupt

description: Bydefault, this force ends when the destination is reached.

bRestrictSpeedToExpected

description: If enabled, we limit velocity to the initial expected velocity to go distance to the target over Duration.

NewMovementMode

type: TEnumAsByte< EM...

OffsetAlignment

type: ERootMotionMove...

PreviousMovementMode

type: EMovementMode

TargetActor

type: TObjectPtr<AAc...

TargetActorSwapHandle

type: FDelegateHandle


description: Apply force to character's movement

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_ApplyRootMotionMoveToForce](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_App-_3) * ApplyRootMotionMoveToForce ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, FVector TargetLocation, float Duration, bool bSetNewMovementMode, EMovementMode MovementMode, bool bRestrictSpeedToExpected, [UCurveVector](API\Runtime\Engine\Curves\UCurveVector) * PathOffsetCurve, ERootMotionFinishVelocityMode VelocityOnFinishMode, FVector SetVelocityOnFinish, float ClampVelocityOnFinish )


code: virtual void SharedInitAndApply()


description: Applies force to character's movement

bRestrictSpeedToExpected

type: bool


description: Apply force to character's movement

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_ApplyRootMotionRadialForce](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_App-_4) * ApplyRootMotionRadialForce ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, FVector Location, [AActor](API\Runtime\Engine\GameFramework\AActor) * LocationActor, float Strength, float Duration, float Radius, bool bIsPush, bool bIsAdditive, bool bNoZForce, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * StrengthDistanceFalloff, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * StrengthOverTime, bool bUseFixedWorldDirection, FRotator FixedWorldDirection, ERootMotionFinishVelocityMode VelocityOnFinishMode, FVector SetVelocityOnFinish, float ClampVelocityOnFinish )


code: UAbilityTask_ApplyRootMotionRadialForce ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: virtual void TickTask ( float DeltaTime )


description: Applies force to character's movement

StrengthDistanceFalloff

description: Strength of the force over distance to Location Curve Y is 0 to 1 which is percent of full Strength parameter to apply Curve X is 0 to 1 normalized distance (0 = 0cm, 1 = what Strength % at Radius units out)


code: virtual bool HasTimedOut() const


code: virtual void InitSimulatedTask ( [UGameplayTasksComponent](API\Runtime\GameplayTasks\UGameplayTasksComponent) & InGameplayTasksComponent )


code: UAbilityTask_ApplyRootMotion_Base ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: This delegate can be used to support target swapping on abilities. e.g. If a decoy is created and you want root motion to switch the destination to the decoy Base class for ability tasks that apply root motion

FinishClampVelocity

description: If FinishVelocityMode mode is "ClampVelocity", character velocity is clamped to this value when root motion finishes

FinishSetVelocity

description: If FinishVelocityMode mode is "SetVelocity", character velocity is set to this value when root motion finishes

FinishVelocityMode

type: ERootMotionFini...

description: What to do with character's Velocity when root motion finishes

MovementComponent

type: TObjectPtr<UCh...


code: virtual void Activate()


description: Move to the specified location, using the vector curve (range 0 - 1) if specified, otherwise the float curve (range 0 - 1) or fallback to linear interpolation

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_MoveToLocation](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_MoveToLocation) * MoveToLocation ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, FVector Location, float Duration, [UCurveFloat](API\Runtime\Engine\Curves\UCurveFloat) * OptionalInterpolationCurve, [UCurveVector](API\Runtime\Engine\Curves\UCurveVector) * OptionalVectorInterpolationCurve )


description: End and CleanUp the task - may be called by the task itself or by the task owner if the owner is ending. IMPORTANT! Do NOT call directly! CallEndTask()orTaskOwnerEnded()IMPORTANT! When overriding this function make sure to call Super::OnDestroy(bOwnerFinished) as the last thing, since the function internally marks the task as "Pending Kill", and this may interfere with internal BP mechanics


code: UAbilityTask_MoveToLocation ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: TODO: -Implement replicated time so that this can work as a simulated task for Join In Progress clients. Move to a location, ignoring clipping, over a given length of time. Ends when the TargetLocation is reached. This will RESET your character's current movement mode! If you wish to maintain PHYS_Flying or PHYS_Custom, you must reset it on completion.!

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_MoveToLocation : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

OnTargetLocationReached

type: FMoveToLocation...

StartLocation

type: FVector


description: In most cases you will have both client and server execution paths connected to the same WaitNetSync node. However it is possible to use separate nodes for cleanliness of the graph. The "signal" is "ability instance wide".

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_NetworkSyncPoint](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_NetworkSyncPoint) * WaitNetSync ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [EAbilityTaskNetSyncType](API\Plugins\GameplayAbilities\Abilities\Tasks\EAbilityTaskNetSyncType) SyncType )


code: UAbilityTask_NetworkSyncPoint ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Task for providing a generic sync point for client server (one can wait for a signal from the other)

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_NetworkSyncPoint : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

OnSync

type: FNetworkSyncDel...

ReplicatedEventToListenFor

type: EAbilityGeneric...

description: The event we replicate

SyncType

type: EAbilityTaskNet...


description: Called when the ability is asked to cancel from an outside node. What this means depends on the individual task.Bydefault, this does nothing other than ending the task.

code: virtual void ExternalCancel()


description: Return debug string describing task

code: virtual [FString](API\Runtime\Core\Containers\FString) GetDebugString() const


description: Callback function for when the owning Gameplay Ability is cancelled


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() void OnMontageBlendingOut ( [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * Montage, bool bInterrupted )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() void OnMontageEnded ( [UAnimMontage](API\Runtime\Engine\Animation\UAnimMontage) * Montage, bool bInterrupted )


description: Deprecated* Please use OnGameplayAbilityCancelled instead. This function naming implied the Montage was already interrupted (instead, we are about to interrupt it).


description: Checks if the ability is playing a montage and stops that montage, returns true if a montage was stopped, false if not.

code: bool StopPlayingMontage()


description: Ability task to simply play a montage. Many games will want to make a modified version of this task that looks for game-specific events

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_PlayMontageAndWait : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

AnimRootMotionTranslationScale

type: float

BlendingOutDelegate

type: FOnMontageBlend...

HidePin

description: Start playing an animation montage on the avatar actor and wait for it to finish If StopWhenAbilityEnds is true, this montage will be aborted if the ability ends normally.

MontageEndedDelegate

type: FOnMontageEnded

MontageToPlay

type: TObjectPtr<UAn...

OnBlendOut

type: FMontageWaitSim...

StartSection

type: FName


description: Start a task that repeats an action or set of actions.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Ability|Tasks", Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="TRUE")) static [UAbilityTask_Repeat](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_Repeat) * RepeatAction ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, float TimeBetweenActions, int32 TotalActionCount )


code: UAbilityTask_Repeat ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Repeat a task a certain number of times at a given interval.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_Repeat : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

OnFinished

type: FRepeatedAction...

type: FTimerHandle

description: Handle for efficient management of PerformAction timer


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true"), Category="Abilities") bool BeginSpawningActor ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) TargetData, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > Class, [AActor](API\Runtime\Engine\GameFramework\AActor) *& SpawnedActor )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true"), Category="Abilities") void FinishSpawningActor ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) TargetData, [AActor](API\Runtime\Engine\GameFramework\AActor) * SpawnedActor )


description: Spawn new Actor on the network authority (server)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true"), Category="Ability|Tasks") static [UAbilityTask_SpawnActor](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_SpawnActor) * SpawnActor ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FGameplayAbilityTargetDataHandle](API\Plugins\GameplayAbilities\Abilities\FGameplayAbilityTargetDataHandle) TargetData, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > Class )


code: UAbilityTask_SpawnActor ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


description: Long term we can also use this task as a sync point. If the executing client could wait execution until the server creates and replicates the actor down to it. We could potentially also use this to do predictive actor spawning / reconciliation.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_SpawnActor : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

CachedTargetDataHandle

type: FGameplayAbilit...

DidNotSpawn

type: FSpawnActorDele...

description: Called when we can't spawn: on clients or potentially on server if they fail to spawn (rare)


description: Called to trigger the actual task once the delegates have been set up Note that the default implementation does nothing and you don't have to call it

code: virtual void Activate()


description: Called when the task is asked to cancel from an outside node. What this means depends on the individual task.Bydefault, this does nothing other than ending the task.


description: Return debug string describing task


description: Starts a new ability state.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true", HideSpawnParms="Instigator"), Category="Ability|Tasks") static [UAbilityTask_StartAbilityState](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_StartAbilityState) * StartAbilityState ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [FName](API\Runtime\Core\UObject\FName) StateName, bool bEndCurrentState )


description: 'OnStateInterrupted' will be called if:

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_StartAbilityState : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

OnStateEnded

type: FAbilityStateDe...

description: Invoked if 'EndAbilityState' is called or if 'EndAbility' is called and this state is active.

OnStateInterrupted

description: Invoked if the ability was interrupted and this state is active.


code: UAbilityTask_StartAbilityState ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true"), Category="Abilities") bool BeginSpawningActor ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) > Class, [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) *& SpawnedActor )


code: void FinalizeTargetActor ( [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) * SpawnedActor ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true"), Category="Abilities") void FinishSpawningActor ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) * SpawnedActor )


code: void InitializeTargetActor ( [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) * SpawnedActor ) const


description: End and CleanUp the task - may be called by the task itself or by the task owner if the owner is ending. IMPORTANT! Do NOT call directly! CallEndTask()orTaskOwnerEnded()IMPORTANT! When overriding this function make sure to call Super::OnDestroy(bOwnerFinished) as the last thing, since the function internally marks the task as "Pending Kill", and this may interfere with internal BP mechanics

code: virtual void OnDestroy ( bool bInOwnerFinished )


code: void SetDuration ( const float Duration )


code: bool ShouldSpawnTargetActor() const


description: Spawns target actor and uses it for visualization.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true", HideSpawnParms="Instigator"), Category="Ability|Tasks") static [UAbilityTask_VisualizeTargeting](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_VisualizeTargeting) * VisualizeTargeting ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) > Class, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, float Duration )


description: Visualize target using a specified target actor.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Meta=(HidePin="OwningAbility", DefaultToSelf="OwningAbility", BlueprintInternalUseOnly="true"), Category="Ability|Tasks") static [UAbilityTask_VisualizeTargeting](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask_VisualizeTargeting) * VisualizeTargetingUsingActor ( [UGameplayAbility](API\Plugins\GameplayAbilities\Abilities\UGameplayAbility) * OwningAbility, [AGameplayAbilityTargetActor](API\Plugins\GameplayAbilities\Abilities\AGameplayAbilityTargetActor) * TargetActor, [FName](API\Runtime\Core\UObject\FName) TaskInstanceName, float Duration )


code: UAbilityTask_VisualizeTargeting ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UAbilityTask_VisualizeTargeting : public [UAbilityTask](API\Plugins\GameplayAbilities\Abilities\Tasks\UAbilityTask)

TargetActor

type: TWeakObjectPtr<...

description: The TargetActor that we spawned

TargetClass

type: TSubclassOf<AG...

TimeElapsed

type: FVisualizeTarge...

description: Handle for efficient management of OnTimeElapsed timer


code: bool DoesValuePassComparison ( float ValueNumerator, float ValueDenominator ) const


code: void OnDenominatorAttributeChange ( const [FOnAttributeChangeData](API\Plugins\GameplayAbilities\FOnAttributeChangeData) & CallbackData )


code: void OnAttributeChange()


code: void OnNumeratorAttributeChange ( const [FOnAttributeChangeData](API\Plugins\GameplayAbilities\FOnAttributeChangeData) & CallbackData )