This is going to be a long one.
Personally, I like to use both MP and TP in my magic system. I tie the higher tier spells to use both MP and TP so the player can't simply spam the most powerful spells constantly. The caster essentially has to gather enough focus during the battle before they can prepare the spell for use. I think of it in terms of preparing a magic field in which the spell can be created. This sort of thing doesn't just instantly happen, it takes time and preparation.
That being said, balancing MP is going to be more difficult the more leverage systems you add to it. Each method is its own way of trying to control the amount of magic capability a character has, and if you have several systems in place designed to make magic either more or less usable, they are all going to be battling each other for control. If, however, these separate systems are all controlling different aspects of the system and have their own role to play, then implementing multiple systems can be very beneficial.
- Max MP is a good way to control how strong of a spell the caster can manage. If the spell is too powerful for them to handle, they won't be able to muster the amount of mana necessary to cast it. However, a very proficient caster could manage to cast a high level spell multiple times and still continue to perform without becoming too drained.
- Mana regeneration is a great way to give your casters a recovery rate so they can continue to cast spells over time. I have seen many systems with and without this factor work successfully. It all comes down to how you want to handle the magic in your world. If you plan on having your casters only able to regenerate mana during rest, then this option is likely not what you're looking for. If you want your casters able to continue to use spells throughout even lengthy battles of drawn out dungeons while giving the player the option to use items or not, this is a good balancing mechanic. (People like me are extremely item stingy, and appreciate mana regen.)
- Reduced MP cost is a good mechanic to show a caster's level of proficiency in magic. I can see a mage who has used a spell a hundred times or more being able to find ways to cut down on the amount of mana needed to cast the spell. This does, however, compete with the Max MP method for control over how many spells you would like your casters to be able to use before they exhaust themselves. Having reduced MP cost can be abused to the point where magic is no longer an issue due to spells being free to cast, though if it is managed well, it can be worked in to set reasonable cast limits.
Each method has its pros and cons, and each method can work with the other. It's up to vigorous testing to really find a balance that you deem acceptable.
Now that that long rant is over, I've got a couple of things to add:
Personally, I will almost always value reduced MP cost and MP regen over an increase in max MP. My reasoning is the more I can squeeze out of my already existing mana pool, the more valuable each point becomes, and the faster I can regenerate it, the more valuable my caster becomes.
This all comes down to how the numbers crunch, of course. If the mana pool increase will grant more casts than the reduced spell cost, then an increase in max MP it is.
In terms of reducing mana costs, flat rate reductions and percentile reductions are two different beasts. If your low tier spells cost something like 3 mana and you reduce spell costs by 10%, that's not going to do anything for a low level mage. But a flat rate reduction of 1 bringing that cast down to 2 mana is a huge difference to a low level mage, but pretty much completely useless to a high level mage, who is presumably casting higher level spells costing 50+ mana a spell. In that case, the percentile reduction is a much greater value.
With this in mind, combining the two should be handled with caution. I always recommend making sure the flat rate reductions are done before the percentile reductions, otherwise you will likely end up with spells that cost 0 mana, assuming you grant bonuses large enough for this to be feasible. Which brings me to probably the most important aspect of this whole thing:
- Deciding on what the maximum amount of reductions is considered acceptable is the biggest point that should be focused on should you include cost reductions, be they percentile, flat, or a combination of the two.
- Deciding on how effective regen is at each stage of the game is the biggest point that should be focused on should you decide to implement this. Calculate how many casts a caster is capable of at level 10, level 30, level 50, and so on due to regen, and make sure the balance is acceptable for the place the player should be at in the game at that time.
- Deciding on how much magic you want your players to have at their disposal is the biggest point that should be focused on when considering Max MP pools, as well as spell costs.
- And lastly, always triple check how well all of the systems you plan to implement work together before you decide you are happy with the results. Extensively test to see if everything works within your expectations at all different points of the game, stress test the limits of the mechanics you've put in place, and aim to break them as much as you possibly can. If the results are still satisfactory, give another person a go at abusing the systems and see if they manage to use it in a way that you don't find acceptable.
Sometimes, having a system that feels slightly broken is a great way to make the player feel empowered. Personally, I always enjoy it when I find a way to make my character so strong they take 0 damage or they one-punch a boss that's supposed to be challenging. But whether that comes from the fruits of labor the player has put in or from something game breaking that had been overlooked makes a huge difference on its impact, in my opinion.
Thank you for reading this through. I hope my opinions and thoughts have been helpful.