Tags
Creators
Details
All versions
2.0.0
Release
2.0.0-common-1.21-bluelib.jarlast year 46
Compatibility
Minecraft: Java Edition
1.21–1.21.3
Platforms
Fabric
Forge
NeoForge
Supported environments
Client and server
Changes
This version brings Breaking Changes.
Updating might make your mod incompatible with previous versions of the Library.
2.0.0
Added
Variant Loader
- Added a fallback variant parameter to getParameterDataFromVariant, allowing shared data to be centralized in a single JSON instead of duplicating it per variant.
- Reworked the entire Loading system to have the Events on the Library side and allow Developers to just inject the path and entities.
- Instead of handling everything themself.
- All Developers can now remove their
ReloadHandlersince it became redundant and has been replaced with a way cleaner and more optimized system. - For more details, visit the Wiki.
onReloadhas been modified toonDatapackSync.
Logging
- Added a new
/logcommand accessible to users with a permission level of 3 or higher (/op).- This command opens an in-game menu displaying console logs, allowing developers to monitor output directly without needing terminal access.
- Supports log levels with color-coded formatting for easier readability.
isLoggingEnabledhas been moved to a server sided config.- All Logging is now translatable through Minecrafts Component System!
- Added a ton more ways to Log stuff to match the
slf4jsystem.
Network Handler
- Introduced a streamlined network registration system.
- Simplifies the use of custom packets by automatically handling registration internally via BlueLib.
- Packet definitions and handlers are now separated into two distinct classes for better structure and maintainability.
- For more details, visit the Wiki.
Packets
Variant Data Synchronization
AllDataPacket– Sends aMap<String, JsonObject>containing all variant data from the server to the client.ParameterDataPacket– Sends specific parameter data for a given variant as aJsonElement.VariantsPacket– Sends aSet<String>representing all available variant identifiers for an entity. ⚠️ These packets are not registered by default; they must be registered on the S2C side, with the handler provided as a lambda defining the logic to execute when the packet is received.⚠️
Changed
onReloadhas been modified toonDatapackSync.
Bug Fixes
- Cleaned up all of the Logging we had in place.
Deleted
- Removed
IVariantEntityBasesince it has become redundant!
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:ZrEU4mLQ:bhwfA90D"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ZrEU4mLQ:bhwfA90D"
}

