Tags
Creators
Details
0.5.0
Compatibility
Required content
Changes
Transition from NBT Tags to PersistentDataContainer, Compatibility with Minecraft 1.21, and Important Changes for Existing Items
In the latest update of the AnhyLingo plugin, we’ve implemented several significant changes aimed at improving stability, reliability, and compatibility with newer versions of Minecraft. One of the most critical updates involves transitioning from using NBT tags to the more stable PersistentDataContainer. Additionally, the plugin has been updated to fully support Minecraft 1.21. However, this transition does have implications for items created in earlier versions of the plugin.
Why the Transition to PersistentDataContainer?
Previously, AnhyLingo utilized NBT tags to store and manage item data. However, with each new Minecraft update, the internal structure of the NBT API frequently changes, potentially leading to issues with plugin functionality. These changes required additional effort to maintain compatibility and stability.
By transitioning to PersistentDataContainer, we aim to provide a more stable and secure method for data storage. This API, which is part of Spigot/Bukkit, offers a more reliable solution that is less prone to changes in future Minecraft updates. It also allows for better data management thanks to its type safety and enhanced security features.
Advantages of PersistentDataContainer
- Stability:
PersistentDataContaineroffers greater resilience to changes in Minecraft's internal structures, making it a more reliable choice for plugins. - Type Safety: Support for typed data reduces the likelihood of errors and simplifies data management.
- Security: This API enhances the plugin's security and reduces the risk of data loss or corruption.
Compatibility with Minecraft 1.21
AnhyLingo is now fully compatible with Minecraft 1.21, ensuring that the plugin functions seamlessly on the latest servers. This update guarantees that all new features and capabilities introduced in Minecraft 1.21 are supported, providing uninterrupted gameplay on any modern version of the game.
Important Information for Existing Items
Due to the transition to PersistentDataContainer, items created with versions of the plugin prior to 0.5.0 are not compatible with the current version of AnhyLingo. This means that any items previously using NBT tags for data storage will need to be replaced or updated. To ensure these items work correctly in the new version, they must be supplemented with PersistentDataContainer tags.
We recommend that server administrators review existing items and make the necessary updates to ensure full compatibility with the new data storage format. This will ensure that all AnhyLingo features continue to function as intended.
Conclusion
We understand that these changes may cause some inconvenience, but they are essential for ensuring the long-term stability and reliability of the plugin. The transition to PersistentDataContainer and support for Minecraft 1.21 allow us to continue developing AnhyLingo in the right direction, ensuring stable and high-quality performance on all supported versions of Minecraft.
Thank you for your support and understanding. If you have any questions or need assistance with updating your items, please do not hesitate to reach out to our support team.
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:uKvEKgDV:odbVyUPU"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:uKvEKgDV:odbVyUPU"
}

