PathOfBuildingCommunity / PathOfBuildingCommunity/PathOfBuilding

Fix issues around scaleability and Runegraft of the Bound

Ouverte
#8,980 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

bug: calculation
Langage dominant
Lua
Étoiles
5.4k
Forks
2.4k
Merge moyen
1 j 12 h
PR mergées (30 j)
26

Description

Revisiting this code when looking over this PR makes me realize there are a few more hidden gotchas here.

  1. Making a mod unscalable in a LIST mod doesn't do anything. An example of this would be "banners also cause enemies to take (%d+)%% increased damage". This code only checks for unscalable at the LIST level, not for each subMod: https://github.com/PathOfBuildingCommunity/PathOfBuilding/blob/78326a60910b00739c5f33be69cb140cd164a12c/src/Classes/ModStore.lua#L37-L50
  2. Unscaleable mods get added twice. I tested "take no extra damage from critical strikes" and saw the value double (even though there is a hard cap on a lot of these unscalable mods
image

In short, I'll merge this PR but I needed to write this down somewhere so it can be refactored again, with proper test cases added for all these corner cases.

Originally posted by @Wires77 in https://github.com/PathOfBuildingCommunity/PathOfBuilding/issues/8977#issuecomment-3251710545

Guide de contribution

Ouvrir le guide de contribution

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.

Piste de recherche

Commencez dans src/Classes/ModStore.lua au niveau de la scaleability logic liée et suivez le traitement des LIST mods et des unscalable mods. Ajoutez des cas de test pour la gestion de unscalable par subMod et l’application en double, puis vérifiez que les modifiers concernés produisent les valeurs attendues sans double comptage.

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

Évaluation

Stack technique
lua
Domaine
game-dev
Type d'issue
Refactorisation
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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