Skip to content

Dégâts des sorts de combat indirects : la Puissance n'était pas ajoutée (#524) - #540

Open
DjamZee wants to merge 1 commit into
shadowfoundry:feat/v13from
DjamZee:fix/524-indirect-spell-damage
Open

DjamZee wants to merge 1 commit into
shadowfoundry:feat/v13from
DjamZee:fix/524-indirect-spell-damage

Conversation

@DjamZee

@DjamZee DjamZee commented Sep 16, 2026

Copy link
Copy Markdown

Description

Closes #524

Les sorts de Combat indirects n'ajoutent pas leur Puissance aux dommages à encaisser. Règle (SR5) : VD = Puissance + succès excédentaires, PA = –Puissance, défense comme contre une attaque à distance.

Cause : test-Spell.js fixe damage.value = force et armorPenetration = -force pour un sort indirect, mais pas damage.base. Or test-Defense.js calcule la VD avec damage.base + roll.netHits (comme pour les armes, qui renseignent damage.base dans rollData-Weapon.js). damage.base restait à 0 : la VD finale valait uniquement les succès excédentaires. Le bug existait déjà en V12 (même calcul).

Changes

  • modules/rolls/roll-test-case/test-Spell.js : pour un sort de combat indirect, damage.base est aussi fixé à la Puissance. Les préparations indirectes passent par la même fonction et sont corrigées aussi.

La PA (–Puissance) était déjà correctement transmise du sort à la défense puis à l'encaissement.

Checklist

  • npm test passes
  • npx eslint modules/ passes (or only pre-existing warnings)
  • npm run build:css compiles without errors
  • Language keys match in en.json and fr.json (if localization was touched) — non concerné
  • No console.log left in code

Testé dans Foundry 13.351 avec le système 13.0.0-alpha.25 : un sort indirect produit bien VD = Puissance + succès excédentaires avec PA = –Puissance à l'encaissement.

Screenshots

Pas de changement d'interface.

Hors périmètre

Les sorts indirects de zone (seuil de 3, succès excédentaires ajoutés seulement si le seuil est atteint, déviation comme une grenade) n'ont pas été vérifiés dans cette PR.

🤖 Generated with Claude Code

The defense test computes the damage value from damage.base + net hits,
but indirect combat spells only set damage.value, so the Force was lost
and the DV was just the net hits. Set damage.base to the Force as well.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant