One of my favorite games is Secret of Evermore (SoE) for the Super Nintendo. It's not one of my favorites because of the gameplay, but for the story and the atmosphere. In fact one of SoE's sore spots was its innovative yet weak magic system called alchemy. The spells (formulas) were paid for with ingredients instead of magic points (à la Ultima IV). Each spell could be leveled up with repeated use (à la Secret of Mana). While this spell system was rich with flavor, as a game system it broke down because the optimal move is to use the same handful of spells repeatedly. The may issues are:
- No tactical risk - In a game where your only play choice is essentially a battle mage, there should be tradeoffs between when spells are appropriate and when melee is the better choice. There is no punishment for standing in the middle of a pack and chain casting fireballs. (which can be cast so quickly that the enemy is effectively stun locked)
- Spell leveling - Leveling up spells individually results in one spell being better than the rest (the highest level spell) and a penalty for using other spells (they're relatively weaker until you spend resources to catch up). This encourages homogeneous gameplay.
- Cost of ingredients not proportional to power - In SoE the new spells use the new (more expensive) ingredients and spells cost anywhere from 2 - 4 ingredients each, but the 4 ingredient spells aren't twice as good as the 2 ingredient ones. This creates "bad" spells that will never get used, which leads to homogeneous gameplay.
- Spell ingredient overlap is inconsistent - On the one end, flash and fireball share no common ingredients with each other or with anything other vital spells so there's nothing stopping you from bringing on a firestorm. Then, on the opposite end, Heal and Acid Rain share water as an ingredient with Acid Rain consuming 3. The overlap penalty is so severe that using Acid Raid is non-option.
So the question is, "How could this be better?" An ideal magic system will encourage using a wide variety of spells and also, importantly, not just using spells.
To fix the tactical issues, a WoW style solution would work best. Spells take time to cast with damage interfering with cast time. Plus, certain abilities can interrupt the spell. In a more action oriented game like SoE, a couple tweaks need to be made. Healing spells need to be capable of being cast while trapped in a pack of monsters and damage spells need to be rate limited. A solution to this is short casting times with long cooldowns for healing spells and long casting times with short cooldowns for damage spells.
A quick fix to the leveling problem would be to get rid of spell levels entirely and just make spell power scale with player power. While this would eliminate the "have to pick one spell and stick with it problem", it doesn't encourage trying all the spells. A better choice would have casting spells increase the players spell power level (instead of the spells' spell power level). Couple this with a cap on how much any one spell can contribute to the total power level and the player is forced to use all the spells. Just make sure that you don't have any bad spells that the player will resent being forced to use only for the power gains.
Ingredients are the key to issues 3 and 4. First lets consider the 4 fire spells in the game: flash, fireball, fire power, and nitro. First, they all should have a common ingredient; lets use wax because it more of a delivery method than a source of power. This limits the total quantity of fire spells castable to the quantity of wax. Secondly, they should all use a second ingredient that would indicate it's power: Oil for Flash, Brimstone for Fireball, Ethanol for Fire Power, and Gunpowder for Nitro. With this setup, the player will get more powerful fire spells over time. Yet, with the choke point of wax, they player will only keep one of them equipped at a time. Applying this technique to the other spells, we could have clay be the basis of physical damage spells, water being the basis of healing spells, and wax being the basis of fire spells. Special effects spells could use any of these three as a basis, but try to match the flavor. For example a strength increase should require clay as a base. The increase in physical weapon damage will come at the expense of physical damage spells.
Overall, these changes would increase the variety of gameplay which would add more fun to an all ready great game. I wonder if any ROM hackers are still around to implement this.