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

Add two spins gap before awarding bonus score on osu! spinners #24662

Merged
merged 3 commits into from Sep 12, 2023

Conversation

frenzibyte
Copy link
Member

@frenzibyte frenzibyte commented Aug 26, 2023

Previously, a player could gain two extra bonus ticks on any spinner in any map compared to stable. For balancing sake, this PR mimics stable behaviour and adds a gap of two spins before awarding bonus score.

In addition, spinners with certain durations / mods combination on stable have a 1.5x spinner gap instead of 2x, which can't be easily achieved here as it involves changing everything to work in "half spins" unit instead. Therefore, for simplicity, all spinners in lazer have a two-spins gap, regardless of their duration or the mods applied.

Tested on https://osu.ppy.sh/beatmapsets/1226922#osu/2551375; On master, a spinner reaches completion state after 11 spins, and bonus is awarded afterwards. Meanwhile, on this PR and in stable, a spinner reaches completion state after 9 spins, and the player keeps getting tick score for two extra spins, then starts getting bonus scores afterwards.

@peppy
Copy link
Sponsor Member

peppy commented Aug 30, 2023

Just to add commentary here, it has been brought up that this may not be the correct direction (ie. we don't want to introduce stable weirdness to spinners, and instead just make them match as close as possible and rely on spin RPM/score cap to maintain cross-compatibility).

See #23732 (comment).

@peppy peppy self-requested a review August 30, 2023 07:26
@peppy
Copy link
Sponsor Member

peppy commented Aug 30, 2023

As per voice call, I'm going to test this out and see how it feels with/without the change (and whether it's noticeable in normal gameplay). Would be interested in others also trying this.

Also as per voice call, @smoogipoo is not strictly against this being merged (I believe he said he was against it in another conversation somewhere, so this is important).

@peppy
Copy link
Sponsor Member

peppy commented Sep 12, 2023

Here's a final comparison which took too long to make.

slider.comparison.mp4

Each bonus in lazer is worth 50, stable 1000. Tallying the different spinner lengths:

osu!(stable) master #24661 #24662
spinner 1 3 4 4 2
spinner 2 2 4 4 2
spinner 3 0 2 2 0
spinner 4 0 2 2 0
spinner 5 43 41 47 45

To summarise my thoughts:

  • The version on this PR matches the closest to stable across the board
  • In terms of visual/sound feedback, the 2 spin bonus gap is hard to discern
  • That said, the gap seems quite important to get a similar level of bonus score on short spinners, so I think we should push forward with it.
  • For the longest spinner, stable takes quite a bit longer to reach the "bonus" point. I guess this is due to the slower acceleration. I don't think we need to match this, just something worth mentioning.
  • This PR definitely seems as close to stable as we've been so far

So unless there's concerns with code complexity that still remain, I think this general direction, from a purely visual and scoring check, looks quite valid.

@pull-request-size pull-request-size bot added size/S and removed size/M labels Sep 12, 2023
@peppy peppy disabled auto-merge September 12, 2023 12:39
@peppy peppy merged commit 2bc6759 into ppy:master Sep 12, 2023
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

None yet

2 participants