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

Fix effect mods that are granted while affected by a buff sometimes not applying. #4540

Conversation

QuickStick123
Copy link
Contributor

Fixes #4388.

Description of the problem being solved:

When calculating effect to apply to buffs we add affected by tags at the same time this means if a mod gives effect while under effect it is likely it will be missed.

This was solved by splitting it into two parses first we apply all the tags then we apply the effect and add the buffs.

Steps taken to verify a working solution:

  • Hovering over the total more now correctly shows 36% more spell damage.

Link to a build that showcases this PR:

https://poe.ninja/pob/Bkm

Problematic Mod
image

Before screenshot:

image

After screenshot:

image

@QuickStick123 QuickStick123 added enhancement New feature, calculation, or mod bug Something isn't working bug: accuracy Wording differences and removed enhancement New feature, calculation, or mod bug: accuracy Wording differences labels Jul 9, 2022
@QuickStick123 QuickStick123 changed the title Fix effect mods that are granted while affected by something sometimes not applying. Fix effect mods that are granted while affected by a buff sometimes not applying. Jul 9, 2022
ctrpetersen and others added 23 commits July 10, 2022 08:03
…onfig tab (PathOfBuildingCommunity#4441)

* Fix multiple tooltips being displayed at the same time

* Move bandit and pantheon controls to the config tab
…OfBuildingCommunity#4543)

* FIX: Fix broken links and convert full ones to relative

* FIX: Remove confusing(?) double qoutes and unnecessary(?) brackets
* add curse effect to other ailments.

* Move curse effect to different section

Co-authored-by: Wires77 <[email protected]>

Fixes PathOfBuildingCommunity#3847
* refactor: use python 3.10 features

* refactor: remove explicit logger

* refactor: correctly implement version argument

* feat: add configuration to include/exclude paths

* feat: sample configuration file

* feat: address review comments
…thOfBuildingCommunity#4514)

* Fix essence worm at 100 reduced efficiency.

This fixes the multiplier of 0 * infinity equaling infinity not zero.

extend to reduced mana reserved as well

* further future proofing.

* fix condition being backwards.

* Further fixes to cleanup edge cases and make more than 100% reduced efficiency behave as 100% reduced as in game.

* Fix reservation breakdown as well.

Fixes PathOfBuildingCommunity#4332
)

Also remove awakening level as it do not exists anymore and it was taken
into account for ailment calculations. Also raise max monster level to
85 for ubers for ailment calculations.

The calcuation is done in exactly same way as poedb does it, e.g base
life * monster ailment mult * monster type mult * monster map life mult
* monster reduced ailment mult:

https://poedb.tw/us/Sirus%2C_Awakener_of_Worlds#SirusAwakenerofWorldsAtlasExile5

Signed-off-by: Tomas Slusny <[email protected]>
…y#4440)

* Fix elemental ailment defensive calculations

* Fixed text piece of purity of elements

Co-authored-by: Wires77 <[email protected]>
Currently when you copy/paste socket group with auras etc there is no
way to actually enable them because enableGlobal1/2 is not set.

Signed-off-by: Tomas Slusny <[email protected]>

Fixes PathOfBuildingCommunity#3609
…fBuildingCommunity#4523)

These stats were parsed but werent displayed anywhere.

Signed-off-by: Tomas Slusny <[email protected]>
Fixes PathOfBuildingCommunity#4483 offering effect boot mods
Fixes flask regen mod
Fixes increased defences from armour pieces mod
Adds support for slotNameList

Fixes PathOfBuildingCommunity#4192

Co-authored-by: LocalIdentity <[email protected]>
* WIP: start of Timeless Jewel implementation

* QoL minor edit

* Feat: add auto-addition of timeless stats to Notables for 'add' case

* Feat: added Militant Faith; made additions to Notables on separate line

* Feat: Add Elegant Hubris, add support for 'replace'

* Fix: remove a print; add a print

* Fix: added change recommendations from Lothrik

* Fix: fix things that broke in last commit

* fix correct file (PathOfBuildingCommunity#11)

* Fix Militant Faith

* Remove all remaining editedNode logic and add timeless jewel search UI (PathOfBuildingCommunity#12)

* Remove all remaining editedNode logic
* Initial pass on timeless jewel search UI
* Update TreeTab.lua

* move handling of result out of read function

* swap to using numerical IDs and move seed range check

* fix issues

* Glorious Vanity

* WIP: GV stuff

* WIP: more GV processing fixes

* WIP: more fixes

* Fix: reading the GV file fully

* Fix: Glorious Vanity timeless implemenation - still need to set roll values

* Second pass on Timeless Jewel search UI (PathOfBuildingCommunity#15)

* add handling of small and might_legacy of the vaal

* add stats to might and legacy of the vaal

* add bias to better determine node type

* add stat ranges for might and legacy of the vaal

* Implement timeless jewel search function (PathOfBuildingCommunity#16)

* Implement timeless jewel search function

* remove no-op as its unused now

* Update to use 1 NodeIndex file

* fix additions conflict

* jewel data conflict

* Move Glorious Vanity to zip file

* Fix Elegant Hubris seeds in jewel search tool (PathOfBuildingCommunity#4528)

* Fix integer Glorious Vanity notables, load LUTs from compressed files (PathOfBuildingCommunity#4536)

* Inflate/Deflate LUTs

* Fixed integer Glorious Vanity notables

* move stuff to helper function and add support for "g" format mods

* Fixed loading of compressed GV timeless jewel

* Add generated .zip files

* defer table creation of specific nodes until that node is read

* cleanup

* Code cleanup

* Implement logic to load from binary file by default, and to decompress and create it from .zip if it doesn't exist

Co-authored-by: Regisle <[email protected]>

* Further timeless jewel search improvements (PathOfBuildingCommunity#4529)

* Inflate/Deflate LUTs

* Further timeless jewel search improvements

.. including a passive tree view for socket locations and visual feedback when timeless jewels are added to the build.

* Hide socketViewer if hovering over jewelType dropdown

* Update TreeTab.lua

* Add conqueror selection dropdown menu

* Update TreeTab.lua

* Add node weights to timeless jewel search

* Fixed integer Glorious Vanity notables

* Add "required" node weight option, improve formatting

* Add small mod searching (Glorious Vanity)

* move stuff to helper function and add support for "g" format mods

* Swap weight slider and search dropdown positions

* Fixed loading of compressed GV timeless jewel

* Add generated .zip files

* Fix Glorious Vanity small node processing

* Update TreeTab.lua

* Improve search result output formatting

* Automatically determine nearby socket keystones

* Exit loop earlier to avoid wasting time

* Update TreeTab.lua

* Update TreeTab.lua

* defer table creation of specific nodes until that node is read

* cleanup

* Add detailed node breakdown to tooltips

* Code cleanup

* Update node breakdown to display actual stats

* Make most timeless search UI settings persistent

* Fix bug where node tooltip results were culled

* Erase desired node input on jewel type change

* Remove unused Might/Legacy of the Vaal code

* Make "required" nodes actually required

* Update TreeTab.lua

* optimise search function and show total weight in first column

* Code clean up

* Remove unused variables

* Update TreeTab.lua

* Fix Glorious Vanity node filtering

* Standardize search result number formatting

.. and hide search result tooltips when hovering over node selection dropdown.

* Add secondary node weight slider for GV

* Update TreeTab.lua

* Default to 0 for missing nodeWeights instead of 0.1

* Revert last commit + enable second nodeSlider for non-GV jewels

* Update TimelessJewelListControl.lua

* Fix broken node weights with a fairly big rewrite

* Swap nodeWeight/nodeWeight2 back...

* Fix timeless jewel node filtering typo

* Implement logic to load from binary file by default, and to decompress and create it from .zip if it doesn't exist

Co-authored-by: Wires77 <[email protected]>
Co-authored-by: Regisle <[email protected]>

* Further Timeless Jewel search improvements (PathOfBuildingCommunity#4546)

* Fix broken might/legacy of the vaal + misc cleanup

* Update to new noTooltip draw behavior

* Update edit box when slider values change

.. and prevent duplicate nodes from being added to edit box.

* Remove search result total weight column

* Fix dynamic slider update bug

* Sanitize user input and fix a few errors

* Wipe all search input on reset

* Fix another missed variable sync

* Rebuild searchListTbl from timelessData.searchList

* Save timeless jewel search config to build XML

* Update TreeTab.lua

* Fixed swapped weight values, minor refactors

* Fix search list result updating

* Fix statMod2 nil error on small nodes

* Properly handle replace and add types, finally

* Minor consistency edit

* Remove dynamic slider width code

* Set modFlag to prompt build saving on several ..

.. different events, including:
- timelessData.searchList change (node weight sliders)
- updateSearchList called
- conqueror change
- jewel socket change
- desired node change (direct and via dropdown list)

* Remove lingering duplicate variable from old implementation

* Save socketFilter state to build XML

* Change tooltip colour for tree node names

Co-authored-by: Wires77 <[email protected]>
Co-authored-by: LocalIdentity <[email protected]>

Co-authored-by: Nostrademous <[email protected]>
Co-authored-by: Regisle <[email protected]>
Co-authored-by: LocalIdentity <[email protected]>
Co-authored-by: Lothrik (MaXiMiUS) <[email protected]>
Co-authored-by: Regisle <[email protected]>
Co-authored-by: Wires77 <[email protected]>
* Set aura effect to 0% if reserved mana exceeds maximum mana

* Supreme ego implementation

* remove conprint I missed.

* fix some conflicts

* remove temporary fix

* Handle disabling auras more generally and efficiently

* Correctly handle curses and minor cleanup.

* Apply suggestions from code review

Co-authored-by: Wires77 <[email protected]>

Fixes PathOfBuildingCommunity#4290
@QuickStick123 QuickStick123 deleted the computed-affect-by-before-effect- branch September 15, 2022 01:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Increased effect of Arcane Surge not being granted by Sublime Vision
10 participants