Ohh magic. I never really worked out a lot in the realm of magic. I know that these were my issues;
1. Too powerful at high levels. By that, a player who had a good retinue of spells and knew how to use them could become an unstoppable force only counter able by ever greater or equal magic. The fighter would diminish in role with time. Now, the goal was/is to keep the fighter on equal footing with the mage without resorting to magical weapons and effects.
2. Fire and forget was not my cup of tea. Again, for a SS feel game, the fire and forget did not work well. I preferred a system whereby the mage would slowly get worn out casting spells. He would also know his spells. Period. Also, there would be a chance of failure.
3. Quick fire spells pace too fast. By this I mean that the rapid firing of spells, like a six shooter full of lightning bolts, acid arrows and fireballs, did not convey the mystery and type of magic I would want.
4. Spell selection and nature of spells should not be long range artillery. The mage played in The Game is mobile artillery. i don't like that.
5. Continuing with that, the medic. The cleric is a medic in the fire team. pure and simple and should not be.
My solutions were to create a mana based spell system or some such. I know I once tried using hit points to cast spells (that didn't work with low hit points.) In any respect, the mage is somehow limited but not with the fire and forget retinue.
Rituals and long casting times were to be a part of many spells. This adds an element of time to all situations and allows the SS major character to act (the swordsmen that is) and prevent the spell or something. Also, it gives good reason for that mage to have sword wielding henchmen at hand.
Once a spell is known, its known. Period. It can be cast as much as possible.
Spells would scale. The more powerful the mage, the more powerful the spell.
Reducing the effect or nature or putting limitations on the game changing spells. Time stop comes to mind. Anyway, there are some spells that can be so readily abused that the fire and forget limitation becomes one of the only ways to put the brakes on it. Scrying is another example of an uber powerful game (or session) breaker.
Here is an example. Recently we played a game in which we worked up to this greater demon encounter. We were all geared for it and prepped and much tension was at hand for a very difficult up heal struggle.
Except, I had, for some unknown reason, picked dismissal for my spell that day (something I rarely do and a pick for which Steve was unprepared). I dismissed the demon in one round, Nary a single blow was landed. Steve, being a good master of The Game, still managed a cool after effect that was a struggle to overcome. So the game went fine.
For an S&S type game I would rather the encounter have played out like this.
The cleric, realizing the creature was from the Wretched Planes, recalled a old spell that could dismiss it - he would have hoped it would as his recollection is faulty and the tongue of the spell is ancient and foreign. The demon leaps forward and the others die into a hard scrape battle while the cleric begins summoning elemental forces to pull the demon back. For reveal rounds this goes on and the others are getting worn down and pressed and begin to look desperately to the cleric for their salvation.
Then the spells go off and the demon is pulled back to the planes of the underworld. The cleric is visibly spent from the effort and the rest of the party torn and ragged.
Or, the spell fails and the demon laughs. The old warrior, tired beaten and bruised, damns the demon and all that is and leaps with cold steel in hand plunging the blade hilt deep into the creatures head killing it.
Either way, the creature could be beat with cold steel or magic. Time and the increasing potential for character death would be an essential elements for that encounter being dramatic.