BCLib (Unofficial Forge & Fabric Port) — Minecraft 1.20.1
This project is an unofficial port of BCLib to Forge & Fabric for Minecraft 1.20.1.
What this project does
Provides the BCLib library on Forge & Fabric for Minecraft 1.20.1 (a dependency/utility library used by other mods, for example, Forge ports of BetterEnd/BetterNether).
The goal is to keep functionality as close to upstream as possible, with only porting/compatibility changes where required.
Why download it
Download this only if a mod/modpack requires BCLib on Forge or Fabric. BCLib is a library and typically does not add standalone gameplay content on its own. Required on: both client and server.
How this project differs from the original
- Loader/platform: Forge & Fabric (upstream is Fabric)
- Goal: compatibility for Minecraft 1.20.1 on Forge & Fabric
- Scope: upstream-accurate behavior where possible; compatibility fixes when needed
Credits / Attribution
All artwork and the majority of the code belong to the developers of the original library: the BetterX Team.
Original project (upstream)
BCLib (Fabric) by the BetterX Team (Modrinth): https://modrinth.com/mod/bclib
Upstream source (GitHub): https://github.com/quiqueck/BCLib
Support / Issue reports
This is an unofficial Forge & Fabric port. Please do not report issues to the official BetterX Team Discord or GitHub, as they do not maintain this port.
For bugs and support related to this Forge & Fabric version, please use this port’s GitHub issue tracker: https://github.com/Reijin2312/BCLib_Forge/issues
If any issues caused by this port affect the upstream community, please contact me directly.
BetterX Discord (upstream community): https://discord.com/invite/kYuATbYbKW
All Versions
+ Add Version- Port to Fabric 1.20.1
- Added material-system support for functional chiseled bookshelves
- Fixes**
- Fixed vanilla Nether biomes disappearing when using the BetterX world type
- Fixed vanilla End biomes potentially missing from the BCLib biome source
- Fixed third-party structures, including Cataclysm structures, not generating in compatible Nether biomes
- Fixed biome-source initialization so structure filtering receives the complete set of possible biomes
- Fixed nearby entity limits counting all entities instead of the requested entity type
- Improved compatibility with Arclight by removing a conflicting portal-frame mixin while retaining Forge portal-frame support
- Updated internal APIs required by the official BetterEnd content backport
- Fixed bug with vanilla end biomes not generating
- Added/fixed compatibility with Biomes O Plenty, Regions Unexplored, Incision, Infernal Expansion Redux, Jaden's Nether Expansion, Luminous: Nether, Nether's Exorcism Reborn, Gardens of the Dead, Blueprint, Endless Biomes, Unusual End, Nullscape and improved compatibility with others
- Added logic to disable biomes, structures and features
- Fixed some bonemeal issues
- Fixed fog compatibility issue with Distant Horizons
- Improve model loading system
- Remove debug logging
- Fix crash with anvil mixin
- Lazy initialization of structures (fix crash with Changed mod)
- More compatibility with world generation mods
- Added compatibility with the TerraBlender library and mods that use it (Luminous Nether, Garden of the Dead, Biomes O' Plenty, Oh The Biomes We've Gone, etc.)
- Fixed crash with IPN
- Fixed: crafting tools with durability (e.g., Engineer’s Hammer) are no longer consumed; remaining items now respect stack-based crafting remnants
- Fixed: data generation no longer crashes with ConcurrentModificationException during surface rule registry bootstrap
- Fixed missing drops/icons by falling back to registry items when asItem() is invalid
- Ore drops now follow loot tables (no more block drops without Silk Touch)
- DropSelfLootProvider now safely falls back when item is missing
- Smoking recipes now use minecraft:smoking
- Added EMI Forge entrypoint (@EmiEntrypoint)
- Added Biolith compatibility
- Version bump to 20.0.2
- Recipe builders now resolve inputs at serialization time to avoid empty ingredients (fixes missing log→planks and compat recipes)
- More robust tag registration for block/item entries; recipe existence checks aligned with 1.21 behavior
- Added default methods in AtomicProgressListener to avoid interface method mismatch crashes
- Port to Forge 1.20.1