At the moment only taiko and mania have proper hit windows, and even then they use their own implementations. osu! likewise has its own implementation, but it doesn't scale with OD right now.
To start off, a good direction would be to extract mania's HitWindows class into osu.Game and add it to the base HitObject class, perhaps as a lazily-loaded member. Then we can use this class and the values contained within it for all rulesets - hopefully being able to balance all rulesets using the same hit window values.
At the moment only taiko and mania have proper hit windows, and even then they use their own implementations. osu! likewise has its own implementation, but it doesn't scale with OD right now.
To start off, a good direction would be to extract mania's
HitWindows
class intoosu.Game
and add it to the baseHitObject
class, perhaps as a lazily-loaded member. Then we can use this class and the values contained within it for all rulesets - hopefully being able to balance all rulesets using the same hit window values.