4 months ago - EHG_Kain - Direct link

It’s not an unwarranted question: why not make an exception if the ability doesn’t do damage, and doesn’t deal a hit?

This is because it has no reasonable way to know when it gets consumed that Snap Freeze won’t be causing any damage, and that it won’t be triggering any subskills which would either be a hit, or cause damage.

Stats from abilities get inherited by subskills, and any ailments they inflict. So. to know there was no damage it would have to run all calculations and added effects, including which enemies are effected, their defences, how the AoE applies, who the ability chains to - effectively simulate the entire ability cast as there may be conditions on a subskill or different trigger that apply only when X enemies are hit, or something similar. Then, if there was something which resulted in damage or a hit, it would need to re-calculate it all again with the increased damage and slow chance from the preparation. This would be non-performant (very slow),.

This also can’t be done against a “known/preset” version the spell, as you can have dynamic effects on you which could change that state from moment to moment (eg. gain a buff which causes you to apply frostbite on spell cast, now snap freeze deals damage, buff falls off, now it doesn’t). Some effects or subskills could also be ‘random’, so it would be taking a chance that when it calculates it once, it gets a different result than when it recalculates it such as how an ability chains between enemies, or how many enemies were caught in an AoE.

To keep it simple: the trigger is “your next elemental spell cast”, and so, any elemental spell cast consumes it.