In magic.cpp find the following lines: // The following loop checks to see if any item is currently equipped for (i=0; i < itemcount; i++) { if ((items[i].cont1==caster->ser1)&&(items[i].cont2==caster->ser2)&&(items[i].cont3==caster->ser3)&&(items[i].cont4==caster->ser4)) { if (items[i].layer==2 || (items[i].layer==1 && items[i].type!=9)) { sysmessage(CasterSocket,"You cannot cast with a weapon equipped."); return; and change 'em to // The following loop checks to see if any item is currently equipped for (i=0; i < itemcount; i++) { if ((items[i].cont1==caster->ser1)&&(items[i].cont2==caster->ser2)&&(items[i].cont3==caster->ser3)&&(items[i].cont4==caster->ser4)) { if ((items[i].layer==2 && items[i].type!=13) || (items[i].layer==1 && items[i].type!=9 )) { sysmessage(CasterSocket,"You cannot cast with a weapon equipped."); return; Then you have to change the TYPE of Chaos & Ordershields to 13 (this can also be done with staffs, anything on layer 2) Hey I've tested this (first time THIS will work :-))