Skip to content

MARYT-Studio/Spellbind

Repository files navigation

Spellbind - Minecraft Mod

Bind spells to items you are using.


Spellbind is a Minecraft tweak util mod.

It allows you to make custom "spells" by following the steps below:

  1. Make a datapack that contains a spellbind_spells folder in it. All spells will be written in JSON format and be put here.
  2. Specify an item ID.
    This item should be "usable": You are able to hold your right mouse button to use it. Foods or Bows for example.
    Here we will use minecraft:apple.
  3. Specify your spell's attacking distance: how far (in blocks) can your spell reach.
    It can be a float number, 10.0 for example.
  4. Specify a mob entity ID, minecraft:pig for example, or use #i_dont_care# to let your spell to be effective to all types of mobs.
  5. Specify some other criteria.
    Now Spellbind provides NBT criterion, let your spell only to be effective to those mobs which has the specific NBT tag.
    If you do not need this, put #i_dont_care# here.
  6. Set a series of actions. Presently 4 types of actions are available:
    a. applying potion effects,
    b. executing commands,
    c. modifying attributes
    d. manipulating NBT data.
  7. Execute vanilla /reload command.

After that,

  1. when you finish eating an apple,
  2. if you are looking at a mob, and it is within the range of a spell at the moment,
  3. and it meets other criteria - now they are entity ID and NBT tag,
  4. then you will see those actions specified in Step 4 applied to that mob.

To-do List

Base Functions

  • 🎉 Criteria system

  • 🎉 Action type 1: Applying potion effects

  • 🎉 Action type 2: Executing commands

  • 🎉 Action type 3: Modifying attributes

  • 🎉 Action type 4: Manipulating NBT data.

Other Functions

More action types

More complex criteria

ZenScript or KubeJS support


This project is an open-source project under the MIT License.

About

Bind spells to items you are using.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages