Unofficial site, not affiliated with modrinth.com.What is this?
Моды/Spell Engine
Spell Engine

Spell Engine

🪄 Data driven magic library

5.1M
599
  • 1.9.9+1.21.1

    release21 марта 2026 г.

    1.9.9

    Functional changes:

    • Added server-side config fields for spell binding level requirements
    • Removed auto hand swap feature (due to colliding with weapon skills)
  • 1.9.9+1.21.1

    release21 марта 2026 г.

    1.9.9

    Functional changes:

    • Added server-side config fields for spell binding level requirements
    • Removed auto hand swap feature (due to colliding with weapon skills)
  • 1.9.8+1.21.1

    release11 марта 2026 г.

    1.9.8

    Functional changes:

    • Fixed crash without Better Combat #174
    • Fixed melee skill modifiers:
      • attack damage bonus
      • momentum bonus
    • Fixed immobilize effect attribute modifiers
  • 1.9.8+1.21.1

    release11 марта 2026 г.

    1.9.8

    Functional changes:

    • Fixed crash without Better Combat #174
    • Fixed melee skill modifiers:
      • attack damage bonus
      • momentum bonus
    • Fixed immobilize effect attribute modifiers
  • 1.9.7+1.21.1

    release11 марта 2026 г.

    1.9.7

    Functional changes:

    • Fixed melee skill animations for replay mod
    • Added new server config options:
      • spell_binding_level_cost_offset
      • spell_binding_level_cost_min
    • Rebalanced some of the weapon skill cooldowns

    API Changes:

    • Added new shared status effect: spell_engine:immobilize
      • Immobilizes the target, preventing movement and jumping
    • Added melee delivery related spell modifier fields:
      • spell.modifier.melee_momentum_add adding extra momentum to all melee attacks
      • spell.modifier.melee_slipperiness_add adding extra slipperiness to the caster while performing melee attacks
      • spell.modifier.melee_damage_multiplier multiplying damage of all melee attacks
      • melee_attacks list of additional melee attacks
    • Added new impact type: IMMUNITY to provide temporary invulnerability to certain damage types, and effects
      • Specific damage type, or tag of damage types
      • Directness check
      • Duration
      • Additionally available via java API: LivingEntityImmunity
      • Old EntityImmunity API is now deprecated
    • Melee attack triggers now support spell condition requirement
  • 1.9.7+1.21.1

    release11 марта 2026 г.

    1.9.7

    Functional changes:

    • Fixed melee skill animations for replay mod
    • Added new server config options:
      • spell_binding_level_cost_offset
      • spell_binding_level_cost_min
    • Rebalanced some of the weapon skill cooldowns

    API Changes:

    • Added new shared status effect: spell_engine:immobilize
      • Immobilizes the target, preventing movement and jumping
    • Added melee delivery related spell modifier fields:
      • spell.modifier.melee_momentum_add adding extra momentum to all melee attacks
      • spell.modifier.melee_slipperiness_add adding extra slipperiness to the caster while performing melee attacks
      • spell.modifier.melee_damage_multiplier multiplying damage of all melee attacks
      • melee_attacks list of additional melee attacks
    • Added new impact type: IMMUNITY to provide temporary invulnerability to certain damage types, and effects
      • Specific damage type, or tag of damage types
      • Directness check
      • Duration
      • Additionally available via java API: LivingEntityImmunity
      • Old EntityImmunity API is now deprecated
    • Melee attack triggers now support spell condition requirement
  • 1.9.6+1.21.1

    release7 марта 2026 г.

    1.9.6

    Hotfix:

    • Fixed arrow context not being cleaned up properly, causing Barrage skill to degrade ranged damage over (short) time
  • 1.9.6+1.21.1

    release7 марта 2026 г.

    1.9.6

    Hotfix:

    • Fixed arrow context not being cleaned up properly, causing Barrage skill to degrade ranged damage over (short) time
  • 1.9.5+1.21.1

    release5 марта 2026 г.

    1.9.5

    Functional changes:

    • Improved handling of number keys concurrently to vanilla item switching, fixes #153

    API Changes:

    • Added new spell delivery method AFFECT_ARROW allowing passive spells to apply arrow_perks and impacts to any fired arrow
  • 1.9.5+1.21.1

    release5 марта 2026 г.

    1.9.5

    Functional changes:

    • Improved handling of number keys concurrently to vanilla item switching, fixes #153

    API Changes:

    • Added new spell delivery method AFFECT_ARROW allowing passive spells to apply arrow_perks and impacts to any fired arrow
  • 1.9.4+1.21.1

    release4 марта 2026 г.

    1.9.4

    Functional changes:

    • Fixed some weapon factory constants
    • Fixed ranged weapon pull time constants
  • 1.9.4+1.21.1

    release4 марта 2026 г.

    1.9.4

    Functional changes:

    • Fixed some weapon factory constants
    • Fixed ranged weapon pull time constants
  • 1.9.3+1.21.1

    release3 марта 2026 г.

    1.9.3

    Functional changes:

    • Improve interaction between melee skills and given momentum while being airborne

    API Changes:

    • Added new melee attack skill fields related to momentum
      • spell.deliver.melee.allow_airborne (default: true) - to hold up using momentum based melee skills while airborne
      • spell.deliver.melee.attack.allow_momentum_airborne (default: false) - whether the attack specific forward momentum can be applied while airborne
    • Added SPAWN impact intent specifier to enable spawning onto hostile targets
  • 1.9.3+1.21.1

    release3 марта 2026 г.

    1.9.3

    Functional changes:

    • Improve interaction between melee skills and given momentum while being airborne

    API Changes:

    • Added new melee attack skill fields related to momentum
      • spell.deliver.melee.allow_airborne (default: true) - to hold up using momentum based melee skills while airborne
      • spell.deliver.melee.attack.allow_momentum_airborne (default: false) - whether the attack specific forward momentum can be applied while airborne
    • Added SPAWN impact intent specifier to enable spawning onto hostile targets
  • 1.9.2+1.21.1

    release3 марта 2026 г.

    1.9.2

    Functional changes:

    • Fixed issues of Flurry skill (windup time, animation speed, cooldown proportionality)
    • Fixed issues of Swift Strikes skill (windup time)
    • Fixed fallback config applying to Axes
    • Fixed movement friction of attack skills on NeoForge
    • Fine tune momentum given by Swipe and Thrust skills

    API changes:

    • Added new spell modifier channel_ticks_add, to add extra channel ticks to channeling spells
    • Added new SpellEvents:
      • SpellEvents.CASTING_ATTEMPT (with Pre & Post stages) - to be able to inject custom failure reason
      • SpellEvents.COST_CONSUME - executed when spell cost is being consumed
  • 1.9.2+1.21.1

    release3 марта 2026 г.

    1.9.2

    Functional changes:

    • Fixed issues of Flurry skill (windup time, animation speed, cooldown proportionality)
    • Fixed issues of Swift Strikes skill (windup time)
    • Fixed fallback config applying to Axes
    • Fixed movement friction of attack skills on NeoForge
    • Fine tune momentum given by Swipe and Thrust skills

    API changes:

    • Added new spell modifier channel_ticks_add, to add extra channel ticks to channeling spells
    • Added new SpellEvents:
      • SpellEvents.CASTING_ATTEMPT (with Pre & Post stages) - to be able to inject custom failure reason
      • SpellEvents.COST_CONSUME - executed when spell cost is being consumed
  • 1.9.1+1.21.1

    release1 марта 2026 г.

    1.9.1

    Fix NeoForge launch crash.

  • 1.9.0+1.21.1

    release28 февраля 2026 г.

    1.9.0

    DISCLAIMER: All spell books and spell scrolls will be reset, due to major API changes. Some (looted) weapons with custom spell containers become non-functional, and need to be re-obtained. Apologies for the inconvenience.

    API Breaking Changes:

    • Reworked SpellContainer structure
      • Removed content field, replace by access field
      • Removed is_proxy fields, replace by access field
      • Add new access field, controlling the spell resolution behavior (ANY, NONE, MAGIC, ARCHERY, CONTAINED, TAG)
      • Add new access_param field, providing additional parameter for certain access types (such as tag name for TAG access type)
      • Add new extra_tier_binding field to SpellContainer, to specify spell choice limit per spell tiers
    • Reworked spell tag conventions
      • <NAMESPACE>:spell_books/<TAG_NAME> - spell collections in this folder, are explicitly marked for generating spell books
      • <NAMESPACE>:spell_scrolls/<TAG_NAME> - spell collections in this folder, are explicitly marked for generating scrolls
      • <NAMESPACE>:weapon/<WEAPON_NAME> - spell collections meant for weapons (such as Wizard Staff)
    • Fully data driven Spell Scrolls
      • New item id: spell_engine:spell_scroll
      • Generated for all spells listed under tags located in spell_scroll/ folder (such as: #wizards:spell_scroll/fire)
      • Automatically assigned item model based on tag id: <NAMESPACE>:models/item/spell_scroll/<TAG_NAME>.json
      • Automatically assigned custom name based on tag id, translation key: item.<NAMESPACE>.spell_scroll/<TAG_NAME>
    • Fully data driven Spell Books
      • All spell books now use the same item id: spell_engine:spell_book
      • Generated for all spells listed under tags located in spell_books/ folder (such as: #wizards:spell_book/fire)
      • Automatically assigned item model based on tag id: <NAMESPACE>:models/item/spell_book/<TAG_NAME>.json
      • Automatically assigned custom name based on tag id, translation key: item.<NAMESPACE>.spell_book/<TAG_NAME>
      • Custom spell books can be made with datapacks, for any combination of spells, just with a spell tag (and some additional assets)
    • Spell Data structure changes
      • Casting and release animations are now wrapped into a PlayerAnimation object, instead of a plain String
      • PlayerAnimation supports: overrides, speed
      • Reworked spell.active.cast.channel_ticks now representing the number of releases during channeling, instead of a duration interval (in game ticks) between channel releases
    • Relocated all equipment related APIs to a new dedicated package rpg_series.item, to better separate them from the core spell engine APIs
      • types moved: Equipment, Armor, ConfigurableAttributes, Weapon

    API Additions:

    • Added new spell_choices data component
      • Defines a one-time single spell selection, from a given spell tag, before first use
      • Designed for weapons meant for multiple classes (such as Wizard Staff)
    • Add choices in Spell Books (Spell Binding Screen)
      • Spells in the same tier are presented as choices
      • Spell tags of spell books can be expanded with choices by third party content
      • Behavior controlled by new extra_tier_binding field of spell container
    • Added new centralized weapon factory APIs (in rpg_series package)
      • Add Weapons.java API, creating melee and magic weapons
      • Add Shields.java API, creating shields
      • Add RangedWeapons.java API, creating bows and crossbows
    • Added automatic item model registration for assets in the following folders:
      • models/item/spell_book/
      • models/item/spell_scroll/
      • models/spell_projectile/
      • models/spell_effect/
    • Added shared spell cooldowns
      • Spells with the same coodown group set each other on cooldown
      • spell.cost.cooldown.group field specifies the cooldown group
      • To be used for weapon specific spells
    • Added new delivery type: MELEE, for performing better combat alike weapon swings
      • Upon performing this delivery type, the caster gains melee attacks, to be automatically executed
      • Attack duration may be static, or attack speed based
      • Custom hitbox definition, using OBB collision detection, ran on the client side
      • Supports fx: animation, sound, particles
      • Includes optional momentum to be gained with the attack
      • Supports additional impacts to be performed on hit
    • Add new impact type: DISRUPT
      • Can disable: shield blocking, item usage
    • Spell Data structure changes
      • Added spell.cost.cooldown.attempt_duration to prevent multiple performs of delayed deliveries
    • Added WeaponAttributeGenerator to datagen API

    Functional changes:

    • RPG Series core dedicated sub-package now includes melee weapon skills
      • Whirlwind (designed for double axes) - Hold to spin around, dealing {damage} damage per second, to nearby enemies.
      • Cleave (designed for axes) - Performs a spin attack, dealing {damage} damage to nearby enemies.
      • Ground Slam (designed for great hammers) - Leaps into the air and slams into the ground, dealing {damage} damage to nearby enemies.
      • Smash (designed for maces) - SmashesDelivers a strike with powerful knockback, disabling shield and item usage of target.
      • Flurry (designed for claymores) - Hold to unleash a rapid series of strikes, while also gaining momentum.
      • Swift Strikes (designed for swords) - Unleash a rapid series of strikes.
      • Impale (designed for spears) - Throws your weapon forwards, dealing {damage} damage and powerful knockback.
      • Fan of Knives (designed for daggers) - Throws several of your blades in a cone, dealing {damage} damage, bouncing off terrain up to 2 times.
      • Thrust (designed for glaives) - Lunge forward with your weapon, striking all enemies along your path.
      • Swipe (designed for sickles) - Slide forward with your weapon, striking all enemies along your path.
    • Added fallback config for automatic spell container assignment to weapons without spell container
      • Supports various pattern matching methods (item id, item tag, regex, inversion)
      • Config file: config/spell_engine/weapon_fallbacks.json
      • Removed related old config options from server.json5
    • Added new server config options:
      • melee_skills_area_focus_mode - Determines the focus mode (AREA vs DIRECT) for melee skills.
      • spell_book_additional_cooldown - Additional cooldown in seconds applied to spell book items, to prevent quick swapping and casting."
    • Improved spell channeling mechanics
      • Channel ticks are now calculated more accurately, spell haste actually increasing tick frequency
      • Melee skill haste - casting duration is now effected by attack speed multiplier bonuses
    • Fixed operation of spell variant, target:AIM+ deliver:DIRECT + area impact
    • Fixed Player data corruption caused by invalid spell identifiers #170
    • Update loot injection defaults: Hellish Trials, Draugr Invasion
    • Improved Friend or Foe logic on FTB Teams membership, thanks to LeDok
  • 1.9.0+1.21.1

    release28 февраля 2026 г.

    1.9.0

    DISCLAIMER: All spell books and spell scrolls will be reset, due to major API changes. Some (looted) weapons with custom spell containers become non-functional, and need to be re-obtained. Apologies for the inconvenience.

    API Breaking Changes:

    • Reworked SpellContainer structure
      • Removed content field, replace by access field
      • Removed is_proxy fields, replace by access field
      • Add new access field, controlling the spell resolution behavior (ANY, NONE, MAGIC, ARCHERY, CONTAINED, TAG)
      • Add new access_param field, providing additional parameter for certain access types (such as tag name for TAG access type)
      • Add new extra_tier_binding field to SpellContainer, to specify spell choice limit per spell tiers
    • Reworked spell tag conventions
      • <NAMESPACE>:spell_books/<TAG_NAME> - spell collections in this folder, are explicitly marked for generating spell books
      • <NAMESPACE>:spell_scrolls/<TAG_NAME> - spell collections in this folder, are explicitly marked for generating scrolls
      • <NAMESPACE>:weapon/<WEAPON_NAME> - spell collections meant for weapons (such as Wizard Staff)
    • Fully data driven Spell Scrolls
      • New item id: spell_engine:spell_scroll
      • Generated for all spells listed under tags located in spell_scroll/ folder (such as: #wizards:spell_scroll/fire)
      • Automatically assigned item model based on tag id: <NAMESPACE>:models/item/spell_scroll/<TAG_NAME>.json
      • Automatically assigned custom name based on tag id, translation key: item.<NAMESPACE>.spell_scroll/<TAG_NAME>
    • Fully data driven Spell Books
      • All spell books now use the same item id: spell_engine:spell_book
      • Generated for all spells listed under tags located in spell_books/ folder (such as: #wizards:spell_book/fire)
      • Automatically assigned item model based on tag id: <NAMESPACE>:models/item/spell_book/<TAG_NAME>.json
      • Automatically assigned custom name based on tag id, translation key: item.<NAMESPACE>.spell_book/<TAG_NAME>
      • Custom spell books can be made with datapacks, for any combination of spells, just with a spell tag (and some additional assets)
    • Spell Data structure changes
      • Casting and release animations are now wrapped into a PlayerAnimation object, instead of a plain String
      • PlayerAnimation supports: overrides, speed
      • Reworked spell.active.cast.channel_ticks now representing the number of releases during channeling, instead of a duration interval (in game ticks) between channel releases
    • Relocated all equipment related APIs to a new dedicated package rpg_series.item, to better separate them from the core spell engine APIs
      • types moved: Equipment, Armor, ConfigurableAttributes, Weapon

    API Additions:

    • Added new spell_choices data component
      • Defines a one-time single spell selection, from a given spell tag, before first use
      • Designed for weapons meant for multiple classes (such as Wizard Staff)
    • Add choices in Spell Books (Spell Binding Screen)
      • Spells in the same tier are presented as choices
      • Spell tags of spell books can be expanded with choices by third party content
      • Behavior controlled by new extra_tier_binding field of spell container
    • Added new centralized weapon factory APIs (in rpg_series package)
      • Add Weapons.java API, creating melee and magic weapons
      • Add Shields.java API, creating shields
      • Add RangedWeapons.java API, creating bows and crossbows
    • Added automatic item model registration for assets in the following folders:
      • models/item/spell_book/
      • models/item/spell_scroll/
      • models/spell_projectile/
      • models/spell_effect/
    • Added shared spell cooldowns
      • Spells with the same coodown group set each other on cooldown
      • spell.cost.cooldown.group field specifies the cooldown group
      • To be used for weapon specific spells
    • Added new delivery type: MELEE, for performing better combat alike weapon swings
      • Upon performing this delivery type, the caster gains melee attacks, to be automatically executed
      • Attack duration may be static, or attack speed based
      • Custom hitbox definition, using OBB collision detection, ran on the client side
      • Supports fx: animation, sound, particles
      • Includes optional momentum to be gained with the attack
      • Supports additional impacts to be performed on hit
    • Add new impact type: DISRUPT
      • Can disable: shield blocking, item usage
    • Spell Data structure changes
      • Added spell.cost.cooldown.attempt_duration to prevent multiple performs of delayed deliveries
    • Added WeaponAttributeGenerator to datagen API

    Functional changes:

    • RPG Series core dedicated sub-package now includes melee weapon skills
      • Whirlwind (designed for double axes) - Hold to spin around, dealing {damage} damage per second, to nearby enemies.
      • Cleave (designed for axes) - Performs a spin attack, dealing {damage} damage to nearby enemies.
      • Ground Slam (designed for great hammers) - Leaps into the air and slams into the ground, dealing {damage} damage to nearby enemies.
      • Smash (designed for maces) - SmashesDelivers a strike with powerful knockback, disabling shield and item usage of target.
      • Flurry (designed for claymores) - Hold to unleash a rapid series of strikes, while also gaining momentum.
      • Swift Strikes (designed for swords) - Unleash a rapid series of strikes.
      • Impale (designed for spears) - Throws your weapon forwards, dealing {damage} damage and powerful knockback.
      • Fan of Knives (designed for daggers) - Throws several of your blades in a cone, dealing {damage} damage, bouncing off terrain up to 2 times.
      • Thrust (designed for glaives) - Lunge forward with your weapon, striking all enemies along your path.
      • Swipe (designed for sickles) - Slide forward with your weapon, striking all enemies along your path.
    • Added fallback config for automatic spell container assignment to weapons without spell container
      • Supports various pattern matching methods (item id, item tag, regex, inversion)
      • Config file: config/spell_engine/weapon_fallbacks.json
      • Removed related old config options from server.json5
    • Added new server config options:
      • melee_skills_area_focus_mode - Determines the focus mode (AREA vs DIRECT) for melee skills.
      • spell_book_additional_cooldown - Additional cooldown in seconds applied to spell book items, to prevent quick swapping and casting."
    • Improved spell channeling mechanics
      • Channel ticks are now calculated more accurately, spell haste actually increasing tick frequency
      • Melee skill haste - casting duration is now effected by attack speed multiplier bonuses
    • Fixed operation of spell variant, target:AIM+ deliver:DIRECT + area impact
    • Fixed Player data corruption caused by invalid spell identifiers #170
    • Update loot injection defaults: Hellish Trials, Draugr Invasion
    • Improved Friend or Foe logic on FTB Teams membership, thanks to LeDok
  • 1.8.19+1.21.1

    release30 декабря 2025 г.

    1.8.19

    API Changes:

    • Update SpellBuilder.Trigger meleeKills and rangedKill methods to rely on spell school archetype
    • Reorganize SpellBuilder.Trigger methods melee and ranged impact trigger methods
1
...

Совместимость

Minecraft: Java Edition

Платформы

Поддерживаемые окружения

Клиент и сервер

Сведения

Лицензия:
Опубликован:3 года назад
Обновлён:2 месяца назад
ID проекта:
Главная