mirror of
https://github.com/ppy/osu.git
synced 2025-02-16 03:42:54 +08:00
additional balancing
This commit is contained in:
parent
bc1ff019da
commit
03f0a36589
@ -40,6 +40,11 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
|||||||
countMeh = Score.Statistics.GetValueOrDefault(HitResult.Meh);
|
countMeh = Score.Statistics.GetValueOrDefault(HitResult.Meh);
|
||||||
countMiss = Score.Statistics.GetValueOrDefault(HitResult.Miss);
|
countMiss = Score.Statistics.GetValueOrDefault(HitResult.Miss);
|
||||||
|
|
||||||
|
if (mods.Any(h => h is OsuModRelax))
|
||||||
|
{
|
||||||
|
countMiss += countOk + countMeh;
|
||||||
|
}
|
||||||
|
|
||||||
// Custom multipliers for NoFail and SpunOut.
|
// Custom multipliers for NoFail and SpunOut.
|
||||||
double multiplier = 1.12; // This is being adjusted to keep the final pp value scaled around what it used to be when changing things.
|
double multiplier = 1.12; // This is being adjusted to keep the final pp value scaled around what it used to be when changing things.
|
||||||
|
|
||||||
@ -92,8 +97,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
|||||||
|
|
||||||
if (mods.Any(h => h is OsuModRelax))
|
if (mods.Any(h => h is OsuModRelax))
|
||||||
{
|
{
|
||||||
aimValue *= 0.75;
|
aimValue *= 0.6;
|
||||||
countMiss += countOk + countMeh;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Penalize misses by assessing # of misses relative to the total # of objects. Default a 3% reduction for any # of misses.
|
// Penalize misses by assessing # of misses relative to the total # of objects. Default a 3% reduction for any # of misses.
|
||||||
@ -134,8 +138,7 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
|||||||
|
|
||||||
if (mods.Any(h => h is OsuModRelax))
|
if (mods.Any(h => h is OsuModRelax))
|
||||||
{
|
{
|
||||||
speedValue *= 0.75;
|
speedValue *= 0.6;
|
||||||
countMiss += countOk + countMeh;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Longer maps are worth more.
|
// Longer maps are worth more.
|
||||||
@ -219,6 +222,11 @@ namespace osu.Game.Rulesets.Osu.Difficulty
|
|||||||
if (mods.Any(h => h is OsuModHidden))
|
if (mods.Any(h => h is OsuModHidden))
|
||||||
flashlightValue *= 1.3;
|
flashlightValue *= 1.3;
|
||||||
|
|
||||||
|
if (mods.Any(h => h is OsuModRelax))
|
||||||
|
{
|
||||||
|
flashlightValue *= 0.6;
|
||||||
|
}
|
||||||
|
|
||||||
// Penalize misses by assessing # of misses relative to the total # of objects. Default a 3% reduction for any # of misses.
|
// Penalize misses by assessing # of misses relative to the total # of objects. Default a 3% reduction for any # of misses.
|
||||||
if (countMiss > 0)
|
if (countMiss > 0)
|
||||||
flashlightValue *= 0.97 * Math.Pow(1 - Math.Pow((double)countMiss / totalHits, 0.775), Math.Pow(countMiss, .875));
|
flashlightValue *= 0.97 * Math.Pow(1 - Math.Pow((double)countMiss / totalHits, 0.775), Math.Pow(countMiss, .875));
|
||||||
|
Loading…
Reference in New Issue
Block a user