From 2ab44f20825e623195d78e587320d20ce448ede3 Mon Sep 17 00:00:00 2001 From: Barinade Date: Wed, 17 Aug 2022 18:48:34 -0500 Subject: [PATCH] stream pmod changes, roll hard cutoff thing | 489 --- .../MinaCalc/Dependent/HD_PatternMods/Roll.h | 19 +++++++++++++------ src/Etterna/MinaCalc/MinaCalc.cpp | 8 ++++---- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/src/Etterna/MinaCalc/Dependent/HD_PatternMods/Roll.h b/src/Etterna/MinaCalc/Dependent/HD_PatternMods/Roll.h index 4029ef2fe9..e9e52bc856 100644 --- a/src/Etterna/MinaCalc/Dependent/HD_PatternMods/Roll.h +++ b/src/Etterna/MinaCalc/Dependent/HD_PatternMods/Roll.h @@ -9,10 +9,10 @@ struct RollMod #pragma region params - float min_mod = 0.9F; + float min_mod = 0.6F; float max_mod = 1.F; - float base = 0.1F; - float jj_scaler = .5F; + float base = 0.F; + float jj_scaler = 1.4F; // ms apart for 2 taps to be considered a jumpjack // 0.075 is 200 bpm 16th trills @@ -25,7 +25,9 @@ struct RollMod // as the jumpjack width is between 0 and ms_threshold // a higher number here makes numbers closer to ms_threshold // worth more -- the falloff occurs late - float diff_falloff_power = 1.F; + float diff_falloff_power = 6.F; + + float required_notes_before_nerf = 6.F; const std::vector> _params{ { "min_mod", &min_mod }, @@ -35,6 +37,7 @@ struct RollMod { "jj_scaler", &jj_scaler }, { "ms_threshold", &ms_threshold }, { "diff_falloff_power", &diff_falloff_power }, + { "required_notes_before_nerf", &required_notes_before_nerf }, }; #pragma endregion params and param map @@ -151,8 +154,12 @@ struct RollMod return; } - pmod = - 1 - (((current_problems * 2.F) * jj_scaler) / itvhi.get_taps_nowf()); + if (itvhi.get_taps_nowf() < required_notes_before_nerf) { + pmod = neutral; + return; + } + + pmod = itvhi.get_taps_nowf() / ((current_problems * 2.F) * jj_scaler); pmod = std::clamp(base + pmod, min_mod, max_mod); } diff --git a/src/Etterna/MinaCalc/MinaCalc.cpp b/src/Etterna/MinaCalc/MinaCalc.cpp index 59506badfb..8cc50e20b2 100644 --- a/src/Etterna/MinaCalc/MinaCalc.cpp +++ b/src/Etterna/MinaCalc/MinaCalc.cpp @@ -732,10 +732,10 @@ Calc::InitAdjDiff(Calc& calc, const int& hand) WideRangeJumptrill, WideRangeJJ, FlamJam, - OHJumpMod, - Balance, + // OHJumpMod, + // Balance, // RanMan, - WideRangeBalance, + // WideRangeBalance, }, // js @@ -1012,7 +1012,7 @@ MinaSDCalcDebug( } } -int mina_calc_version = 488; +int mina_calc_version = 489; auto GetCalcVersion() -> int {