Class PrimitiveCheatingDetector
Detects unexpected value modifications of protected primitive types, commonly caused by memory editing tools.
Implements
Inherited Members
Namespace: GUPS.AntiCheat.Detector
Assembly: cs.temp.dll.dll
Syntax
public class PrimitiveCheatingDetector : ADetector
Remarks
The detector is notified directly by the protected primitives (
Examples
React to tampering detected by any
using GUPS.AntiCheat;
using GUPS.AntiCheat.Detector;
var detector = AntiCheatMonitor.Instance.GetDetector<PrimitiveCheatingDetector>();
detector.OnCheatingDetectionEvent.AddListener(status =>
{
Debug.LogWarning($"Cheat detected (threat={status.ThreatRating}, fp={status.PossibilityOfFalsePositive}).");
});
Fields
OnCheatingDetectionEvent
Unity event raised on every detection. Useful to wire up reactions through the inspector without writing an
Declaration
public CheatingDetectionEvent<CheatingDetectionStatus> OnCheatingDetectionEvent
Field Value
| Type | Description |
|---|---|
| CheatingDetectionEvent<CheatingDetectionStatus> |
Properties
IsSupported
Gets a value indicating whether the detector is supported on the current platform.
Declaration
public override bool IsSupported { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Overrides
Name
Gets the human-readable name of the detector.
Declaration
public override String Name { get; }
Property Value
| Type | Description |
|---|---|
| String |
Overrides
PossibilityOfFalsePositive
Gets the possibility of a false positive (in the range [0.0, 1.0]) reported with each detection.
Declaration
public float PossibilityOfFalsePositive { get; }
Property Value
| Type | Description |
|---|---|
| System.Single |
PossibleCheatingDetected
Gets a value indicating whether the detector has observed possible cheating activity.
Declaration
public override bool PossibleCheatingDetected { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
Overrides
ThreatRating
Gets the threat rating reported with every detection. Higher values denote greater perceived threats.
Declaration
public override uint ThreatRating { get; protected set; }
Property Value
| Type | Description |
|---|---|
| System.UInt32 |
Overrides
Methods
OnCompleted()
Called when an observed subject signals completion.
Declaration
public override void OnCompleted()
Overrides
OnError(Exception)
Called when an observed subject reports an error.
Declaration
public override void OnError(Exception _Error)
Parameters
| Type | Name | Description |
|---|---|---|
| Exception | _Error | The error reported by the observed subject. |
Overrides
OnNext(IWatchedSubject)
Invoked by the protected primitive types when they observe an unexpected modification. Notifies all subscribed observers and listeners of the detected cheating.
Declaration
public override void OnNext(IWatchedSubject _Subject)
Parameters
| Type | Name | Description |
|---|---|---|
| IWatchedSubject | _Subject | The watched subject reporting the modification. |