fix: 6 priority-3 bug fixes with regression tests
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m24s
Build and Publish Mana Loop Docker Image / build-and-publish (push) Successful in 1m24s
- Issue 83: Mana Tide pulse factor now ranges 0.5x-1.5x (was 0.5x-1.0x) - Issue 82: SteadyStream no longer returns early like EternalFlow; only skips incursion penalty - Issue 81: Prestige store partialize now includes defeatedGuardians, signedPacts, signedPactDetails, pactRitualFloor, pactRitualProgress, loopInsight, pactSlots - Issue 80: Combat store partialize now includes floorHP, floorMaxHP, castProgress, spireMode, clearedFloors, golemancy, equipmentSpellStates, activityLog, achievements - Issue 78: cancelDesign now always cancels designProgress first, then designProgress2 - Issue 79: startDesigningEnchantment now uses designProgress2 when designProgress is occupied Added 13 regression tests in src/lib/game/__tests__/regression-fixes.test.ts Refactored craftingStore types to craftingStore.types.ts to stay under 400-line limit
This commit is contained in:
@@ -53,8 +53,7 @@ export function computeDynamicRegen(
|
||||
|
||||
// Mana Tide: Regen pulses ±50% (sinusoidal based on time)
|
||||
if (hasSpecial(effects, SPECIAL_EFFECTS.MANA_TIDE)) {
|
||||
const pulseFactor = 0.5 + 0.5 * Math.sin(Date.now() / 10000);
|
||||
regen *= (0.5 + pulseFactor * 0.5);
|
||||
regen *= (1.0 + 0.5 * Math.sin(Date.now() / 10000));
|
||||
}
|
||||
|
||||
// Eternal Flow: Regen immune to ALL penalties
|
||||
@@ -62,14 +61,14 @@ export function computeDynamicRegen(
|
||||
return regen * effects.regenMultiplier;
|
||||
}
|
||||
|
||||
// Steady Stream: Regen immune to incursion
|
||||
// Steady Stream: Regen immune to incursion (skip incursion penalty only)
|
||||
if (hasSpecial(effects, SPECIAL_EFFECTS.STEADY_STREAM)) {
|
||||
return regen * effects.regenMultiplier;
|
||||
// incursion penalty is skipped, but regenMultiplier still applies below
|
||||
} else {
|
||||
// Apply incursion penalty
|
||||
regen *= (1 - incursionStrength);
|
||||
}
|
||||
|
||||
// Apply incursion penalty
|
||||
regen *= (1 - incursionStrength);
|
||||
|
||||
return regen * effects.regenMultiplier;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user