Magic NPCs 0.6.1 (Forge 1.20.1)
Curse Maven Snippet
What's new
[0.6.1] - August 25th, 2026
A major bug-fixing update focused on making School Tomes, villager spellcasting, Recruits integration, and NPC spell behavior actually work as intended.
School Tome Fixes
The School Tome now works on villagers and Recruits instead of opening their normal interaction screens.
Added proper right-click behavior:
- Right-click an NPC to see its current spell school.
- Sneak-right-click to cycle through available schools.
- Cycling past the last school clears it and stops that NPC from casting.
Manually assigned schools now survive chunk reloads instead of reverting.
Fixed the Tome getting stuck when cycling past an unusable school.
School Tome Is Now Craftable
The School Tome finally has crafting recipes.
- With Iron's Spells 'n Spellbooks installed, it uses Arcane Essence and Blank Runes.
- Without Iron's installed, it uses Amethyst and Lapis.
Exactly one appropriate recipe will load depending on your mod setup.
NPC Spellcasting Fixes
- Fixed many Iron's spells doing nothing when cast by NPCs while still consuming mana and triggering cooldowns.
- Spells now properly prepare their effects before casting.
- Failed spell preparations no longer consume mana.
- Fixed several healing, support, area, and offensive spells that were affected.
- NPCs are no longer assigned schools that give them no usable support spells.
- Added more defensive and healing spells to the default support-spell list.
Villager Self-Defense
Added:
schools.villagers.selfDefense = false
When enabled, spellcasting villagers can fight back when attacked.
This gives normal villagers a way to use offensive spells without requiring another NPC or guard mod to give them combat targets.
Friendly-Fire Protection
Fixed friendly-fire checks not working reliably.
NPC casters now properly avoid hitting:
- Owners.
- Allied Recruits.
- Friendly mobs.
- Protected bystanders.
Creative and spectator players no longer unnecessarily block casts.
Recruits Improvements
recruits.enabled = falsenow properly disables Recruit spellcasting and rank scaling.- Recruit ally protection remains active even when spellcasting integration is disabled.
- Passive Recruits can now still cast self-healing and support spells.
- Player-owned Recruit casting sounds now use a more appropriate sound category instead of "Hostile Creatures."
Better School Assignment
- Villagers with professions that currently have no mapped school are no longer permanently marked as non-casters.
- Adding new profession mappings or changing spell restrictions can now affect existing villagers.
- Failed school assignments caused by temporary config restrictions no longer permanently lock an NPC out of casting.
/reloadnow refreshes spellcasters already in the world.
AI & Casting Fixes
- Fixed spellcasters taking several seconds to react after entering combat.
- Fixed removing a spellcasting goal potentially leaving an NPC's movement or targeting AI stuck.
- Fixed casting glow effects sometimes remaining permanently after unloading, death, or server shutdown.
- Fixed configured spell wind-up times being one tick shorter than intended.
- Fixed long-channel spells also ending one tick early.
- Fixed blacklisted spells sometimes causing NPCs to repeatedly start the same failed cast.
- Fixed Evoker spellcasting not being correctly suppressed when configured.
- Fixed NPC mana remaining above its new maximum after mana limits were lowered.
- Reduced unnecessary spell-selection checks when no usable spells are available.
Command Improvements
/magicnpcs school infonow reports the actual source controlling the NPC's school.- It now gives proper feedback when no NPC is selected.
/magicnpcs spellsis now correctly restricted to operators.- Fixed
/magicnpcs spellscrashing on certain addon spells. - Improved School Tome and school-reroll feedback.
Stability Improvements
- Fixed extremely large datapack weights potentially crashing the server.
- Improved weighted spell, loadout, and equipment selection safety.
- Reading NPC school information no longer creates unnecessary saved data on every mob.
Default Spell Changes
Added several defensive and healing spells to the default support list, including:
- Oakskin
- Evasion
- Invisibility
- Spider Aspect
- Ice Block
- Frost Step
- Shield
- Fang Ward
- Additional healing spells
Removed the nonexistent irons_spellbooks:cure_wounds entry.
Documentation Corrections
Corrected documentation claiming villagers naturally attack during raids.
- Vanilla villagers do not gain combat targets during raids.
- Offensive casting requires another NPC/guard system or the new
selfDefenseoption.
Corrected several incorrectly documented config paths.
Updated the mod description to correctly describe the system as datapack-driven.
Migration Notes
Existing
windupvalues now last exactly as many ticks as configured.- Existing packs will effectively gain one extra tick compared with the previous broken behavior.
Disabling
recruits.enablednow disables Recruit spellcasting entirely.Spells that previously consumed mana while doing nothing will now either work correctly or safely refuse to cast.
This mod has no additional files

