@Sharp Yeah. Padding is alright to some degree due to power-creep in stat-based games; for example, your equipment gets stronger, so enemy HP has to increase in line with that to keep difficulty the same, etc.
However the opposite of that is HP sponges like The Sleeper from Everquest, which took many, many hours to kill by a huge amount of players. He also had a whole host of really really unforgiving and frustrating attacks like ‘Death Touch’ and a host of immunities. Of course, he existed in a game that appealed primarily to nerdy masochists (no insult intended), so the idea actually worked and was memorable. Not so much nowadays.
@NoElement
Immunity is different to resistance, though. Immunity completely invalidates many builds depending on what boss you’re fighting, and makes players feel useless. For example, a Cryomancer against a Ice-immune boss. This is bad design. Although I was talking more about damage immunity rather than status ailment immunity. Bosses should be immune to CC’ing status ailments by default (apart from in certain windows of time) since it opens doors to cheesy playstyles and is overall un-fun. The rules in that blog post apply from the AI’s perspective too!
I like how you brought up the Dark Cloud series - I adored them. However, in Dark Cloud you always had two characters to swap between, whereas in ToS you only have one (I believe?), so invalidating certain characters isn’t something you can do without frustrating players in ToS.
Then again, the diversity idea is also correct, as if one build is the best answer to everything, why build anything else? It’s a tricky balance between keeping every build valid yet allowing none to excel in every scenario.