跳到正文

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

  1. 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).
  2. Install Fabric API for your Minecraft version.
  3. Put the matching Viper Anti-Dupe file into the server mods folder.
  4. Start the server once so config/viper-anti-dupe.json is created, then adjust the toggles to taste.
  5. Run /viperantidupe reload in 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 的其他作品

查看全部 →