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 September 2024 Performance Points & Star Rating Updates news post #12159

Merged
merged 64 commits into from
Oct 28, 2024
Merged
Show file tree
Hide file tree
Changes from 7 commits
Commits
Show all changes
64 commits
Select commit Hold shift + click to select a range
5f6e860
add September 2024 `Performance Points & Star Rating Updates` post
tsunyoku Sep 17, 2024
ce306a2
fix formatting
tsunyoku Sep 17, 2024
303432b
correct mentions of osu!(lazer)
tsunyoku Sep 17, 2024
c449bc9
fix formatting
tsunyoku Sep 17, 2024
0dc2983
fix some grammar/spelling
tsunyoku Sep 17, 2024
4ee5fc8
put old NF penalty before new one
tsunyoku Sep 17, 2024
9cd6955
change taiko accuracy curve graphs
tsunyoku Sep 17, 2024
e869082
use transparent graphs
tsunyoku Sep 17, 2024
e53eb1e
update news banner
tsunyoku Sep 17, 2024
430fbdd
use sentence case for headings
tsunyoku Sep 17, 2024
d992ad0
sentence case for graphs
tsunyoku Sep 17, 2024
ee02431
improve wording of combo scaling removal introduction
tsunyoku Sep 18, 2024
7f3bbcd
move catch committee mention to `osu!catch` section
tsunyoku Sep 18, 2024
e051026
remove `changes` from ruleset headings
tsunyoku Sep 18, 2024
4fff511
improve slider accuracy header
tsunyoku Sep 18, 2024
918f31a
try to improve consistency sentence
tsunyoku Sep 18, 2024
98c36dc
further improvements to combo scaling removal paragraph
tsunyoku Sep 18, 2024
887d933
fix `accommodate` typo
tsunyoku Sep 18, 2024
678c539
add rhythm complexity improvements
tsunyoku Sep 23, 2024
28457af
update graph to reflect rhythm changes
tsunyoku Sep 24, 2024
929f86b
remove double spaces
tsunyoku Sep 25, 2024
701b1c0
add speed distance hotfix and aim rebalance
tsunyoku Sep 25, 2024
9d41b93
`display` -> `discuss`
tsunyoku Sep 25, 2024
b0a44fb
improve wording of combo scaling removal explanation
tsunyoku Sep 25, 2024
77ed274
remove redundant explanation on rhythm fixes
tsunyoku Sep 25, 2024
8dd938b
improve wording on doubletapness paragraph of rhythm fixes
tsunyoku Sep 25, 2024
e84f260
improve speed distance hotfix introduction
tsunyoku Sep 25, 2024
8a5bd7f
improve wording of distance bonus explanation
tsunyoku Sep 25, 2024
5a0705a
improve distance bonus scaling reduction
tsunyoku Sep 25, 2024
48419d2
improve slider related changes
tsunyoku Sep 25, 2024
d150fc2
consistently use "proposed" wording for changes
tsunyoku Sep 25, 2024
53ef80f
improve slider head accuracy explanation
tsunyoku Sep 25, 2024
35f30db
clarify slider changes only apply if played with accuracy
tsunyoku Sep 25, 2024
7d130fe
add minor speed accuracy scaling change
tsunyoku Oct 2, 2024
1e724fd
mention lazer update video
tsunyoku Oct 9, 2024
89b59b6
add estimation change to osu! section
tsunyoku Oct 14, 2024
eca1941
use lowercase for pp
tsunyoku Oct 14, 2024
909508a
rewrite CSR explanation
tsunyoku Oct 14, 2024
c6671f4
introduce rhythm to the reader
tsunyoku Oct 14, 2024
f33cc27
prefer `double-tap` over `doubletap`
tsunyoku Oct 14, 2024
6b2ab29
lowercase accuracy
tsunyoku Oct 14, 2024
6a4e229
improve accuracy object cap explanation
tsunyoku Oct 14, 2024
3db3d72
reduce bullet points starting with `A` on osu! section
tsunyoku Oct 14, 2024
ef0e229
use `osu!taiko` in place of `osu!Taiko`
tsunyoku Oct 14, 2024
4905643
use different dash format
tsunyoku Oct 14, 2024
b8f91b2
separate outro sentence
tsunyoku Oct 14, 2024
d43b134
move multiplier mention above graph
tsunyoku Oct 14, 2024
1afbdfb
use previous post explanation of islands
tsunyoku Oct 17, 2024
bf00561
various changes and rewordings
Walavouchey Oct 17, 2024
407b95a
typo
Walavouchey Oct 17, 2024
b31f064
clarify general understanding of pp jumps
tsunyoku Oct 18, 2024
d97f8e5
add extra detail to pp jumps caused by combo scaling removal
tsunyoku Oct 18, 2024
4c2ed61
some rewordings for the minor osu! changes
Walavouchey Oct 18, 2024
57bec6d
some adjustments for the tl-tapping section
Walavouchey Oct 19, 2024
28e2f6d
rewrite speed distance hotfix
tsunyoku Oct 20, 2024
2a311db
remove distance bonus graph, include some examples of most affected b…
tsunyoku Oct 22, 2024
8446862
clarify "niche" playstyles in tl-tapping
tsunyoku Oct 23, 2024
64d38e9
Add basic release schedule
peppy Oct 24, 2024
5201185
add new pp banner
Hiviexd Oct 28, 2024
347b15b
use new banner design
Hiviexd Oct 28, 2024
b89de31
Add note clarifying that score processing includes all scores to date
peppy Oct 25, 2024
9dee8df
Update SR schedule
peppy Oct 28, 2024
27d4b9f
Update extra info to be more clear
peppy Oct 28, 2024
b32f7a1
update banner
Walavouchey Oct 28, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
139 changes: 139 additions & 0 deletions news/2024/2024-09-17-performance-points-star-rating-updates.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
---
layout: post
title: Performance Points & Star Rating Updates
date: 2024-09-17 12:00 +0000
---

The time for change is finally here!

![](/wiki/shared/news/banners/star-rating.jpg)
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

There are changes to all game modes this time around in an effort to improve the difficulty and performance calculations. This news post will display what has changed in a format that should be understandable to you, the player!
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

If you find yourself scratching your head when reading, consider consulting the [performance points](/wiki/Performance_points) and [star rating](/wiki/Beatmapping/Star_rating) wiki articles to gain a greater understanding of the topics.

## Release Schedule
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

<!-- todo -->
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've left this empty as I'm unsure what it will look like this time around. Likely requires input from @peppy.


## osu!catch Performance Points Committee

Since the last performance points post, osu!catch has now formed its own Performance Points Committee to help out with osu!catch related changes. You can find out more about the various committees on their [wiki page](/wiki/People/Performance_Points_Committee).

---

## osu! changes

As a reminder of the various core values in the difficulty calculation algorithm:

- **Aim**: how difficult it is to consistently hit notes back-to-back (affected by approach rate, jumps, Hidden, Hard Rock and more)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are these mentioned anywhere more permanently on the wiki? It feels like we want these definitions to be very front-and-foremost as not even I have an amazing concept of them.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

They are mentioned on https://osu.ppy.sh/wiki/en/Performance_points#calculation, however looking at it I notice it's slightly outdated (for example, Flashlight is no longer part of Aim calculation)

- **Speed**: how quickly new elements are presented to the player (affected by note density, BPM, Double Time and Half Time)
- **Accuracy**: how difficult it is to stay rhythmically on time (affected by Hidden, Hard Rock, Flashlight and more)
- **Strain**: the difficulty of enduring intense or technically demanding patterns often and for a long time (affected by streams, fast jumps and more)

### Combo Scaling Removal

A [change](https://github.com/ppy/osu/pull/16280) submitted by [moonpoint](https://osu.ppy.sh/users/9558549) with improvements made by [KermitNuggies](https://osu.ppy.sh/users/33452559) has been created in order to remove the combo scaling factor of a score on *both* aim and speed.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
A [change](https://github.com/ppy/osu/pull/16280) submitted by [moonpoint](https://osu.ppy.sh/users/9558549) with improvements made by [KermitNuggies](https://osu.ppy.sh/users/33452559) has been created in order to remove the combo scaling factor of a score on *both* aim and speed.
The most monumental [change](https://github.com/ppy/osu/pull/16280) proposed by [moonpoint](https://osu.ppy.sh/users/9558549) with improvements made by [KermitNuggies](https://osu.ppy.sh/users/33452559) – removes the "combo scaling factor" applied to the aim and speed portions of a score's PP.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The writing style of this whole post needs some serious review so I'll probably stop short here and leave it to @Walavouchey or someone else then revisit after things look better.


This change means a 1 miss score with a max combo of 500 compared to a 1 miss score on the same beatmap with a max combo of 700 will both be punished equally. The miss penalty was also rewritten in order to accomodate these changes - misses have generally been made harsher, with the initial miss having a harsher penalty in order to differentiate between FCs and non-FCs.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

The miss penalty scaling is now based on the amount of difficult strains instead of object count. As the penalty is based upon the amount of difficult strains, this means longer maps with a lot of "filler" sections will be punished harder than longer beatmaps which are consistently difficult even if both beatmaps have similar object counts.

There were concerns raised about consistency being less important with these changes, however this isn't an issue. Using combo as a metric doesn't make much sense as the performance calculator does not know what sections of a beatmap that a score got misses on - as a result, we model any misses as being on the most difficult part.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

First sentence reads really bad, stops halfway through, weird.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've tried to improve it by connecting the two, but the sentence might be too long now. Open to suggestions on rewording because I can't really think of much.


### Sliders in accuracy pp
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

A [change](https://github.com/ppy/osu/pull/27063) submitted by [tsunyoku](https://osu.ppy.sh/users/11315329) has been created to include the slider count in accuracy pp if a score was set using slider head accuracy.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

Accuracy pp uses its own formula to create a separate object count that has always excluded sliders as traditionally, osu! never had accuracy on slider heads. Slider head accuracy is now a possibility in osu!(lazer), so accuracy pp has been adjusted to include sliders.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

This change may not affect all scores set with slider head accuracy, as accuracy pp also has an object count cap meaning accuracy pp will go unchanged if the hit circle object count was already hitting this cap. Additionally, very low accuracy scores may not be boosted enough by the added object counts to result in any extra reward.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

This is one change related to slider head accuracy with more to be expected in the future.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

### Minor Changes

- A [slider mechanic change](https://github.com/ppy/osu/pull/24966) was made to adjust slider ends to be more lenient during fast sliders which has resulted in buffs on some maps with very fast sliders such as [KAEDE](https://osu.ppy.sh/beatmapsets/660630#osu/1398809). You can find more about this change in the related [osu!(lazer) updates video](https://www.youtube.com/watch?v=SlWKKA-ltZY).
- Some various refactorings across difficulty calculation and performance calculation submitted by [Givikap120](https://osu.ppy.sh/users/10560705) to reduce duplication. [#1](https://github.com/ppy/osu/pull/29293) [#2](https://github.com/ppy/osu/pull/29294) [#3](https://github.com/ppy/osu/pull/29292) [#4](https://github.com/ppy/osu/pull/29291)

## osu!taiko changes

In order to aid understanding of the changes to osu!taiko, these are the skills in difficulty calculation which will be referenced throughout:

- **Stamina**: the speed at which you hit notes, based on an assumed finger count of 2 per colour
- **Colour**: the frequency of which the beatmap changes between a don or kat
- **Rhythm**: the complexity of the beatmap's rhythm in relation to notes' independent rhythm ratios

### Consideration for TL tapping in the stamina component of difficulty calculation

With the recent update to osu!taiko's difficulty calculation, an issue has arisen concerning a unique playstyle known as TL-tapping. [Maxie's video](https://www.youtube.com/watch?v=WM7gkFBDl9s) provides a more in-depth explanation of this playstyle.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

A recent [change](https://github.com/ppy/osu/pull/20558) by [vun](https://osu.ppy.sh/users/6932501) addresses these issues within the stamina system. When the new stamina system for osu!taiko was introduced in 2022, it assumed that players used two fingers per colour, leading to some impressive plays by players like [Ney](https://osu.ppy.sh/users/5991961) on [Alive](https://osu.ppy.sh/scores/1873110816) and others on [StrangeProgram](https://osu.ppy.sh/beatmapsets/5774#taiko/28065), which became notorious for yielding some speedy high PP scores.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

The new system, while simple in its implementation, introduces variable finger counts for stamina. Mono-colour patterns that last more than 300ms without a colour change are now considered to have four fingers available. This adjustment significantly nerfs certain maps and converts. Additionally, convert-specific nerfs have been removed from difficulty calculations to ensure that converts are weighted fairly against mode-specific maps. The changes to finger count availability also ensure that more *niche* skill sets are fairly represented.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what "niche" skill sets? is it just the aforementioned tl-tapping method?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not ltca but i think the intention was to include other playstyles which may use 3 or 4 fingers per color in the phrasing, nothing specific

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

could we then reword to something along the lines of The changes to finger count availability also ensure that play styles using varying amounts of fingers per colour are fairly represented?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i say go for it

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah that sounds fine to me. essentially yes its skillsets that utilise more than the set 2 finger count

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


### Changes to the HDFL bonus in the accuracy component of performance calculation

On the performance points side, a change by [-Lawtron-](https://osu.ppy.sh/users/11475208) addresses the bonus applied to memorisation mods on shorter maps. The length of the map will no longer affect the base multiplier in the accuracy component of the performance points system. However, the cap for HDFL (Hidden + Flashlight) bonuses has been increased to 1.1x for qualifying plays.

Previously, a map with just one object could receive the same bonus as a map with 1,000 objects when using HDFL, which led to disproportionate rewards for shorter, simpler maps.

### Adjusted accuracy scaling

A [change](https://github.com/ppy/osu/pull/20963) submitted by [Natelytle](https://osu.ppy.sh/users/17607667) has been made to the way osu!taiko calculates accuracy difficulty, to keep accuracy and difficulty scaling values more in line for the same score as you change the overall difficulty of the map.

The current way accuracy scaling works in osu!taiko is very simple. It takes the decimal accuracy of the score, raises it to the power of 15, and multiplies the result by a constant determined by the overall difficulty. The problem with this is that if you keep the spread of your hit timings (also known as UR) the same, your accuracy does not decrease at a constant rate as you increase the overall difficulty.

The consequence of this is that if you take the same score and increase the overall difficulty on it, eventually you will reach a point where the accuracy drops off faster than the constant bonus for OD increases. This means the exact same score can *lose* pp if the overall difficulty is too high.

![](/wiki/shared/news/2024-09-17-performance-points-star-rating-updates/old-taiko-accuracy-curve.png)

To solve this, we can leverage the fact that tapping error is almost always normally distributed. To do this, we use a formula that takes the proportion of hits outside a boundary, like the 300 hit window, and returns the width of a normal distribution that would result in that proportion. This is used to solve for the unstable rate of the score using the 100 and miss counts, and use that to scale a single maximum accuracy value of the score instead, doing away with the constant bonuses for overall difficulty entirely.

![](/wiki/shared/news/2024-09-17-performance-points-star-rating-updates/new-taiko-accuracy-curve.png)

### Minor changes

- [Refactor](https://github.com/ppy/osu/pull/28596) of Taiko's skill code by [StanR](https://osu.ppy.sh/users/7217455) to make calculations more maintainable.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

On a side note, the osu!taiko performance points committee is aware of the feedback, both positive and negative, surrounding the new system over the past couple of years. We value the community's input and are continuously working to improve. There are significant changes on the horizon, such as the introduction of the pattern skill (rhythm within colour, and colour within rhythm) as well as performance-related changes. If you’d like to contribute to future changes, feel free to join the discussion on our [Performance Points Discord server](https://discord.gg/aqPCnXu).

## osu!catch changes
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

### No Fail Changes

All the way back in 2021 the osu! mode received no fail changes to scale the no fail pp multiplier based on the number of misses. As suggested by [Givikap120](https://osu.ppy.sh/users/10560705), these changes [were brought into osu!catch too](https://github.com/ppy/osu/pull/28353):

- Old value: 0.9x (always)
- New value: 1.0x base with -0.02x applied for each miss to a maximum reduction of 0.9x

This prevents FC plays with the No Fail mod from being punished and reduces the ability for No Fail to be used in order to "sandbag" or derank.

### Minor Changes

- A [fix](https://github.com/ppy/osu/pull/28337) submitted by [spaceman_atlas](https://osu.ppy.sh/users/3035836) to remove rounding of the slider velocity multiplier on juice streams which resulted in some shifting of difficulty & performance values.

## osu!mania changes

### Adjusted LN value scaling to address overweighted LN maps

A [slight adjustment](https://github.com/ppy/osu/pull/24109) to LN values submitted by [Hydria](https://osu.ppy.sh/users/808176) has been made to difficulty calculation in an effort to bring overweighted LN maps to more acceptable values. Most LN patterns are nerfed as a result of this change.

There are 2 particular changes to LN-specific bonuses that have resulted in this nerf:

- There is an overlap bonus which awards a bonus if 2 LNs overlap each other — the larger the overlap, the larger the bonus. This has been adjusted to require larger overlaps for the equivalent bonuses.
- Cases where 2 LNs start together (for example, in a chord) are no longer buffed.

Here is a graph to help visualise the LN overlap bonus change:

![](/wiki/shared/news/2024-09-17-performance-points-star-rating-updates/hold-overlap-bonuses.png)

To add context to the graph, 30ms corresponds to 250bpm 1/8th patterns.

In the [previous osu!mania changes](https://osu.ppy.sh/home/news/2022-10-09-changes-to-osu-mania-sr-and-pp), there was a fix for the ends of LNs and note chords awarding varying amounts of difficulty depending on their placement order. These changes have improved on that once again, and the order of LN chord starts no longer vary difficulty either - this means that the placement order of chords should no longer matter at all.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

---

A huge thanks to the contributors of these changes as well as the community of people who helped by providing their feedback. If you'd like to learn more about the development of performance points, you may want to take a look in the `#difficulty-osu` channel of the [osu! Discord server](https://discord.gg/ppy) or even join the [Performance Points Discord server](https://discord.gg/aqPCnXu) dedicated to developing and discussing performance points.
tsunyoku marked this conversation as resolved.
Show resolved Hide resolved

—the performance points committees
Walavouchey marked this conversation as resolved.
Show resolved Hide resolved
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.