Compatibility
Minecraft: Java Edition
Platforms
Tags
Creators
Details
🛡️ AAA Plugin — Anti Admin Abuse
Complete protection against admin abuse on your Minecraft server.
Every admin action is monitored, logged, and blocked when necessary — fully customizable.
📖 What is the AAA Plugin?
The AAA Plugin (Anti Admin Abuse) is a comprehensive security plugin for Paper 1.21.1, specifically designed to detect, log, and prevent abuse of admin privileges on Minecraft servers. Whether it's gamemode abuse, secret flying, admin griefing, or unfair PvP advantages — the AAA Plugin keeps everything in check.
✨ Feature Overview
🎮 Gamemode Protection
- Configurable list of allowed gamemodes per server
- Cooldown between gamemode switches
- World-based restrictions (e.g. no Creative in the PvP world)
- Every switch is logged including the previous gamemode
✈️ Fly Protection
- All fly activations are logged
- World-based fly bans (e.g. forbidden in
world_pvp) - Fly speed monitoring — automatic reset on violation
- Automatic fly disable during combat (configurable)
💬 Command Protection
- All admin commands are logged
- Configurable list of console-only commands
- Specific commands can be completely blocked for admins
- Rate limiting: maximum commands per minute
- Command spam detection (repeated identical commands)
📡 Teleport Protection
- Cooldowns between teleportations
- Maximum teleports per minute
- Cross-world teleport restrictions
- Only "unnatural" teleports are monitored (no portals, chorus fruit, etc.)
📦 Inventory & Container Protection
- Opening other players' inventories is logged
- Drop limit per minute (prevents item flooding)
/givecommand monitoring with configurable limits- Certain items can be completely blocked from
/give - Ender chest access is always logged
- Admins breaking containers (chests, barrels, etc.) triggers instant alerts
- Forbidden blocks (Bedrock, Command Blocks, etc.) cannot be placed by admins
⚡ Speed Detection
- Detects abnormal movement speed (Walk, Sprint, Fly)
- Lag tolerance: requires 3 consecutive violations before reacting
- Automatic speed reset (configurable)
- Separate tolerance multipliers for Fly and Walk speed
😇 Godmode Detection
- Monitors common godmode commands (
/god,/heal,/effect,/gmc, etc.) - Detects players in Survival mode taking no damage
- Warns on abnormally high HP values
- Alerts on excessive effect amplifiers (e.g. Resistance 10)
⏰ Time & Weather Protection
/timeand/weatherare logged and rate-limited- Optional blocking when the limit is exceeded
/sayand/broadcastare immediately reported to all admins (anti-fake-broadcast)/stopand/reloadare restricted to SuperAdmins
👑 OP Protection
- Every OP grant triggers an immediate notification to all admins
- Optional:
/opcan only be run from the console
👢 Kick/Ban Protection
- Mandatory reason required for kicks and bans
- Minimum character count for reasons
- Maximum kicks per hour / bans per day per admin
- Admins cannot kick each other (only higher-ranked users can)
💬 Chat Protection
- Flood detection with configurable cooldown
- Caps-lock filter with configurable percentage threshold
- Bad word filter with custom word list
- Admin chat is logged separately
❄️ Freeze System
- Players can be completely frozen in place
- Frozen players cannot move, build, interact, or fight
- Automatic freeze after a configurable number of violations
- Admins cannot freeze other admins (without SuperAdmin permission)
🔇 Mute System
- Chat-only mute (players can still play, just not write in chat)
- Temporary or permanent mutes
- List of all muted players (
/aaamute list) - Mute reason and remaining duration are shown to the player
📝 Notes System
- Persistent admin notes on any player
- Visible to all admins
- Notes survive server restarts
- Unlimited notes per player
🔍 Session Tracking
- Every admin session is fully recorded
- On logout, all admins automatically receive a session summary:
- How many commands were executed?
- How many teleports?
- How many gamemode changes?
- Which suspicious actions were detected?
- Active sessions can be viewed in real time (
/aaasession)
📊 Statistics & Ranking
- Persistent statistics per player (commands, teleports, kicks, bans, etc.)
- Top ranking (
/aaatop) across multiple categories - Per-session violation tracking
🔎 Watch System
- Admins can put specific players under enhanced monitoring
- Every action by a watched player triggers a real-time notification
- Optional: movement tracking for watched players
📋 Report System
- Players can submit reports about admins or other players
- Maximum reports per hour per player (configurable)
- Admins can mark reports as resolved
- The reporter is automatically notified when their report is handled
⚙️ Bypass System
- SuperAdmins can grant temporary bypass for legitimate admin work
- Bypass expires automatically after the configured time
- Even with bypass: all actions are still fully logged
🗃️ Logging & Database
- All actions are written to log files
- Automatic log rotation when the maximum file size is exceeded
- Optional MySQL database support
- SQLite as default (no external database server required)
- Logs can be browsed via paginated in-game commands
🤖 Auto Actions
- Automatic reactions at a configurable violation threshold:
- WARN — Warning message sent to the player
- KICK — Automatic kick
- FREEZE — Automatic freeze
- NOTIFY — Notification sent to all admins
💻 Commands
| Command | Permission | Description |
|---|---|---|
/aaa |
aaa.admin |
Help overview & plugin status |
/aaareload |
aaa.admin |
Reload the configuration |
/aaalog [player] [page] |
aaa.admin |
View log (paginated) |
/aaawatch <player> |
aaa.admin |
Put a player under real-time monitoring |
/aaaunwatch <player> |
aaa.admin |
Stop monitoring a player |
/aaastats [player] |
aaa.admin |
View detailed statistics |
/aaachecks |
aaa.admin |
View all active checks and their status |
/aaahistory <player> |
aaa.admin |
Full history including violations |
/aaafreeze <player> [reason] |
aaa.admin |
Completely freeze a player |
/aaaunfreeze <player> |
aaa.admin |
Unfreeze a player |
/aaaalert <on|off> |
aaa.admin |
Toggle your own alert notifications |
/aaasession [player] |
aaa.admin |
View active admin sessions |
/aaatop [category] |
aaa.admin |
Ranking by violations, commands, etc. |
/aaanote <player> add <text> |
aaa.admin |
Add a note to a player |
/aaanote <player> list |
aaa.admin |
View notes on a player |
/aaanote <player> remove <nr> |
aaa.admin |
Remove a note |
/aaamute <player> [min] [reason] |
aaa.admin |
Mute a player in chat |
/aaaunmute <player> |
aaa.admin |
Unmute a player |
/aaareport <player> <reason> |
aaa.use |
Submit a report |
/aaareport list |
aaa.admin |
View open reports |
/aaareport resolve <id> |
aaa.admin |
Mark a report as resolved |
/aaaclear <player> |
aaa.superadmin |
Delete logs for a player |
/aaabypass <player> <min> |
aaa.superadmin |
Grant temporary bypass |
🔑 Permissions
| Permission | Default | Description |
|---|---|---|
aaa.admin |
OP | Access to all admin commands |
aaa.superadmin |
false |
Extended functions (clear, bypass, stop command) |
aaa.use |
true |
User commands (e.g. /aaareport) |
aaa.bypass |
false |
Permanent bypass of all checks |
aaa.notify |
OP | Receives real-time alert notifications |
aaa.exempt |
false |
Completely exempt from monitoring |
aaa.broadcast |
OP | Allowed to use /say and /broadcast |
⚙️ Configuration
The config.yml is fully commented and provides settings for every individual check. Here is an excerpt of the most important sections:
general:
enabled: true
debug: false
prefix: "&8[&c&lAAA&8] "
gamemode:
monitor: true
allowed-gamemodes:
- SURVIVAL
- CREATIVE
cooldown-seconds: 0
fly:
monitor: true
max-fly-speed: 1.0
disable-in-combat: true
containers:
monitor: true
forbidden-place-blocks:
- "BEDROCK"
- "BARRIER"
- "COMMAND_BLOCK"
auto-actions:
enabled: true
actions:
- violations: 3
action: WARN
- violations: 5
action: KICK
- violations: 10
action: FREEZE
📂 File Structure
After the first startup, the plugin creates the following folders:
plugins/AAAPlugin/
├── config.yml ← Fully commented configuration
├── data/
│ ├── player-data.yml ← Persistent player data & cooldowns
│ ├── notes.yml ← Admin notes (persistent)
│ └── aaa-data.db ← SQLite database (optional)
├── logs/
│ └── aaa-log.txt ← All logged admin actions
├── stats/
│ └── player-stats.yml ← Statistics for all players
└── reports/ ← Report data
🛠️ Installation
- Use Paper 1.21.1 (or newer) as your server software
- Drop
AAAPlugin-2.0.0.jarinto yourplugins/folder - Start the server —
config.ymlis generated automatically - Run
/aaachecksto see all active checks and their current status - Adjust the configuration as needed and reload with
/aaareload
Note: The plugin has no external dependencies and works out of the box.
🔧 Technical Details
| Server Software | Paper 1.21.1+ |
| Java Version | Java 21+ |
| Database | SQLite (default) or MySQL |
| Dependencies | None |
| Memory Usage | Minimal (~2–5 MB RAM depending on player count) |
| Performance | All database operations and log writes run asynchronously |
AAA Plugin — because trust is good, but control is better.

