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

#include <RPCDoSDetection.h>

+ Inheritance diagram for FRPCDoSStateConfig:

Public Member Functions

virtual ENGINE_API void ApplyImpliedValues () override
 
bool LoadStructConfig (const TCHAR *SectionName, const TCHAR *InFilename=nullptr)
 
void ValidateConfig ()
 
int8 GetHighestTimePeriod () const
 
const TArray< int8 > & GetAllTimePeriods () const
 
void ApplyState (FRPCDoSState &Target)
 
- Public Member Functions inherited from FRPCDoSState
virtual ~FRPCDoSState ()
 
bool HasHitQuota_Count (const FRPCDoSCounters(&PerPeriodHistory)[16], FRPCDoSCounters &InFrameCounter) const
 
bool HasHitQuota_Time (const FRPCDoSCounters(&PerPeriodHistory)[16], FRPCDoSCounters &InFrameCounter) const
 

Public Attributes

FString SeverityCategory
 
bool bEscalationConfirmed = false
 
int16 EscalationCount = 0
 
- Public Attributes inherited from FRPCDoSState
bool bLogEscalate = false
 
bool bSendEscalateAnalytics = false
 
bool bKickPlayer = false
 
bool bTrackRecentRPCs = false
 
int16 EscalateQuotaRPCsPerFrame = -1
 
int16 EscalateTimeQuotaMSPerFrame = -1
 
int16 EscalateQuotaRPCsPerPeriod = -1
 
int16 EscalateTimeQuotaMSPerPeriod = -1
 
int8 EscalateQuotaTimePeriod = -1
 
int8 EscalationCountTolerance = 1
 
int16 EscalationTimeToleranceMS = -1
 
int16 RPCRepeatLimitPerPeriod = -1
 
int16 RPCRepeatLimitMSPerPeriod = -1
 
int8 RPCRepeatLimitTimePeriod = -1
 
int16 CooloffTime = -1
 
int16 AutoEscalateTime = -1
 
double EscalateTimeQuotaSecsPerFrame = 0.0
 
double EscalateTimeQuotaSecsPerPeriod = 0.0
 
double RPCRepeatLimitSecsPerPeriod = 0.0
 
double EscalationTimeToleranceSeconds = 0.0
 

Detailed Description

Configuration for RPC DoS Detection states

Member Function Documentation

◆ ApplyImpliedValues()

void FRPCDoSStateConfig::ApplyImpliedValues ( )
overridevirtual

FRPCDoSStateConfig

Reimplemented from FRPCDoSState.

◆ ApplyState()

void FRPCDoSStateConfig::ApplyState ( FRPCDoSState Target)

Applies the loaded config state, to an object implementing RPC DoS State's. NOTE: Does not use reflection, as this does not work with multiple inheritance.

Parameters
TargetThe object implementing FRPCDoSState, to apply the config settings to.

◆ GetAllTimePeriods()

const TArray< int8 > & FRPCDoSStateConfig::GetAllTimePeriods ( ) const

Gets all counter time periods specified by the RPC DoS state settings

Returns
All of the time periods in the state config settings

◆ GetHighestTimePeriod()

int8 FRPCDoSStateConfig::GetHighestTimePeriod ( ) const

Gets the highest counter time period specified by RPC DoS state settings (used for limiting 'CounterPerPeriodHistory' size)

Returns
The highest counter time period in the state config settings

◆ LoadStructConfig()

bool FRPCDoSStateConfig::LoadStructConfig ( const TCHAR SectionName,
const TCHAR InFilename = nullptr 
)

Uses reflection to load all struct config variables from the specified ini section. NOTE: Reflection does not work with multiple inheritance.

Parameters
SectionNameThe ini section name containing the struct configuration
InFilenameThe ini filename to read from
Returns
Whether or not the struct config variables were read successfully

◆ ValidateConfig()

void FRPCDoSStateConfig::ValidateConfig ( )

Validates loaded struct config variables

Member Data Documentation

◆ bEscalationConfirmed

bool FRPCDoSStateConfig::bEscalationConfirmed = false

Runtime values Whether or not reaching this escalation stage has been 'confirmed' for analytics

◆ EscalationCount

int16 FRPCDoSStateConfig::EscalationCount = 0

The number of times this stage has been escalated to

◆ SeverityCategory

FString FRPCDoSStateConfig::SeverityCategory

The name of the RPC DoS severity level this config section represents


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