How do you feel about elemental weaknesses? Whether it being individual mons/armor having specific weaknesses and strengths or mons of a type all having the same resistances. I’ve always felt that they were pointless in single player since you can just look up what to bring.
Alright, lets think about it. What are some situations that can occur here? RPGs are games of specialization typically, so you could end up specialized into a team that has their strongest moves resisted, but it still makes sense to use those moves because they do the most damage. You could deliberately construct a team that resists, reflects, nullifies, or absorbs the types they’re going to go up against.
By themselves, these factors are kind of flat, they’re factors of preparation chosen before the battle that apply number buffs to damage without altering how the moves fundamentally work. They’re not as much a counter as most megaman boss weapons are to bosses weak to those weapons. Probably something to consider more from the knowledge perspective is how advance knowledge of your opponent’s strengths against you or resistances shapes the moves you avoid using.
However we could borrow a principle from RTS here. In RTS, some units hard counter others, just the way they’re built, and on the surface it looks like that sucks, except it’s possible to overwhelm lesser numbers of units with a lot of hard countered units, and to mix units together to create a more flexible composition.
If you only had to fight with one pokemon each battle, then yeah, type advantage is pretty sucky. Consider Devil May Cry 3 which surprisingly enough has a type advantage system for its devil arms. You can follow the type advantage system, but it’s just flat number buffs, it doesn’t feel that strategic. Once you’re trying to mix together different types into a coherent composition that needs to maximize its output versus other compositions it gets more tricky.
Add to that the way Pokemon has Same-Type Attack Bonus (STAB), which adds a 50% boost to using the same type of move as your pokemon’s type. I still remember as a kid fighting Erica in pokemon red and having all my pokemon get beat except a low level bellsprout I happened to have. Its poison type helped it avoid getting poison powdered and its grass type resisted other moves and it had a non-grass move on it, so by itself it turned the tide.
Over in SMT3, type weakness has another role of earning turns, not just maximizing damage, and each character has different elemental and buff/debuff moves in the lineup, so hitting enemies with their weakness can potentially not only mean more damage, but more healing or buffs/debuffs depending on your party composition. And given that the enemy teams are mixed too, different characters can share in this potential.
Type weakness is generally so simple that it might be a good dynamic for kids. Match like to like. Probably one of the worst examples is Golden Sun, which had one of the most boring elemental systems ever (hit enemies with opposite element always). SMT does the classic four elements thing better just by having them be arbitrarily weak per-demon, even if it’s confusing to keep track of.