<aside> <img src="/icons/thought-alert_blue.svg" alt="/icons/thought-alert_blue.svg" width="40px" /> This is a page asking for discussion or assistance. It was created for other people to look at and provide their opinions on. If by chance you’re viewing this page with no context on the overall project and wish to learn more, this page relates to a skill-splitting pp calculation project named osu! alltrick, located here https://github.com/srb2thepast/osu-alltrick.
</aside>
i've been trying to create something similar to the official pp system's method of strain calculation that would work for my purposes (the purpose being compatibility with my project ‣), but it feels like i’ve been creating something worse and worse with each attempt i make.
Here are the variables I have: SpeedStrainDifficulty - The Current Strain Difficulty (what I want to evaluate overall)
CurrentSpeedDifficulty - A number representing the speed difficulty of tapping the current circle in comparison to the previous.
currentHitObject - a single hit object during a loop of the entire map (this value changes to each circle in the map from start to finish, like the foreach (OsuDifficultyHitObject currentHitObject in map) loop)
strainTime - the deltaTime from the previous circle to the current one, capped at 25ms
(just like in the OsuDifficultyHitObject class’s StrainTime)
The overall goal, composed of 2 parts, is to evaluate the amount that SpeedStrainDifficulty should increment by based on the CurrentSpeedDifficulty and strainTime and increment SpeedStrainDifficulty by that amount.