GwAntiCheat - BDS Bedrock Edition Anti Cheating Plugin

brief introduction
GwAntiCheat (GAC) is a multifunctional Minecraft Bedrock BDS server anti cheat plugin developed based on the LeviLamina Script Engine (LSE). The plugin provides comprehensive anti cheating protection, effectively maintaining a fair gaming environment on the server.

function characteristics
Core anti cheating module

movement detection
Mobile speed detection: intelligent detection of abnormal mobile speed
Flight detection: detecting flight behavior in non creative mode
Support flight speed configuration: speed limit can be set separately in flight state
Intelligent exemption: automatic exemption for teleportation, death rebirth, and other situations

Combat detection
Attack frequency limit: prevent linkers and kill halos
Gibbon detection: detecting attacks/interaction distances beyond the normal range
NoFall detection: detects cheating without falling injuries

Item detection
Illegal stacking detection: detect abnormal stacking based on item type
32k weapon detection: detecting weapons with abnormal attack power
Enchanting level detection: limit excessive enchanting levels
NBT label detection:
Repair cost detection
Item locking detection
Death does not fall detection
Custom name and description length restrictions
Hidden image box content detection: Check for illegal items inside the hidden image box
Special item detection:
Fireworks rocket (flight time, explosion effect)
Finished book (page count, content length)
Enchanted Book (Enchanted Quantity)
Prohibited Items: Configurable List of Prohibited Items
Automatic repair: Automatically correct NBT data of violating items

Chat protection
Backwash screen: Limit message sending frequency
Message length limit: prevent excessively long messages
Command selector filtering: prevent misuse of @ e and other selectors

system protection
Anti fake OP: Automatically detect and remove illegally obtained OP permissions
Player identity authentication: Verify player XUID, UUID and other information
Anti Illegal Client: Detecting Unknown Clients
Experience limitation: Limit the number of experiences obtained at a time
Packet loss detection: detecting abnormal network packet loss rates
management function

White List System
Add/Remove Whitelist Players
Whitelist players are exempt from all tests

Ban system
Automatically ban players who have violated the rules too many times
Manual unsealing function
Persistent storage of banned records

Violation feedback
Console log output
In game broadcasting (optional)
Pattern form warning (optional)
Violation tolerance system

installation
Ensure that LeviLamina is installed on the server
Download GwAntiCheat.js file
Place the file in plugins/GwAntiCheat/directory
(Optional) If you need to use the fake seed feature, please install GMLIB-LegacyRemoteCallApi
Restart the server or reload the plugin using commands

Configuration Description
The configuration file is located in plugins/GwAntiCheat/config/config.json
JSON:
//Movement speed detection
movement: {
enabled: true,
maxBlocksPerSecond: 15, //Normal moving speed
maxBlocksPerSecondFlying: 30, //Movement speed during flight
checkFlyingSpeed: false, //Check flight speed (not detected when false)
checkInterval: 1000,
exemptAfterTeleport: 5000, //Increase to 5 seconds
ExemptAfterDeath: 10000//Increase to 10 seconds
},
//Fake seeds
fakeSeed: {
enabled: false, //Default closed, requires GMLIB
seed: 1145141919810
},
//Enchanting detection
enchantment: {
enabled: true,
maxLevel: 32, //Upgrade to level 32
CheckInterval: 1000//Increase to 5 seconds
},
//Anti fake OP
antiOp: {
enabled: true,
checkInterval: 2000
},
//Attack frequency detection
combat: {
enabled: true,
maxAttacksPerSecond: 30, //Raise to 30
checkWindow: 1000
},
//Experience testing
experience: {
enabled: true,
MaxExperiencePerGain: 5000//Increased to 5000
},
//Anti illegal client
antiIllegalClient: {
enabled: false, //Default shutdown, may cause misjudgment
kickUnknownOS: true
},
//Preventing Gibbons
reach: {
enabled: true,
maxReachDistance: 8, //Raise to 8 grids
MaxPlaceDistance: 10//Increased to 10 grids
},
//Backwash screen
antiSpam: {
enabled: true,
maxMessagesPerSecond: 5, //Increase to 5 items
checkWindow: 5000,
muteTime: 3000
},
//Message length limit
messageLength: {
enabled: true,
MaxLength: 50//Increased to 500
},
//Item detection
itemCheck: {
enabled: true,
maxStackSize: 64, //Maximum stacking quantity (some items should be 1 or 16)
checkStackSize: true, //Check the stacking quantity
checkIllegalNBT: true, //Check for illegal NBT
checkShulkerBox: true, //Check the contents of the latent image box
maxRepairCost: 40, //Maximum repair cost
max32kDamage: 100, //Maximum attack damage (preventing 32k weapons)
BannedItems: [//List of prohibited items
"minecraft:bedrock",
"minecraft:barrier",
"minecraft:command_block",
"minecraft:chain_command_block",
"minecraft:repeating_command_block",
"minecraft:structure_block",
"minecraft:jigsaw",
"minecraft:light_block",
"minecraft:border_block",
"minecraft:allow",
"minecraft:deny"
],
checkInterval: 1000
},
//Command selector filtering
commandFilter: {
enabled: true,
BlockeSelect: ["@ e"]//Only disable @ e
},
//Player authentication
authentication: {
enabled: false, //Default shutdown
checkName: true,
checkXuid: true,
checkUuid: true
},
//Packet loss detection
packetLoss: {
enabled: false, //Default shutdown
maxPacketLoss: 50,
checkInterval: 5000
},
//Anti cheating feedback
feedback: {
logToConsole: true,
broadcastInGame: false, //Default not broadcasting
maxViolations: 20, //Increase to 20 times
useBan: false, //Default not banned
showModalWarning: true
}

Commands
All commands require administrator privileges (OP)
Command Description
/Gac whitelist add<player name>Add player to whitelist
/GAC whitelist remove<player name>Remove player from whitelist
/GAC Whitelist List View Whitelist List List
/GAC reload reloads configuration file
/GAC Status View plugin status and module activation status
/GAC unban<player name/XUID>unblocks designated players
/Gac check<player name>Check player status and items

Data Storage
The plugin data is stored in the plugins/GwAntiCheat/data/directory:
The log files are stored in logs/GwAntiCheat. log

Usage suggestions
First use
Observation mode: It is recommended to set feedback.broadcastInGame and feedback.useBan to false first
Adjust threshold: Adjust various detection thresholds according to the server situation
Viewing logs: Understanding detection status through log files
Gradually activate: Confirm no misjudgments before implementing stricter measures
performance optimization
Unnecessary detection modules can be disabled to improve performance
Adjust the checkInterval to balance performance and security
It is recommended to increase various thresholds appropriately for large servers
Compatibility Description
Supports all standard Minecraft Bedrock editions
Compatible with most other LSE plugins
The fake seed function requires additional installation of pre installed LRCA such as GMLIB
If no fake seeds are needed, GMLIB installation is not required

precautions
Treatment of misjudgment: if misjudgment is found, please add the player to the white list first, and then adjust the relevant threshold
Item repair: The plugin will automatically repair the NBT of the violating item instead of directly deleting it
Data backup: It is recommended to regularly backup files in the data directory
Permission management: Ensure that only trusted administrators have GAC command permissions

Update log
v1.0.0 (2025-03-31)
Initial refactoring version release
A complete anti cheating detection system
Intelligent item NBT repair function
White list and ban system
Detailed configuration options

Support and Feedback
If you encounter any problems or have functional suggestions, please contact us through the following methods:
Join QQ group: 582138529

Open source protocol
This project is open sourced under the MIT license, as detailed in the LICENSE document.