Incorrect entry for main weapon:
Code:
<set name="Standard">
<main>$Austere's staff</main>
$PElement is never defined, nor is it ever assigned a value. This will always fail.
Code:
<if advanced='"$PElement" == "%DayElement"'>
<action type="equip" when="aftercast|idle">
<hands lock="yes">Caller's Bracers +1</hands>
</action>
</if>
$ElementalStaves is never defined, nor is it ever assigned a value. This will always fail.
Code:
<if Advanced="$ElementalStaves=1">
<var cmd='set ElementalStaff "$%SpellElementStaff"' />
<equip>
<main>$ElementalStaff</main>
</equip>
</if>
The first <if> doesn't do anything; I don't expect this to work well.
Code:
<if Spell="Air Spirit" Advanced='"%Weather"="Wind x2" OR "%DayElement"!="Ice" AND "%WeatherElement"="Wind" OR "%DayElement"="Wind" AND "%WeatherElement"="None"'/>
<else>
<!--Checks if Weather Element is stronger than Day Element-->
<if Advanced='"%WeatherElement"!="None" AND ("%Weather"="%WeatherElement x2" OR $%WeatherElementStrength!=$%DayElementStrength-1 OR "%WeatherElement"="Fire" AND "%DayElement"!="Water")'>
<action Type="ChangeSpell" Spell="%WeatherElement Spirit"/>
</if>
<else>
<action Type="ChangeSpell" Spell="%DayElement Spirit"/>
</else>
</else>
The very last line of the rules says to equip the Standard set again, overriding anything you've done in the spellcast. This may only apply to precast.
Code:
<action Type="Equip" Set="Standard"/>
Also suggest updating your code to 2.30 format: http://windower.net/plugins/spellcastupdatexml.php