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 support gem crosslink issues. #6707

Merged
merged 23 commits into from
Jan 23, 2024

Conversation

Paliak
Copy link
Contributor

@Paliak Paliak commented Sep 17, 2023

Fixes #6618

Description of the problem being solved:

When a skill is added from some other source than a gem new a group is created for that skill specifically. Currently support gems from the groups socketed in the source slot are copied over (This is quite inefficient as they need to be processed separately). This only happens in the MAIN calc mode as is assumed to have been done in CACHE and CALCS modes. The linked issue is caused by the dps tooltip comparison using the CALCS mode for calculations which causes the support gems that may have changed to not be copied over.

This pr reworks the way support gem cross linking is handled in general to better handle possible cases where doing so may be needed.

I will add some tests after i figure out what is causing ac203b7

Steps taken to verify a working solution:

  • Test Empower, Enhance supports
  • Test Energy Blade
  • Test Various combinations of linked groups
  • Test Uul-Netol's Vow and The Squire

TODO:

  • Treat each socket group as an in game link group with the exception of groups created by skills coming from items and when an item is crosslinked to another by a mod. In such cases apply all supports from all groups socketed in sourcce item to all groups socketed in target item
  • Apply simillar logic to above to the gem dropdown
  • Check if more filtering can be applied to the lessen the amount of calcFunc calls when calculating gems for dropdown.

Link to a build that showcases this PR:

https://pobb.in/3o5KNz0wEfyH
https://pobb.in/1ygiNxHUhLno

Before screenshot:

obraz
obraz

After screenshot:

obraz
obraz

@Paliak Paliak added enhancement New feature, calculation, or mod bug: calculation Numerical differences bug: behaviour Behavioral differences labels Sep 17, 2023
@gaaasstly
Copy link

Is there a bug with alternate quality dps calculation? Why would Anomalous Multistrike be above Superior or Divergent?

From the wiki

Superior
Supported Skills deal 0.5% increased Melee Physical Damage

Anomalous
Supported Skills have 1% reduced Attack Speed
Supported Skills have 1% increased Area of Effect per Repeat

Divergent
Supported Skills have 0.5% increased Attack Speed

image

Switching from Anomalous to another quality gives a dps increase.

image
image

@Regisle
Copy link
Member

Regisle commented Sep 23, 2023

Sounds like quality isnt taken into account when that is done and those are just sorted by the base gems dps change and then alphabetically

@Paliak
Copy link
Contributor Author

Paliak commented Sep 24, 2023

@gaaasstly Thanks for testing. Latest commit should fix the issue.

@Paliak Paliak mentioned this pull request Nov 10, 2023
2 tasks
@Paliak
Copy link
Contributor Author

Paliak commented Dec 5, 2023

This currently has issues with cases where there are multiple link groups in the same item which causes them all to be linked together and causes the gem dropdown to show supports considering all active gems in the current item.

Need some more time to think how to go about solving this.

@Paliak Paliak marked this pull request as draft December 5, 2023 23:11
sida-wang and others added 4 commits December 7, 2023 23:54
* Updating gem support finding logic

* fix: updated logic for gem recommendations in socketgroups

* fix: gem dropdown tooltip displaying only top gem

* fix: resolve issue with duplicate support gems and fix socketGroup tooltips
@Paliak Paliak marked this pull request as ready for review December 15, 2023 16:48
@Paliak Paliak marked this pull request as draft December 16, 2023 17:41
@Paliak
Copy link
Contributor Author

Paliak commented Dec 16, 2023

Needs testing again after fixing noSupport flag. Also there's some duplicate code that could be pulled out into a function.

@Paliak Paliak marked this pull request as ready for review December 31, 2023 12:12
@sida-wang
Copy link
Contributor

This should resolve #647 - don't mind me, just going through old issues sorted by likes

@LocalIdentity LocalIdentity merged commit 1f6a0f3 into PathOfBuildingCommunity:dev Jan 23, 2024
1 of 2 checks passed
@Paliak Paliak deleted the fixDPSCompToolTip branch January 23, 2024 18:01
@UchihaWind4U
Copy link

I notice the spider's basic damage of Arakaali's Fang is changed into 586 to 879 from 716 to 1074 from 2.38. Is this change a number fix or missing?
2.38 basic damge
2 38
2.39 basic damge
2 39
Waiting for your reply.

@sida-wang
Copy link
Contributor

sida-wang commented Apr 8, 2024

Per the v2.39.0 Release notes

Fix longstanding issues with minion stats (more fixes will come in future updates) by (@LocalIdentity, @ifnjeff) in #7253
Some Minion Attacks will reduce by 10-30% DPS

Don't believe the damage change has anything to do with this PR which only affected support gem applications.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug: behaviour Behavioral differences bug: calculation Numerical differences enhancement New feature, calculation, or mod
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Sort gems by DPS not working for Raise Spiders (Arakaali's Fang)
6 participants