The first thing that comes to mind, is mana. But on a wammy/sampire that could be fightning dozens of casters a mana vamp, feeblemind, mana leech from weapon could screw that up.
Right now I'm dealing with curse weapon.
I have a timer for curse weapon, when systime > timer, it casts (If mana > required). From there my journal subs will find the curse weapon and set the casting active as true & sets a casting timer by systime. If systime gets greater than the timer, and the following journal entries were not found, it deems the curse weapon as successful and resets the curse weapon timer. Journal entries that deem curse weapon as a fail would be, Insufficent mana (Mana vamped, or somehow lost it before script casted...), Spell Fizzles (you were mana vamped while casting, paralyzed, or just failed/fizzled).
I thought that I could check for karma loss to tell it that curse weapon was also successful, but if you're killing something like pixies, it could mess with the script...
Anyone else have any other ideas to make it reliable?