Tags
Creators
Details
All versions
4.7.1
Release
Better Anti Dupe 4.7.1last week 144
Compatibility
Minecraft: Java Edition
1.21.x
Platforms
Bukkit
Folia
Paper
Purpur
Spigot
Changes
[4.7.1] - 2026-10-17
Added
- Owner marks are signed. Every mark is signed with a secret only your server knows, kept in
plugins/BetterAntiDupe/mark-signing.key. A mark made by hand, in creative mode, with an item editor or a/givecommand, does not match, so it is ignored and can no longer be used to frame another player. Staff get an alert when someone holds an item with a faked mark. Servers sharing a Redis database share the secret by themselves; servers sharing items another way need the same file. New settingsownership.signed_marksandownership.unsigned_marks. - Marks from before the upgrade are signed as players carry them. On a server that used the plugin before, older marks stay trusted and get signed during the normal checks. Once
/adp marksshows hardly any being signed, setownership.unsigned_marks: IGNORE. A brand-new server never trusts unsigned marks. /adp marksshows the key in use, whether older marks are trusted, and how many were signed or found faked since the last start./adp fixstacks [player]fixes items that look the same but will not stack, by giving that player's mark to their unmarked items and updating their older marks. Items marked to someone else are left alone.- API level 2.
ownership().state(stack)tells signed, older, faked and other-server marks apart, and alerts have a new kind,FORGED_MARK.
Fixed
- Shift-click crafting gave items that would not stack. Only the first item of a shift-click craft got the crafter's mark, so crafting a stack of diamonds into blocks gave one marked block and the rest unmarked, and the two would not stack. Every crafted item is now marked.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:dlVLKfYZ:9wk94bo1"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:dlVLKfYZ:9wk94bo1"
}

