UAbilitySystemGlobals

Holds global data for the ability system. Can be configured per project via config file

Windows
MacOS
Linux

Inheritance Hierarchy

UObjectBase

UObjectBaseUtility

UObject

UAbilitySystemGlobals

References

Module

GameplayAbilities

Header

/Engine/Plugins/Runtime/GameplayAbilities/Source/GameplayAbilities/Public/AbilitySystemGlobals.h

Include

#include "AbilitySystemGlobals.h"

Syntax

[UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Game)
class UAbilitySystemGlobals : public UObject

Remarks

Holds global data for the ability system. Can be configured per project via config file

Variables

Name Description

Public variable

FOnAbilitySyste...

 

AbilityFindAssetInEditorCallbacks

Public variable

FOnAbilitySyste...

 

AbilityOpenAssetInEditorCallbacks

Public variable

TArray< FString...

 

AbilitySystemDebugStrings

Global place to accumulate debug strings for ability system component.

Public variable UProperty Config

FSoftClassPath

 

AbilitySystemGlobalsClassName

The class to instantiate as the globals object. Defaults to this class but can be overridden

Public variable UProperty Config

FName

 

ActivateFailCooldownName

Public variable UProperty

FGameplayTag

 

ActivateFailCooldownTag

TryActivate failed due to being on cooldown

Public variable UProperty Config

FName

 

ActivateFailCostName

Public variable UProperty

FGameplayTag

 

ActivateFailCostTag

TryActivate failed due to not being able to spend costs

Public variable UProperty Config

FName

 

ActivateFailIsDeadName

Public variable UProperty

FGameplayTag

 

ActivateFailIsDeadTag

TryActivate failed due to being dead

Public variable UProperty Config

FName

 

ActivateFailNetworkingName

Public variable UProperty

FGameplayTag

 

ActivateFailNetworkingTag

Failed to activate due to invalid networking settings, this is designer error

Public variable UProperty Config

FName

 

ActivateFailTagsBlockedName

Public variable UProperty

FGameplayTag

 

ActivateFailTagsBlockedTag

TryActivate failed due to being blocked by other abilities

Public variable UProperty Config

FName

 

ActivateFailTagsMissingName

Public variable UProperty

FGameplayTag

 

ActivateFailTagsMissingTag

TryActivate failed due to missing required tags

Protected variable UProperty Config

bool

 

bAllowGameplayModEvaluationChannels

Whether the game should allow the usage of gameplay mod evaluation channels or not

Protected variable

bool

 

bIgnoreAbilitySystemCooldowns

If we should ignore the cooldowns when activating abilities in the ability system.

Protected variable

bool

 

bIgnoreAbilitySystemCosts

If we should ignore the costs when activating abilities in the ability system.

Protected variable UProperty Config

EGameplayModEva...

 

DefaultGameplayModEvaluationChannel

The default mod evaluation channel for the game

Protected variable UProperty Config

TArray< FString...

 

GameplayCueNotifyPaths

Look in these paths for GameplayCueNotifies. These are your "always loaded" set.

Protected variable UProperty Config

FName[static_ca...

 

GameplayModEvaluationChannelAliases

Game-specified named aliases for gameplay mod evaluation channels; Only those with valid aliases are eligible to be used in a game (except Channel0, which is always valid)

Protected variable UProperty

UGameplayTagRep...

 

GameplayTagResponseTable

Protected variable UProperty Config

FSoftObjectPath

 

GameplayTagResponseTableName

The class to instantiate as the GameplayTagResponseTable.

Protected variable UProperty

TArray< UCurveT...

 

GlobalAttributeDefaultsTables

Curve tables containing default values for attribute sets, keyed off of Name/Levels

Protected variable UProperty

UDataTable *...

 

GlobalAttributeMetaDataTable

Protected variable UProperty Config

FSoftObjectPath

 

GlobalAttributeMetaDataTableName

Holds information about the valid attributes' min and max values and stacking rules

Protected variable UProperty Config

FSoftObjectPath

 

GlobalAttributeSetDefaultsTableName

Holds default values for attribute sets, keyed off of Name/Levels.

Protected variable UProperty Config

TArray< FSoftOb...

 

GlobalAttributeSetDefaultsTableNames

Array of curve table names to use for default values for attribute sets, keyed off of Name/Levels

Protected variable

TSharedPtr< FAt...

 

GlobalAttributeSetInitter

Used to initialize attribute sets

Protected variable UProperty

UCurveTable ...

 

GlobalCurveTable

Protected variable UProperty Config

FSoftObjectPath

 

GlobalCurveTableName

Name of global curve table to use as the default for scalable floats, etc.

Protected variable UProperty

UGameplayCueMan...

 

GlobalGameplayCueManager

Manager for all gameplay cues

Protected variable UProperty Config

FSoftObjectPath

 

GlobalGameplayCueManagerClass

Class reference to gameplay cue manager.

Protected variable UProperty Config

FSoftObjectPath

 

GlobalGameplayCueManagerName

Object reference to gameplay cue manager (E.g., reference to a specific blueprint of your GameplayCueManager class. This is not necessary unless you want to have data or blueprints in your gameplay cue manager.

Public variable UProperty Config

int32

 

MinimalReplicationTagCountBits

How many bits to use for "number of tags" in FMinimapReplicationTagCountMap::NetSerialize.

Public variable

FOnClientServer...

 

OnClientServerDebugAvailable

Protected variable UProperty Config

bool

 

PredictTargetGameplayEffects

Set to true if you want clients to try to predict gameplay effects done to targets.

Protected variable

bool

 

RegisteredReimportCallback

Public variable UProperty

FNetSerializeSc...

 

TargetDataStructCache

Constructors

Name Description

Public function

UAbilitySystemGlobals

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function Virtual Const

FGameplayAbi...

 

AllocAbilityActorInfo()

Should allocate a project specific AbilityActorInfo struct. Caller is responsible for deallocation

Protected function Virtual

void

 

AllocAttributeSetInitter()

Initialize FAttributeSetInitter.

Public function Virtual Const

FGameplayEff...

 

AllocGameplayEffectContext()

Should allocate a project specific GameplayEffectContext struct.

Public function

void

 

AutomationTestOnly_SetGlobalAttributeDataTable

(
    UDataTable* InTable
)

Public function Static

bool

 

DeriveGameplayCueTagFromAssetName

(
    FString AssetName,
    FGameplayTag& GameplayCueTag,
    FName& GameplayCueName
)

Sets a default gameplay cue tag using the asset's name. Returns true if it changed the tag.

Public function Static

void

 

DeriveGameplayCueTagFromClass

(
    T* CDO
)

Sets a default gameplay cue tag using the asset's class

Public function Virtual

void

 

GameplayEffectPostEditChangeProperty

(
    UGameplayEffect* GE,
    FPropertyChangedEvent& PropertyCha...
)

Allows projects to override PostEditChangeProeprty on GEs without having to subclass Gameplayeffect. Intended for validation/auto populating based on changed data.

Public function Static

UAbilitySyst...

 

Get()

Gets the single instance of the globals object, will create it as necessary

Public function Static

UAbilitySyst...

 

GetAbilitySystemComponentFromActor

(
    const AActor* Actor,
    bool LookForComponent
)

Searches the passed in actor for an ability system component, will use the AbilitySystemInterface

Public function Const

FAttributeSe...

 

GetAttributeSetInitter()

Returns data used to initialize attributes to their default values

Public function

UFunction &#...

 

GetGameplayCueFunction

(
    const FGameplayTag& Tag,
    UClass* Class,
    FName& MatchedTag
)

Searches the passed in class to look for a UFunction implementing the gameplay cue tag, sets MatchedTag to the exact tag found

Public function Virtual

UGameplayCue...

 

GetGameplayCueManager()

Returns the gameplay cue manager singleton object, creating if necessary

Public function Virtual

TArray< FStr...

 

GetGameplayCueNotifyPaths()

Path where the engine will load gameplay cue notifies from

Public function Const

const FName ...

 

GetGameplayModEvaluationChannelAlias

(
    int32 Index
)

Simple index-based accessor to the alias name for the specified gameplay mod evaluation channel, if any

Public function Const

const FName ...

 

GetGameplayModEvaluationChannelAlias

(
    EGameplayModEvaluationChannel Chann...
)

Simple channel-based accessor to the alias name for the specified gameplay mod evaluation channel, if any

Public function

UGameplayTag...

 

GetGameplayTagResponseTable()

Returns the gameplay tag response object, creating if necessary

Public function

UDataTable &...

 

GetGlobalAttributeMetaDataTable()

Returns the data table defining attribute metadata (

Currently not in use)

Public function

UCurveTable ...

 

GetGlobalCurveTable()

Returns the globally registered curve table

Public function Virtual

void

 

GlobalPreGameplayEffectSpecApply

(
    FGameplayEffectSpec& Spec,
    UAbilitySystemComponent* Abili...
)

Global callback that can handle game-specific code that needs to run before applying a gameplay effect spec

Protected function

void

 

HandlePreLoadMap

(
    const FString& MapName
)

Protected function Virtual

void

 

InitAttributeDefaults()

Public function Virtual

void

 

InitGameplayCueParameters

(
    FGameplayCueParameters& CueParamet...,
    const FGameplayEffectSpecForRPC& S...
)

Initialize GameplayCue Parameters

Public function Virtual

void

 

InitGameplayCueParameters

(
    FGameplayCueParameters& CueParamet...,
    const FGameplayEffectContextHandle ...
)

Initialize GameplayCue Parameters

Public function Virtual

void

 

InitGameplayCueParameters_GESpec

(
    FGameplayCueParameters& CueParamet...,
    const FGameplayEffectSpec& Spec
)

Initialize GameplayCue Parameters

Public function Virtual

void

 

InitGlobalData()

Should be called once as part of project setup to load global data tables and tags

Public function Virtual

void

 

InitGlobalTags()

Initialize global tags by reading from config using the names and creating tags for use at runtime

Public function

void

 

InitTargetDataScriptStructCache()

Protected function

T *

 

InternalGetLoadTable

(
    T*& Table,
    FString TableName
)

Public function

bool

 

IsAbilitySystemGlobalsInitialized()

Returns true if InitGlobalData has been called

Public function Const

bool

 

IsGameplayModEvaluationChannelValid

(
    EGameplayModEvaluationChannel Chann...
)

Returns whether the specified gameplay mod evaluation channel is valid for use or not.

Public function UFunction exec

void

 

ListPlayerAbilities()

Show all abilities currently assigned to the local player

Public function Static

void

 

NonShipping_ApplyGlobalAbilityScaler_Duration

(
    float& Duration
)

Public function Static

void

 

NonShipping_ApplyGlobalAbilityScaler_Rate

(
    float& Rate
)

Helper functions for applying global scaling to various ability system tasks.

Public function

void

 

Notify_FindAssetInEditor

(
    FString AssetName,
    int AssetType
)

Public function

void

 

Notify_OpenAssetInEditor

(
    FString AssetName,
    int AssetType
)

To add functionality for opening assets directly from the game.

Protected function

void

 

OnPreBeginPIE

(
    const bool bIsSimulatingInEditor
)

Protected function

void

 

OnTableReimported

(
    UObject* InObject
)

Public function Virtual

void

 

PopCurrentAppliedGE()

Public function Virtual

void

 

PushCurrentAppliedGE

(
    const FGameplayEffectSpec* Spe...,
    UAbilitySystemComponent* Abili...
)

Override to handle global state when gameplay effects are being applied

Protected function Virtual

void

 

ReloadAttributeDefaults()

Protected function

void

 

ResetCachedData()

Public function UFunction exec

void

 

ServerActivatePlayerAbility

(
    FString AbilityNameMatch
)

Force server activation of a specific player ability (useful for cheat testing)

Public function UFunction exec

void

 

ServerCancelPlayerAbility

(
    FString AbilityNameMatch
)

Force server cancellation of a specific player ability (useful for cheat testing)

Public function UFunction exec

void

 

ServerEndPlayerAbility

(
    FString AbilityNameMatch
)

Force server deactivation of a specific player ability (useful for cheat testing)

Public function Virtual

void

 

SetCurrentAppliedGE

(
    const FGameplayEffectSpec* Spe...
)

Public function Const

bool

 

ShouldAllowGameplayModEvaluationChannels()

Simple accessor to whether gameplay modifier evaluation channels should be allowed or not

Public function Const

bool

 

ShouldIgnoreCooldowns()

Returns true if ability cooldowns are ignored, returns false otherwise.

Public function Const

bool

 

ShouldIgnoreCosts()

Returns true if ability costs are ignored, returns false otherwise.

Public function Const

bool

 

ShouldPredictTargetGameplayEffects()

Returns true if the ability system should try to predict gameplay effects applied to non local targets

Public function Virtual

void

 

StartAsyncLoadingObjectLibraries()

Trigger async loading of the gameplay cue object libraries.

Public function Virtual UFunction exec

void

 

ToggleIgnoreAbilitySystemCooldowns()

Toggles whether we should ignore ability cooldowns. Does nothing in shipping builds

Public function Virtual UFunction exec

void

 

ToggleIgnoreAbilitySystemCosts()

Toggles whether we should ignore ability costs. Does nothing in shipping builds

Typedefs

Name

Description

FOnClientServerDebugAvailable

Called when debug strings are available, to write them to the display

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss