Release Healer Man 0.1.45

This commit is contained in:
phenom committed 2026-09-15 14:43:15 -04:00
1 parent 756ee4f64a
commit f82daf1c13
242 files changed
+1440 -101

No files matched your search

+25 -2
View File
@@ -81,6 +81,26 @@ describe("Boss Testing", () => {
expect(entity.combat?.attacks).toEqual(maraudon.entities[celebras.entityId].combat?.attacks);
});
it("keeps low extrapolated boss health alive long enough to test mechanics", () => {
const zereketh = BOSS_TESTING_CATALOG.find((entry) => entry.name === "Zereketh the Unbound")!;
const arcatraz = requireDungeonDefinition(zereketh.dungeonId);
const room = createBossTestingRoom(arcatraz, zereketh);
const entity = room.definition.entities[zereketh.entityId];
const nativeHealth = creatureRuntimeBaseStats(entity.combat!.serverEntry!, 2)!.health
* entity.combat!.healthMultiplier!;
const testing = dungeonEnemyScaling(
room.definition,
entity,
zereketh.spawn.id,
1,
room.definition.defaultDifficultyId,
1,
);
expect(nativeHealth).toBeLessThan(100);
expect(testing).toMatchObject({ level: 2, maxHealth: 540 });
});
it("omits the campaign finale bonus even when testing the source dungeon's final boss", () => {
const final = finalDungeonBoss(source)!;
const finalBoss = BOSS_TESTING_CATALOG.find((entry) => entry.dungeonId === source.id && entry.spawn.id === final.id)!;
@@ -88,8 +108,11 @@ describe("Boss Testing", () => {
const entity = room.definition.entities[finalBoss.entityId];
const testing = dungeonEnemyScaling(room.definition, entity, finalBoss.spawn.id, 1, source.defaultDifficultyId, 1);
const campaign = dungeonEnemyScaling(source, entity, finalBoss.spawn.id, 1, source.defaultDifficultyId, 1);
expect(testing.maxHealth).toBe(creatureRuntimeBaseStats(entity.combat!.serverEntry!, 2)!.health
* (entity.combat?.healthMultiplier ?? 1));
expect(testing.maxHealth).toBe(Math.max(
creatureRuntimeBaseStats(entity.combat!.serverEntry!, 2)!.health
* (entity.combat?.healthMultiplier ?? 1),
540,
));
expect(campaign.maxHealth).toBe(Math.max(testing.maxHealth, 900 * 1.8));
});