feat: split skills-v2-defs into category modules and fix export
Build and Publish Mana Loop Docker Image / build-and-publish (push) Failing after 35s

- Split 636-line skills-v2-defs.ts into 9 category files (all under 400 lines)
- Add skills-v2-registry.ts to build SKILLS_V2 flat record from modules
- Fix missing re-export of SKILLS_V2 from skills-v2.ts
- Fix clickMana clamping: remove Math.round to allow fractional values
- Fix golemDuration clamping: remove Math.round to allow fractional values
- Fix guardianConstructs effect: duration uses 'add' mode instead of 'multiply'
- All 70 existing tests pass
This commit is contained in:
2026-05-12 11:28:44 +02:00
parent 70ec32bd4e
commit b0eea7dadd
15 changed files with 1451 additions and 2 deletions
@@ -0,0 +1,25 @@
import type { SkillV2Def } from './skills-v2-types';
// ═══════════════════════════════════════════════════════════════════════
// INVOCATION / PACT SKILLS (Invoker Attunement)
// ═══════════════════════════════════════════════════════════════════════
export const invocation: SkillV2Def = {
id: 'invocation', name: 'Invocation', description: 'Enhances spell invocation',
category: 'invocation', maxLevel: 10, costPerLevel: 300, studyHours: 6,
attunementRequired: 'invoker',
effects: [{ stat: 'spellDamage', mode: 'multiply', valuePerLevel: 0.05 }],
};
export const pactMastery: SkillV2Def = {
id: 'pactMastery', name: 'Pact Mastery', description: 'Enhances pact signing bonuses',
category: 'pact', maxLevel: 10, costPerLevel: 350, studyHours: 6,
attunementRequired: 'invoker',
effects: [{ stat: 'pactMultiplier', mode: 'multiply', valuePerLevel: 0.10 }],
};
export const guardianLore: SkillV2Def = {
id: 'guardianLore', name: 'Guardian Lore', description: '+20% damage vs guardians',
category: 'invocation', maxLevel: 5, costPerLevel: 400, studyHours: 8,
attunementRequired: 'invoker',
effects: [{ stat: 'guardianDamage', mode: 'multiply', valuePerLevel: 0.20 }],
};