UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FNetworkVersion Struct Reference

#include <NetworkVersion.h>

Public Member Functions

 DECLARE_DELEGATE_RetVal (uint32, FGetLocalNetworkVersionOverride)
 
 DECLARE_DELEGATE_RetVal_TwoParams (bool, FIsNetworkCompatibleOverride, uint32, uint32)
 
 DECLARE_DELEGATE_RetVal (uint32, FGetReplayCompatibleChangeListOverride)
 

Static Public Member Functions

static CORE_API uint32 GetNetworkCompatibleChangelist ()
 
static CORE_API uint32 GetReplayCompatibleChangelist ()
 
static CORE_API uint32 GetEngineNetworkProtocolVersion ()
 
static CORE_API uint32 GetGameNetworkProtocolVersion ()
 
static CORE_API uint32 GetEngineCompatibleNetworkProtocolVersion ()
 
static CORE_API uint32 GetGameCompatibleNetworkProtocolVersion ()
 
static CORE_API uint32 GetNetworkProtocolVersion (const FGuid &VersionGuid)
 
static CORE_API uint32 GetCompatibleNetworkProtocolVersion (const FGuid &VersionGuid)
 
static CORE_API const FCustomVersionContainerGetNetworkCustomVersions ()
 
static CORE_API void RegisterNetworkCustomVersion (const FGuid &VersionGuid, int32 Version, int32 CompatibleVersion, const FName &FriendlyName)
 
static CORE_API uint32 GetLocalNetworkVersion (bool AllowOverrideDelegate=true)
 
static CORE_API bool IsNetworkCompatible (const uint32 LocalNetworkVersion, const uint32 RemoteNetworkVersion)
 
static CORE_API FNetworkReplayVersion GetReplayVersion ()
 
static CORE_API void SetProjectVersion (const TCHAR *InVersion)
 
static CORE_API void SetGameNetworkProtocolVersion (uint32 GameNetworkProtocolVersion)
 
static CORE_API void SetGameCompatibleNetworkProtocolVersion (uint32 GameCompatibleNetworkProtocolVersion)
 
static CORE_API bool AreNetworkRuntimeFeaturesCompatible (EEngineNetworkRuntimeFeatures LocalFeatures, EEngineNetworkRuntimeFeatures RemoteFeatures)
 
static CORE_API void DescribeNetworkRuntimeFeaturesBitset (EEngineNetworkRuntimeFeatures FeaturesBitflag, FStringBuilderBase &OutVerboseDescription)
 
static const FString & GetProjectVersion ()
 
static void InvalidateNetworkChecksum ()
 

Static Public Attributes

static CORE_API FGetLocalNetworkVersionOverride GetLocalNetworkVersionOverride
 
static CORE_API FIsNetworkCompatibleOverride IsNetworkCompatibleOverride
 
static CORE_API FGetReplayCompatibleChangeListOverride GetReplayCompatibleChangeListOverride
 

Static Protected Member Functions

static CORE_API FString & GetProjectVersion_Internal ()
 

Static Protected Attributes

static CORE_API bool bHasCachedNetworkChecksum = false
 
static CORE_API uint32 CachedNetworkChecksum = 0
 
static CORE_API bool bHasCachedReplayChecksum = false
 
static CORE_API uint32 CachedReplayChecksum = 0
 
static CORE_API uint32 EngineNetworkProtocolVersion = FEngineNetworkCustomVersion::LatestVersion
 
static CORE_API uint32 GameNetworkProtocolVersion = 0
 
static CORE_API uint32 EngineCompatibleNetworkProtocolVersion = FEngineNetworkCustomVersion::ReplayBackwardsCompat
 
static CORE_API uint32 GameCompatibleNetworkProtocolVersion = 0
 

Member Function Documentation

◆ AreNetworkRuntimeFeaturesCompatible()

bool FNetworkVersion::AreNetworkRuntimeFeaturesCompatible ( EEngineNetworkRuntimeFeatures  LocalFeatures,
EEngineNetworkRuntimeFeatures  RemoteFeatures 
)
static

Compares if the connection's runtime features are compatible with each other

◆ DECLARE_DELEGATE_RetVal() [1/2]

FNetworkVersion::DECLARE_DELEGATE_RetVal ( uint32  ,
FGetLocalNetworkVersionOverride   
)

Called in GetLocalNetworkVersion if bound

◆ DECLARE_DELEGATE_RetVal() [2/2]

FNetworkVersion::DECLARE_DELEGATE_RetVal ( uint32  ,
FGetReplayCompatibleChangeListOverride   
)

Called in GetReplayCompatibleChangelist if bound

◆ DECLARE_DELEGATE_RetVal_TwoParams()

FNetworkVersion::DECLARE_DELEGATE_RetVal_TwoParams ( bool  ,
FIsNetworkCompatibleOverride  ,
uint32  ,
uint32   
)

Called in IsNetworkCompatible if bound

◆ DescribeNetworkRuntimeFeaturesBitset()

void FNetworkVersion::DescribeNetworkRuntimeFeaturesBitset ( EEngineNetworkRuntimeFeatures  FeaturesBitflag,
FStringBuilderBase OutVerboseDescription 
)
static

Build and return a string describing the status of the the network runtime features bitflag

◆ GetCompatibleNetworkProtocolVersion()

uint32 FNetworkVersion::GetCompatibleNetworkProtocolVersion ( const FGuid VersionGuid)
static

◆ GetEngineCompatibleNetworkProtocolVersion()

uint32 FNetworkVersion::GetEngineCompatibleNetworkProtocolVersion ( )
static

◆ GetEngineNetworkProtocolVersion()

uint32 FNetworkVersion::GetEngineNetworkProtocolVersion ( )
static

◆ GetGameCompatibleNetworkProtocolVersion()

uint32 FNetworkVersion::GetGameCompatibleNetworkProtocolVersion ( )
static

◆ GetGameNetworkProtocolVersion()

uint32 FNetworkVersion::GetGameNetworkProtocolVersion ( )
static

◆ GetLocalNetworkVersion()

uint32 FNetworkVersion::GetLocalNetworkVersion ( bool  AllowOverrideDelegate = true)
static

Generates a version number, that by default, is based on a checksum of the engine version + project name + project version string Game/project code can completely override what this value returns through the GetLocalNetworkVersionOverride delegate If called with AllowOverrideDelegate=false, we will not call the game project override. (This allows projects to call base implementation in their project implementation)

◆ GetNetworkCompatibleChangelist()

uint32 FNetworkVersion::GetNetworkCompatibleChangelist ( )
static

◆ GetNetworkCustomVersions()

const FCustomVersionContainer & FNetworkVersion::GetNetworkCustomVersions ( )
static

◆ GetNetworkProtocolVersion()

uint32 FNetworkVersion::GetNetworkProtocolVersion ( const FGuid VersionGuid)
static

◆ GetProjectVersion()

static const FString & FNetworkVersion::GetProjectVersion ( )
inlinestatic

Returns the project version used by networking

Returns
FString

◆ GetProjectVersion_Internal()

FString & FNetworkVersion::GetProjectVersion_Internal ( )
staticprotected

Used to allow BP only projects to override network versions

◆ GetReplayCompatibleChangelist()

uint32 FNetworkVersion::GetReplayCompatibleChangelist ( )
static

◆ GetReplayVersion()

FNetworkReplayVersion FNetworkVersion::GetReplayVersion ( )
static

Generates a special struct that contains information to send to replay server

◆ InvalidateNetworkChecksum()

static void FNetworkVersion::InvalidateNetworkChecksum ( )
inlinestatic

Invalidates any cached network checksum and forces it to be recalculated on next request

◆ IsNetworkCompatible()

bool FNetworkVersion::IsNetworkCompatible ( const uint32  LocalNetworkVersion,
const uint32  RemoteNetworkVersion 
)
static

Determine if a connection is compatible with this instance

Parameters
bRequireEngineVersionMatchshould the engine versions match exactly
LocalNetworkVersioncurrent version of the local machine
RemoteNetworkVersioncurrent version of the remote machine
Returns
true if the two instances can communicate, false otherwise

◆ RegisterNetworkCustomVersion()

void FNetworkVersion::RegisterNetworkCustomVersion ( const FGuid VersionGuid,
int32  Version,
int32  CompatibleVersion,
const FName FriendlyName 
)
static

◆ SetGameCompatibleNetworkProtocolVersion()

void FNetworkVersion::SetGameCompatibleNetworkProtocolVersion ( uint32  GameCompatibleNetworkProtocolVersion)
static

Sets the game compatible network protocol version used for networking and invalidate cached values

◆ SetGameNetworkProtocolVersion()

void FNetworkVersion::SetGameNetworkProtocolVersion ( uint32  GameNetworkProtocolVersion)
static

Sets the game network protocol version used for networking and invalidate cached values

◆ SetProjectVersion()

void FNetworkVersion::SetProjectVersion ( const TCHAR InVersion)
static

Sets the project version used for networking. Needs to be a function to verify string and correctly invalidate cached values

Parameters
InVersion
Returns
void

Member Data Documentation

◆ bHasCachedNetworkChecksum

bool FNetworkVersion::bHasCachedNetworkChecksum = false
staticprotected

◆ bHasCachedReplayChecksum

bool FNetworkVersion::bHasCachedReplayChecksum = false
staticprotected

◆ CachedNetworkChecksum

uint32 FNetworkVersion::CachedNetworkChecksum = 0
staticprotected

◆ CachedReplayChecksum

uint32 FNetworkVersion::CachedReplayChecksum = 0
staticprotected

◆ EngineCompatibleNetworkProtocolVersion

uint32 FNetworkVersion::EngineCompatibleNetworkProtocolVersion = FEngineNetworkCustomVersion::ReplayBackwardsCompat
staticprotected

◆ EngineNetworkProtocolVersion

uint32 FNetworkVersion::EngineNetworkProtocolVersion = FEngineNetworkCustomVersion::LatestVersion
staticprotected

◆ GameCompatibleNetworkProtocolVersion

uint32 FNetworkVersion::GameCompatibleNetworkProtocolVersion = 0
staticprotected

◆ GameNetworkProtocolVersion

uint32 FNetworkVersion::GameNetworkProtocolVersion = 0
staticprotected

◆ GetLocalNetworkVersionOverride

FNetworkVersion::FGetLocalNetworkVersionOverride FNetworkVersion::GetLocalNetworkVersionOverride
static

◆ GetReplayCompatibleChangeListOverride

FNetworkVersion::FGetReplayCompatibleChangeListOverride FNetworkVersion::GetReplayCompatibleChangeListOverride
static

◆ IsNetworkCompatibleOverride

FNetworkVersion::FIsNetworkCompatibleOverride FNetworkVersion::IsNetworkCompatibleOverride
static

The documentation for this struct was generated from the following files: