Written by PizzaLovers007
The timing window calculations for ADOFAI are quite complex! While I think all the information about it is already out there, it seems like a good idea to keep a canonical explanation of it available to prevent any confusion.
At their core, the timing windows are based off of the angle difference between the planet and the tile when a key is pressed. For $d = (\text{planet angle}) - (\text{tile angle})$, we have the following judgments:
Early!!
(too early)Early!
EPerfect!
Perfect!
LPerfect!
Late!
Late!!
(too late)To put it more simply:
Perfect!
EPerfect!
/ LPerfect!
Early!
/ Late!
Early!!
/ Late!!
(too early/late)As a visualization, this is the where the timing windows line up:
With the angle based calculations, it means the faster the BPM the smaller the hit windows. We can convert the angle windows to millisecond windows with the following formula: