Drillneck: "for each time they have Pierced" modifiers are not parsed

Ouverte Adaptée aux débutants
#2,560 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
2/5
Temps estimé
1-3 heures
Accessibilité débutants
80/100
Type d'issue
Bug
Clarté
Clairement spécifiée
Activité
Active
Stack technique
lua
Domaine
data

Piste de recherche

Ajoute la clé non contractée à côté de l'entrée contractée existante à src/Modules/ModParser.lua:1681, en utilisant la même balise { type = "PerStat", stat = "PiercedCount" } ; les chaînes de données du jeu UniqueProjectileIncreasedDamagePerPierce1 et UniqueProjectileIncreasedCriticalHitChancePerPierce1 dans src/Data/ModItemExclusive.lua indiquent le libellé exact à faire correspondre. Ensuite, régénère src/Data/ModCache.lua afin que le suffixe résiduel " for each time they have Pierced " disparaisse des lignes Drillneck. Vérifie en équipant Drillneck, en définissant "# of times Skill has Pierced" dans Configuration et en confirmant que les DPS et les chances de critique changent ; la ligne associée "Attack Projectiles Return if they Pierced" à ModCache.lua:6616 est hors périmètre.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Drillneck (Penetrating Quiver) has two per-pierce modifiers:

Projectiles deal (42-64)% increased Damage with Hits for each time they have Pierced
Projectiles have (42-64)% increased Critical Hit chance for each time they have Pierced

PoB parses the increase but not the condition, so part of each line is left unparsed and neither line is applied, whatever the pierce count is. The generated cache records the remainder:

src/Data/ModCache.lua:8996
c["Projectiles deal 64% increased Damage with Hits for each time they have Pierced"]={{[1]={flags=1024,keywordFlags=262144,name="Damage",type="INC",value=64}},"   for each time they have Pierced "}

The game-data wording is "they have Pierced" (src/Data/ModItemExclusive.lua, UniqueProjectileIncreasedDamagePerPierce1 and UniqueProjectileIncreasedCriticalHitChancePerPierce1). ModParser.lua only has the contracted form:

-- src/Modules/ModParser.lua:1681 (dev bb52d6b)
["for each time they've pierced"] = { tag = { type = "PerStat", stat = "PiercedCount" } },
Proposed fix

Add the uncontracted wording next to it, with the same tag, then regenerate ModCache.lua:

["for each time they have pierced"] = { tag = { type = "PerStat", stat = "PiercedCount" } },
Repro
  1. Equip Drillneck with a projectile skill.
  2. In Configuration, set "# of times Skill has Pierced" to 1 or 2.
  3. Damage and crit chance do not change.
Measured effect

With the two lines reworded to "they've Pierced" (which PoB parses), a Frostbolt build against the boss preset:

# of times Skill has Pierced Frostbolt DPS Crit chance
0 3,572 11.4%
1 12,660 39.1%
2 27,308 66.8%

With the item's own wording, every pierce count reads as the first row.

Not in this report

"Attack Projectiles Return if they Pierced at least (2-4) times" is also unparsed (ModCache.lua:6616). Return is a separate mechanic, so it would be a separate report.

Langage dominant
Lua
Étoiles
1.9k
Forks
461
Merge moyen
1 h 2 min
PR mergées (30 j)
1

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de PathOfBuildingCommunity/PathOfBuilding-PoE2

Toutes les issues de PathOfBuildingCommunity/PathOfBuilding-PoE2

Issues similaires

Plus d'issues Lua

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.