![]() |
Anti-Cheat Toolkit
2024.3.5
Multi-purpose anti-cheat solution for Unity Engine
|
Inherits ACTkDetectorBase< ObscuredCheatingDetector >.
Public Member Functions | |
void | TriggerDetection () |
Static Public Member Functions | |
static ObscuredCheatingDetector | AddToSceneOrGetExisting () |
static ObscuredCheatingDetector | StartDetection () |
static ObscuredCheatingDetector | StartDetection (Action callback) |
static void | StopDetection () |
static void | Dispose () |
Public Attributes | |
bool | honeyPot = true |
double | doubleEpsilon = 0.0001d |
float | floatEpsilon = 0.0001f |
float | vector2Epsilon = 0.1f |
float | vector3Epsilon = 0.1f |
float | quaternionEpsilon = 0.1f |
bool | autoStart |
bool | autoDispose |
Properties | |
ObscuredCheatingDetectionInfo | LastDetectionInfo [get] |
bool | IsCheatDetected [get, protected set] |
bool | IsStarted [get, protected set] |
bool | IsRunning [get, protected set] |
Events | |
Action | CheatDetected |
Detects CodeStage.AntiCheat.ObscuredTypes cheating.
It allows cheaters to find desired (fake) values in memory and change them, keeping original values secure.
It's like a cheese in the mouse trap - cheater tries to change some obscured value and get caught on it.
Just add it to any GameObject as usual or through the "GameObject > Create Other > Code Stage > Anti-Cheat Toolkit" menu to get started.
You can use detector completely from inspector without writing any code except the actual reaction on cheating.
Avoid using detectors from code at the Awake phase.
|
inlinestatic |
Creates new instance of the detector at scene if it doesn't exists. Make sure to call NOT from Awake phase.
|
inlinestatic |
Starts all Obscured types cheating detection for detector you have in scene.
Make sure you have properly configured detector in scene with autoStart disabled before using this method.
|
inlinestatic |
Starts all Obscured types cheating detection with specified callback.
If you have detector in scene make sure it has empty Detection Event.
Creates a new detector instance if it doesn't exists in scene.
callback | Method to call after detection. |
|
inlinestatic |
Stops detector. Detector's component remains in the scene. Use Dispose() to completely remove detector.
|
inlinestatic |
Stops and completely disposes detector component.
On dispose Detector follows 2 rules:
|
inline |
Manually triggers cheating detection and invokes assigned events.
bool honeyPot = true |
Creates fake decrypted values for cheaters to find and hack it, triggering cheating attempts detection.
Disable to make it harder to reveal obscured variables in memory, or keep enabled to catch more casual cheaters.
double doubleEpsilon = 0.0001d |
Max allowed difference between encrypted and fake values in ObscuredDouble. Increase in case of false positives.
float floatEpsilon = 0.0001f |
Max allowed difference between encrypted and fake values in ObscuredFloat. Increase in case of false positives.
float vector2Epsilon = 0.1f |
Max allowed difference between encrypted and fake values in ObscuredVector2. Increase in case of false positives.
float vector3Epsilon = 0.1f |
Max allowed difference between encrypted and fake values in ObscuredVector3. Increase in case of false positives.
float quaternionEpsilon = 0.1f |
Max allowed difference between encrypted and fake values in ObscuredQuaternion. Increase in case of false positives.
|
inherited |
Allows to start detector automatically. Otherwise, you'll need to call StartDetection() method to start it.
Useful in conjunction with proper Detection Event configuration in the inspector. Allows to use detector without writing any code except the actual reaction on cheating.
|
inherited |
Detector component will be automatically disposed after firing callback if enabled. Otherwise, it will just stop internal processes.
On dispose Detector follows 2 rules:
|
get |
Holds detailed information about latest triggered detection.
Can be null if there were no detections or if detection was triggered manually.
|
getprotected setinherited |
Indicates if cheat was detected by this detector.
|
getprotected setinherited |
Allows to check if detector is started (stays true even when it's paused).
|
getprotected setinherited |
Allows to check if detection is currently running and not paused.
|
inherited |
Subscribe to this event to get notified when cheat will be detected.