Code:
<var name="Ice">Enblizzard II</var>
<var name="Fire">Enfire II</var>
<var name="Wind">Enaero II</var>
<var name="Earth">Enstone II</var>
<var name="Thunder">Enthunder II</var>
<var name="Water">Enwater II</var>
<var name="Light">Enthunder II</var>
<var name="Dark">Enthunder II</var>
This is bad. Do not use variables names that are solely the element. Because of the way spellcast constructs variables, this will undoubtedly cause you lots of headaches further on.
Instead use something like <var name="En-Ice">Enblizzard II</var>, and refer to it by <if Spell="$En-%SpellElement"> .. etc.
Same thing with these:
Code:
<var name="Grip">Wise Strap</var>
<var name="DarkMagic">Caecus Grip</var>
<var name="DivineMagic">Divinus Grip</var>
<var name="ElementalMagic">Elementa Grip</var>
<var name="EnfeeblingMagic">Macero Grip</var>
<var name="EnhancingMagic">Fulcio Grip</var>
<var name="HealingMagic"></var>
<var name="ElementalMagicDMG">Wise Strap</var>
You most likely want to use a "Grip-" prefix for each of those.
Code:
<elseif type="Command Prefix">
<if spell="/range">
<castdelay delay=".2" />
<equip set="%Spell" />
</if>
</elseif>
You appear to want /ra attacks to be processed here. First, the type is wrong (should be "misc"). Second, the spell is wrong (should be <if Spell="Ranged">).
Code:
<elseif type="Ninjutsu">
<if spell="Utsusemi*">
<equip set="%Spell" />
</if>
</elseif>
This will fail because you only have a set named "Utsusemi". You're trapping for any form of Utsusemi here, and equipping "%Spell", which means it will look for sets named "Utsusemi: Ichi" and "Utsusemi: Ni".
The remainder is clumsy and cluttered, so I'll let you do some revisions before looking at it again.