Update Healer Man server

This commit is contained in:
phenom committed 2026-09-19 21:01:51 -04:00
1 parent f8314e7de1
commit 1fedb9368d
76 files changed
+20556 -2523

No files matched your search

+58 -4
View File
@@ -21,6 +21,7 @@ import type {
} from "./combatAuras";
import generatedData from "./wow335AbilityData.generated.json";
import { playerCombatPower } from "./progression";
import { talentNodeById } from "./talentCatalog";
import { baseResourcesFor } from "./wotlkStats";
export const BASE_CLASS_STARTER_SOURCE_LEVEL = 10;
@@ -787,6 +788,7 @@ function classScriptEffects(
case "hunter:Disengage": return [{ kind: "movement", movement: "leap", toward: "away" }];
case "hunter:Freezing Arrow": return [{ kind: "status", status: "freeze", durationMs: 10_000 }];
case "hunter:Feign Death": return [{ kind: "threat", mode: "percent", amount: -100 }];
case "hunter:Readiness": return [{ kind: "cooldown-reset", mode: "reset" }];
case "rogue:Shiv": return [{ kind: "damage", coefficient: 1 }];
case "rogue:Killing Spree": return [{
kind: "dot", coefficient: 0.5, ticks: 5, intervalMs: 500, tag: "killing-spree",
@@ -795,15 +797,60 @@ function classScriptEffects(
// not player-facing SkillLine records. The DBC combo award remains intact.
case "rogue:Mutilate": return [{ kind: "damage", coefficient: 2 }];
case "rogue:Garrote": return [{ kind: "status", status: "silence", durationMs: 3_000 }];
case "rogue:Cloak of Shadows": return [{
kind: "dispel", mode: "cleanse", relationship: "friendly", categories: ["magic"], maxCount: 10,
case "rogue:Cold Blood": return [{
kind: "apply-aura",
aura: {
id: `wow335:${rank.spellId}:cold-blood`,
name: abilityName,
disposition: "buff",
durationMs: rank.durationMs > 0 ? rank.durationMs : 20_000,
maxStacks: 1,
stackBehavior: "refresh",
modifiers: [{ kind: "stat", stat: "critical-strike", operation: "flat", value: 1 }],
},
recipient: "caster",
sourceEffectType: 6,
sourceAuraType: 4,
miscValue: 0,
triggerSpellId: 0,
}];
case "rogue:Cloak of Shadows": return [
{
kind: "dispel", mode: "cleanse", relationship: "friendly", categories: ["magic"], maxCount: 10,
},
{
kind: "apply-aura",
aura: {
id: `wow335:${rank.spellId}:cloak-of-shadows`,
name: abilityName,
disposition: "buff",
durationMs: rank.durationMs > 0 ? rank.durationMs : 5_000,
maxStacks: 1,
stackBehavior: "refresh",
modifiers: schoolsFromMask(126).map((school) => ({
kind: "damage" as const,
direction: "taken" as const,
school,
operation: "percent" as const,
value: -0.9,
})),
},
recipient: "caster",
sourceEffectType: 6,
sourceAuraType: 4,
miscValue: 126,
triggerSpellId: 0,
},
];
// Both spells place a channel aura whose actual pulses live in non-player
// trigger spells. Keep the imported cast/cost/rank data and supply only the
// missing executable payload.
case "priest:Mind Flay": return [{ kind: "damage", coefficient: 0.9 }];
case "priest:Penance": return [{ kind: "heal", coefficient: 1.8 }];
case "priest:Shadowfiend": return [{ kind: "summon", creatureId: 19668, coefficient: 0.5, durationMs: 15_000 }];
case "priest:Shadowfiend": return [
{ kind: "summon", creatureId: 19668, coefficient: 0.5, durationMs: 15_000 },
{ kind: "resource", resource: "mana", amount: 30, percentage: true },
];
case "priest:Prayer of Mending": return [{
kind: "apply-aura",
aura: {
@@ -1359,7 +1406,14 @@ function abilityDefinition(classId: BaseClassId, chain: Wow335Chain): AbilityDef
effects: first.effects,
passive: chain.passive,
source: "wow335-progression",
talentNodeId: chain.talentNodeId,
// Some stock WotLK active talents remain in Spell.dbc after Ascension's
// patched Talent.dbc removes their nodes (Devastate, Shadowstep, Lava
// Lash). They cannot be allocated by any legal local build, so expose
// those retained class actions at their source level instead of making
// them permanently unlearnable behind a dangling talent ID.
talentNodeId: chain.talentNodeId && talentNodeById(chain.talentNodeId)
? chain.talentNodeId
: undefined,
ranks,
};
}