Slowcraft

A library for creating low-tech Progressive Crafting items, inspired by Better Than Wolves.

287

Slowcraft

Slowcraft is a library for creating Slow Tools, 'Progressive Crafting' items inspired by the Knitting system from the Better Than Wolves mod.

Slow Tools are intermediary items which require holding down right click to finish a 'progress bar' as represented by their durability. Upon completion, the tool is replaced with the finished item.

This mod does nothing on its own.

Creating Slow Tools

Making Slow Tools is easy! ... But it isn't data-driven, you'll need to implement Slowcraft into your mod.

For the time being, use Modrinth Maven to add Slowcraft as a dependency to your project.

The `SlowTool` Class extends `ToolItem`, so making a new one is as easy as making a typical `ToolItem` plus a few extra constructor parameters and one component in the item's recipe.

Here's an example of a Slow Tool Class:

Slow Tool  Class Example

- Parameter 1 is the output of the craft as `ItemConvertible` via `itemOutput` - Parameter 2 is the maximum durability of the item (how long it will take to craft) as `int` via `itemUses`. Slow Tools progress at a rate of `tps % 5`, about 4 times per second, so an `itemUses` of 240 will require 60 seconds to finish. - Parameter 3 is the sound played as the player crafts the item as `SoundEvent` via `usageSound` - Parameter 4 is the sound played when the craft is finished as `SoundEvent` via `finishSound` - Parameter 5 is the typical `Item.Settings()` section, where standard item settings can be applied

Additionally, when constructing the recipe for Slow Tools, they require a `component` of `minecraft:damage` set to the same value as their `itemUses` (durability). The easiest way to do this is to simply add the component to the recipe's JSON, set to the same value:

Recipe Example

!The `minecraft:damage` value must be the same as your item's itemUses (Parameter 2 above)!

If you're generating your recipes via code, you'll have to add the component to your output.

Drawbacks? - Slow Tools require a Material to function, hard-set to SlowMaterial in the SlowTool Class constructor - Requires manually setting the damage component through recipe definition

Planned? - Classic Eating animation from BTW on Progressive Crafts - Input Item return

Credit

FlowerChild and BTW CE 3.0 Community for art assets

Ivangeevo for assistance with item logic

This library is mostly for a modpack I'm making, but anyone is free to use/utilize it.

ADS