Release Healer Man 0.1.49

This commit is contained in:
phenom committed 2026-09-17 09:13:15 -04:00
1 parent 39425f2494
commit 612170afd0
91 files changed
+2278 -263

No files matched your search

+11 -10
View File
@@ -14,18 +14,19 @@ describe("normal dungeon level scaling", () => {
expect(scaledDungeonEnemyLevel(80, true)).toBe(80);
});
it("grows RoM health with ability ranks and clamps invalid levels", () => {
expect(dungeonEnemyHealthBaseline(1, "runewaker")).toBeGreaterThan(1_000);
expect(dungeonEnemyHealthBaseline(20, "runewaker")).toBeGreaterThan(dungeonEnemyHealthBaseline(8, "runewaker")!);
expect(dungeonEnemyHealthBaseline(70, "runewaker")).toBeGreaterThan(dungeonEnemyHealthBaseline(20, "runewaker")! * 5);
expect(dungeonEnemyHealthBaseline(0, "runewaker")).toBe(dungeonEnemyHealthBaseline(1, "runewaker"));
expect(dungeonEnemyHealthBaseline(100, "runewaker")).toBe(dungeonEnemyHealthBaseline(80, "runewaker"));
expect(dungeonEnemyHealthBaseline(Number.NaN, "runewaker")).toBe(dungeonEnemyHealthBaseline(1, "runewaker"));
it("uses source-calibrated health curves for every party", () => {
expect(dungeonEnemyHealthBaseline(5, "wow")).toBe(306);
expect(dungeonEnemyHealthBaseline(5, "rom")).toBe(1_700);
expect(dungeonEnemyHealthBaseline(5, "coa")).toBe(2_587);
expect(dungeonEnemyHealthBaseline(20, "rom")).toBeGreaterThan(dungeonEnemyHealthBaseline(8, "rom"));
expect(dungeonEnemyHealthBaseline(20, "coa")).toBeGreaterThan(dungeonEnemyHealthBaseline(20, "rom"));
});
it("retains native WoW creature health across its three expansions", () => {
for (const expansion of ["classic", "burning-crusade", "wrath"] as const) {
expect(dungeonEnemyHealthBaseline(20, expansion)).toBeUndefined();
it("clamps every party curve to the supported player-level range", () => {
for (const source of ["wow", "rom", "coa"] as const) {
expect(dungeonEnemyHealthBaseline(0, source)).toBe(dungeonEnemyHealthBaseline(1, source));
expect(dungeonEnemyHealthBaseline(100, source)).toBe(dungeonEnemyHealthBaseline(80, source));
expect(dungeonEnemyHealthBaseline(Number.NaN, source)).toBe(dungeonEnemyHealthBaseline(1, source));
}
});
});