Checks Overview
AsyncAnticheat modules implement various checks to detect different types of cheating. This section documents the available checks, how they work, and how to configure them.
Check Categories
Movement Checks
Detect speed hacks, fly hacks, and other movement-related cheats.
- Speed - Horizontal movement speed violations
- Fly - Unauthorized flight detection
- NoFall - Fall damage bypass
- Phase - Moving through solid blocks
- Step - Stepping up blocks too quickly
Combat Checks
Detect killaura, reach hacks, and other combat cheats.
- Reach - Hitting from too far away
- Killaura - Automated combat detection
- Velocity - Knockback modification
- AutoClicker - Abnormal click patterns
Interaction Checks
Detect scaffold, nuker, and other block interaction cheats.
- Scaffold - Automated bridge building
- Nuker - Fast block breaking
- FastPlace - Rapid block placement
- Inventory - Inventory manipulation cheats
Check Naming Convention
Checks follow a hierarchical naming pattern:
category.type.subtypeExamples:
speed.ground- Speed on groundspeed.air- Speed while airbornefly.creative- Creative-mode fly detectionreach.attack- Attack reach violation
Severity Levels
Each finding includes a severity indicating its seriousness:
| Severity | Description | Typical Action |
|---|---|---|
low | Minor anomaly, possibly legitimate | Log only |
medium | Moderate suspicion | Warn player |
high | Strong indication of cheating | Kick player |
critical | Definitive cheat detection | Ban player |
Modules determine severity based on the confidence and impact of the detection. Multiple low-severity findings from the same player may indicate a pattern worth investigating.
Violation Tracking
Modules can track violation levels (VL) internally to accumulate evidence over time before emitting a finding. This is stored in the module’s per-player state and decays between batches:
- Typical decay: 1 VL per 10 seconds
- No violations for 60 seconds: Reset to 0
- When VL crosses a threshold, a finding is emitted with the appropriate severity
Check Feasibility
Different checks have varying effectiveness in async analysis:
✅ Well-Suited for Async
- Speed checks (clear packet patterns)
- Fly checks (gravity violations)
- Reach checks (distance calculations)
- Click pattern analysis
⚠️ Challenging for Async
- Timer checks (requires precise timing)
- Phase checks (needs world state)
- FastUse checks (item timing sensitive)
❌ Not Suitable for Async
- Instant checks (require server-side response)
- World-dependent checks (need block data)
Check Configuration
Per-check configuration via module settings:
{
"checks": {
"speed": {
"enabled": true,
"sensitivity": 1.0,
"max_vl_per_batch": 100
},
"fly": {
"enabled": true,
"creative_exempt": true
}
}
}