An interesting idea to combat this would be to use something similar to a very old game I played, in which you could scavenge for items that you could combine to achieve spell affects.
For example a fireball was 1 part brimstone 2 parts ash. if you had the items in your inventory it would allow you to cast the "alchemy" or spell
there were other things like heal was 1 part root, 1 part water
anyway the game I'm talking about was on the SNES called Secrets of the Evermore, it was an action rpg and it featured probably around 50 "spells" they referred to them as alchemy formulae, and the requirements for using the spells was you needed to find someone who knew the formulae and could teach you, and then you needed the ingredients.
they also had a level system for the spells, the more you used them, the better you became at using them, it was quite a good idea, meant you only got out what you put in.
anyway here is a link to all the spells from that game so you can get a bit more of an idea.
http://shrines.rpgclassics.com/snes/soe/alchemy.shtml