Instead of looping through the damage like this:
For each (Integer Loop) from 1 to InstantDamage[Spell_Level], do (Actions)
Loop - Actions
Unit - Cause Unit to damage (Picked unit), dealing (Real((Intelligence of Unit (Include bonuses)))) damage of attack type Spells and damage type Normal
which happens to be slow, you should just multiply the damage you're going to deal by InstantDamage[Spell_Level]
Unit - Cause Unit to damage (Picked unit), dealing (InstantDamage[Spell_Level] x Real((Intelligence of Unit (Include bonuses)))) damage of attack type Spells and damage type Normal
You would get the same results, but the difference is that the second solution is more efficient.