GameplayTags.PrintReportOnShutdown
GameplayTags.PrintReportOnShutdown
#Overview
name: GameplayTags.PrintReportOnShutdown
This variable is created as a Console Variable (cvar).
- type:
Var
- help:
Print gameplay tag replication report on shutdown
It is referenced in 2
C++ source files.
#Summary
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Source/Runtime/GameplayTags/Private/GameplayTagsModule.cpp:27
Scope: file
Source code excerpt:
#if !(UE_BUILD_SHIPPING || UE_BUILD_TEST)
int32 GameplayTagPrintReportOnShutdown = 0;
static FAutoConsoleVariableRef CVarGameplayTagPrintReportOnShutdown(TEXT("GameplayTags.PrintReportOnShutdown"), GameplayTagPrintReportOnShutdown, TEXT("Print gameplay tag replication report on shutdown"), ECVF_Default );
#endif
void FGameplayTagsModule::ShutdownModule()
{
#if !(UE_BUILD_SHIPPING || UE_BUILD_TEST)
#Loc: <Workspace>/Engine/Source/Runtime/GameplayTags/Private/GameplayTagContainer.cpp:50
Scope: file
Source code excerpt:
* Setting up your project to take advantage of the packed format.
* -Run a normal networked game on non shipping build.
* -After some time, run console command "GameplayTags.PrintReport" or set "GameplayTags.PrintReportOnShutdown 1" cvar.
* -This will generate information on the server log about what tags replicate most frequently.
* -Take this list and put it in DefaultGameplayTags.ini.
* -CommonlyReplicatedTags is the ordered list of tags.
* -NetIndexFirstBitSegment is the number of bits (not including the "more" bit) for the first segment.
*
*/
void SerializeTagNetIndexPacked(FArchive& Ar, FGameplayTagNetIndex& Value, const int32 NetIndexFirstBitSegment, const int32 MaxBits)
{
// Case where we have no segment or the segment is larger than max bits
if (NetIndexFirstBitSegment <= 0 || NetIndexFirstBitSegment >= MaxBits)
{
if (Ar.IsLoading())
{
Value = 0;
}
Ar.SerializeBits(&Value, MaxBits);
return;
}
const uint32 BitMasks[] = {0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7f, 0xff, 0x1ff, 0x3ff, 0x7ff, 0xfff, 0x1fff, 0x3fff, 0x7fff, 0xffff};
const uint32 MoreBits[] = {0x00, 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, 0x100, 0x200, 0x400, 0x800, 0x1000, 0x2000, 0x4000, 0x8000};
const int32 FirstSegment = NetIndexFirstBitSegment;
const int32 SecondSegment = MaxBits - NetIndexFirstBitSegment;