Here are some of my thoughts on resistances in Grim Dawn or most other ARPGs, including some suggestions to improve certain aspects about the topic. Many of my ideas may be hard to implement in running games, so just see them as food for thought, rather than specific demands.
For game design, (or any design for that matter) the first question should be: What purpose should a resistance system serve?
For me a resistance system should accomplish the following goal:
Give the player an opportunity to adapt to damage types he feels most endangered by.
Here are some issues I have with the traditional resistance systems in ARPGs:
1. Issue: resistance scaling is exponential
Here is a small illustration:
having 00% resistance with 100 base hp means having 100 effective hp
having 25% resistance with 100 base hp means having 133 effective hp, an increase of 33
having 50% resistance with 100 base hp means having 200 effective hp, an increase of 67
having 75% resistance with 100 base hp means having 400 effective hp, an increase of 200
Each step has the same equipment cost, like one more item giving you 25% resistance, but each step gives a much greater increase in effective hp than the last.
This leads to the problem that maxing resistance is mandatory if you want to reach high values of effective hp, leaving many other defensive stats much less desirable, until you maxed out resistances.
To solve the problem, stacking higher resistances should diminish the effect instead of increasing it.
Then you would still want to have some resistance against any type, but you would have to decide which resistances you want to concentrate on, because the equipment cost increases for higher damage reduction.
2. Issue: not knowing what hit you
There is no good way to figure out what hit you for how much damage and of which type.
The simplest thing I can think of, would be a death recap, showing you the enemies and the used damage types that did the most damage to you, in the last moments before you die.
Most important for decision making is always having informations to process.
This allows you to focus on the dangerous enemies first, next time encountering them, or adapting your equipment to better resist their damage types.
There could be much more elaborate tools to gather informations about the damage you receive, but I suppose you get the point.
The traditional system is very simple, numbers and programming wise, but I think it comes with too many drawbacks for a modern game. It shouldnt be too hard to come up with a system which better serves the purpose.
Which purpose do you think a resistance system should serve?
Do you have examples of other, more preferable resistance systems out there?