forked from phenom/healer-man
Update Healer Man server
This commit is contained in:
1 parent
f8314e7de1
commit
1fedb9368d
76 files changed
+20556
-2523
No files matched your search
@@ -14,6 +14,7 @@ const WOW_BOSS_HEALTH_FLOOR: readonly (readonly [level: number, health: number])
|
||||
[9, 7_000],
|
||||
[21, 11_000],
|
||||
[41, 23_000],
|
||||
[51, 39_000],
|
||||
[80, 180_000],
|
||||
];
|
||||
const WOW_BOSS_TEST_HEALTH_FLOOR: readonly (readonly [level: number, health: number])[] = [
|
||||
@@ -22,7 +23,18 @@ const WOW_BOSS_TEST_HEALTH_FLOOR: readonly (readonly [level: number, health: num
|
||||
[9, 7_000],
|
||||
[21, 11_000],
|
||||
[41, 23_000],
|
||||
[80, 180_000],
|
||||
// Isolated test fights are normalized to the certified companion curve.
|
||||
// Native expansion-2 template health grows much faster than the party's
|
||||
// observed level-80 DPS and previously pushed the average fight above 170s.
|
||||
[80, 44_000],
|
||||
];
|
||||
const WOW_BOSS_TEST_DAMAGE_SCALE: readonly (readonly [level: number, scale: number])[] = [
|
||||
[1, 1],
|
||||
[50, 1],
|
||||
// Level-80 source creature weapon damage grows faster than the certified
|
||||
// healer's throughput. This keeps test-room pressure sustained without
|
||||
// turning roughly a third of catalog coverage runs into early wipes.
|
||||
[80, 0.75],
|
||||
];
|
||||
const BOSS_TEST_HEALTH_FLOOR_MULTIPLIER = 0.6;
|
||||
const FINAL_BOSS_HEALTH_FLOOR_MULTIPLIER = 1.9;
|
||||
@@ -73,9 +85,18 @@ export function dungeonEnemyScaling(dungeon: DungeonDefinition, entity: Populati
|
||||
// finale. A reduced floor still prevents high-level source creatures with
|
||||
// tiny extrapolated level-two health from dying before mechanics can run.
|
||||
const testingBossFloor = partyHealthFloor * BOSS_TEST_HEALTH_FLOOR_MULTIPLIER;
|
||||
const testingBossCeiling = characterSource === "wow"
|
||||
? partyHealthFloor * 0.9 * Math.max(1, Math.min(1.5, authoredHealth))
|
||||
: Number.POSITIVE_INFINITY;
|
||||
const scaledHealth = boss
|
||||
? Math.max(originalHealth, testing ? testingBossFloor : bossFloor)
|
||||
? testing
|
||||
? Math.max(Math.min(originalHealth, testingBossCeiling), testingBossFloor)
|
||||
: Math.max(originalHealth, bossFloor)
|
||||
: originalHealth;
|
||||
const testingDamageScale = testing && characterSource === "wow"
|
||||
? interpolatedFloor(level, WOW_BOSS_TEST_DAMAGE_SCALE)
|
||||
: 1;
|
||||
return { level, maxHealth: scaledHealth * multipliers.health,
|
||||
healthMultiplier: authoredHealth * multipliers.health, damageMultiplier: authoredDamage * multipliers.damage };
|
||||
healthMultiplier: authoredHealth * multipliers.health,
|
||||
damageMultiplier: authoredDamage * multipliers.damage * testingDamageScale };
|
||||
}
|
||||
Reference in new issue
Block a user