I will answer in a philosophical way. You don't want your design to be flexible Even if you can, you want to impose restrictions on yourself. Flexibility is bad, veeery bad. Even evil I would say
I agree, most of the time. I'm referring to a very pragmatic type of flexibility. One that could see use very soon, and not just a 'I can't shake this feeling that I might need this'.
So what's the goal/use ?
Some rock-paper-scissor effect to increase/decrease damage ?
Pretty much. I'm currently using 6 different types of attacks (3 physical, 3 magical). Each of them have a 'comfortable' set of purpose. One of the physical attack types is mostly used for ranged attacks, so whenever I make a ranged unit that uses a different attribute instead, or whenever I use a melee unit that uses the ranged attack type, I'm essentially breaking the mold a bit, on purpose, to give a unit some usefulness beyond just being 'stronger'.
Additionally, some effects may trigger based on the type of damage that hits a unit (burning for example), but these are generally described as a standalone ability. Still, it helps to have a damage type that is on-theme (but I could have gone without it).
in M:tG they just make sure they make plenty of usefull cards for every color.
It is a bit more complex than that. Basically, they have a color wheel that determines what color an effect should be. In addition, they have a few 'splashes' which are effects that fall between 2 or more colors. Over time, they have shaped the color wheel into a sturdy construct where everything is defined. If they were to add a new color, it would not have a personality, nor any effect per se. More importantly though, it wouldn't have enough cards to compete with the others and wouldn't be drawn at the back of their cards (one of the many issues when dealing with physical components).
My issue is similar in that the damage types will have a dedicated field (especially its corresponding armor values), and I can't start fitting 7 icons on newer units if I had 6 icons before.
When there are too many damage types or elements they just become meaningless.
I agree. I feel that 6 different types is actually a lot, but I can't help thinking I'll need another one in the near future which I can't possibly guess currently. Much like MTG here, it was impossible for Richard Garfield not to know that not all of the world could be explained within 5 colors (or that, perhaps, it was mechanically relevant, but broke its own theme).
One possibility is to have a system under the system. For example don't literally have fire resistance, ice resistance etc, have lower-level attributes such as reactivity, stable heat range, hardness, flexibility, etc. Then damage types can be created as a combination of the lower-level damage types.
I understand. If it was a PC-only game, I would've gone that way, despite how complex a system that could be. However, given the physical components, I can't afford to have this many stats.
However as others have said, sometimes keeping it simple is best because the player can understand the system better. If the system goes too far against the player's expectations, then the player will think it's broken or too difficult.
Back to square 1: make the design decision and it will bite you in the ass later.
That's what I've been doing for the longest time, but I feel there's a 'better way' that I'm missing here...