I was thinking about trying to come up with a more universal, or at least easier to understand, resistance system. Do people think this is a worthwhile thing to look at? If so can someone point me to where I can find the max attack for each element and the current reductions due to resistance?
Resist system
Collapse
X
-
Tags: None
-
I take it that you're already familiar with FA/O style cumulative resists.www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
My banding life on Buzzkill's ladder. -
I was thinking about trying to come up with a more universal, or at least easier to understand, resistance system. Do people think this is a worthwhile thing to look at? If so can someone point me to where I can find the max attack for each element and the current reductions due to resistance?
for the resistances you have to piece them together from: constants.h and list-gf-types.hComment
-
What I am thinking of is a simpler system that would not involve changing items at all. At least for the basic four something like this, first resist works as now, second resist blocks half remaining, temp resist blocks 1/6 remaining. This works out to the same as double resisting currently, there is just an extra level of resist in the middle. this might work for the basic four but I have no numbers for the others so not sure how well it would do there. I'm not even sure it is possible to come up with a simple system that works for all elements without changing resists on items but I thought I might look at it just to see. Plus I love playing with numbers.
max attack for elements can be found in list-mon-spells.h
for the resistances you have to piece them together from: constants.h and list-gf-types.hMy first winner: http://angband.oook.cz/ladder-show.php?id=10138Comment
-
Resistances as damage reduction are pretty much irrelevant except for basic four and poison. We could as well remove them completely for rest of the elements and replace them with side-effect prevention and leave basic four & poison as they are.Comment
-
Here's a little something I whipped up this evening. Should be pretty easy to code and test but I don't have a compiler.
Current resistance system:
Code:Element Max Divisor Res Adj Dbl Res Adj Vuln Adj Res damage Dbl Res damage Vuln damage Acid 1600 3 (dam+2)/3 (dam+8)/9 (dam*4)/3 534 178.667 2133.333 Elec 1600 3 (dam+2)/3 (dam+8)/9 (dam*4)/3 534 178.667 2133.333 Fire 1600 3 (dam+2)/3 (dam+8)/9 (dam*4)/3 534 178.667 2133.333 Cold 1600 3 (dam+2)/3 (dam+8)/9 (dam*4)/3 534 178.667 2133.333 Poison 800 3 (dam+2)/3 (dam+8)/9 267.333 89.778 Min res damage Average Max res damage Nether 550 6 (((dam) * 6) / (damcalc(1, 6, dam_aspect) + 6)) 471.429 347.368 275 Light 400 6 (((dam) * 4) / (damcalc(1, 6, dam_aspect) + 6)) 228.571 168.421 133.333 Dark 400 6 (((dam) * 4) / (damcalc(1, 6, dam_aspect) + 6)) 228.571 168.421 133.333 Sound 500 6 (((dam) * 5) / (damcalc(1, 6, dam_aspect) + 6)) 357.143 263.158 208.333 Chaos 500 6 (((dam) * 6) / (damcalc(1, 6, dam_aspect) + 6)) 428.571 315.789 250 Disench 500 6 (((dam) * 6) / (damcalc(1, 6, dam_aspect) + 6)) 428.571 315.789 250 Nexus 400 6 (((dam) * 6) / (damcalc(1, 6, dam_aspect) + 6)) 342.857 252.632 200 Shards 500 6 (((dam) * 6) / (damcalc(1, 6, dam_aspect) + 6)) 428.571 315.789 250 Time 150 3 No resist Inertia 200 6 No resist Gravity 200 3 No resist Plasma 150 6 No resist Force 200 6 No resist Mana 1600 No resist
Code:Element Max Max Average Min Dbl Max Average Dbl Min Vuln Max Average Vuln Min Acid 1600 533.333 426.667 320 320 256 192 2133.333 2026.667 1920 Elec 1600 533.333 426.667 320 320 256 192 2133.333 2026.667 1920 Single Res Adj ((dam*(damcalc(1,5, dam_aspect)+5))/30) Fire 1600 533.333 426.667 320 320 256 192 2133.333 2026.667 1920 Double Res Adj ((dam*(damcalc(1,5, dam_aspect)+5))/50) Cold 1600 533.333 426.667 320 320 256 192 2133.333 2026.667 1920 Vuln Adj ((dam*(damcalc(1,3, dam_aspect)+17))/15) Poison 1000 333.333 266.667 200 200 160 120 Nether 550 412.5 343.75 275 Light 400 300 250 200 Dark 400 300 250 200 Sound 500 375 312.5 250 Res Adj Chaos 500 375 312.5 250 ((dam*(damcalc(1,5, dam_aspect)+7))/16) Disench 500 375 312.5 250 Nexus 400 300 250 200 Shards 500 375 312.5 250 Time 150 Inertia 200 Gravity 200 Plasma 150 Force 200 Mana 1600
Double resist blocks 80% to 88%
Poison max damage changed from 800 to 1000
Result: Single resist is on average about 7% better than previous, while double resist is about 5% worse. Poison more dangerous
Others One resist blocks 25% to 50%
Result: Light, Dark and Sound are slightly more dangerous than previously, others have a slightly lower max but same min and same average damage
Vulnerabilities increase damage taken by 20% - 33% vs the previous 33%
Using the damcalc function in the numerator allows us to get an average in the middle of the range vs the previous skewing toward the low end of damage taken
Overall high resists and the basic four are more valuable while temporary resists are slightly less helpful but still a good thing to have. This is a boost to warriors and low level characters who cannot easily get the resist spell but also helps characters who's temporary resist has worn off unnoticed or ends in the middle of a fightMy first winner: http://angband.oook.cz/ladder-show.php?id=10138Comment
-
Hmmm. I wonder if I can just clarify the basic proposition here. It seems to have two parts:
1. Resists should be cumulative in some way a la O/FA. (Currently only one perm plus one temp are cumulative.)
2. Resists should be variable in their effect. (Currently some are and some aren't.)
The first point was in the OP but not the reworked table. I'm quite open to the idea of moving to cumulative resists, but why wouldn't we just adopt the O/FA system? It's tried and tested; I'm not sure what its deficiencies are but I'd want to know that if there were any we were proposing something that improved upon them.
On the second point, I really don't like variable resists. IMO they are something that adds "realism" at the expense of gameplay (having to memorise the worst-case of the variable range). If there are good reasons for having variable resists, can we at least make them all vary by the same amount, and make the amount smaller, like 5-10%?
On the whole it's not clear how this improves on the current system."Been away so long I hardly knew the place, gee it's good to be back home" - The BeatlesComment
-
In your above example, it would be an item with a 66% resist (numbers that big are uncommon/non-existent IIRC), a second item with a 50% resist (common), plus a temp resist (not sure how those work in FA/O).
As you progress through FA/O you end wearing many identical resists, so the individual resist numbers are a bit smaller, single resists are generally a bit weaker. 50% resist for base elements is common and 10% to 20% for high resists, with 20% being the magic number to avoid side effects.
Not trying to harsh your buzz, but it looks very similar to me.www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
My banding life on Buzzkill's ladder.Comment
-
I second Magnate's (FA/O) point.
In your above example, it would be an item with a 66% resist (numbers that big are uncommon/non-existent IIRC), a second item with a 50% resist (common), plus a temp resist (not sure how those work in FA/O).
As you progress through FA/O you end wearing many identical resists, so the individual resist numbers are a bit smaller, single resists are generally a bit weaker. 50% resist for base elements is common and 10% to 20% for high resists, with 20% being the magic number to avoid side effects.
Not trying to harsh your buzz, but it looks very similar to me.
No thank you, I rather stick with current system than play several iterations of unbalanced games for few years to get them right.Comment
-
In vanilla with single resist being only 50% you are toast for most games. This kind of change would require complete overhaul of entire item base.
No thank you, I rather stick with current system than play several iterations of unbalanced games for few years to get them right.
;-)"Been away so long I hardly knew the place, gee it's good to be back home" - The BeatlesComment
-
However, only in the early game, would you be likely to only have a single resist (or none at all). By the time resists start to really matter, there will be stacking. It would be hard to avoid.
Ripped from the FA ladder, a CL42 character.
Code:Acid:+.....+...... 66% Confu:...+...+..... 86% Elec:+.....+.+.... 72% Sound:....+........ 45% Fire:+..+..+.+.... 93% Shard:.......+..... 55% Cold:+.....+...... 67% Nexus:............. 0% Pois:............. 0% Nethr:............. 0% Lite:............. 0% Chaos:......+...... 44% Dark:........+.... 39% Disen:.......+..... 43%
www.mediafire.com/buzzkill - Get your 32x32 tiles here. UT32 now compatible Ironband and Quickband 9/6/2012.
My banding life on Buzzkill's ladder.Comment
-
And while we're at it, we should remove the variable damage resist from the high elements. Right now they are useless as damage reducers and high elements have low maximums to compensate. They work very differently from the base 5 resists and that is not really explained to new players.
Why not make the high resists also block damage the same (down to 1/3) as the base 5? That way they work like the player expects them to. Otherwise we might as well remove the resistances and replace them with status effect protection. That situation would be mostly the same as today except that it is much more apparent to players what the "high resistances" really are.Comment
-
I would definitely be in favour of removing the random element from the higher resists. With different damage caps for the elements plus multiple different random resist ranges with bizarre, hard to conceptualise limits (Quick! No stopping to calculate it properly, what's 5/7 to 5/12 of 500 HP as a rough range?) the most information I am ever capable of retaining about how higher resists work is "resist = less damage than no resist".
Base resists, I know I can just divide the max damage by three and get a ballpark estimate of how low my HP can dip before I'm in danger of instadeath. And really, that actually encourages me to play a more risky game, sticking around to melee things because I think I know my margin for error instead of fleeing the scene early because I've got no clear idea of how much damage I might take in a turn.Comment
-
While I personally favor the FA/O system, I have no opinion on whether V should adopt it or not, and wasn't suggesting that it be ported to V.
However, only in the early game, would you be likely to only have a single resist (or none at all). By the time resists start to really matter, there will be stacking. It would be hard to avoid.
Ripped from the FA ladder, a CL42 character.
Code:Acid:+.....+...... 66% Confu:...+...+..... 86% Elec:+.....+.+.... 72% Sound:....+........ 45% Fire:+..+..+.+.... 93% Shard:.......+..... 55% Cold:+.....+...... 67% Nexus:............. 0% Pois:............. 0% Nethr:............. 0% Lite:............. 0% Chaos:......+...... 44% Dark:........+.... 39% Disen:.......+..... 43%
It's really really easy in vanilla to go with only one item with basic four resist for majority of the game, because you simply can't get better gear with multiple. Have combination of Caspanion and Thorin and you are already in trouble finding all basic four covered.
I really don't see any reason to change this too to more complex version (which every single suggestion has been this far).Comment
Comment