Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The scroll speed setting for mania on osu!Lazer isn't same as on osu!stable #9868

Closed
tasnimtamim opened this issue Aug 15, 2020 · 9 comments · Fixed by #9902
Closed

The scroll speed setting for mania on osu!Lazer isn't same as on osu!stable #9868

tasnimtamim opened this issue Aug 15, 2020 · 9 comments · Fixed by #9902

Comments

@tasnimtamim
Copy link

Describe the bug:
On osu!Lazer, the 28 scroll speed is really, REALLY fast compared to osu!stable despite (I think?) using same numbering for the speeds. For example, I am used to 28 scroll speed on stable but I have to experiment and pick somewhere around 12-14 speed to get more or less close to the scroll speed of stable.
Screenshots or videos showing encountered issue:
https://www.youtube.com/watch?v=_sbDgPIFyvo
osu!lazer version:
2020.814.0
Logs:

logs.zip

@lanpai
Copy link
Contributor

lanpai commented Aug 18, 2020

It seems as though the speed shown in osu!lazer is 6000/duration (6000 being DrawableManiaRuleset.MAX_TIME_RANGE) while osu!stable's speed is closer to 13720/duration according to a user that calculated it through observation.

As osu!stable's speed/duration calculation isn't public as far as I can tell, I can't make a PR at the moment. Needs further checking.

@enoslayd
Copy link

It seems as though the speed shown in osu!lazer is 6000/duration (6000 being DrawableManiaRuleset.MAX_TIME_RANGE) while osu!stable's speed is closer to 13720/duration according to a user that calculated it through observation.

Actually, i tried changing it to 13720 and it seems to match stable

@lanpai
Copy link
Contributor

lanpai commented Aug 18, 2020

Yeah, same here @enoslayd. But I'd like some form of confirmation from someone who can see osu!stable code.

@smoogipoo
Copy link
Contributor

smoogipoo commented Aug 18, 2020

Yep, that looks about right. I've gone through the calculations again myself:

Position to time:
  T = P * B / 21 / (n * F)

Where:
n -> Variable. Raw speed value (1 .. 40).
F -> Constant. The factor by which 100 is greater than the most common BPM (100 / (60000 / B)).
P -> Constant. Note position (for our purposes).
B -> Constant. Beat length at the note position.

F and B are inverses of each other with a scaling factor applied, thus:
  B * 1 / F
  = B * (60000 / B) / 100
  = 60000 / 100
  = 600
For all B, such that the eq can be simplified as:
  T = P * 600 / 21 / n

For P = 480 (top of screen in stable):
  T = 480 * 600 / 21 / n
    = 13714 / n

And for different speeds (n) we find:
    @n=1 : T = 13714
    @n=21: T = 653
    @n=40: T = 342

13720 looks like a good value to me. It appeared slow in my initial testing but maybe that's just an effect of having moved from 60Hz to 144Hz >.>.

@smoogipoo
Copy link
Contributor

@lanpai are you interested in PRing the change?

@lanpai
Copy link
Contributor

lanpai commented Aug 18, 2020

Yes, working on it right now

@lanpai
Copy link
Contributor

lanpai commented Aug 18, 2020

Added PR #9902

@bdach
Copy link
Collaborator

bdach commented Aug 18, 2020

FYI you would usually link the other way around (PR to issue) with a keyword ("resolves/closes") to autoclose the issue on PR merge.

@lanpai
Copy link
Contributor

lanpai commented Aug 18, 2020

Ah, thank you for the tip

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants