Polymart is now Voxel Shop! We're upgrading many features of the site, and during this open beta you will experience occasional bugs. Learn more  
DupeWatch Advanced Anti-Dupe icon

DupeWatch Advanced Anti-Dupe 1.3.3

⚡ DupeWatch: Most Advanced next-gen Anti-dupe plugin for Paper/Spigot🚫✨

Page 1 2
1.3.3 25 days ago
Bug fixes and improvements in DupeWatch v1.3.3 - 2026-05-03

What’s fixed?


 


Duplicate detection is now significantly faster.
Fixed an issue where identical items in a player’s inventory were not always detected correctly. This happened because the player wasn’t being flagged before new IDs were assigned, allowing duplicates to slip through.


 


 




 


What’s new?


 


Auto-Fingerprinting


 


Non-stackable items are now automatically assigned unique IDs.
This means custom armor, weapons, and other valuable non-stackables no longer need to be manually added one by one.


 


Stackable items are not included in this system and must still be added to the watchlist manually. (spawners, ores, etc)


 

1.3.2 28 days ago
Folia Support is finally here!, Bug fixes and more in DupeWatch v1.3.2 - 2026-04-30

🚀 Folia support is here
Took long enough. The plugin works with Folia now, concurrent region scheduling without everything catching fire.


🔴 Critical fixes
Services were initializing twice in onEnable(). That's fixed. Listeners don't duplicate on reload anymore either.
Race conditions in ChatInputManager and GuiManager are gone. ActiveFlagManager uses dirty tracking now, blocking calls got pulled out of hot paths, and flag clearing went from O(N) to O(K). There was also a sneaky ItemStack mutation bug that was corrupting data silently, that's dead.
License startup runs async safe, which it should have been doing from the start.


🟡 Detection tweaks
Thresholds are configurable now instead of hardcoded. Growth detection moved to config driven logic. ESCALATED states actually trigger deep scans instead of doing nothing useful.
Odd increment detection does something now. Added grace windows for world switches and new rules. Player join tracking got more consistent, which matters more than it sounds like it does.


🚀 Performance stuff
Watchlist updates batch process. Debug logging rate limits per player so you don't get 10,000 lines in three seconds. Heatmap writes buffer in batches. Regex patterns precompile, about time. All the existing async systems are still there.


🏗️ Code cleanup
CommandSanitizer has a strict allowlist. Ripped out dead code. CaseManager API is cleaner. Registry getters don't mutate anymore. TrollService was hitting the wrong players sometimes, that's fixed.


🎨 UI improvements
Alert tooltips are better. Quick action buttons added to alerts. Console output format changed. CaseView GUI has a summary panel now. Discord embeds are more customizable.
ConfigValidator shows warnings on startup if something's misconfigured. Added /dw status to see the full system state at a glance.


✨ New features
Per rule growth sensitivity, bumps the schema to v12. /dw export csv if you want to pull data out. /dw player <name> summary command. Case archiving works as soft delete now.
Heatmap overlays by detection type. ML rarity overrides if you need them. Automated false positive reporting, off by default. Startup grace period so the plugin doesn't freak out while the server warms up.

1.3.1 Apr 16, 2026
Machine Learning, Big fixes and more in DupeWatch v1.3.1 - 2026-04-16

New Stuff

  • Machine Learning Engine — Full on-device ML dupe detection powered by Tribuo (Random Forest). Staff vote on cases, the model learns from feedback and retrains automatically. ML confidence is shown in case views with colour-coded percentages (green ≥70%, yellow 40-70%, red <40%). Includes anomaly detection, concept drift monitoring, shadow A/B model testing, player risk scoring, and counterfactual explanations. New commands: /dw ml status, /dw ml retrain, /dw ml export, /dw ml import. All data stays on your server.

  • Bundled ML Training Data — Ships with a pre-trained dataset from GraveMC. On first startup the plugin auto-imports it and trains a model so new servers get working ML detection out of the box — no manual voting or setup needed. (Although it is recommend that you vote for each case accuratly so overtime the system learns everything about your server also all of this data is local only so you dont have to worry about you're data being leaked its fully running on your machine!)

  • ML Vote GUI — Staff can vote DUPE/LEGIT on cases directly from the Case View. Votes feed the ML model with weighted voting and spam protection built in.

  • Performance Dashboard — New in-game GUI showing ML metrics: accuracy, F1 score, prediction times, cache hit rates, and class distribution. (this is mostly for debugging)

  • Quarantine System — Lock flagged items in quarantine instead of deleting them. Staff can browse per-player quarantine via a new GUI and choose to return or delete each item. Returned items are treated as fresh/clean with no residual detection history.

  • Pay-All detection — the plugin now detects a player sending money to a lot of people in a certain time period.

Bug Fixes

  • Fixed Item Count in Rule Commands — Was always reporting "2" regardless of how many items the player had. Now counts real matching items across inventory, ender chest, and shulker boxes.

  • Identity Engine Fixes — Rewrote ContainerIdentityScanner, DupeDetectionEngine, ItemIdentityManager, StackIdHandler, and OwnershipRegistry for stability.

  • Scan Service Refactor — Major cleanup of ScanService and ScanBasedDetectionService to reduce false positives and improve reliability.

  • FingerprintUtil Overhaul — Stripped out legacy fingerprint code, reduced file by ~370 lines.


    PS: the plugin is much bigger now it was roughly 9.6mb before and now its around 24mb! this is because we added a machine learning system into the mix 
1.2.9 Mar 20, 2026
Quarantine System and more in DupeWatch v1.2.9 - 2026-03-20

New Stuff


 

  • Quarantine System - Lock flagged items in quarantine instead of deleting them. Staff can browse per-player quarantine via a new GUI and choose to return or delete each item. Returned items are treated as fresh/clean with no residual detection history.
  • Discord Role Pings — Webhook alerts can now ping a Discord role. Configurable minimum severity and cooldown so you don't get spammed.
  • Troll Mode - Optional per-rule feature that crashes a suspected duper's client. Both a global on/off switch and a per-rule toggle keep you in control.

Bug Fixes


 

  • Fixed Item Count in Rule Commands - Was always reporting "2" regardless of how many items the player had. Now counts real matching items across inventory, ender chest, and shulker boxes.
  • Quarantine Identity Reset - Items returned from quarantine no longer get immediately re-flagged.

Under the Hood


 

  • c3p0 connection pool updated from 0.10.1 → 0.12.0.
1.2.8 Mar 15, 2026
DupeWatch Changelog 1.2.8 - 03, 15, 2026

⚡ New: Rule Commands (Automatic Punishments)


 


You can now attach commands directly to detection rules.


 


 


Example:
If a player is caught with 500 duplicated items, DupeWatch can automatically run something like:


 


 


ban {player} Duping detected


 


 


Commands trigger automatically when the rule fires.


 


 


You can configure them in the GUI or inside ruleCommands.yml.


 


 


Supported placeholders:


 


 




  • {player}



  • {item}



  • {count}


 


This allows automatic punishments like bans, kicks, inventory clears, or anything else your server command system supports.


 


 


Full setup guide is available in the Discord.


 


 




 


🐛 Bug Fixes


 


🔍 /dw scan sometimes lied about results


 


The scan system did detect violations correctly, but the final message sometimes told admins:


 


 



"No issues found"



 


Even when something was actually detected.


 


 


The message now properly reflects the real scan results.


 


 




 


💥 Crash when players joined the server


 


Servers with items created by older DupeWatch versions could crash when:


 


 




  • a player joined



  • an item was dropped



  • a scan ran


 


Older versions stored identity data differently.


 


 


Old items used a 32-bit number, while the new system uses a 64-bit number.


 


 


DupeWatch now detects both formats so old items no longer crash the plugin.


 


 




 


⚙️ Auto-punishment commands not running


 


Some servers configured rule commands but nothing happened when rules triggered.


 


 


Two issues caused this:


 


 




  1. Commands were executed from a background thread, which Bukkit does not allow.



  2. Rule IDs reset after every server restart, which sometimes broke rule lookups.



 


Commands now run on the main server thread, and rule IDs now persist across restarts.


 


 




 


🛠 Stability improvements


 


Several internal systems were improved:


 


 




  • Inventory change tracking



  • Money Watch service



  • Surge tracker


 


These changes reduce rare crashes and improve detection reliability.


 


 




 


🔒 Security Fixes


 


🧼 Command injection protection


 


Previously, placeholders like {player} or {item} were inserted directly into console commands.


 


 


In rare situations this could allow malformed values to alter the command being executed.


 


 


Placeholders are now validated and sanitized before commands run.


 


 




 


🚨 Major Stability Fixes


 


🧠 Internal lists could grow forever


 


Some internal lists kept storing data but never removed old entries.


 


 


On active servers this could slowly increase memory usage.


 


 


Old data now cleans itself up automatically, keeping memory usage stable.


 


 




 


👤 Player threat tracking could keep old players forever


 


DupeWatch tracks suspicious activity per player.


 


 


Previously, if players left the server, their threat data could remain stored forever.


 


 


Inactive player data is now automatically removed after a period of time, preventing memory buildup.


 


 




 


🧵 Database threads stayed alive after reload


 


When the plugin reloaded, some background database threads were not shutting down properly.


 


 


Over time this could create unused threads running in the background.


 


 


All database threads now shut down correctly during reload or shutdown.


 


 




 


⏱ A database check ran on the main server thread


 


One diagnostic database check ran directly on the main Minecraft thread.


 


 


On slower databases this could briefly freeze the server.


 


 


That check now runs asynchronously, preventing lag.


 


 




 


⚠️ Rare crash in watchlist system


 


In rare cases the watchlist system could try to access data that did not exist yet.


 


 


Additional safety checks were added to prevent this crash.


 


 




 


💾 Identity data could be lost during a sudden shutdown


 


Identity data used to save every 30 seconds.


 


 


If the server crashed before the next save, some recent identity data could be lost.


 


 


The plugin now forces a final save during shutdown, reducing the chance of data loss.


 


 




 


🔑 Rare race condition when generating the secret key


 


On first startup the plugin generates a secret key file.


 


 


In rare edge cases two processes could attempt to create the file at the same time.


 


 


The file creation process is now locked and atomic, preventing this issue.


 


 




 


🔐 Identity verification hash was too small


 


Only a very small part of a SHA-256 hash was used to verify identity salts.


 


 


The system now uses a larger portion of the hash, making verification more reliable.


 


 




 


⚙️ General Improvements


 


Several internal systems were improved for stability and performance:


 


 




  • Old command tracking data now cleans itself up



  • Plugin reload behavior improved



  • Temporary caches behave more predictably



  • Static counters made thread-safe



  • Configuration values now validated



  • Confiscation request data automatically cleans up



  • Recursive inventory scans now have safe depth limits



  • Statistics tracking made thread-safe



  • Error logging improved for easier debugging


 




 


✨ Additional Improvements


 




  • Configuration loading simplified



  • Shared HTTP client implemented



  • Feature flag system cleaned up



  • Reduced unnecessary object cloning



  • Configuration upgrade process improved



  • Extra safeguards added for ID generation


1.2.7 Mar 13, 2026
HOTFIX 2

id engine was giving new id's to all items regardless if it was in the watchlist or not, this has now been fixed!

1.2.7 Mar 13, 2026
HOTFIX

i accidently removed webhook support from the config.yml now its fixed sorry about that!

1.2.7 Mar 12, 2026
Identity Engine 1.0

This new version introduces an experimental Identity Engine. It is insanely complex and would take years to explain fully, but the short version is that every item on the watchlist now gets a unique, trackable ID. This allows the plugin to detect duplicates across inventories, chests, shulkers, and even nested containers, linking them back to their original owner. It is designed to catch dupes that traditional fingerprinting would miss while intelligently handling stack splits and item transfers to prevent false positives. False positives are still possible, so review everything carefully before banning any user. I also recommend using the threshold or max items option to set a maximum amount per player; even if someone somehow bypasses the plugin, the max amount detection will still catch them.



IT IS RECOMMEND IT TO DELETE AND RE-ADD ALL WATCHLISTED ITEMS AGAIN!

1.2.5 Feb 26, 2026
HOTFIX

evidence were not showing dirty money FIXED!

1.2.5 Feb 26, 2026
DupeWatch v1.2.5 Changelog

Major Features & Improvements

  • New: Intelligent Money Anomaly Detection: DupeWatch now monitors in-game economy activity for signs of money duplication. The system is built to be smart from the ground up. Normal player behavior like selling items at shops won't trigger false alerts. Instead, it focuses on real red flags, like a player's balance suddenly doubling out of nowhere, catching actual dupers without bothering legitimate players.
  • Complete GUI Overhaul: Every single menu in DupeWatch has been rewritten from scratch. The interface is now faster, cleaner, and visually consistent across the board. Navigation is smoother and far more reliable, especially when clicking through multiple menus quickly.
  • Economy Monitoring & Money Spread Graph: DupeWatch can now track in-game economy changes through Vault integration. A brand-new interactive graph lets you visually trace how dirty money flows from player to player, accessible directly from the player cases menu. Perfect for catching money duplication and tracing where duped currency ends up.

Database & Data Persistence

  • Suspected Players Remembered Across Restarts: If DupeWatch flags a player's money as suspicious, that information is now saved to your database. Server crashes and restarts no longer wipe ongoing investigations.
  • Database Engine Upgrade: Under the hood, the database system has been restructured to handle future updates and migrations more reliably.

Bug Fixes

  • Custom Items Now Properly Tracked: Fixed an issue where items with heavy customization, including custom names, lore, enchantments, and NBT data, weren't being fingerprinted consistently. These items are now accurately identified and tracked during scans.
  • /dw confiscate Fixed: The confiscate command now works correctly both from chat and from the GUI. Previously it could fail due to player name lookup issues.
  • /dw scan Improved: You can now scan a specific player with /dw scan <player> instead of only scanning yourself. The command also now shows clear, color-coded results. Green if the player is clean, red if issues were found. Player names are automatically suggested as you type.
  • Missing Translations Fixed: Resolved console warnings caused by missing text entries in the messages file, particularly for hover text and staff alert messages.

Quality of Life

  • Clearer Settings Descriptions: The "Max Items" setting in the GUI now properly explains what it does. It caps how many item slots are checked per scan to prevent lag, especially useful when players have tons of nested shulker boxes.
  • Cleaner Codebase: Removed thousands of lines of outdated internal documentation and optimized background processes for better overall performance.

 


 


 


 


 


 


DELETE YOUR MESSAGES.YML BEFORE STARTING YOUR SERVER THERE IS A NEW UPDATE THERE TOO!

1.2.4 Feb 20, 2026
DupeWatch Update - v1.2.4 BIG UPDATE

New Features & Enhancements:


 




  • Detection Profiles:
    Introducing a fully configurable Threat-Adaptive Detection System. You can now choose between LOW, NORMAL, and AGGRESSIVE detection modes directly from the main menu.




    • LOW: Conservative scanning; only triggers heavy scans for highly suspicious behavior. Minimal server impact.



    • NORMAL: Balanced detection; standard scanning thresholds and math checks. Default mode.



    • AGGRESSIVE: Maximum vigilance; lowers thresholds, increases suspicion gain, slows decay, expands pattern analysis, and monitors relational container activity for smarter detection. Perfect for high-security servers.



    • Profiles dynamically adjust how DupeWatch evaluates player activity, suspicion scores, and tiered detection (Tier 1 lightweight events vs Tier 2 deep analysis). Switching profiles applies immediately without interrupting ongoing scans.



  • Player SuspicionScore & Lifecycle:




    • Players now move through a structured lifecycle: CLEAN → MONITORED → ESCALATED → COOLDOWN → FLAGGED.



    • Tier 1 detection (pickup events, inventory interactions) feeds the SuspicionScore, which controls escalation to heavier Tier 2 modules (ScanBasedDetectionService, ContainerWatchService).



    • Score decay, threshold modifiers, and dwell-time rules prevent thrashing and ensure accurate, CPU-friendly detection even under heavy activity or macro bursts.



  • Smart Tiered Scanning:




    • Tier 1: Always-on, lightweight event tracking (SurgeTracker, inventory/container listeners). Fire-and-forget signals.



    • Tier 2: Heavy-duty scans triggered only for monitored/escalated players. Includes deep math pattern checks, container content logging, and relational awareness (e.g., if Player A triggers ESCALATED in a container, Player B interacting with the same container is monitored).



    • ScanDispatcher ensures safe snapshot scheduling, rate-limited per tick, and async processing to prevent server freezes.


 


Fixes:


 


 




  • Copper Chest Support: All copper chest variants are now fully detected by DupeWatch. This includes:




    • copper_chest, exposed_copper_chest, weathered_copper_chest, oxidized_copper_chest



    • waxed_copper_chest, waxed_exposed_copper_chest, waxed_weathered_copper_chest, waxed_oxidized_copper_chest
      Items inside any of these chests are now properly scanned, flagged, and included in duplication detection. Double chests using these variants are fully supported.



  • Safety Invariants & Performance:




    • Max snapshots per tick, bounded async queues, ephemeral fingerprint caching, and per-player cooldowns ensure even AGGRESSIVE mode cannot crash the server.



    • Redundant scans are eliminated; coalescing scan requests and tick-level burst clamping keep CPU usage minimal.


 


Other Improvements:


 


 




  • Dynamic hot-swapping of detection profiles from the main menu without restarting the server.



  • All profile changes immediately affect gain, decay, threshold, and Tier 2 analysis depth.



  • Logs and alerts now respect profile settings, giving admins clear, actionable information.


1.2.3 Feb 20, 2026
Custom Items Detections Fixed!

Since update 1.2.1, custom items from EcoItems, MMOItems, and other plugins were not being detected correctly. This update fully resolves that issue. All existing custom item plugins are now supported, and any new custom item plugins will be detected automatically through a dynamic system.

1.2.3 Feb 19, 2026
Null Pointer Fix

There was a small error that happend when you type /dupewatch, its fixed now :)

1.2.3 Feb 7, 2026
Hot Fix

Fixed Real Time Detection.
Fixed Run Commands not running on alert threshold.
Fixed Gui Visual glitch showing that Run commands as OFF but it was enabled

1.2.3 Jan 2, 2026
DupeWatch v1.2.3 – Forensic Insights & Stability
January 2, 2026 - Changelog – v1.2.3
New Features​
CoreProtect Forensic Capture DupeWatch now automatically fetches a history of what a player was doing right before they were flagged.


  • Example: If a player dupes items into a chest, you can now see exactly when they placed that chest and what they put inside it without leaving the menu.​
Hybrid Context Storage The plugin now saves two types of evidence: the "Initial" proof from the first time they were caught, and the "Latest" proof from their Most recent alert.


  • Example: You can compare what they were doing when they first started duping versus what they are doing now to see if they've changed their methods.​
Interactive Forensic Browser A new GUI that lets you scroll through captured CoreProtect actions with easy-to-read time and distance markers.


  • Example: Instead of reading through thousands of console lines, just click "View CoreProtect Context" in the case menu to see the last 10-20 relevant actions.​
Improvements​
Instant Forensic Loading Forensic data is now gathered the very second the first violation occurs, so it's ready when you open the case.


  • Example: No more "Loading..." screen in the GUI; the evidence is there and waiting for you as soon as the alert pops up.​
Console Optimization Moved all detailed CoreProtect parsing data to Debug Mode to keep your server console clean and readable.


  • Example: You’ll only see "Case Created" alerts in the console now, instead of pages of raw database results.​
Growth Detection Support The forensic system now works perfectly with scan-based growth detection.


  • Example: If DupeWatch notices a player's inventory growing suspiciously over time, it will automatically pull the CoreProtect logs for that time period.​
Bug Fixes​

  • Fixed Obfuscation Error: Resolved a crash (NoSuchMethodError
    ) where the plugin couldn't "talk" to CoreProtect after being obfuscated.​

  • API Stability Fix: Fixed an error when trying to grab chat or command logs on newer versions of CoreProtect.​

  • Restored Missing Alerts: Fixed a bug from the previous version where some staff alerts and auto-commands were being skipped.​

  • Memory Safety: Fixed a minor memory leak when querying global chat logs by ensuring the data list is properly cleaned up.​
1.2.2 Nov 6, 2025
Bug fixes and rate limiting

Fixed a bug where you couldn't get scanned automatically unless you added a special thing in the config,

added rate limiting so players cant spam items in and out of chests/inventories to stress the server​

1.2.2 Nov 6, 2025
DupeWatch v1.2.2 – Faster Performance & Smart Alerts

DupeWatch v1.2.2 – Faster Performance & Smart Alerts


November 6, 2025


 


 


Changelog – v1.2.2


 


 


New Features


 


 


Multi-Layer Caching System


DupeWatch now remembers recently checked items so it doesn’t do the same work over and over.


Example: If a player checks the same chest repeatedly, DupeWatch already knows what’s inside and skips extra work.


 


 


Bloom Filter Technology


A fast check that can quickly ignore items you don’t care about.


Example: The plugin can instantly skip regular blocks like dirt or cobblestone without slowing down the server.


 


 


Material Type Filter


Another quick filter that instantly skips items that aren’t being watched.


Example: If you only care about diamonds, it ignores all other blocks right away.


 


 


Improvements


 


 


80%+ CPU Usage Reduction


The plugin now runs much faster and uses less server power.


Example: Before, checking a chest could slow the server; now it’s almost instant.


 


 


Smart Debouncing


Stops multiple checks from triggering at the same time.


Example: If a player quickly opens and closes a chest many times, DupeWatch only checks it once.


 


 


Automatic Cache Warmup


The plugin gradually learns what’s being watched after startup.


Example: During the first few minutes after server start, DupeWatch “warms up” and then works at full speed.


 


 


Alert System Improvements


 


 


Threshold-Based Alerts


Alerts now trigger at multiples of a set number instead of every time.


Example: If your alert threshold is 3, you get alerts at 3, 6, 9 violations instead of constantly at 4, 5, 6, etc.


 


 


Clearer Alert Messages


Alerts now show player, item, count, and threshold in a clean format.


Example: [DupeWatch] Player123 flagged Diamond Sword [15/10] means Player123 has 15 violations and the alert threshold is 10.


 


 


Configuration Enhancements


Settings are now easier to find and use.


Example: You can change alert thresholds or ignore creative mode directly in the plugin menu instead of editing files.


 


 


Bug Fixes


 


 


  • Alerts now trigger correctly at the right counts.



  • Thresholds and intervals now save properly.



  • Silent detection messages no longer spam the console.



  • Settings now persist when moving between menus.


1.2.0 Oct 18, 2025
Aton of bug fixes, and stupid stuff!

If you have reported something in the past week its fixed in this update:
Error with adventure classes,
Added a new silent license verification messages option in the main menu,
Fixed an issue with the edit rule gui glitching out after clicking an option,
made edit rule gui more pretty,
and aton more stuff!​

1.1.9 Oct 11, 2025
DupeWatch v1.1.9 – Smarter Cases, Real Inventory Snapshots, and Cleaner Management

DupeWatch Changelog – v1.1.9 (11-10-2025)


 


 


🧩 New Features


 


 


Inventory Snapshots
DupeWatch now automatically saves full player inventories when suspects leave the server. You can view these snapshots directly from the case menu, even if the player is offline.


 


 


Item Serialization
Added a Base64-based item serializer to reliably store and restore all item data.


 


 


Rule Item Preview
When adding a new rule, the item you select now appears as the actual item instead of a paper icon.


 


 


⚙️ Improvements


 


 


Case Management
Cases now store inventory data and limit the number of notes per case to keep things organized.


 


 


GUI Updates
Improved navigation, layout, and state handling across all rule menus for smoother use.


 


 


Chat Input Handling
Chat-based configuration for thresholds and intervals is now easier and more flexible.


 


 


Database Updates
Expanded the schema to support inventory snapshots and improved performance for data operations.


 


 


🐞 Fixes & Stability


 


 




  • Better handling of player disconnect events to ensure snapshots are always saved correctly.



  • Fixed rare sync issues between active cases and stored data.



  • General cleanup and performance improvements throughout the plugin.


1.1.8 Oct 4, 2025
Container Watch v1.1.8

DupeWatch Changelog – v1.1.8 (04-10-2025)


 


 New Features:


Container Watch: Monitors interactions with containers for flagged players, featuring GUI access, commands to view and clear logs, and optional alerts.


Scheduled Cleanup: Automatically removes old container logs based on configurable retention settings.


 


 Improvements:


Detection Tuning: Enhanced scan-based detection to minimize false positives.


Database Indexing: Optimized queries for improved performance.


Command Enhancements: Improved help and tab completion for commands.


GUI Updates: Refined behavior for Discord webhook toggling.

Page 1 2
Sign in
$19.99 USD
Sign in to purchase, save this product to your cart, and keep downloads tied to your account.
Stripe

antidupe

anti-dupe

anticheat

anti

exploit

shulker

dupe

detector

prevention

security