Welcome to 1.17! This was an extremely challenging update for me, as i think it probably was for many other devs relying on NMS calls. The future looks bright, though, I'm hoping updates will be cleaner and much easier in the future.
However, it is now the case that Magic is guaranteed to need an update on every minor Minecraft release. This is an unfortunate trade-off, as previously Magic usually only needed to be updated on major releases, but would more or less continue to function for the most part.
I'll be continuing to work out how best to push forward, but for now I think we are good to go! Happy axolotl hunting 1.17 Support
Deprecated spell classes removed:
LevitateSpell
ProjectileSpell
ShapeSpell
AlterSpell
Non-functional hologram functionality removed
Known Issues:
NPCs might duplicate, this should fix itself eventually
1.17-Only Changes and Additions
NOTE: Changes requiring modern Minecraft API use may now sometimes only work on Minecraft 1.17 and up. This is a trade-off for now, to avoid dropping backwards compatibility alltogether.
Hex color support in all messages in-game using an &#AA22FF format
Add save spell to engineering configs (unobtainable, only on Wolf staff), for saving schematics) [WIP]
Add geode schematic to engineering configs
Add screaming mob property for goats
Fixes
Fix integration with some economy plugins by delaying registration a bit
Fix a wand dupe issue when adding spell items to a wand inside of a container
General Changes and Additions
The spawn mob trigger now only fires on initial spawn. Persistent mobs can look for respawn.
Add prevent_teleport mob option, and a contained_enderman mob for arena battles
Add use_parent_target_location and use_parent_source_location ChangeContext options
Add teleport_target Recall option
Add burning flag to disguises
The /mgive command will drop item on the ground if the player's inventory is full
Add wands_break_hanging config option, so you can disable paintings and item frames breaking while holding a wand
Add target_permission parameter, requiring a player/entity to have a specific permission in order to target them
Enchanting wands with books follows vanilla rules, allows multiple enchantments
Nerf mutant mobs a bit
Add /mnpc clean command for cleaning up unkillable mobs orphaned from their NPC
Add interact_requires_owner mob property, so mobs right-click action only works for their owner