Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AddyDefender

AddyDefender is a defensive Paper/Purpur plugin designed to reduce inventory desync, container abuse, and common dupe exploit patterns by enforcing server-authoritative validation of player behavior.

Instead of attempting to detect specific client mods (which can easily hide themselves), AddyDefender focuses on validating what players actually do, making most exploit clients ineffective.


Design Goal

AddyDefender combats the effects of exploit clients rather than trying to prove which client mod a player is running. Client-side detection methods are unreliable because malicious clients can hide or manipulate identifying information.

This plugin instead focuses on server-side behavioral validation and transaction safety.


Modules

AddyDefender is built around modular exploit-mitigation systems.

InventoryDesyncGuard

Applies temporary lock windows after unstable state changes such as:

  • teleport
  • world change
  • respawn
  • vehicle mount/dismount
  • container close

These lock windows prevent inventory interactions during desync-prone transitions.


ContainerRateLimiter

Limits suspicious container interaction patterns:

  • normal clicks
  • shift-clicks
  • hotbar swaps
  • drop actions
  • double-click collect operations

This reduces macro abuse and container spam exploits.


TransactionConsistencyGuard

Ensures container interactions match the server’s expected inventory state.

Rejects actions when:

  • the server believes no valid container is open
  • container states become inconsistent
  • rapid container close/reopen behavior occurs

ItemDropPickupGuard

Monitors and rate-limits:

  • rapid item drops
  • pickup spam
  • drop/pickup interaction loops

These patterns are commonly involved in duplication exploits.


ShulkerAndNestedContainerGuard

Optional protection for nested containers such as shulker boxes.

Helps mitigate:

  • nested container abuse
  • risky container movement patterns

Disabled by default to avoid interfering with normal gameplay.


SuspiciousActionLogger

Writes structured exploit telemetry to:

plugins/AddyDefender/actions.log

Logged information includes:

  • timestamp
  • player name and UUID
  • world and coordinates
  • event type
  • relevant interaction data

This allows administrators to review suspicious behavior without immediately punishing players.


Requirements

AddyDefender targets modern Paper-based servers.

Minimum requirements:

  • Paper or Purpur
  • Minecraft 1.21.4
  • Java 21 or newer

Spigot is not officially supported.


Build From Source

Build using Maven:

mvn clean package

The compiled plugin jar will be generated in:

target/AddyDefender-x.x.x.jar

(The exact version number will match the plugin version defined in the project.)

Note: the target/ directory contains build artifacts and is ignored by Git.


Installation

  1. Download the latest release.
  2. Place the jar in your server’s plugins/ directory.
  3. Restart the server.

Configuration will generate automatically at:

plugins/AddyDefender/config.yml

Configuration

Key configuration sections:

  • inventory-desync-guard.* Lock durations after teleport, world change, respawn, vehicle use, or container close.

  • container-rate-limiter.* Per-second limits for clicks, shift-clicks, swaps, drops, and collect operations.

  • transaction-consistency-guard.* Container state validation settings.

  • item-drop-pickup-guard.* Drop/pickup spam detection thresholds.

  • shulker-nested-guard.* Optional stricter nested container protection.

  • debug-logs Enables detailed logging.

  • staff-alerts.* Sends alerts to online staff when suspicious activity is detected.


Commands

Command Description
/defender reload Reload configuration
/defender status [player] Show module status
/defender debug [player] Show debug state

Permissions

Permission Description
defender.admin Access admin commands
defender.notify Receive staff alerts

Security Philosophy

AddyDefender intentionally does not attempt to detect specific cheat clients.

Client software ultimately controls what it reports to the server, which makes client identification unreliable.

Instead, AddyDefender focuses on:

  • validating server-side inventory state
  • enforcing safe interaction timing
  • rejecting inconsistent container transactions
  • logging suspicious behavior for review

This approach significantly reduces the effectiveness of exploit clients while maintaining low false positives.


What This Plugin Does NOT Do

AddyDefender does not:

  • attempt to identify specific client mods
  • automatically ban players
  • guarantee prevention of every possible exploit

Instead, it reduces common exploit surfaces while preserving normal gameplay.


Contributing

Contributions are welcome.

If you discover an exploit or vulnerability, please open an issue or submit a pull request.

About

A defensive Minecraft plugin that mitigates desync and container-based dupes by validating player actions instead of relying on unreliable client detection.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages