diff --git a/app/Console/AfterDeployment/ReBalanceMonsters.php b/app/Console/AfterDeployment/ReBalanceMonsters.php index 2b1a89dc6..02c485d25 100644 --- a/app/Console/AfterDeployment/ReBalanceMonsters.php +++ b/app/Console/AfterDeployment/ReBalanceMonsters.php @@ -111,7 +111,7 @@ private function rebalanceRegularmaps(ExponentialAttributeCurve $exponentialAttr ->whereNull('only_for_location_type') ->get(); - $this->manageMonsters($monsters, $exponentialAttributeCurve, 2, 500_000, 100, 50, $mapName); + $this->manageMonsters($monsters, $exponentialAttributeCurve, 2, 2_000_000_000, 100_000, 500, $mapName); $celestials = Monster::where('game_map_id', $gameMap->id) ->where('is_raid_monster', false) @@ -120,7 +120,7 @@ private function rebalanceRegularmaps(ExponentialAttributeCurve $exponentialAttr ->whereNull('only_for_location_type') ->get(); - $this->manageMonsters($celestials, $exponentialAttributeCurve, 10_000, 30_000, 2_000, 750, $mapName); + $this->manageMonsters($celestials, $exponentialAttributeCurve, 50_000, 500_000, 10_000, 5_000, $mapName); } } @@ -154,7 +154,7 @@ private function rebalanceEndGameMonsters(ExponentialAttributeCurve $exponential ->whereNull('only_for_location_type') ->get(); - $this->manageMonsters($celestials, $exponentialAttributeCurve, 150_000, 300_000, 10_000, 5_000, $mapName); + $this->manageMonsters($celestials, $exponentialAttributeCurve, 1_000_000, 5_000_000, 100_000, 50_000, $mapName); } } @@ -188,7 +188,7 @@ private function rebalanceSpecialEventMaps(ExponentialAttributeCurve $exponentia ->whereNull('only_for_location_type') ->get(); - $this->manageMonsters($celestials, $exponentialAttributeCurve, 180_000, 600_000, 10_000, 50_000, $mapName); + $this->manageMonsters($celestials, $exponentialAttributeCurve, 8_000_000, 20_000_000, 1_000_000, 500_000, $mapName); } } @@ -293,22 +293,22 @@ private function fetchWeeklyMonsterStatRange(LocationType $locationType): Suppor { return match (true) { $locationType->isLordsStrongHold() => collect([ - 'min' => 10_000, - 'max' => 50_000, - 'increase' => 1_000, - 'range' => 500, + 'min' => 10_000_000, + 'max' => 30_000_000, + 'increase' => 10_000_000, + 'range' => 1_000_000, ]), $locationType->isHellsBrokenAnvil() => collect([ - 'min' => 25_000, - 'max' => 75_000, - 'increase' => 5_000, - 'range' => 750, + 'min' => 50_000_000, + 'max' => 100_000_000, + 'increase' => 12_000_000, + 'range' => 2_000_000, ]), $locationType->isAlchemyChurch() => collect([ - 'min' => 1_000_000, - 'max' => 8_000_000, - 'increase' => 250_000, - 'range' => 75_000, + 'min' => 100_000_000_000, + 'max' => 400_000_000_000, + 'increase' => 24_000_000, + 'range' => 4_000_000, ]), $locationType->isTwistedMaidensDungeons() => collect([ 'min' => 500_000_000_000, @@ -317,10 +317,10 @@ private function fetchWeeklyMonsterStatRange(LocationType $locationType): Suppor 'range' => 10_000_000, ]), default => collect([ - 'min' => 10_000, - 'max' => 50_000, - 'increase' => 1_000, - 'range' => 500, + 'min' => 10_000_000, + 'max' => 30_000_000, + 'increase' => 10_000_000, + 'range' => 1_000_000, ]) }; } @@ -335,29 +335,29 @@ private function fetchGameMapMonsterStatRange(MapNameValue $mapNameValue): Suppo { return match (true) { $mapNameValue->isPurgatory() => collect([ - 'min' => 300_000, - 'max' => 8_000_000, - 'increase' => 10_000, - 'range' => 5_000, + 'min' => 50_000, + 'max' => 4_000_000_000, + 'increase' => 15_000, + 'range' => 2_500, ]), $mapNameValue->isTwistedMemories() => collect([ - 'min' => 18_000_000, - 'max' => 250_000_000_000, - 'increase' => 3_000_000, - 'range' => 1_500_000, + 'min' => 500_000, + 'max' => 5_500_000_000, + 'increase' => 75_000, + 'range' => 5_000, ]), $mapNameValue->isTheIcePlane(), $mapNameValue->isDelusionalMemories() => collect([ - 'min' => 7_000_000, - 'max' => 45_000_000, - 'increase' => 250_000, - 'range' => 50_000, + 'min' => 750_000, + 'max' => 8_000_000_000, + 'increase' => 80_000, + 'range' => 8_000, ]), default => collect([ - 'min' => 300_000, - 'max' => 8_000_000, - 'increase' => 10_000, - 'range' => 5_000, + 'min' => 50_000, + 'max' => 4_000_000_000, + 'increase' => 15_000, + 'range' => 2_500, ]) }; } @@ -385,9 +385,9 @@ private function fetchRaidMonsterStats(RaidType $raidType): SupportCollection ]), $raidType->isJesterOfTime() => collect([ 'min' => 250_000, - 'max' => 10_750_000, + 'max' => 1_750_000, 'increase' => 80_000, - 'range' => 30_000, + 'range' => 50_000, ]), $raidType->isFrozenKing() => collect([ 'min' => 175_000, @@ -397,8 +397,8 @@ private function fetchRaidMonsterStats(RaidType $raidType): SupportCollection ]), $raidType->isCorruptedBishop() => collect([ 'min' => 350_000, - 'max' => 20_000_000, - 'increase' => 80_000, + 'max' => 2_000_000, + 'increase' => 10_000, 'range' => 18_000, ]), default => collect([ @@ -727,14 +727,11 @@ private function setMonsterStats(array $floats, array $integers, array $xpIntege } $statAmount = $integers[$index]; - $armourClass = $integers[$index] / 10; + $armourClass = $integers[$index]; $damage = $integers[$index]; $spellDamage = $integers[$index]; $affixDamage = $integers[$index]; - if ($armourClass < 1) { - $armourClass = 1; - } if ($statAmount > self::MAX_STAT_AMOUNT) { $statAmount = self::MAX_STAT_AMOUNT;