The problem with 3.5 attack/damage spells is that they have too many moving parts.
You have range (touch, close, med, long).
You have duration (instantaneous or damage over time)
You have Area (target, burst, cone, cylinder, line)
You have Save (fort, ref, will)
You have To hit (if needed)
You have Components (V, S, M, Pricy M, F, DF, XP)
You have XdX damage (15d6, 5d8, 5d4+5, etc)
You have type (fire, cold, sonic, acid, electricity, force, other)
You have Spell Resistance (yes, no, partial)
And you have secondary effects.
Lets look at damage-dealing spells from 3rd level (PH + SC)
Fireball: 1d6 damage per level, 20-ft. radius.
Lightning Bolt: Electricity deals 1d6/level damage.
Vampiric Touch: Touch deals 1d6/two levels damage; caster gains damage as hp.
Acid Breath: Cone of acid deals 1d6 damage/level (max 10d6).
Icelance: Changes ice into lance, which attacks subject for 6d6 damage and stuns for 1d4 rounds.
Chain Missile: Multiple missiles deal 1d4+1 damage each, then strike secondary targets.
Hailstones: Frigid globes deal 5d6 cold damage.
Light of Venya: You radiate pearly light, which you can expend as 2 bolts that deal 2d6 damage, 4d6 against undead and evil outsiders.
Rainbow Blast: Line deals 1d6 damage of each energy type.
Resonating Bolt: Sonic energy deals 1d4 damage/level (max 10d4).
Scintillating Sphere: 20-ft.-radius burst deals 1d6 electricity/level.
Shatterfloor: Deals 1d4 sonic/level plus damages floor surface.
Sound Lance: Sonic energy deals 1d8/level damage.
Each is pretty much a different version of XdX [type] damage in a [area] with [special effect]. However, each is balanced differently so as to allow different abilities (chain missiles does less damage, but it ignores damn-near anything. Rainbow blast does 1/2 the damage, but its all typed)
Making a free-form formula that balanced all these moving parts would slow the game down even further than it is noew.