HardstuckGuild / GW2-Tooltips.js

Tooltips.js frontend
1 stars 1 forks source link

Temporary Unique Buffs are always displayed in attribute sources and skill details #86

Open mightyteapot opened 8 months ago

mightyteapot commented 8 months ago

Some traits apply a stacking buff to the player, for example furious on warrior (crit = 15 condi damage up to 25 stacks) or explosive temper (20 ferocity up to 10 stacks)

Right now the stats window adds exactly one stack to the value of each relevant stat, I think the ideal situation is that it isn't counted at all as the buffs are temporary and conditional.

image

zerker: https://beta.hardstuck.gg/gw2/builds/warrior/condition-berserker/ scrapper: https://beta.hardstuck.gg/gw2/builds/engineer/power-scrapper-ow/

SaculRennorb commented 8 months ago

The huge difficulty with this is the fact that all traits are implemented as a buff that gets applied. So its almost impossible to differentiate between those that are conditional and those that are always active.

I already put some thought into this and my conclusion so far was that its not even a bad idea to display the temporary buffs as most of the time you try to upkeep them either way. Another pro of showing it is that it gives you a 'reminder' of the build using the trait / interaction even if it does not always apply.

mightyteapot commented 8 months ago

100 is an example of this behaviour being potentially slightly misleading

SaculRennorb commented 8 months ago

Yes, It is in fact not 100% correct to apply the effect there. In fact all of the buffs are active at once. The point I was trying to make is that in addition to it being incredibly hard if not impossible to detect those cases, there is more value in pointing to the effect and showing it on the skills / sumamy to remind the reader that the effect is relevant in this places, than it does harm to have the stats be 5% off in some cases.

Again, the issue is that any trait and item runs through this system, so either no stat / damage increases at all, incredibly sophisticated heuristics (i don't have any idea on how to approach this case), hard coding or the final option: It's just factually wrong in some specific cases.

The later one is the most desirable outcome imo, next to hard coding which also wouldn't even be easy as the system is not designed to allow external injection of modifier information, neither on the server nor the client.

SaculRennorb commented 5 months ago

I just had the idea of just checking weather or not the applied buff has a duration or not( that non trivial, but it might work). The issue is that cases like #100 wont even be solved by that, because those buffs don't have a duration as such, at least not on the description fact of the parent skill which is where the information would need to come from.