Item Components

Item Components

91 Downloads

Item Components

✅ Features

  • Server-side at no cost of quirkyness on the client
  • Data-driven through datapacks, read below for the how.
  • Reloadable on the fly via /reload. No restarting a server or client, or rejoining a world.
  • Supports modded items and modded item components
  • Modpack creation made easy, by putting the power of balancing in your hands

❓ What can I do with it?

For a full list of things you can change, visit the Minecraft Wiki on Data component format.
A non-exhaustive list of things you add, remove or change on any item:

  • Max stack size
  • Armor, damage & attack speed values
  • Default placement state
  • Enchantment glint
  • Fireproof
  • Nutrition, saturation, eating time & effects
  • Tooltips
  • Name & lore
  • Jukebox song
  • Max damage
  • Rarity
  • Default mining speed, durability change & effective blocks
  • Unbreakable

In essence, any item, modded or vanilla, can be changed in any way you might want.\

⚙️ Datapack creation

Components on (an) item(s) can be changed by adding an entry under <namespace>:item_components/<path>.json.
Entries have 3 fields, all optional:

  • parents: an ID or an array of IDs
    • The entries to inherit. Note that only the parent's parents and parent's components are inherited, not the parent's targets.
  • targets: an item ID, an item tag suffixed with '#' or an array of item IDs
    • The items to apply the component changes to.
  • components: a component changes object
    • The component changes to apply to the items.

Visit the source code for example datapacks.