Update Healer Man server

This commit is contained in:
phenom committed 2026-09-20 11:23:13 -04:00
1 parent 1fedb9368d
commit cc3b2fa4d5
27 files changed
+1988 -83

No files matched your search

+33
View File
@@ -0,0 +1,33 @@
import { describe, expect, it } from "vitest";
import {
rogueDeadlyPoisonTickDamage,
rogueEnvenomPreservationChance,
rogueEnvenomPreservesDeadlyPoison,
rogueInstantPoisonDamage,
roguePoisonApplicationChances,
} from "./roguePoison";
describe("Rogue weapon poisons", () => {
it("uses the learned poison ranks and attack-power scaling", () => {
expect(rogueInstantPoisonDamage(20, 0)).toBe(22);
expect(rogueInstantPoisonDamage(80, 1_000)).toBe(450);
expect(rogueDeadlyPoisonTickDamage(80, 1_000, 1)).toBe(104);
expect(rogueDeadlyPoisonTickDamage(80, 1_000, 5)).toBe(520);
});
it("applies Envenom's poison-frequency bonuses without exceeding the stack cap", () => {
expect(roguePoisonApplicationChances(false)).toEqual({ instant: 0.2, deadly: 0.3 });
expect(roguePoisonApplicationChances(true).instant).toBeCloseTo(0.35);
expect(roguePoisonApplicationChances(true).deadly).toBeCloseTo(0.45);
expect(rogueDeadlyPoisonTickDamage(80, 1_000, 99)).toBe(520);
});
it("honors Master Poisoner's Envenom dose-preservation ranks", () => {
expect(rogueEnvenomPreservationChance({})).toBe(0);
expect(rogueEnvenomPreservationChance({ "talent-1715": 1 })).toBe(0.33);
expect(rogueEnvenomPreservationChance({ "talent-1715": 2 })).toBe(0.66);
expect(rogueEnvenomPreservationChance({ "talent-1715": 3 })).toBe(1);
expect(rogueEnvenomPreservesDeadlyPoison({ "talent-1715": 3 }, "any-cast")).toBe(true);
expect(rogueEnvenomPreservesDeadlyPoison({}, "any-cast")).toBe(false);
});
});