UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
EngineNetworkCustomVersion.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreTypes.h"
6#include "Misc/Guid.h"
7
8enum UE_DEPRECATED(5.1, "Using custom versions instead going forward, see FEngineNetworkCustomVersion") EEngineNetworkVersionHistory
9{
10 HISTORY_INITIAL = 1,
11 HISTORY_REPLAY_BACKWARDS_COMPAT = 2, // Bump version to get rid of older replays before backwards compat was turned on officially
12 HISTORY_MAX_ACTOR_CHANNELS_CUSTOMIZATION = 3, // Bump version because serialization of the actor channels changed
13 HISTORY_REPCMD_CHECKSUM_REMOVE_PRINTF = 4, // Bump version since the way FRepLayoutCmd::CompatibleChecksum was calculated changed due to an optimization
14 HISTORY_NEW_ACTOR_OVERRIDE_LEVEL = 5, // Bump version since a level reference was added to the new actor information
15 HISTORY_CHANNEL_NAMES = 6, // Bump version since channel type is now an fname
16 HISTORY_CHANNEL_CLOSE_REASON = 7, // Bump version to serialize a channel close reason in bunches instead of bDormant
17 HISTORY_ACKS_INCLUDED_IN_HEADER = 8, // Bump version since acks are now sent as part of the header
18 HISTORY_NETEXPORT_SERIALIZATION = 9, // Bump version due to serialization change to FNetFieldExport
19 HISTORY_NETEXPORT_SERIALIZE_FIX = 10, // Bump version to fix net field export name serialization
20 HISTORY_FAST_ARRAY_DELTA_STRUCT = 11, // Bump version to allow fast array serialization, delta struct serialization.
21 HISTORY_FIX_ENUM_SERIALIZATION = 12, // Bump version to fix enum net serialization issues.
22 HISTORY_OPTIONALLY_QUANTIZE_SPAWN_INFO = 13, // Bump version to conditionally disable quantization for Scale, Location, and Velocity when spawning network actors.
23 HISTORY_JITTER_IN_HEADER = 14, // Bump version since we added jitter clock time to packet headers and removed remote saturation
24 HISTORY_CLASSNETCACHE_FULLNAME = 15, // Bump version to use full paths in GetNetFieldExportGroupForClassNetCache
25 HISTORY_REPLAY_DORMANCY = 16, // Bump version to support dormancy properly in replays
26 HISTORY_ENUM_SERIALIZATION_COMPAT = 17, // Bump version to include enum bits required for serialization into compat checksums, as well as unify enum and byte property enum serialization
27 HISTORY_SUBOBJECT_OUTER_CHAIN = 18, // Bump version to support subobject outer chains matching on client and server
28 HISTORY_HITRESULT_INSTANCEHANDLE = 19, // Bump version to support FHitResult change of Actor to HitObjectHandle. This change was made in CL 14369221 but a net version wasn't added at the time.
29 HISTORY_INTERFACE_PROPERTY_SERIALIZATION = 20, // Bump version to support net serialization of FInterfaceProperty
30 HISTORY_MONTAGE_PLAY_INST_ID_SERIALIZATION = 21,// Bump version to support net serialization of FGameplayAbilityRepAnimMontage, addition of PlayInstanceId and removal of bForcePlayBit
31 HISTORY_SERIALIZE_DOUBLE_VECTORS_AS_DOUBLES = 22,// Bump version to support net serialization of double vector types
32 HISTORY_PACKED_VECTOR_LWC_SUPPORT = 23, // Bump version to support quantized LWC FVector net serialization
33 HISTORY_PAWN_REMOTEVIEWPITCH = 24, // Bump version to support serialization changes to RemoteViewPitch
34 HISTORY_REPMOVE_SERVERFRAME_AND_HANDLE = 25, // Bump version to support serialization changes to RepMove so we can get the serverframe and physics handle associated with the object
35 HISTORY_21_AND_VIEWPITCH_ONLY_DO_NOT_USE = 26, // Bump version to support up to history 21 + HISTORY_PAWN_REMOTEVIEWPITCH. DO NOT USE!!!
36 HISTORY_PLACEHOLDER = 27, // Bump version to a placeholder. This version is the same as HISTORY_REPMOVE_SERVERFRAME_AND_HANDLE
37 HISTORY_RUNTIME_FEATURES_COMPATIBILITY = 28, // Bump version to add network runtime feature compatibility test to handshake (hello/upgrade) control messages
38 HISTORY_SOFTOBJECTPTR_NETGUIDS = 29, // Bump version to support replicating SoftObjectPtrs by NetGuid instead of raw strings.
39 HISTORY_SUBOBJECT_DESTROY_FLAG = 30, // Bump version to support subobject destruction message flags
40 HISTORY_GAMESTATE_REPLCIATED_TIME_AS_DOUBLE = 31, // Bump version to support AGameStateBase::ReplicatedWorldTimeSeconds as double instead of float.
41 HISTORY_CUSTOMVERION = 32, // Bump version to switch to using custom versions
42 // New history items go above here.
43
46};
47
49{
50 enum Type
51 {
52 // Before any version changes were made
54
55 // Original replay versions from ENetworkVersionHistory
57 ReplayBackwardsCompat = 2, // Bump version to get rid of older replays before backwards compat was turned on officially
58 MaxActorChannelsCustomization = 3, // Bump version because serialization of the actor channels changed
59 RepCmdChecksumRemovePrintf = 4, // Bump version since the way FRepLayoutCmd::CompatibleChecksum was calculated changed due to an optimization
60 NewActorOverrideLevel = 5, // Bump version since a level reference was added to the new actor information
61 ChannelNames = 6, // Bump version since channel type is now an fname
62 ChannelCloseReason = 7, // Bump version to serialize a channel close reason in bunches instead of bDormant
63 AcksIncludedInHeader = 8, // Bump version since acks are now sent as part of the header
64 NetExportSerialization = 9, // Bump version due to serialization change to FNetFieldExport
65 NetExportSerializeFix = 10, // Bump version to fix net field export name serialization
66 FastArrayDeltaStruct = 11, // Bump version to allow fast array serialization, delta struct serialization.
67 FixEnumSerialization = 12, // Bump version to fix enum net serialization issues.
68 OptionallyQuantizeSpawnInfo = 13, // Bump version to conditionally disable quantization for Scale, Location, and Velocity when spawning network actors.
69 JitterInHeader = 14, // Bump version since we added jitter clock time to packet headers and removed remote saturation
70 ClassNetCacheFullName = 15, // Bump version to use full paths in GetNetFieldExportGroupForClassNetCache
71 ReplayDormancy = 16, // Bump version to support dormancy properly in replays
72 EnumSerializationCompat = 17, // Bump version to include enum bits required for serialization into compat checksums, as well as unify enum and byte property enum serialization
73 SubObjectOuterChain = 18, // Bump version to support subobject outer chains matching on client and server
74 HitResultInstanceHandle = 19, // Bump version to support FHitResult change of Actor to HitObjectHandle. This change was made in CL 14369221 but a net version wasn't added at the time.
75 InterfacePropertySerialization = 20, // Bump version to support net serialization of FInterfaceProperty
76 MontagePlayInstIdSerialization = 21, // Bump version to support net serialization of FGameplayAbilityRepAnimMontage, addition of PlayInstanceId and removal of bForcePlayBit
77 SerializeDoubleVectorsAsDoubles = 22, // Bump version to support net serialization of double vector types
78 PackedVectorLWCSupport = 23, // Bump version to support quantized LWC FVector net serialization
79 PawnRemoteViewPitch = 24, // Bump version to support serialization changes to RemoteViewPitch
80 RepMoveServerFrameAndHandle = 25, // Bump version to support serialization changes to RepMove so we can get the serverframe and physics handle associated with the object
81 Ver21AndViewPitchOnly_DONOTUSE = 26, // Bump version to support up to history 21 + PawnRemoteViewPitch. DO NOT USE!!!
82 Placeholder = 27, // Bump version to a placeholder. This version is the same as RepMoveServerFrameAndHandle
83 RuntimeFeaturesCompatibility = 28, // Bump version to add network runtime feature compatibility test to handshake (hello/upgrade) control messages
84 SoftObjectPtrNetGuids = 29, // Bump version to support replicating SoftObjectPtrs by NetGuid instead of raw strings.
85 SubObjectDestroyFlag = 30, // Bump version to support subobject destruction message flags
86 GameStateReplicatedTimeAsDouble = 31, // Bump version to support AGameStateBase::ReplicatedWorldTimeSeconds as double instead of float.
87 CustomVersions = 32, // Bump version to switch to using custom versions
88 DynamicMontageSerialization = 33, // Bump version to support dynamic montage serialization in the Gameplay Ability System
89 PredictionKeyBaseNotReplicated = 34, // Bump version to stop FPredictionKey::Base from being replicated (it was unused).
90 RepMoveOptionalAcceleration = 35, // Bump version to support serialization changes to RepMove for optional Acceleration
91 CustomExports = 36, // Bump version to support CustomExports (such as NetTokens used for supporting "Dynamic Replication" of GameplayTags -- see FGameplayTag::NetSerialize_Packed) // -----<new versions can be added above this line>-------------------------------------------------
92 MontagePlayCountSerialization = 37, // Bump version to support serialization changes for dynamic montage play count
93 RemoteObjectReferences = 38, // Bump version to support serialization changes for remote object references
94 BeaconNetIDVariant = 39, // Bump version for online beacon's BeaconAssignGUID control message switching to use FNetIDVariant
95 JoinNoPawn = 40, // Bump version to support NMT_JoinNoPawn and NMT_JoinNoPawnSplit control messages.
96 ClientHandshakeId = 41, // Bump version to support serialization of APlayerController::ClientHandeshakeId.
97 PawnRemoteViewPitchTo16Bit = 42, // Bump version to support higher precision PawnRemoteViewPitch
98 CloseChildConnection = 43, // Bump version to support closing child connections with NMT_CloseChildConnection.
99
100 // -----<new versions can be added above this line>-------------------------------------------------
103 };
104
105 // The GUID for this custom version number
106 CORE_API const static FGuid Guid;
107
109};
110
112{
113 enum Type
114 {
115 // Before any version changes were made
117
118 // -----<new versions can be added above this line>-------------------------------------------------
121 };
122
123 // The GUID for this custom version number
124 CORE_API const static FGuid Guid;
125
127};
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition EngineNetworkCustomVersion.h:49
CORE_API static const FGuid Guid
Definition EngineNetworkCustomVersion.h:106
Type
Definition EngineNetworkCustomVersion.h:51
@ RepMoveOptionalAcceleration
Definition EngineNetworkCustomVersion.h:90
@ ClientHandshakeId
Definition EngineNetworkCustomVersion.h:96
@ ClassNetCacheFullName
Definition EngineNetworkCustomVersion.h:70
@ BeforeCustomVersionWasAdded
Definition EngineNetworkCustomVersion.h:53
@ PredictionKeyBaseNotReplicated
Definition EngineNetworkCustomVersion.h:89
@ HitResultInstanceHandle
Definition EngineNetworkCustomVersion.h:74
@ NewActorOverrideLevel
Definition EngineNetworkCustomVersion.h:60
@ RuntimeFeaturesCompatibility
Definition EngineNetworkCustomVersion.h:83
@ DynamicMontageSerialization
Definition EngineNetworkCustomVersion.h:88
@ InterfacePropertySerialization
Definition EngineNetworkCustomVersion.h:75
@ CloseChildConnection
Definition EngineNetworkCustomVersion.h:98
@ RepCmdChecksumRemovePrintf
Definition EngineNetworkCustomVersion.h:59
@ MontagePlayInstIdSerialization
Definition EngineNetworkCustomVersion.h:76
@ LatestVersion
Definition EngineNetworkCustomVersion.h:102
@ OptionallyQuantizeSpawnInfo
Definition EngineNetworkCustomVersion.h:68
@ MontagePlayCountSerialization
Definition EngineNetworkCustomVersion.h:92
@ FastArrayDeltaStruct
Definition EngineNetworkCustomVersion.h:66
@ RemoteObjectReferences
Definition EngineNetworkCustomVersion.h:93
@ SerializeDoubleVectorsAsDoubles
Definition EngineNetworkCustomVersion.h:77
@ NetExportSerialization
Definition EngineNetworkCustomVersion.h:64
@ BeaconNetIDVariant
Definition EngineNetworkCustomVersion.h:94
@ Placeholder
Definition EngineNetworkCustomVersion.h:82
@ PawnRemoteViewPitchTo16Bit
Definition EngineNetworkCustomVersion.h:97
@ MaxActorChannelsCustomization
Definition EngineNetworkCustomVersion.h:58
@ VersionPlusOne
Definition EngineNetworkCustomVersion.h:101
@ GameStateReplicatedTimeAsDouble
Definition EngineNetworkCustomVersion.h:86
@ Ver21AndViewPitchOnly_DONOTUSE
Definition EngineNetworkCustomVersion.h:81
@ CustomExports
Definition EngineNetworkCustomVersion.h:91
@ RepMoveServerFrameAndHandle
Definition EngineNetworkCustomVersion.h:80
@ FixEnumSerialization
Definition EngineNetworkCustomVersion.h:67
@ Initial
Definition EngineNetworkCustomVersion.h:56
@ SoftObjectPtrNetGuids
Definition EngineNetworkCustomVersion.h:84
@ CustomVersions
Definition EngineNetworkCustomVersion.h:87
@ JitterInHeader
Definition EngineNetworkCustomVersion.h:69
@ AcksIncludedInHeader
Definition EngineNetworkCustomVersion.h:63
@ SubObjectDestroyFlag
Definition EngineNetworkCustomVersion.h:85
@ PackedVectorLWCSupport
Definition EngineNetworkCustomVersion.h:78
@ NetExportSerializeFix
Definition EngineNetworkCustomVersion.h:65
@ JoinNoPawn
Definition EngineNetworkCustomVersion.h:95
@ PawnRemoteViewPitch
Definition EngineNetworkCustomVersion.h:79
@ ReplayDormancy
Definition EngineNetworkCustomVersion.h:71
@ SubObjectOuterChain
Definition EngineNetworkCustomVersion.h:73
@ ReplayBackwardsCompat
Definition EngineNetworkCustomVersion.h:57
@ ChannelCloseReason
Definition EngineNetworkCustomVersion.h:62
@ EnumSerializationCompat
Definition EngineNetworkCustomVersion.h:72
@ ChannelNames
Definition EngineNetworkCustomVersion.h:61
Definition EngineNetworkCustomVersion.h:112
CORE_API static const FGuid Guid
Definition EngineNetworkCustomVersion.h:124
Type
Definition EngineNetworkCustomVersion.h:114
@ VersionPlusOne
Definition EngineNetworkCustomVersion.h:119
@ LatestVersion
Definition EngineNetworkCustomVersion.h:120
@ BeforeCustomVersionWasAdded
Definition EngineNetworkCustomVersion.h:116
Definition Guid.h:109