Ooh, nice link.
If map difficulty is calculated the same way as in that code, I think I see what causes offset to affect star rating:
If map difficulty is calculated the same way as in that code, I think I see what causes offset to affect star rating:
Unless all object timings are decreased by map offset, this gives an offset-dependent partition of map objects.that link wrote:
// In milliseconds. For difficulty calculation we will only look at the highest strain value in each time interval of size STRAIN_STEP.
// This is to eliminate higher influence of stream over aim by simply having more HitObjects with high strain.
// The higher this value, the less strains there will be, indirectly giving long beatmaps an advantage.
private const double STRAIN_STEP = 400;
// The weighting of each strain value decays to 0.9 * it's previous value
private const double DECAY_WEIGHT = 0.9;
private double CalculateDifficulty(DifficultyType Type)
{
// Find the highest strain value within each strain step
List<double> HighestStrains = new List<double>();
double IntervalEndTime = STRAIN_STEP;