Tags
Creators
Details
Licensed MIT
Published 4 years ago
Updated 6 days ago
All versions
21.800.2
Beta
bclib-21.800.22 weeks ago 484
Uploaded by
Compatibility
Minecraft: Java Edition
1.21.6–1.21.8
Platform
Fabric
Supported environments
Client and server
Required content
Any compatible version
Any compatible version
Changes
Features
- Block items can show hand-written tooltip lines (DescriptionBlockTrait, as on 26.x)
Changes
- Saplings of BetterX mods take bone meal like vanilla saplings (45% per use, about 4-5 per tree instead of ~32); natural growth is unchanged
- JEI anvil recipes show how many items one craft consumes, with the usable hammers and anvils, in one Anvil Smithing category
- World patches that do not apply are only listed in the log with WorldWeaver's verbose logging
- Block model traits are bound through WorldWeaver model keys instead of client-only lambdas
- org.betterx.ui.ColorUtil is deprecated, use ColorUtilARGB32 (or ClientColorUtil for texture colors)
- Removed StructureNBT, StructureWorldNBT and StructureHelper; use WorldWeaver's StructureNBT
- SaplingBlockTrait.ticking(): the sapling behaviour without the bundle
- Composting rates snap to a fixed set of tiers
Fixes
- The "Survives on" tooltip of plants with several soil rules lists each block once, in one sorted list
- Recipes disabled in a datapack's bclib/config/recipes.json could still be crafted
- Colors read from item textures (e.g. infusion particles) had red and blue swapped
- SDF fills read blocks outside their write bounds
- StructureErode.erode let dislodged blocks vanish instead of falling, could move or duplicate a block more than once and shifted the remaining columns after a move
- StructureWorld pieces left block entities behind when they replaced a block
- StructureErode.erodeIntense read outside its box, which logged unsafe terrain reads for BetterEnd crashed ships
- Worn anvils stored their wear ambiguously, so some dropped anvils came back one stage more or less worn (BCLib#128)
- /bclib place empty and /bclib place nbt crashed with the 'at' placement (BCLib#124)
- The world patcher logged a warning for every rewritten chunk; it now reports the number of rewritten chunks and files in its summary line (BCLib#195)
- Structure placement types failed to load on servers with a Turkish system locale (BetterNetherBCLib#285)
- Dedicated servers no longer crash at startup on BCLib's client-only references
- A new world on a dedicated server no longer logs "Failed fixing Level-Data"
- Voxel structures (giant ice stars, giant mossy glowshrooms) stored several megabytes per structure, too large to send to clients (BetterEnd#582)
- Hide custom fog options that no longer have any effect (BetterNether#175, BetterNether#131, BCLib#244)
- Receiving a BCLib data-exchange packet would close the Minecraft client
- Custom command argument types broke Velocity proxies (BCLib#124)
- World patch inspection logged one unprefixed line per region file (BCLib#195)
- DataFixer re-inspected the whole world on every server start when a region held an unreadable chunk (BCLib#146)
- Feature seeds changed with neighbouring biomes, causing chunk seams (BCLib#227)
- Recipe lookups sorted every matching recipe on each call (BCLib#225)
- Shears loot check could misfire when loot ran on several threads (BCLib#233, BCLib#239)
- Placing a fully worn leveled anvil crashed (BCLib#128)
- BCLib could not be hidden as a library in Mod Menu (BCLib#229)
- SpawnRuleBuilder.maxNearby counted every entity instead of only the given type (BetterNether#281)
- World fixer aborted on backpacks holding a non-string "id"
- Patches supplying only a chunk or block-state patcher never ran
- Stalactite tip did not re-render as pointy after mining the block beyond it
- Compostable items could not be composted by a hopper
Validation
- ✅ Dedicated server (Minecraft 1.21.8) started (WorldWeaver 21.800.2, BCLib 21.800.2, BetterNether 21.800.2, BetterEnd 21.800.2, wunderreich 21.800.2)
Optional dependencies
Any compatible version
Any compatible version
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:BgNRHReB:vXvhsCP8"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:BgNRHReB:vXvhsCP8"
}

