Skip to content

Cull Item Variants on save, export and item copy #5662

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

Draft
wants to merge 8 commits into
base: dev
Choose a base branch
from

Conversation

Regisle
Copy link
Member

@Regisle Regisle commented Feb 8, 2023

This culls an item so that the list of variants, as well as any mods with unused variants with unmodified ranges are not saved in the item raw

This cuts down the storage of these items, particularly things like watchers eyes and forbidden jewels, and makes it much easier to copy/paste them in places with limited text space

an example of a culled item:

Rarity: UNIQUE
Watcher's Eye
Prismatic Jewel
Variant: RebuildCulledVariants
Selected Variant: 86
Selected Variant Name: Vitality: Life Recovery Rate
Selected Variant Last Legacy Variant: Vitality: Life Recovery Rate (Pre 3.12.0)
Prismatic Jewel
Has Alt Variant: true
Selected Alt Variant: 86
Selected Alt Variant Name: Vitality: Life Recovery Rate
Selected Alt Variant Last Legacy Variant: Vitality: Life Recovery Rate (Pre 3.12.0)
Has Alt Variant Two: true
Selected Alt Variant Two: 101
Selected Alt Variant Two Name: Zealotry: Maximum ES Per Second To Maximum ES Leech Rate
Selected Alt Variant Two Last Legacy Variant: Zealotry: Maximum ES Per Second To Maximum ES Leech Rate
Limited to: 1
Implicits: 0
{range:0.5}(4-6)% increased maximum Energy Shield
{range:0.5}(4-6)% increased maximum Life
{range:0.5}(4-6)% increased maximum Mana
{variant:86}{range:0.5}(10-15)% increased Life Recovery Rate while affected by Vitality
{variant:101}30% increased Maximum total Energy Shield Recovery per second from Leech while affected by Zealotry

This will not cull an item if any of the mods have been modified as it causes complications when reconstructing the item, and also updates the item if the unique gets updated with new variants
such that if its a generated unique it will find variants with the same name (if it can) and set the variant number to that, and if a new legacy version of a used variant is introduced it will set the variant to that instead

@QuickStick123 QuickStick123 added the technical Hidden from release notes label Feb 10, 2023
@Regisle
Copy link
Member Author

Regisle commented Feb 14, 2023

This will conflict with #5680 as they both mess with variants, that one should probs be merged first and this one rebased off that, so for now Ill put this in draft

@Regisle Regisle marked this pull request as draft February 14, 2023 04:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
technical Hidden from release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants