PathOfBuildingCommunity / PathOfBuildingCommunity/PathOfBuilding-PoE2

Loading builds resets (most) item mod ranges with a decimal value to default 0.5

Open
#2,275 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Lua
Stars
1.9k
Forks
451
Avg merge
21h 16m
Merged PRs (30d)
68

Description

Check version
  • I'm running the latest version of Path of Building and I've verified this by checking the changelog
Check for duplicates
  • I've checked for duplicate open and closed issues by using the search function of the issue tracker
Check for support
  • I've checked that the behaviour is supposed to be supported. If it isn't please open a feature request instead (Red text is a feature request).
What platform are you running Path of Building on?

Windows

What is the behaviour in-game?

My helmet has +35 life and +28 mana.
My body armour has +38 life.
My gloves have +26 ES and +11 int.

What is the behaviour in Path of Building?

Upon pasting these items into PoB, the values are correct. However, when closing and reopening the build, the values have changed:

My helmet has +35 life and +30 mana.
My body armour has +37 life.
My gloves have +25 ES and +13 int.

Importing from a profile/character acquires correct item mod values (source is here, for now: https://poe.ninja/poe2/profile/unsane-5479/runesofaldurssf/character/unsaneOneButtonBuildPlz). However pasting items into PoB (both Alt+Ctrl+C and Ctrl+C) evinces this issue.

It seems to be calculating differently when you paste, vs when you close and open a build. For example the helm's Mana tag line before and after re-opening the build seems to reset the range to 0.5. The only diffs are below:

Helm:
{tags:life,energyshield}{range:0.25}+(33-41) to maximum Life
{tags:mana,energyshield}{desecrated}{range:0.2}+(27-32) to maximum Mana
becomes
{tags:life,energyshield}{range:0.25}+(33-41) to maximum Life
{tags:mana,energyshield}{desecrated}{range:0.5}+(27-32) to maximum Mana

Body:
{tags:life,energyshield}{range:0.625}+(33-41) to maximum Life
becomes
{tags:life,energyshield}{range:0.5}+(33-41) to maximum Life

Gloves:
{tags:attribute}{range:0.2}+(10-15) to Intelligence
{tags:energyshield}{range:0.6}+(20-30) to maximum Energy Shield
becomes
{tags:attribute}{range:0.5}+(10-15) to Intelligence
{tags:energyshield}{range:0.5}+(20-30) to maximum Energy Shield

Note that the range indexes remain correct in the Prefix/Suffix sections of the item data, but incorrect in the "tags" sections. Also incorrect where it matters, in the displayed and calculated values.

Might be a very recent regression, as my season-to-season and character import workflow would have surfaced this before.

Appendix A (PoB item results of pastes and save/load, from where i pulled the diffs above):

Helmet initial paste result:
Dire Brow
Runeforged Jungle Tiara
Energy Shield: 193
Ward: 125
Crafted: true
Prefix: {range:0.4}LocalIncreasedEnergyShieldAndLife5
Prefix: {range:0.8}LocalIncreasedEnergyShieldAndMana5
Prefix: {range:0}LocalIncreasedEnergyShieldPercent5
Suffix: {range:1}FireResist6
Suffix: {range:0}LightningResist2
Suffix: {range:0.077}LifeRegeneration6
Item Level: 64
Quality: 20
Sockets: S
Rune: Lesser Glacial Rune
LevelReq: 59
Implicits: 3
{enchant}{rune}Bonded: +20 to maximum Life
{enchant}{rune}Bonded: +20 to maximum Mana
{enchant}{rune}+10% to Cold Resistance
Runic Ward: 125
{tags:life,energyshield}35% increased Energy Shield
{tags:life,energyshield}{range:0.25}+(33-41) to maximum Life
{tags:mana,energyshield}{desecrated}37% increased Energy Shield
{tags:mana,energyshield}{desecrated}{range:0.2}+(27-32) to maximum Mana
{tags:energyshield}{crafted}68% increased Energy Shield
{tags:elemental,fire,resistance}+35% to Fire Resistance
{tags:elemental,lightning,resistance}+11% to Lightning Resistance
{tags:life}9.4 Life Regeneration per second

Helmet after closing and reopening build:
Dire Brow
Runeforged Jungle Tiara
Energy Shield: 193
Ward: 125
Crafted: true
Prefix: {range:0.4}LocalIncreasedEnergyShieldAndLife5
Prefix: {range:0.8}LocalIncreasedEnergyShieldAndMana5
Prefix: {range:0}LocalIncreasedEnergyShieldPercent5
Suffix: {range:1}FireResist6
Suffix: {range:0}LightningResist2
Suffix: {range:0.077}LifeRegeneration6
Item Level: 64
Quality: 20
Sockets: S
Rune: Lesser Glacial Rune
LevelReq: 59
Implicits: 3
{enchant}{rune}Bonded: +20 to maximum Life
{enchant}{rune}Bonded: +20 to maximum Mana
{enchant}{rune}+10% to Cold Resistance
Runic Ward: 125
{tags:life,energyshield}35% increased Energy Shield
{tags:life,energyshield}{range:0.25}+(33-41) to maximum Life
{tags:mana,energyshield}{desecrated}37% increased Energy Shield
{tags:mana,energyshield}{desecrated}{range:0.5}+(27-32) to maximum Mana
{tags:energyshield}{crafted}68% increased Energy Shield
{tags:elemental,fire,resistance}+35% to Fire Resistance
{tags:elemental,lightning,resistance}+11% to Lightning Resistance
{tags:life}9.4 Life Regeneration per second

Body armour initial paste result:
Armageddon Shelter
Runeforged Altar Robe
Energy Shield: 293
Ward: 122
Crafted: true
Prefix: {range:0.545}LocalIncreasedEnergyShieldPercent6
Prefix: {range:1}IncreasedSpirit5
Prefix: {range:0.4}LocalIncreasedEnergyShieldAndLife5
Suffix: {range:0}LightningResist2
Suffix: {range:1}ColdResist3
Suffix: {range:0.316}StunThreshold7
Item Level: 60
Quality: 20
Sockets: S S
Rune: Perfect Iron Rune
Rune: Iron Rune
LevelReq: 50
Implicits: 3
{enchant}{rune}36% increased Armour, Evasion and Energy Shield
{enchant}{rune}Bonded: +40 to maximum Life
{enchant}{rune}Bonded: +40 to maximum Mana
Runic Ward: 90
{tags:energyshield}86% increased Energy Shield
+50 to Spirit
{tags:life,energyshield}35% increased Energy Shield
{tags:life,energyshield}{range:0.625}+(33-41) to maximum Life
{tags:elemental,lightning,resistance}+11% to Lightning Resistance
{tags:elemental,cold,resistance}+20% to Cold Resistance
{desecrated}+137 to Stun Threshold

Body armour after closing and reopening build:
Armageddon Shelter
Runeforged Altar Robe
Energy Shield: 293
Ward: 122
Crafted: true
Prefix: {range:0.545}LocalIncreasedEnergyShieldPercent6
Prefix: {range:1}IncreasedSpirit5
Prefix: {range:0.4}LocalIncreasedEnergyShieldAndLife5
Suffix: {range:0}LightningResist2
Suffix: {range:1}ColdResist3
Suffix: {range:0.316}StunThreshold7
Item Level: 60
Quality: 20
Sockets: S S
Rune: Perfect Iron Rune
Rune: Iron Rune
LevelReq: 50
Implicits: 3
{enchant}{rune}36% increased Armour, Evasion and Energy Shield
{enchant}{rune}Bonded: +40 to maximum Life
{enchant}{rune}Bonded: +40 to maximum Mana
Runic Ward: 90
{tags:energyshield}86% increased Energy Shield
+50 to Spirit
{tags:life,energyshield}35% increased Energy Shield
{tags:life,energyshield}{range:0.5}+(33-41) to maximum Life
{tags:elemental,lightning,resistance}+11% to Lightning Resistance
{tags:elemental,cold,resistance}+20% to Cold Resistance
{desecrated}+137 to Stun Threshold

Gloves initial paste result:
Doedre's Tenure
Runemastered Stitched Gloves
Energy Shield: 67
Ward: 28
Item Level: 66
Quality: 20
Sockets: S
Rune: Rune of Renown
LevelReq: 38
Implicits: 2
{enchant}{rune}Bonded: Banner Skills have 20% increased Aura Magnitudes
{enchant}{rune}50% increased Glory generation
Runic Ward: 28
{tags:caster,speed}19% reduced Cast Speed
{tags:damage,caster}100% increased Spell Damage
{tags:attribute}{range:0.2}+(10-15) to Intelligence
{tags:energyshield}{range:0.6}+(20-30) to maximum Energy Shield

Gloves after closing and reopening build:
Doedre's Tenure
Runemastered Stitched Gloves
Energy Shield: 66
Ward: 28
Item Level: 66
Quality: 20
Sockets: S
Rune: Rune of Renown
LevelReq: 38
Implicits: 2
{enchant}{rune}Bonded: Banner Skills have 20% increased Aura Magnitudes
{enchant}{rune}50% increased Glory generation
Runic Ward: 28
{tags:caster,speed}19% reduced Cast Speed
{tags:damage,caster}100% increased Spell Damage
{tags:attribute}{range:0.5}+(10-15) to Intelligence
{tags:energyshield}{range:0.5}+(20-30) to maximum Energy Shield

How to reproduce the issue
  1. open PoB with a blank build
  2. copy and paste the below in-game item paste(s) for the Helm/Body/Gloves detailed above.
  3. save the build, and note the initial correct values
  4. exit the build, and open the build. note the incorrect values
  5. you're now at the point of the PoB code provided, since this issue occurs earlier than the point i can provide in a PoB

Appendix B (in-game item pastes):

Item Class: Helmets
Rarity: Rare
Dire Brow
Runeforged Jungle Tiara
--------
Quality: +20% (augmented)
Energy Shield: 193 (augmented)
Runic Ward: 125 (augmented)
--------
Requires: Level 59, 83 Int
--------
Sockets: S 
--------
Item Level: 64
--------
+10% to Cold Resistance (rune)
--------
{ Prefix Modifier "Exarch's" (Tier: 2) — Life, Energy Shield }
35(33-38)% increased Energy Shield
+35(33-41) to maximum Life
{ Desecrated Prefix Modifier "Heavenly" (Tier: 2) — Mana, Energy Shield }
37(33-38)% increased Energy Shield
+28(27-32) to maximum Mana
{ Crafted Prefix Modifier "Dauntless" (Tier: 3) — Energy Shield }
68(68-79)% increased Energy Shield
{ Suffix Modifier "of the Volcano" (Tier: 3) — Elemental, Fire, Resistance }
+35(31-35)% to Fire Resistance
{ Suffix Modifier "of the Squall" (Tier: 7) — Elemental, Lightning, Resistance }
+11(11-15)% to Lightning Resistance
{ Suffix Modifier "of the Troll" (Tier: 3) — Life }
9.4(9.1-13) Life Regeneration per second


Item Class: Body Armours
Rarity: Rare
Armageddon Shelter
Runeforged Altar Robe
--------
Quality: +20% (augmented)
Energy Shield: 293 (augmented)
Runic Ward: 90 (augmented)
--------
Requires: Level 48, 65 Int
--------
Sockets: S S 
--------
Item Level: 60
--------
36% increased Armour, Evasion and Energy Shield (rune)
--------
{ Prefix Modifier "Indomitable" (Tier: 3) — Energy Shield }
86(80-91)% increased Energy Shield
{ Prefix Modifier "Countess'" (Tier: 4) }
+50(47-50) to Spirit
{ Prefix Modifier "Exarch's" (Tier: 2) — Life, Energy Shield }
35(33-38)% increased Energy Shield
+38(33-41) to maximum Life
{ Suffix Modifier "of the Squall" (Tier: 7) — Elemental, Lightning, Resistance }
+11(11-15)% to Lightning Resistance
{ Suffix Modifier "of the Narwhal" (Tier: 6) — Elemental, Cold, Resistance }
+20(16-20)% to Cold Resistance
{ Desecrated Suffix Modifier "of Platinum Skin" (Tier: 4) }
+137(125-163) to Stun Threshold


Item Class: Gloves
Rarity: Unique
Doedre's Tenure
Runemastered Stitched Gloves
--------
Quality: +20% (augmented)
Energy Shield: 67 (augmented)
Runic Ward: 28 (augmented)
--------
Requires: Level 38, 48 Int
--------
Sockets: S 
--------
Item Level: 66
--------
50% increased Glory generation (rune)
--------
{ Unique Modifier — Caster, Speed }
19(25-15)% reduced Cast Speed
{ Unique Modifier — Damage, Caster }
100% increased Spell Damage
{ Unique Modifier — Attribute }
+11(10-15) to Intelligence
{ Unique Modifier — Energy Shield }
+26(20-30) to maximum Energy Shield
--------
While Doedre lacked Maligaro's sense of style,
she surpassed her master in pure malevolence.
PoB for PoE2 build code
eNrVW91z2zYSf67-CoxmenOdxDZFffucdmTZjn1jJ65kp3dPHZiEJF4gUiVBO2pG__vtAiBF6ouAfX24PDggub8FsNgvLKCzX77NOXlmcRJE4Yd649ipExZ6kR-E0w_1x4ero179l59rZ_dUzD5PztOA4xf359oPZ_KBzGkQjiPvKxMf4yhdAIs68ThNkk90zj7URzScsrhOBI2nTHzJ-nF-R7IZjaknWHzLnhkfpCK6i3zAiDhldfIcsBf1fHN3_3n0UCccyWQHNPFY6A_X3XyKQlaHQf1wds_pksVjQQV5pjyFb86x6zZavVaz266TBD58qA9gwnTKLugc_tZPrIHnaZyICnTjuJPDxgvG_L2UOdl9zC4nE-aJ4JkN40AMZzT0DvXg5lADcrdIe5dyESx4AGuzlz5nfl3J2zludtqtVt9t9NbCeogE5Rf34_2oMmUk7Pj_FojZOQfJHuxjH_JmGgaCvQp6HwVJFFrNzIh4mHIO1mVEO2IJi5-pCCoGsmsOw2j-FIQVcsuI72hIh1EizCjvWQymKawAY-ZFYM22fVgib4MJM6e0mocG2I7mdfO4HJvSWTN-3YBG4AXNKMdRyg9SdnNKsd8vNXI9vmDf9nuvvNebcH-Hvebanv44ROis-3yO0OgMTD8OnlKx32e2-53jZs91-91mq9dvlDzG5fX9Xly_08sDxmyZBB7ld_RbME_n4Kcf6Fe2f2zddmetgNOZCMHbmGJ7rTyAXAUxM4Y53bXb4b4prNNfh6sZjRJTXL_gKYLwmob-wPNSSDOWBktL468hSxJT5wsOtArRaDWKFl-dAkCm4J0i6U3omXJ9DGM9HlPECMwbM5knfiC7cJzdnWgvsX8JjlvlvqYs1B0uzRzjLWPe7COs34iKQwPsF6OCgftB2SLpQdmWuZrI1nF2I6oE1VoLCoGWgkKIoaDaBREEkPyZU9pNfxNTJYB2Ozfyy5DF0-V4FjDu29JnMhvShaESFNGHlMHZ3Z3VOhWhZutViqxmveU-9vKZJkbRSclBUZuJ4Jn6rGobkCsng7zcCnEfR__BnQ-3g8E0OLdHvLK3CzbhCItwASF2GiNMOxjE8yiNDVdPERstXpYoqD3riPmpZ5bE5PvRcw6bfNNp5CgpbCvoQAjqfb2I_KndilohyuMbp4sFuCy0hAoGR-vcE3MgSAMCk7x3TfsZrPiQmzpap62YLZl2sKat7qC3lQGa9rIBqOrKKSVwxlNZE1d2cNzvbq3oHTjKOQQdWXK5i_YHk1ah6pIwWPUR9YM0uWMCng3WFPbqRvtnSWhYALiPXmDKM6yV7R9Ccxc15McGQ4lZ-OfSmH-J3KiDy9CHXBtkadzHJmLdzXk6mSTEi-ZPVNyCNnyo18kTvMvakNUnTD8oxEMwh7CTJBdUUOLrfdoXGgc0FA1ZN9x46cqXiaxeXgVcsPgC-OFo1JwYjb1Z1t_66Ypy_gROSnd8diIrodh6iBkjNPMsHrKXI8MHEkY-SyCJcVrtvq6R3viyLKfKmdDvEragLA4pxw_YJe7CabwcrOud-CUMeJ3MaQK0S6X4iZSI_F7gAKxBmVmh6tou1U6RxpEj_OHscXQrGz_MhFgkpycnLy8vxwsqZtGEfYM4eQwrcbIAEMztKPkacH6EvE8G8O98eoP_DSSjk4zTmSoLJyfqCa05DkAEqpszcPRqg5x9gNX59knJqE6CUOTtRMRZW_M6KTE7O0H5ypXABcDGGAeYZEuBD2MmtApMaMrFRzb_NaU8EEu51Ou3t6rIHEbxPN9Xo47E-DE5X4IdX2EqV66ikWQWvWAcUXQPywUOd3B7q77csinsQJHBh_qE8oRtcNQ1b6UrerQk8HHASsPUfLA5jMJJMNUzUw96ahKdv9FwIgLBmcxDcIJ6scEgPTaDoMFiEqbzJxZL2lDW0sdeBIo-xjCcZAI_CBjOcMTV9E4G8Nk8Cq9Awgagdgaa5xVrLMGymPkSPYxScPaMT4yGmgTTgH-eSM8J8NxF7Ya5-YhZyObLzDkY9TSegfZXz6_faZf6wEhePFjYjeo65ZEVzhd2A3pOp1lCFBPN3ZC2szWwYgyvmP56tS4C8FAQScRH-AO5NiZDh8fqljqWBmkjwnKue1gjne3xDtMYR7u9Id3NY0NKm6mO2ZDzzKp6zBvqsnHsY9YdLoGJkpW1X20dIs7lmZ6F6uxMNHcjm1vjvM-KfUYmivLAtf-NUVmYqzbAZq-zvYIGqrPDLUF-EC8fE4YFCdAgvrRkMBZpGBqi82ljhhBgTjOM4jhd4K50GC-rfVtzy7orJN3cvaYVqEajW9a9UoHCSH02d1p7hretCK9axdxdDebzqOCrzk7y0CojsnrKkr4vAXshf0bR_N_SI2DrX4UcciximchgkgBpb9aHh0mCOu1GhE49mirm3wjIDnScx3aWwKQJU6czoOOLKJSvs5xiL385A-Si0wIpkhFkwWJ5SkaD0WUNAgIIy_ejkIxnDHPh2igN2SSCrNwnAy5oTEbRE6spx0iUZzwlbr9ZA82HVsN1a8OYTgSDB-y1BjurSfDtlHyP0WOcOsftVnt1G4F93oRezCiYStHN6nJhZxPXWOXkqsLY3ubcOsB3EPpYVW7XxrB9KKJWG57J3aRorNZhr7kFP242Ois02ocZbBlRtbo1KWO5kKek49R0jglicmo6HT4lYzKWsj0lMGPM3slNDGLHV_r9-lmyGrE_Tknbqd3MQUW9AHk0a99hfcHzi9X3GAhXzc6PkDTr2RMV3t8TbW2Ehj4pLdwm_BwUCtftXcshIoLNhUx8CcrNkBTr0Tj8wCNKH_pO7Tu4oeSUyY4T2e-qVxpneUzv2pKjWmQN5jCC9yUOzfZ-Dvswaw1cvft7s3nUavy0PU01WC7LB5S_55lyvI-lAmCUXb1rNH5EZK45ZJR_3OLggUqUwK4jwahUJRxsZJgXU7Ac6KDZlUIAvSK5YkkPdhf5MvRKGwavKueEZZB25uNKFJ1Kim4lRa-Sol9JgbGqiqSxTXJ2grZUdlxu2XE9frr59fGydhExP2Z_A2-Y_CMhDyxMY2VIaosMSjKGXZA3g8ZHHj2zZNOHdTrahbm9sgF39hiwNlP8S6IJLGUYvYQFW232irbq7rOgcwrxPiZ6szqjz4yghhTMOI0pGBbeVElBRzb5tEvEMLd4Saao9_JaSMkYYWZKOz0pk_cJ7hhWjf6PJMZiMMCH8IHIjYSm9GX4fK8AK8iVi53JwilREVbT02xDX7a2hnPUaEtrw9IEB6tiBVvZa6Suc9R0SkZatvQtHWpVatlfZDK7FLW5I8JeQDJBzuPopRhY_5mGU87IQ0BjuqmWjUJobVeFVqMAuIXqHUahT99GVYfw9nYgXWdxHfs47Bw73e4qP03WCt4pG2vrsLHewnYAjO0jpIEB5VvRtX8wuuYxzzUPj-52eNwgfdfYHQ-KhotL_5dEQrcyFM5hyBvgQqBqdqs6P4wvW3v3qOn-tC2vHU7CU3aw6vSq-l8H4gkoXykQo-SgM1TKQwH8tSkAin3VP25JaZKizpIF6KCq677VQbn_h0F9k8StdKdYytyoYWalzf07IV1_5pEgAfBQdW7ZvH96HN3iXkzt-xSSuGT8kh002eAaFpAB7DGZ2Alo7gRcMz7fAzg8mZ2Qxk7IeeQvSbkWWEK5O1Eqi7IY2XkUCRv6EVqVjXCvOE2-WiHwvGlOmraDcm0BzVdola023jI7aSG9ay0rGwSo1CvWz7YH-znYjOmccVF0Saryg_Ue6oPjwbrObwxjQKLOaGTBRlZu5ngMRNg3_O-exnjGpPySJBxS7qlzq5twkYodhxS4H_hdvdYDUJQJJNj4s4zLq6vL4cPNl8u8fBUk3u94OIo_mNCQsbqoQpL0KVHND3UsU8ndxgUTNOCJcqX6xAnvqdQJ7Fk5XUBILY55NzeJu87rbJJX4dGC0yVI7EUf6Qg9KllODcDNWA9JDQAvTOGJsOKGPy6wYaSuoeCeSF7VUnKSpyw2XLAKqaeDTSssaBHluuesbSsJgeeQC-YFk8AriFZ-wzNK_c5GLtlt2my19emDDQ_5mw3FQDctwOq3FwqdtW2kKn_1oaWq2xbwC-ZRPXfdtADnt_-i8DrQaUz-zorTpyiUSg7eYBBwTFb1yl5ytn5hwfAznqjqqwSK0x24lPyFneGoKoDmU3y2kRXellYSki0LqLwMrOYgWzZGo67HamsPbE22dGao1qP0xoKV2lJoGerTD6tlUDmdWgLdtpmJPqVRk8gebAxF-uDBcxT4yj9Ik9l8aeU0YEP_djbymuD_gE1-EfTtvGTuo1c6a1vAH0WARY8KLvIU6LC5vY0D2trbOMgM7dXoUZ6CjDazD4N-p5m7yh_M8fkVtldzUBftXg2Xt1lejZauH_RZHheuff_6jY3_FGl4kapKxxtZyWFt-I-9zEymqOOi4UwrOCp7Vz9FKjgA_cLWT0IYv84Txddyym_AXjPK8TeqEX8bw82fXL2JGf6CIV3Q0M_YfS6n53vYVi1DJBLgKe9fXmCV7a0ylBddDBjl4zo7ybZzZ3KnR-hiwcK8KzKeRS8D_xl1-AFWZH3_z2eJCEKqozVXN5zOPkVC3WlEzvrh7GTrx_f_BXFJvgA=
Screenshots
Image

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue in a blank Path of Building build using the Helm, Body Armour, and Gloves pastes in Appendix B, then save, exit, and reopen it. Trace the paste and save/load paths where tag-section range values are handled, comparing them with the Prefix/Suffix ranges. Done means the decimal ranges and resulting displayed values remain unchanged after reopening.

Written by the indexing model from the issue text.

Assessment

Tech stack
lua
Domain
desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
62/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.