All versions
0.2.0
Release
InventoryBackup 0.2.03 weeks ago 161
Compatibility
Minecraft: Java Edition
26.3
26.2
26.1.x
1.21.8ā1.21.11
Platforms
Paper
Purpur
Spigot
Changes
[0.2.0] - 2026-10-01
New Features
- Spigot NBT storage: One plugin JAR selects Paper/Purpur's native item byte API or an internal CraftBukkit codec. New backups stay on
format-version: 3with compressed Minecraft item NBT anddata-version. - Cross-platform archives: Backups move between tested Spigot, Paper and Purpur servers on the same Minecraft version and upgrade to a newer tested version. Newer data versions are rejected instead of being applied.
- Historical backups stay readable: Unmodified 0.0.7 and 0.1.0 archives, including multiline Base64 and 41-slot inventories, load through the original ObjectStream path. Existing files are not rewritten. Legacy shulker and other block-entity contents are upgraded before metadata decoding.
- Safe startup: The NBT adapter runs a round trip before configuration, the pre-upgrade ZIP, or inventory migration. An unsupported server, Folia, or a failed self-test disables the plugin and leaves the archive untouched.
- Update checks follow the detected loader: Modrinth results are matched to Spigot, Paper, or Purpur instead of accepting every loader.
Compatibility
- Tested on Minecraft 1.21.8, 1.21.10, 1.21.11, 26.1.2, 26.2 and 26.3 for Spigot, Paper and Purpur. Paper and Purpur 1.21.9 are included. No exact Spigot 1.21.9 build exists. Minecraft 26.3 is experimental. Details and limits are in COMPATIBILITY.md.
- Java 21 for Minecraft 1.21.x and Java 25 for Minecraft 26.1+.
- The public backup and restore API, events, and
InventoryBackupAPI.API_VERSION(2) are unchanged. The API artifact coordinate iscom.zfzfg:InventoryBackup-API:0.2.0.
Behavior
- A
pre-nbt-upgrade-<timestamp>.zipof the plugin data is created once before new-format writes. - The public legacy serializer helpers are ObjectStream pairs again. New backups use the explicit NBT codec. Legacy and NBT payloads cannot be read as each other.
- The running Minecraft data version comes from the server itself. The adapters no longer call
Bukkit.getUnsafe(). - Player-name folders still migrate to UUID folders (
storage-version: 2) after the pre-upgrade ZIP.
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:rpKY25cW:egjrgyl0"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:rpKY25cW:egjrgyl0"
}

