Here's the problem: The damage effect duration is always 1 second no matter how long you hold down the mouse button for - allowing players to "cheat" with rapid clicks (hold the mouse button down just long enough to inflict damage and then release it - this always causes the full amount of damage for insignificant energy cost).
If that made no sense - in a nutshell: the Flames spell could be mechanically described as "Costs 12 energy per second. Every quarter second while casting, send out a cloud of flame that inflicts 8 fire damage over 1 second." (this means that you could cast a quarter second and get the full damage - aka cheating).
The obvious solution: split the damage over the projectiles to enforce fair cost. For example, if Flames was reworked in this manner, it would look like "Costs 12 energy per second. Every quarter second while casting, send out a cloud of flame that inflicts 2 fire damage instantly." You click a quarter second and you get a quarter of the listed DPS. You click a full second and you get the listed DPS.
The problem: Skyrim appears to be hell-bent on preventing any efficient solution.
I tested continuous effects tied to a damage effect with a duration of 0 and they did almost no damage. I'm guessing that with a duration of 0, the effect runs for a frame and then expires. Is there any way to get cast duration on "concentration" casting types to work like how it did in Elder Scrolls IV: Oblivion? (in particular, a null duration would cause all effects instantly).
Also: effect duration appears to only take integers (no floats/doubles), otherwise I would just set the duration to the projectile recast interval.
My current solution is ugly and inefficient: frame the damaging part of the spell as a Script Effect with duration 0, then script the damage. (yes, this means that the Papyrus engine would have to fire off a script every quarter second.) Anyone have a better idea?