Skip to content

Releases: CottonMC/LibCD

Tweaker revamp

04 Jul 10:42

Choose a tag to compare

  • Remove deprecated potion-exclusive methods and hooks. Use the built-in stack getter for potions instead.
  • Add new Assistant system for adding script utility and tweaker classes to script scopes without requiring explicit import.
  • Deprecate Tweaker.registerTweaker(Tweaker) in favor of a new method that passes a String for adding tweakers to the Assistant system.
  • Add a new StackInfo class for getting information about an item stack from scripts. (not yet finished, no documentation available yet)
  • Change recipe-creation methods to accept an Object instead of just a String, so that pre-made Ingredients can be passed in.
  • Modify RecipeParser.parseIngredient to add the ability to put NBT requirements on Ingredients.
    • Add mixins to the Ingredient class that allow a mod to configure the NBT precision that an Ingredient requires to match.
  • Add a new RecipeTweaker.makeIngredient() method to manually construct an Ingredient out of different stacks.
  • Fix multiple bugs and crashes.
  • Fix an issue where tweakers from the currently-active tweaker subset would overwrite any universal tweaker with the same relative name.
  • Fix an issue where removing a recipe would cause log spam.
  • Include the new Jankson Fabric library.

Crash fixes, condition revamp part 1

28 Jun 07:51

Choose a tag to compare

  • fix crashes causing cascading failure with recipe tweakers
  • add a new method to RecipeParser to help hack together a way to create an ingredient from item stacks on the server (thanks proguard)
  • start revamping data conditions
    • all conditions are now stored as individual objects within an array titled when.
    • the libcd:any_of condition now is now named or or libcd:or, and takes an array.

Conditions will continue to be improved until we have a system that's completely satisfactory.

1.14.3 Update

25 Jun 08:25

Choose a tag to compare

  • add new method for applying tweakers, to follow the new standard for async reload listeners across the board
  • change over to the new recipe system for 1.14.3
    • this version is incompatible with 1.14.2! please use 1.2.0 for 1.14.2 instead, as it's functionally identical scripting-side

Tweaker utils, tweaker subsets, expanded conditions

20 Jun 23:33

Choose a tag to compare

  • Conditions libcd:item_exists and libcd:mod_loaded can now take an array as well as a single string (all items in the array must return true for the condition to return true).
  • Added TweakerUtils.enchant(), TweakerUtils.addLore(), TweakerUtils.setDamage(), and TweakerUtils.setName() methods to add enchantments, lore, damage, or custom names to item stacks from tweaker scripts, respectively.
  • Added tweaker subset system to allow selection of which tweakers to run based off a config value.
    • A single tweaker subset can be specified to be added alongside the main Tweakers set.
    • A tweaker subset is stored as a data/<namespace>/tweakers_<subset name> folder in a data pack.
    • Added /cd_subset command to set which subset to use, along with reloading all data packs.
    • Fabric API is now required for registering the cd_subset command.

Add Tweakers

17 Jun 08:36

Choose a tag to compare

  • move Tweakers module from Cotton into LibCD
    • Cauldron tweakers are still part of Cotton, as they are dependent on Cotton behavior

Iterators are Fucking Weird

08 Jun 23:17

Choose a tag to compare

  • fix a crash related to local-variable tables being setup incorrectly

Crash fix

08 Jun 15:49

Choose a tag to compare

  • fix a crash related to the mixin reference map
  • remove dependency on Fabric API

Initial Release

07 Jun 06:40

Choose a tag to compare

1.0.0+1.14.2

Initial commit