I spent one hour to figure it out, dunno whether someone have posted this nevertheless
ERR = the difference between the time when your hit and the note time
X = (78 - 6*OD) ms
Y = (138 - 8*OD) ms
Z = (198 - 10*OD) ms
Some mods affect X,Y,Z:
HR increases OD by 40%. (OD is capped at 10 and it doesn't round so OD7+HR =OD9.8)
Easy halves OD.
DoubleTime and HalfTime multiply X,Y,Z by 2/3 and 4/3 respectively.
X,Y,Z are rounded up. For instance when OD7+HR, X = ceiling(78-6*9.8) = 20
For circles,
you get 300 when ERR <= X,
100 when ERR > X and ERR <= Y,
50 when ERR > Y and ERR <= Z,
miss when ERR > Z.
For sliders,
if ERR > Z you break the combo.
eg. To get 300s on an OD10 map, you have to hit circles neither 18ms earlier nor 18ms later.
You get a 300, 100 or 50 from a normal hit circle depending on how accurately you click on it.Let's define
ERR = the difference between the time when your hit and the note time
X = (78 - 6*OD) ms
Y = (138 - 8*OD) ms
Z = (198 - 10*OD) ms
Some mods affect X,Y,Z:
HR increases OD by 40%. (OD is capped at 10 and it doesn't round so OD7+HR =OD9.8)
Easy halves OD.
DoubleTime and HalfTime multiply X,Y,Z by 2/3 and 4/3 respectively.
X,Y,Z are rounded up. For instance when OD7+HR, X = ceiling(78-6*9.8) = 20
For circles,
you get 300 when ERR <= X,
100 when ERR > X and ERR <= Y,
50 when ERR > Y and ERR <= Z,
miss when ERR > Z.
For sliders,
if ERR > Z you break the combo.
eg. To get 300s on an OD10 map, you have to hit circles neither 18ms earlier nor 18ms later.