Dupewatcher is a Bukkit/Spigot anti-cheat investigation plugin focused on duplicate item detection, economy intelligence, and staff-driven case management.
- Adaptive Machine Learning: an intelligent system that refines detection accuracy from staff review decisions.
- Cryptographic Item Hashing: unique salted hashes for every item.
- UUID Instance Fingerprinting: immutable per-item instance fingerprints for cloned-item detection.
- Real-Time Asynchronous Inventory Scanning: scans inventories without blocking the server thread.
- Full NBT Analysis: inspects custom item data and modded item metadata.
- Weighted Suspicion Scoring: only raises alerts when multiple independent risk factors align.
- Context-Aware Alerts: compares player gains against server-wide economic norms.
- Growth Pattern Recognition: flags suspicious geometric or exponential balance changes.
- Dirty Money Tracing: trails illicit currency as it moves through players and economy channels.
- Smart Activity Filtering: excludes legitimate income sources like vote rewards and shop sales.
- Impossible Balance Spike Detection: detects sudden, unnaturally large balance surges.
- Three Threat Strictness Profiles: Low, Normal, and Aggressive tracking modes.
- Container Interaction Timelines: records chest, barrel, and storage block histories.
- Cross-Session Block Edit Correlation: links block edits across sessions for setup pattern detection.
- Player Network Analysis: maps item and money exchange relationships to identify mule or alt networks.
- Evidence Chain Logging: full chronological timelines of suspicious activity with timestamps.
- Staff Collaboration Tools: persistent internal case notes and investigator updates.
- Offline Inventory Inspection: audit player inventory, ender chest, and equipment while offline.
- Automatic CoreProtect Integration: captures relevant block and container history around incidents.
- One-Click Case Export: export investigation data as structured files for backup or discord review.
- Interactive Item Spread Graphs: visualize how a suspected item traveled through the server.
- Visual Money Flow Propagation Maps: map currency transfer paths and laundering behavior.
- Hotspot Heatmaps: display high-frequency container action and suspicious interaction zones.
- Hotspot Teleportation: jump directly to suspicious coordinates discovered by heatmaps.
- 99% GUI-Driven Workflow: manage cases, rules, and analytics through in-game inventory menus.
- In-Hand Rule Creation: build custom watch rules from an item held in hand.
- Custom Threshold Configuration: define item-specific detection and quantity thresholds.
- Flexible Trigger Actions: choose Alert, Remove, or custom Command execution.
- Rich Embed Webhooks: send formatted alerts to Discord staff channels.
- Configurable Alert Thresholds: reduce noise by only notifying on high-certainty cases.
- Case Summary Links: include quick-access evidence links inside Discord alerts.
- Developer API Flags: expose hooks and plugin flags for third-party integrations.
- Zero TPS Impact Architecture: offloads heavy processing off the main server thread.
- High Concurrent Player Optimization: built for 100–500+ player environments.
- Smart Caching Engine: caches high-frequency data to reduce database load.
- Batch Operations: groups database writes to minimize I/O overhead.
/dt— Opens the main review interface dashboard./dt help— Lists all available system commands./dt reload— Hot-reloads all plugin configuration files./dt scan <player>— Forces a manual real-time scan on a specific user./dt case <id>— Pulls up a specific investigation file by its identification number./dt export <id>— Exports the case raw data./dt confiscate <player>— Directly strips flagged items from a user's inventory./dt graph <player>— Renders the item spread visualization graph./dt confiscategraph <player>— Automatically strips items globally based on spread mapping./dt heatmap <caseId>— Projects a block interaction heatmap for a case./dt money <player>— Reviews a player's current financial tracking status./dt moneygraph <player>— Maps a player's currency transfer relationships./dt containerwatch view <player>— Opens historical container transaction logs./dt containerwatch clear <player>— Flushes container transaction logs for a player./dt coreprotect status— Validates current CoreProtect integration health./dt stats <type>— Generates overall engine statistics./dt cleanup— Purges cached heatmap and analytics entries./dt database— Displays database health and connection metrics.
Requires Java 17 and Maven.
mvn clean packageCopy the generated target/Dupewatcher-1.0.0.jar into your server plugins/ folder.
dupewatcher.admindupewatcher.reviewdupewatcher.scandupewatcher.alertsdupewatcher.confiscatedupewatcher.moneywatch.viewdupewatcher.containerwatch.viewdupewatcher.containerwatch.cleardupewatcher.statsdupewatcher.reload