AntiAdminAbuse(AAA)
PluginMIT

AntiAdminAbuse(AAA)

No more Admin Abuse with this Plugin

30
Downloads
1
Followers
1 months ago
Updated
📦
2
Versions

📖About AntiAdminAbuse(AAA)

🛡️ 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)
  • /give command 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

  • /time and /weather are logged and rate-limited
  • Optional blocking when the limit is exceeded
  • /say and /broadcast are immediately reported to all admins (anti-fake-broadcast)
  • /stop and /reload are restricted to SuperAdmins

👑 OP Protection

  • Every OP grant triggers an immediate notification to all admins
  • Optional: /op can 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

  1. Use Paper 1.21.1 (or newer) as your server software
  2. Drop AAAPlugin-2.0.0.jar into your plugins/ folder
  3. Start the server — config.yml is generated automatically
  4. Run /aaachecks to see all active checks and their current status
  5. 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.