Fix Autoexertion not working correctly with Arrogance #8804
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.
Fixes #8042
Description of the problem being solved:
Currently the reservation caused by skills such as Spellslinger and Autoexertion is applied to the triggered skills. This causes issues such as the mentioned where some modifiers are not applied to that reservation. This pr causes the reservation to come from the active part of the trigger skill gem allowing for correct application of reservation modifiers.
This pr makes the assumption that summing up all the raw reservation values and then applying the modifiers is the same as applying the modifiers and then summing as the text on the mentioned gems implies:
This Skill's Mana Reservation is the total of the Mana Reservations of Supported Skills, and cannot be further modifiedI also couldn't think of a good predicate for when to apply this logic so i've made the assumption that all active skills that also have a secondary effect which is a trigger support and have reservation apply the reservation pooling logic. I have not found any cases where this assumption fails currently.
The downside of this approach is that the breakdown not shows only the total reservation of the active part of the trigger and not individual one for each triggered skill. This could potentially be fixes by adding some extra logic to CalcPeform.
Steps taken to verify a working solution:
Link to a build that showcases this PR: