I'm writing a replay viewer/analyzer program, and part of that requires me to make an exact replica of osu!'s game engine.
what I'm wondering about here are some implementation details for sliders and spinners, and also how HP is determined.
Sliders:
- what exactly happens when slider ball reaches slider tick? (i believe it checks if the cursor is within 2 x (circle radius) of the slider tick. if not, drop combo. If so, +1 combo, add points(?) and remove slidertick sprite.
- what happens at a slider end? same thing but no drop combo?
- how exactly is it decided what score you will get for a slider between 50 and 100? is it how many of the slider ticks/ends you hit?
- are repeat slider ends (with arrows) treated as a regular slider tick or a slider end?
Spinners:
- how long do you have to spin for?
- how many rotations do you need as a function of spinner length, and maybe OD?
HP:
- how fast does HP decrease (as a function of HP drain rate)?
- how much HP do you get for a 300? a 100? a 50(as a function of OD/HP)?
- is it the same for sliders and hitcircles?
- do you get HP for slider ticks?
- what happens to HP during spinners?
if you have the answer to any of these, it will be helpful!
Thanks!!! I look forward to posting the first working version here on reddit for people to mess around with.
if you're interested in looking into the project, there's code here: https://github.com/maboesanman/osu-spectate
what I'm wondering about here are some implementation details for sliders and spinners, and also how HP is determined.
Sliders:
- what exactly happens when slider ball reaches slider tick? (i believe it checks if the cursor is within 2 x (circle radius) of the slider tick. if not, drop combo. If so, +1 combo, add points(?) and remove slidertick sprite.
- what happens at a slider end? same thing but no drop combo?
- how exactly is it decided what score you will get for a slider between 50 and 100? is it how many of the slider ticks/ends you hit?
- are repeat slider ends (with arrows) treated as a regular slider tick or a slider end?
Spinners:
- how long do you have to spin for?
- how many rotations do you need as a function of spinner length, and maybe OD?
HP:
- how fast does HP decrease (as a function of HP drain rate)?
- how much HP do you get for a 300? a 100? a 50(as a function of OD/HP)?
- is it the same for sliders and hitcircles?
- do you get HP for slider ticks?
- what happens to HP during spinners?
if you have the answer to any of these, it will be helpful!
Thanks!!! I look forward to posting the first working version here on reddit for people to mess around with.
if you're interested in looking into the project, there's code here: https://github.com/maboesanman/osu-spectate