Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CritEffectBonus undervaluing crit damage/healing modifiers #6442

Open
Pewtro opened this issue Oct 26, 2023 · 0 comments
Open

CritEffectBonus undervaluing crit damage/healing modifiers #6442

Pewtro opened this issue Oct 26, 2023 · 0 comments
Labels

Comments

@Pewtro
Copy link
Member

Pewtro commented Oct 26, 2023

The way crit damage calculations are done in the game is a bit weird. Some effects will affect the total damage, whereas others will only affect the extra damage and their interactions are pretty messed up.

For the SimC implementation see: https://github.com/simulationcraft/simc/blob/ff6ebe350d366cb5d650ba5d85fedd1c1ae2efb5/engine/action/action.cpp#L1243

But for the effects that affect the total damage/healing, the CritEffectBonus helper is undervaluing their contribution. This is because (from what I understand of the hook), it's summing up crit effects and adding them onto the base crit mod of 2.

So in a super simplistic example of having a single total damage modifier that says "X spell school does 2% more crit damage" (see Might of the Mountain) the game would make a base hit of 100 do 204 damage when critting (base * 2 * (1+0.02)), whereas CritEffectBonus would calculate that as base * 2.02, or 202 damage.

This means that when calculating backwards, we are undervaluing the value of SOME crit effect modifiers. In other words this means an effect that would add 2% total damage in-game, is only adding 1% damage according to CritEffectBonus (roughly anyways).

Therefore, we probably need better support for crit effects in general. A quick test shows that changing the BASE_CRIT_EFFECT_MOD from 2 to 1, fixes the issue for something like Might of the Mountain for DPS, as that causes the appropriate ratio the 2% passed in as the crit effect and the BASE_CRIT_EFFECT_MOD value. However, I would assume this would have uglier consequences for all the healers since they use this helper a lot, and they might rely on current numbers.

Most effects that only apply to certain spells, would primarily affect only the increased damage part, and as thus should be accurate as is - which would also mean breakage if changing BASE_CRIT_EFFECT_MOD value.

File in question: https://github.com/WoWAnalyzer/WoWAnalyzer/blob/dragonflight/src/parser/shared/modules/helpers/CritEffectBonus.ts

@Pewtro Pewtro added the core label Oct 26, 2023
Pewtro added a commit to Pewtro/WoWAnalyzer that referenced this issue Oct 26, 2023
… double when calculating value

This is at best a temporary solution for WoWAnalyzer#6442 because the hook is still not accurately reflecting the difference between the different crit effects, but it doesn't seem to matter for Might of the Mountain.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant