nerf speed multipliers, reduce rhythm bonus on rx
This commit is contained in:
+10
-3
@@ -17,7 +17,7 @@ pub(crate) struct Speed {
|
|||||||
}
|
}
|
||||||
|
|
||||||
impl Speed {
|
impl Speed {
|
||||||
const SKILL_MULTIPLIER: f64 = 1375.0;
|
const SKILL_MULTIPLIER: f64 = 1350.0;
|
||||||
const STRAIN_DECAY_BASE: f64 = 0.3;
|
const STRAIN_DECAY_BASE: f64 = 0.3;
|
||||||
|
|
||||||
pub(crate) fn new(hit_window: f64, mods: u32) -> Self {
|
pub(crate) fn new(hit_window: f64, mods: u32) -> Self {
|
||||||
@@ -106,7 +106,7 @@ impl StrainSkill for Speed {
|
|||||||
self.curr_strain +=
|
self.curr_strain +=
|
||||||
SpeedEvaluator::evaluate_diff_of(curr, diff_objects, self.hit_window, self.mods)
|
SpeedEvaluator::evaluate_diff_of(curr, diff_objects, self.hit_window, self.mods)
|
||||||
* Self::SKILL_MULTIPLIER;
|
* Self::SKILL_MULTIPLIER;
|
||||||
self.curr_rhythm = RhythmEvaluator::evaluate_diff_of(curr, diff_objects, self.hit_window);
|
self.curr_rhythm = RhythmEvaluator::evaluate_diff_of(curr, diff_objects, self.hit_window, self.mods);
|
||||||
|
|
||||||
let total_strain = self.curr_strain * self.curr_rhythm;
|
let total_strain = self.curr_strain * self.curr_rhythm;
|
||||||
self.object_strains.push(total_strain);
|
self.object_strains.push(total_strain);
|
||||||
@@ -210,6 +210,7 @@ impl RhythmEvaluator {
|
|||||||
curr: &OsuDifficultyObject<'_>,
|
curr: &OsuDifficultyObject<'_>,
|
||||||
diff_objects: &[OsuDifficultyObject<'_>],
|
diff_objects: &[OsuDifficultyObject<'_>],
|
||||||
hit_window: f64,
|
hit_window: f64,
|
||||||
|
mods: u32
|
||||||
) -> f64 {
|
) -> f64 {
|
||||||
if curr.base.is_spinner() {
|
if curr.base.is_spinner() {
|
||||||
return 0.0;
|
return 0.0;
|
||||||
@@ -339,6 +340,12 @@ impl RhythmEvaluator {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// * produces multiplier that can be applied to strain. range [1, infinity) (not really though)
|
// * produces multiplier that can be applied to strain. range [1, infinity) (not really though)
|
||||||
(4.0 + rhythm_complexity_sum * Self::RHYTHM_MULTIPLIER).sqrt() / 2.0
|
let mut diff = (4.0 + rhythm_complexity_sum * Self::RHYTHM_MULTIPLIER).sqrt() / 2.0;
|
||||||
|
|
||||||
|
if mods.rx() {
|
||||||
|
diff *= 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
diff
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user