Mineuniverse
Log in Register
Mods

LibCapableData (LibCD)

Improved data processing for Fabric and 1.14
by LemmaEOF
Claim this project
166,214 downloads
0 likes
Updated Jun 30, 2026
0 hypes

DISCLAIMER

I have received multiple reports of an issue regarding invalid entries in the LibCD mod jSON. THIS DOES NOT CAUSE A CRASH. THIS IS NOT THE REASON YOUR PACK IS NOT LOADING. PLEASE LOOK FURTHER IN THE LOG FOR THE REAL CAUSE OF THE CRASH.

 

LibCapableData, or LibCD, adds various hooks to make data packs more usable. 

 

Conditional Data

LibCD's original function was as a hook to conditionally load data pack elements based on a metadata file. It's focused on being simple and extensible, along with being compatible with any resource type added by other mods. This mod requires the Fabric launcher for Minecraft 1.14 and above.

 

For conditional resources, add a file <target resource with extension>.mcmeta. This will be parsed as JSON to check whether the resource should be loaded. Each key-value pair will specify a condition that must be met for the recipe to be loaded. There are four conditions pre-included, and other mods may add their own:

  • libcd:mod_loaded (passed a string): Will return true if a mod with the given mod ID is loaded.
  • libcd:item_exists (passed a string): Will return true if an item with the given item ID is loaded.
  • libcd:not (passed a single-element json object) Will return true if the condition listed in the given object is not true.
  • libcd:any_of (passed a json object): Will return true if any condition listed in the given object is true.

WARNING: Currently, conditions silently return false if they are passed an improper parameter. This will hopefully be changed in the future, but if you think something should be loaded and it isn't, check your conditions.

 

Developer Use

LibCD allows any mod to register their own conditions, to prevent recipe loadin based on config or more advanced logic. LibCD is available on the Cotton maven.

To add a new condition, call LibConditionalData.registerCondition(), passing an Identifier for the condition's name and a `Predicate for the use of the condition.

 

The Object passed to the predicate will be a boxed primitive (Integer, Float, Boolean, etc.), a String, a List, a JsonObject, or null. Use an instanceof check to be sure what you're being passed.

 

 

For information on creating Tweaker utilities, check the LibCD wiki page.

No files available for download.

More from LemmaEOF

Kiln (Fabric)
95,837
Artis
9,355
Aquarius [FABRIC/FORGE]
68,928
Pisces
652
SkillCheck
6,416
Cotton Scripting: Python 2.7
623

You Might Also Like

Vivecraft
A Minecraft VR mod on a loader of your choice!
9,988,339
Athena
A crossplatform (Forge/Fabric) solution to connected block textures for 1.19.4+
99,799,527
Lodestone
A collection of code used throughout projects under the Lodestar team.
9,914,417
TheDragonLib
A library for most of sokratis12GR's Mods
9,910,232
Multi Mob Library
A library mod containing essential files for Daveyx0's mob mods
9,892,767
FTB Library (Forge) (Legacy)
FTB Library is a library mod that is used for some of our mods.
98,265,314