Fix several bugs with infinite EHP and wrong phys max hit #8495
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #8488
Closes #8475
Description of the problem being solved:
Infinite EHP was sometimes caused by floating point precision errors while calculating taking damage to life with life loss prevention.
A case of wrong max hit was caused by taking 0 damage to a bypassed pool (phys taken as chaos with CI)
A case of wrong max hit was caused by max hit approximation partially failing to account for life loss prevention.
Link to a build that showcases this PR:
https://pobb.in/DKadd4WhKVpp
https://pobb.in/6L8vQXyO3YWQ
Before screenshot:
After screenshot: