fix: make discipline perk numerical bonuses functional via structured BonusSpec
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m23s

- Add PerkBonus type and optional bonus field to DisciplinePerk
- Populate bonus data on 39 perks across base, elemental, elemental-regen,
  elemental-regen-advanced, and invoker discipline files
- Rewrite computeDisciplineEffects() to apply once/infinite/capped perk bonuses
  through known stat keys (maxManaBonus, baseDamageBonus, regen_*, elementCap_*)
- Add per-element cap bonus routing in effects.ts computeAllEffects()
- Remove dead enchantPower bonus (no consumer in effects pipeline)
This commit is contained in:
2026-05-26 18:00:29 +02:00
parent ae30c4770c
commit da4f9eccb3
10 changed files with 88 additions and 15 deletions
+2
View File
@@ -23,6 +23,7 @@ export const invokerDisciplines: DisciplineDefinition[] = [
threshold: 200,
value: 0,
description: '+10 Base Damage',
bonus: { stat: 'baseDamageBonus', amount: 10 },
},
{
id: 'spell-2',
@@ -30,6 +31,7 @@ export const invokerDisciplines: DisciplineDefinition[] = [
threshold: 400,
value: 30,
description: 'Every 300 XP: +5 Base Damage',
bonus: { stat: 'baseDamageBonus', amount: 5 },
},
],
},