# SCUE6 (Secure-Client) — Anti-Cheat Plugin for Unreal Engine 5.6+ (UE6-ready rewrite)> **Fork credit / original author**>> This project is a fork of **[BrUnOXaVIeRLeiTE/SCUE5-Plugin](https://github.com/BrUnOXaVIeRLeiTE/SCUE5-Plugin)**> by **Bruno Xavier B. Leite**, the original author of the SCUE4/SCUE5 "Secure-Client"> anti-cheat system. All credit for the original design and implementation belongs to him.>> This fork ([Louiml/SCUE5-Plugin-updated](https://github.com/Louiml/SCUE5-Plugin-updated))> modernizes the plugin for Unreal Engine 5.6/5.7 (UE6-ready), improves the anti-cheat> capabilities (per-install encryption, real x64 anti-debug, code-integrity checks,> module scanning, anti-injection hooks, server-side movement validation, encrypted> heartbeat telemetry, and a rewritten external C++ Game-Guard), and fixes a number of> latent bugs — while preserving the original Blueprint-facing API so existing projects> keep compiling.>> The original system is published on the Unreal Engine Marketplace; Epic Games'> Marketplace terms still apply (see the original LICENSE below).Full rewrite of the SCUE5 plugin: per-install encryption, real 64-bit anti-debug,code integrity checks, module/DLL scanning, anti-injection hooks, server-sidemovement validation, encrypted heartbeat telemetry, and an external C++ Game-Guard.## Known Limitations* Runtime module builds for **UE 5.6/5.7 Windows Win64** (won't break packaging for other platforms — non-Win64 builds compile out the guard code).* The optional **kernel driver** (`SCGuardDriver/`) is not included in this pass; it requires a separate WDK project and EV-code-signing/WHQL attestation. The plugin builds and runs **without** the driver (graceful degradation).* Anti-injection hooks require the vendored MinHook (see below). If absent, that one detector is disabled; everything else still runs.## Requirements* Unreal Engine **5.6** or **5.7**.* To build the external Game-Guard: **CMake** + **Visual Studio 2022** (x64).* (Optional) MinHook source vendored under `Source/SCUE5/Private/ThirdParty/MinHook/`.## How To Use — install1. Close the Unreal Editor.2. Copy the `Plugins/SCUE5` folder into your UE project's `Plugins/` directory.3. Right-click your `.uproject` → **Generate Visual Studio project files**, then open the `.uproject`.4. In the Editor: **Edit → Project Settings → Maps & Modes** → set **Game Instance Class** to `SafeGameInstance`. If you have a custom GameInstance, re-parent it to `USafeGameInstance`.5. (Recommended) **Edit → Project Settings → Synaptech → Anti-Cheat Settings** → enable **bUsePerInstallKey** for per-install encryption. The first run generates a random key at `Saved/Config/SCUE5.key` (XOR-encrypted with a machine-ID mask so it's non-portable).## How To Use — build the external Game-Guard (recommended)The in-process guard always runs. The external guard adds out-of-process detectionthat a cheat patching the game cannot disable.```shcd Plugins\SCUE5\Source\ThirdParty\SCUE6Guardcmake -S . -B build -G "Visual Studio 17 2022" -A x64cmake --build build --config Releasecopy build\Release\SCUE6Guard.exe ..\x64\```The plugin auto-launches `SCUE6Guard.exe` with the game PID and connects over anamed pipe (`\\.\pipe\SCUE6Guard_<pid>`).## How To Use — vendor MinHook (optional, enables anti-injection)```shcd Plugins\SCUE5\Source\SCUE5\Private\ThirdPartygit clone --depth 1 https://github.com/TsudaKageyu/minhook MinHook````SCUE5.Build.cs` auto-detects the folder and enables the hooking code.## Safe TypesThe encrypted `FSafe*` types (Bool/Byte/Int/Float/Name/String/Text/Vector2D/3D/4D/Color/Rotator/Transform) keep their **identical Blueprint API** from v2.x, soexisting Blueprints compile unchanged. Internally they now store`sentinel + nonce + CRC8 + payload` substitution-encoded strings and raise atamper event if the in-memory string is altered.## Server-side validation`USCUE6ServerValidatorComponent` (reference) + the `FServerValidator` API validatereplicated Safe-Type blobs authoritatively. Wire the kick/ban response to yoursession system via the `OnThreatDetected` Blueprint event on the GameInstance.## TelemetryHeartbeat is written to `Saved/Logs/SCUE6_heartbeat.log` by default. Set`TelemetryEndpoint` to an HTTPS URL to POST payloads instead (provide your own`ISCTelemetrySink` for custom transports).## Architecture```Source/SCUE5/ Public/ SCUE5.h — Settings, GameInstance, Guard Subsystem (aggregator) Crypto/ — SecureRandom, SubstitutionCipher, IntegrityHash SafeTypes/ — macro-generated encrypted value types + operators Guard/ — AntiDebug, ModuleScanner, AntiInjection, GuardClient Validation/ — MovementValidator, HeartbeatClient Private/ Crypto/, Guard/, Validation/ — implementations SCUE5.cpp — subsystem wiring Blueprints/SCLibrary.* — Blueprint function library (regenerated, API preserved)Source/ThirdParty/SCUE6Guard/ — standalone C++ external guard (CMake)```## FAQs (updated)* **Will my old save-games still load?** Yes — the default cipher is the original ASCII substitution table, so existing encoded values decode unchanged. Enable `bUsePerInstallKey` for new installs only.* **Performance?** Get/Set is ~0.01ms (string encode/decode). Integrity CRC runs every 30s (configurable) off the game thread.* **Does Safe Types support SaveGame?** Yes — `Base`/`Shift`/`Flag`/`Internal` are `SaveGame`-tagged, identical to v2.---**Original author:** Copyright (C) Bruno Xavier B. Leite — see[BrUnOXaVIeRLeiTE/SCUE5-Plugin](https://github.com/BrUnOXaVIeRLeiTE/SCUE5-Plugin).**Fork modifications** (UE6-ready rewrite + anti-cheat improvements): Louiml([Louiml/SCUE5-Plugin-updated](https://github.com/Louiml/SCUE5-Plugin-updated)).Licensed per Epic Games Marketplace terms (original).