Viper Anti-Dupe
Viper Anti-Dupe is a high-performance, Server-Side ONLY configurable anti-duplication mod for Minecraft. Blocks 25+ known dupe methods with zero client mods required. Fully configurable per-method — choose what to block and what to allow. 🔒✨
介绍
Viper Anti-Dupe
Viper Anti-Dupe is a server-side Fabric mod that blocks item and block duplication exploits on Minecraft servers. It works only on the server: players do not need to install anything. Protection is applied through server-side guards on block interactions, entity behavior, hoppers, pistons, containers and incoming player packets, so common duplication methods are stopped before extra items can be created.
Supported versions
| Minecraft | Java | Fabric Loader | Notes |
|—|—|—|—|
| 1.21 – 1.21.11 | 21 | 0.19.3+ | Full support, 25 blocked methods |
| 26.1 – 26.1.2 | 25 | 0.19.3+ | Full support, 25 blocked methods |
| 26.2 | 25 | 0.19.3+ | Full support, 25 blocked methods |
| 26.3 | 25 | 0.19.5+ | Full support, 26 blocked methods (adds shelf protection) |
Download the file whose supported Minecraft versions match your server. Fabric API is required on all versions.
How it works
- Every known duplication method has its own on/off switch in the config file. Each switch defaults to blocking.
- When a blocked duplication attempt is detected, the action is cancelled and the attempt is written to the audit log with a timestamp, the player name and the dupe type.
- Suspicious inventory packets (desynced container clicks, invalid stack splits, invalid creative-mode stacks) are cancelled and the player’s container is re-synced.
- A configurable list of known dupable items lets you flag risky items. The mod ships with a default list covering rails, carpets, concrete powder, shulker boxes, gravity blocks, TNT, books, tridents, bee nests and related items.
- Configuration can be reloaded in game without restarting the server.
Config semantics
In config/viper-anti-dupe.json, each dupe method key follows one rule:
false= the method is BLOCKED (the mod prevents it). This is the default.true= the method is ALLOWED (the mod does not interfere with it).
Setting a method to true does not create an exploit; it only turns off this mod’s protection for that method.
Blocked methods
| Method | Config key | What it stops |
|—|—|—|
| Book dupe | BookDupe | Oversized or invalid book edits used to duplicate written books |
| Shulker box nesting | ShulkerBoxDupe | Shulker boxes hidden inside other containers beyond the nesting limit |
| Rail dupe | RailDupe | Piston-driven rail duplication |
| Carpet dupe | CarpetDupe | Piston-driven carpet duplication |
| Horse quick-move | HorseQuickMoveDupe | Shift-click transfers in horse inventories that duplicate items |
| Stack split | StackSplitDupe | Invalid slot-click splits that create extra items |
| Hopper dupe | HopperDupe | Suspicious hopper transfers |
| Piston dupe | PistonDupe | TNT and other blocks duplicated by piston movement |
| Entity dimension dupe | EntityDimensionDupe | Duplication through vehicle detach and dimension changes |
| Trident dupe | TridentDupe | Thrown-trident collision duplication |
| Bee dupe | BeeDupe | Breaking bee nests and beehives for extra drops |
| Tripwire dupe | TripwireDupe | Tripwire update and break duplication |
| String dupe | StringDupe | Tripwire string duplication, with optional legacy restoration |
| Lectern dupe | LecternDupe | Invalid lectern book operations and takes |
| Tripwire hook dupe | TripwireHookDupe | Tripwire hook duplication, with optional legacy restoration |
| Gravity block dupe | GravityBlockDupe | Falling sand, gravel, anvil and similar block duplication |
| NBT list dupe | NBTListDupe | Oversized or malformed NBT data beyond MaximumItemNbtBytes |
| Item frame dupe | ItemFrameDupe | Rapid item-frame breaks that duplicate the held item |
| Update suppression | UpdateSuppressionDupe | Update-suppression based duplication setups |
| Container desync | ContainerDesyncDupe | Desynced container transactions, re-syncs the player container |
| Death dupe | DeathDupe | Rapid repeated deaths used to duplicate drops |
| Chunk rollback | ChunkRollbackDupe | Chunk save-state rollback duplication |
| Portal dupe | PortalDupe | Portal travel duplication |
| Bundle dupe | BundleDupe | Invalid bundle content removal |
| Crafter dupe | CrafterDupe | Rapid crafter firing used to duplicate output |
| Shelf dupe | ShelfDupe | Rapid shelf swap and break duplication with the 26.3 shelf blocks (26.3 file only) |
General config options
| Option | Default | Description |
|—|—|—|
| ConfigVersion | 1 | Config format version, managed by the mod |
| ModEnabled | true | Master switch for all protection |
| LoggingEnabled | true | Write blocked attempts to the audit log |
| DetailedAuditLogging | false | Log allowed actions in addition to blocked ones |
| NotifyOperators | true | Notify online operators when something is blocked |
| CancelSuspiciousTransactions | true | Cancel suspicious inventory transactions instead of only logging them |
| RestoreLegacyStringDupeWhenAllowed | true | Restore legacy string behavior when the string method is allowed |
| RestoreLegacyTripwireHookDupeWhenAllowed | true | Restore legacy tripwire hook behavior when that method is allowed |
| MaximumBookPages | 100 | Maximum pages accepted in an edited book |
| MaximumBookPageLength | 1024 | Maximum characters accepted per book page |
| MaximumItemNbtBytes | 2097152 | Maximum NBT payload size accepted per item |
| MaximumContainerNestingDepth | 8 | Maximum container-in-container nesting depth |
| TransactionHistoryTicks | 200 | How long inventory transactions are remembered for checks |
| DuplicateEntityDetectionTicks | 100 | Time window used for duplicate entity detection |
| OperatorPermissionLevel | 4 | Reserved operator permission level setting |
| KnownDupableItems | (built-in list) | Item IDs flagged as known dupable, manageable with the item commands |
New options are added to an existing config file automatically with their defaults; your other settings are kept.
Commands
All commands start with /viperantidupe and must be run by a player in game.
| Command | Description |
|—|—|
| /viperantidupe reload | Reload the config file without restarting |
| /viperantidupe status | Show mod version, enabled state, and blocked/allowed method counts |
| /viperantidupe methods | List every dupe method with its current BLOCKED or ALLOWED state |
| /viperantidupe get <method> | Show whether one method is ALLOWED or BLOCKED |
| /viperantidupe set <method> <true/false> | Allow (true) or block (false) one method, saved to the config |
| /viperantidupe item get <id> | Check whether an item ID is flagged as known dupable |
| /viperantidupe item set <id> <true/false> | Flag or unflag an item ID as known dupable |
| /viperantidupe dumpitems | Write every registered item ID to config/viper-anti-dupe-items.json |
| /viperantidupe dumpknown | Write the known-dupable item list to config/viper-anti-dupe-known-items.json |
| /viperantidupe audit | Show the 50 most recent audit log entries in chat |
Installation
- Install Fabric Loader on your server (0.19.3 or newer for 1.21.x, 26.1.x and 26.2; 0.19.5 or newer for 26.3).
- Install Fabric API for your Minecraft version.
- Put the matching Viper Anti-Dupe file into the server
modsfolder. - Start the server once so
config/viper-anti-dupe.jsonis created, then adjust the toggles to taste. - Run
/viperantidupe reloadin game after editing the config, or restart the server.
Audit entries are also appended to the log file configured by the logging options.
常见问题
Viper Anti-Dupe 支持哪些 Minecraft 版本?
Viper Anti-Dupe 支持 Minecraft Java 版 1.21–26.3,共 17 个版本,可用的加载器:Fabric。下载时注意选择和你游戏版本一致的文件。
Viper Anti-Dupe 怎么安装?
先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。运行环境:仅服务端。
Fabric Server Essentials 的其他作品
查看全部 →
Vein Miner
Viper Vein Miner 是一款轻量级的服务端连锁采集模组。挖掘一块矿石或一根原木,即可一次性采完整条相连矿脉。
Viper AntiXray
ViperAntiXray 是一款性能极高、完全在 Fabric 服务端运行的实用工具,可彻底屏蔽客户端 X 光雷达,保护服务器经济系统。
Custom Dimensions
服务端 Fabric 模组,支持持久化自定义维度和双向传送门。
Custom Dimensions
服务端 Fabric 模组,用于持久化自定义维度与双向传送门。
评论
登录后评论和评分