RealDocs

UGameplayStatics

class Engine Blueprint Since unknown
#include "Kismet/GameplayStatics.h"

Description

A Blueprint function library providing static utility functions for common gameplay operations: actor spawning, player access, damage, audio, level loading, and save games. All functions are accessible without a class instance.

Caveats & Gotchas

  • Most functions require a WorldContextObject (typically pass 'this' from an Actor or Component). Passing an invalid context silently returns null or no-ops.
  • These are Blueprint-friendly wrappers. C++ code often has more direct and performant alternatives (e.g. UWorld::SpawnActor instead of the deferred spawn path, GetWorld()->GetFirstPlayerController instead of GetPlayerController(this, 0)).
  • Functions that return AActor* (GetActorOfClass, GetPlayerPawn, etc.) can return null — always validate with IsValid() before use.

Example

Common one-liners C++
// Get player controller (single-player)
APlayerController* PC = UGameplayStatics::GetPlayerController(this, 0);

// Play a sound at a location
UGameplayStatics::PlaySoundAtLocation(this, ExplosionSound, GetActorLocation());

// Load a level
UGameplayStatics::OpenLevel(this, FName("MainMenu"));

Functions (142)

Collision
4
Access Type Name
public function UGameplayStatics::BreakHitResult
public function UGameplayStatics::GetSurfaceType
public function UGameplayStatics::MakeHitResult
public function UGameplayStatics::FindCollisionUV
Damage
3
Access Type Name
public function UGameplayStatics::ApplyPointDamage
public function UGameplayStatics::ApplyDamage
public function UGameplayStatics::ApplyRadialDamageWithFalloff
Input
2
Access Type Name
public function UGameplayStatics::GetViewportMouseCaptureMode
public function UGameplayStatics::SetViewportMouseCaptureMode
Networking
3
Access Type Name
public function UGameplayStatics::GetNumPlayerStates
public function UGameplayStatics::GetPlayerState
public function UGameplayStatics::GetPlayerStateFromUniqueNetId
Rendering
6
Access Type Name
public function UGameplayStatics::PlayWorldCameraShake
public function UGameplayStatics::SpawnDecalAtLocation
public function UGameplayStatics::SpawnDecalAttached
public function UGameplayStatics::IsAnyLocalPlayerCameraWithinRange
public function UGameplayStatics::GetEnableWorldRendering
public function UGameplayStatics::SetEnableWorldRendering
Audio
35
Access Type Name
public function UGameplayStatics::AreSubtitlesEnabled
public function UGameplayStatics::SpawnSound2D
public function UGameplayStatics::SpawnSoundAtLocation
public function UGameplayStatics::SpawnSoundAttached
public function UGameplayStatics::ActivateReverbEffect
public function UGameplayStatics::AreAnyListenersWithinRange
public function UGameplayStatics::ClearSoundMixClassOverride
public function UGameplayStatics::ClearSoundMixModifiers
public function UGameplayStatics::CreateSound2D
public function UGameplayStatics::DeactivateReverbEffect
public function UGameplayStatics::GetClosestListenerLocation
public function UGameplayStatics::GetCurrentReverbEffect
public function UGameplayStatics::PlayDialogue2D
public function UGameplayStatics::PlayDialogueAtLocation
public function UGameplayStatics::PlaySound2D
public function UGameplayStatics::PlaySoundAtLocation
public function UGameplayStatics::PopSoundMixModifier
public function UGameplayStatics::PushSoundMixModifier
public function UGameplayStatics::SetBaseSoundMix
public function UGameplayStatics::SetGlobalPitchModulation
public function UGameplayStatics::SetSoundMixClassOverride
public function UGameplayStatics::SetSubtitlesEnabled
public function UGameplayStatics::SpawnDialogue2D
public function UGameplayStatics::SpawnDialogueAtLocation
public function UGameplayStatics::SpawnDialogueAttached
public function UGameplayStatics::GetActiveSpatialPluginName
public function UGameplayStatics::GetAvailableSpatialPluginNames
public function UGameplayStatics::GetMaxAudioChannelCount
public function UGameplayStatics::PrimeAllSoundsInSoundClass
public function UGameplayStatics::PrimeSound
public function UGameplayStatics::SetActiveSpatialPluginByName
public function UGameplayStatics::SetGlobalListenerFocusParameters
public function UGameplayStatics::SetMaxAudioChannelsScaled
public function UGameplayStatics::SetSoundClassDistanceScale
public function UGameplayStatics::UnRetainAllSoundsInSoundClass
Tags
2
Access Type Name
public function UGameplayStatics::GetAllActorsOfClassWithTag
public function UGameplayStatics::GetAllActorsWithTag
Utility
26
Access Type Name
public function UGameplayStatics::FindNearestActor
public function UGameplayStatics::GetActorArrayAverageLocation
public function UGameplayStatics::GetActorArrayBounds
public function UGameplayStatics::GetObjectClass
public function UGameplayStatics::GetPlatformName
public function UGameplayStatics::IsGamePaused
public function UGameplayStatics::ObjectIsA
public function UGameplayStatics::SetGamePaused
public function UGameplayStatics::AnnounceAccessibleString
public function UGameplayStatics::ApplyRadialDamage
public function UGameplayStatics::GetActorOfClass
public function UGameplayStatics::GetAllActorsOfClass
public function UGameplayStatics::GetIntOption
public function UGameplayStatics::GetKeyValue
public function UGameplayStatics::GetPlayerCharacter
public function UGameplayStatics::GetPlayerController
public function UGameplayStatics::GetPlayerPawn
public function UGameplayStatics::HasLaunchOption
public function UGameplayStatics::HasOption
public function UGameplayStatics::IsSplitscreenForceDisabled
public function UGameplayStatics::OpenLevel
public function UGameplayStatics::ParseOption
public function UGameplayStatics::SetForceDisableSplitscreen
public function UGameplayStatics::SetGlobalTimeDilation
public function UGameplayStatics::SpawnActor (Spawn Actor from Class)
public function UGameplayStatics::EnableLiveStreaming
Actor
1
Access Type Name
public function UGameplayStatics::GetAllActorsWithInterface
Camera
6
Access Type Name
public function UGameplayStatics::DeprojectSceneCaptureComponentToWorld
public function UGameplayStatics::DeprojectSceneCaptureToWorld
public function UGameplayStatics::DeprojectScreenToWorld
public function UGameplayStatics::ProjectWorldToScreen
public function UGameplayStatics::GetViewProjectionMatrix
public function UGameplayStatics::TransformWorldToFirstPerson
Effects
2
Access Type Name
public function UGameplayStatics::SpawnEmitterAtLocation
public function UGameplayStatics::SpawnEmitterAttached
Foliage
1
Access Type Name
public function UGameplayStatics::GrassOverlappingSphereCount
ForceFeedback
2
Access Type Name
public function UGameplayStatics::SpawnForceFeedbackAtLocation
public function UGameplayStatics::SpawnForceFeedbackAttached
Game
8
Access Type Name
public function UGameplayStatics::GetGameInstance
public function UGameplayStatics::GetGameMode
public function UGameplayStatics::GetGameState
public function UGameplayStatics::GetPlayerCameraManager
public function UGameplayStatics::GetNumLocalPlayerControllers
public function UGameplayStatics::GetNumPlayerControllers
public function UGameplayStatics::GetPlayerControllerFromID
public function UGameplayStatics::GetPlayerControllerFromPlatformUser
Level Streaming
9
Access Type Name
public function UGameplayStatics::GetCurrentLevelName
public function UGameplayStatics::FlushLevelStreaming
public function UGameplayStatics::GetStreamingLevel
public function UGameplayStatics::LoadStreamLevel
public function UGameplayStatics::LoadStreamLevelBySoftObjectPtr
public function UGameplayStatics::OpenLevelBySoftObjectPtr
public function UGameplayStatics::UnloadStreamLevel
public function UGameplayStatics::UnloadStreamLevelBySoftObjectPtr
public function UGameplayStatics::CancelAsyncLoading
Player
6
Access Type Name
public function UGameplayStatics::CreatePlayer
public function UGameplayStatics::GetPlayerControllerID
public function UGameplayStatics::RemovePlayer
public function UGameplayStatics::SetPlayerControllerID
public function UGameplayStatics::CreatePlayerFromPlatformUser
public function UGameplayStatics::SetPlayerPlatformUserId
Projectile
6
Access Type Name
public function UGameplayStatics::Blueprint_PredictProjectilePath_ByObjectType
public function UGameplayStatics::Blueprint_PredictProjectilePath_ByTraceChannel
public function UGameplayStatics::BlueprintSuggestProjectileVelocity
public function UGameplayStatics::SuggestProjectileVelocity_CustomArc
public function UGameplayStatics::Blueprint_PredictProjectilePath_Advanced
public function UGameplayStatics::SuggestProjectileVelocity_MovingTarget
SaveGame
5
Access Type Name
public function UGameplayStatics::DeleteGameInSlot
public function UGameplayStatics::CreateSaveGameObject
public function UGameplayStatics::DoesSaveGameExist
public function UGameplayStatics::LoadGameFromSlot
public function UGameplayStatics::SaveGameToSlot
Spawning
4
Access Type Name
public function UGameplayStatics::BeginDeferredActorSpawnFromClass
public function UGameplayStatics::BeginSpawningActorFromBlueprint deprecated
public function UGameplayStatics::FinishSpawningActor
public function UGameplayStatics::SpawnObject
Time
3
Access Type Name
public function UGameplayStatics::GetAudioTimeSeconds
public function UGameplayStatics::GetAccurateRealTime
public function UGameplayStatics::GetGlobalTimeDilation
Utilities
4
Access Type Name
public function UGameplayStatics::GetTimeSeconds
public function UGameplayStatics::GetWorldDeltaSeconds
public function UGameplayStatics::GetRealTimeSeconds
public function UGameplayStatics::GetUnpausedTimeSeconds
World Origin
4
Access Type Name
public function UGameplayStatics::GetWorldOriginLocation
public function UGameplayStatics::RebaseLocalOriginOntoZero
public function UGameplayStatics::RebaseZeroOriginOntoLocal
public function UGameplayStatics::SetWorldOriginLocation

Version History

Introduced in: unknown

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.