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

[EN/ZH] Update Performance points #12403

Merged
merged 18 commits into from
Feb 15, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
70 changes: 43 additions & 27 deletions wiki/Performance_points/en.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,26 +6,6 @@

It aims to shift the focus of skill progression from the amount of time played to an actual representation of the player's skill. This is attained by the calculation of a unique score known that is based on the difficulty of a beatmap and a player's performance on that [beatmap](/wiki/Beatmap).

## History

The first initial implementation of such a score was revealed to the public during April 2012 and was known only as the mysterious *'???'* project, the enigmatic system eventually received its full name later on in the month.

Known thereafter as "pp" (an abbreviation for "performance points"), this new system sought to change the previous standard of player performance from simply total [score](/wiki/Gameplay/Score) to something that accurately reflected skill. The new system was met to widespread acclaim among the player base at the time.

Several months after its reveal, the 20120722-24 osu! release officially implemented the system to fully replace the old [Ranked](/wiki/Beatmap/Category#ranked) score system, with new scores being calculated every 30 minutes. Later on in August of the same year, the system was improved to update in real-time.

It continued to exist in this capacity for more than a year of service until [Tom94](https://osu.ppy.sh/users/1857058), the creator of the *osu!tp* scoring metric, joined the [osu! team](/wiki/People/osu!_team) and implemented his design into the system. The resulting system was titled *ppv2*, and became live on January 27, 2014, therefore renaming the old system to *[ppv1](/wiki/Performance_points/ppv1)*

On January 16, 2021, changes were made to the ppv2 system that aimed to more accurately award pp to more difficult aspects of maps. These changes were made in large part by the help of various individual members of the community such as [Xexxar](https://osu.ppy.sh/users/2773526) and [StanR](https://osu.ppy.sh/users/7217455). The specifics of the changes made are detailed in the [corresponding newspost](https://osu.ppy.sh/home/news/2021-01-14-performance-points-updates). Very briefly, the main points of interest in the update were as follows:

- Introduce a scaling factor to the additional pp gain from approach rate 11 maps based on the length of a beatmap
- Introduce a scaling factor to the pp loss affected by the [No Fail](/wiki/Gameplay/Game_modifier/No_Fail) mod based on the number of misses in a play
- Introduce a scaling factor to the pp loss affected by the [Spun Out](/wiki/Gameplay/Game_modifier/Spun_Out) mod based on the number of spinners in a beatmap
- Adjust the rate of pp loss from misses to be more forgiving on longer maps with higher combo
- Punish lower [accuracy](/wiki/Gameplay/Accuracy) plays with less pp gain

ppv2 is currently in active service, with updates in the form of news posts published by the [Performance Points Committee](/wiki/People/Performance_Points_Committee) whenever new changes are deployed.

## Calculation

Performance points are heavily based on calculated beatmap difficulty, which is determined by a unique algorithm constructed for each individual [game mode](/wiki/Game_mode).
Expand Down Expand Up @@ -95,7 +75,7 @@ Consider the following tips:
- Play efficiently and figure out which play style works best for you.
- Focus on getting a handful of exceptional scores instead of "farming" hundreds of just okay scores.<!-- "farming" will need to be linked once a stub or section is created -->
- Aim to improve your accuracy. Even 1% makes a massive difference.
- Aim for higher combos. Full combos (FC) or [SS](/wiki/Gameplay/Grade) scores give tremendous amounts of score.
- Aim for higher combos. [Full combos](/wiki/Gameplay/Full_combo) or [SS](/wiki/Gameplay/Grade) scores give tremendous amounts of score.

### Why didn't I gain the full amount of pp from a map I played?

Expand All @@ -105,13 +85,13 @@ You can learn more about the weightage system [above](#weightage-system).

### How much bonus pp is awarded for having scores on ranked maps?

**Up to 416.6667 bonus pp is given for setting scores. This is attained at approximately 3640 scores, but 416 out of them can be attained by having only 1285 scores.**
**Up to 413.894 bonus pp is given for setting 1,000 scores.**

You can calculate the exact amount of this bonus by following [this formula](https://www.desmos.com/calculator/y5vy4vmxng), where `N` is the number of ranked maps with a score set:
You can calculate the exact amount of this bonus by following [this formula](https://www.desmos.com/calculator/ll2foxmgp3), where `N` is the number of ranked maps with a score set:

`416.6667 * (1 - 0.995 ^ N)`
`416.6667 * (1 - 0.995 ^ min(N, 1000))`

The median number of scores required to reach half of this bonus is roughly 209 scores. As you can see, the amount of scores required spikes sharply towards the upper end of the spectrum.
The median number of scores required to reach half of this bonus is roughly 137 scores, meaning the bonus pp increases rapidly in the early stages and slowly afterwards up until 1,000 scores.

#### Is weighting the reason behind why I don't get any pp from playing easy maps any more?

Expand All @@ -121,9 +101,9 @@ At that point however, you would've set some comparatively more impressive score

### Why did I lose pp for setting a new score?

**You might occasionally lose pp for setting a higher combo score with worse accuracy, or playing with mods with worse accuracy overall.**
**The pp algorithm is occasionally updated and scores are recalculated to reflect new changes, which may become visible as a sudden decrease or increase in total pp when you set a score during that process.**

Total score is still important to individual map rankings, and this may produce unusual circumstances where a higher overall score with lower accuracy or mod use factored in will produce a "better" result that still ultimately loses you pp.
Updates to performance point systems are accompanied by announcements in-game and on the website, which contain more information about the recalculation process and the changes themselves.

### Some mods feel very overweighted/underweighted. Why is this?

Expand All @@ -132,3 +112,39 @@ Total score is still important to individual map rankings, and this may produce
No system is completely perfect, and performance point totals will certainly vary between mapsets and certain mod combinations, even when the subjective difficulty of those plays may be lower than a more difficult map.

Overall, the current performance points system has been engineered to be as fair as possible under the constraints of its model.

## History

The initial implementation of performance points was revealed to the public in April 2012 and was then known only as the mysterious *"???"* project.

With the full name revealed later on in the month, this new system sought to change the previous standard of player performance from simply total [score](/wiki/Gameplay/Score) to something that accurately reflected skill. The new system was met with widespread acclaim among the player base at the time.

Several months after its reveal, the 20120722-24 osu! release officially implemented the system to fully replace the old [Ranked](/wiki/Beatmap/Category#ranked) score system, with new scores being calculated every 30 minutes. Later on, in August of the same year, the system was improved to update in real-time.

It continued to exist in this capacity for more than a year of service until [Tom94](https://osu.ppy.sh/users/1857058), the creator of the *osu!tp* scoring metric, joined the [osu! team](/wiki/People/osu!_team) and implemented his design into the system. The resulting system was titled *ppv2*, and became live on January 27, 2014, therefore renaming the old system to *[ppv1](/wiki/Performance_points/ppv1)*. Since then, the system was continuously maintained, but no major updates were made.

On January 16, 2021, changes were made to the ppv2 system that aimed to more accurately award pp to more difficult aspects of maps. These changes were made in large part with the help of various individual members of the community such as [Xexxar](https://osu.ppy.sh/users/2773526) and [StanR](https://osu.ppy.sh/users/7217455). The specifics of the changes made are detailed in the [corresponding news post](https://osu.ppy.sh/home/news/2021-01-14-performance-points-updates). Very briefly, the main points of interest in the update were as follows:

- Introduce a scaling factor to the additional pp gain from approach rate 11 maps based on the length of a beatmap
- Introduce a scaling factor to the pp loss affected by the [No Fail](/wiki/Gameplay/Game_modifier/No_Fail) mod based on the number of misses in a play
- Introduce a scaling factor to the pp loss affected by the [Spun Out](/wiki/Gameplay/Game_modifier/Spun_Out) mod based on the number of spinners in a beatmap
- Adjust the rate of pp loss from misses to be more forgiving on longer maps with higher combo
- Punish lower [accuracy](/wiki/Gameplay/Accuracy) plays with less pp gain

On October 28, 2024, more changes were deployed. The specifics of the changes made are detailed in the [corresponding news post](https://osu.ppy.sh/home/news/2024-10-28-performance-points-star-rating-updates). The main points of interest in the update were as follows:

- osu!
- Remove combo scaling
- Improve rhythm complexity
- Adjust fast flow aim
- Sliders now contribute to accuracy pp for scores using slider head accuracy
- osu!taiko
- Consider TL-tapping in the stamina component of star rating
- Adjust [Hidden](/wiki/Gameplay/Game_modifier/Hidden) and [Flashlight](/wiki/Gameplay/Game_modifier/Flashlight) bonus in the accuracy component of pp calculation
- Adjust accuracy scaling
- osu!catch
- Introduce a scaling factor to the pp loss affected by the [No Fail](/wiki/Gameplay/Game_modifier/No_Fail) mod based on the number of misses in a play
- osu!mania
- Adjust LN value scaling to address overweighted LN maps

ppv2 is currently in active service, with updates in the form of news posts published by the [Performance Points Committee](/wiki/People/Performance_Points_Committee) whenever new changes are deployed.
5 changes: 5 additions & 0 deletions wiki/Performance_points/es.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
outdated_since: 6764d34c29c0eac7037a091e314d7376d1829d9d
outdated_translation: true
---

# Puntos de rendimiento

Los **puntos de rendimiento** (o **pp** para abreviar) son una forma de clasificación que pretende ser más contextualmente relevante para la progresión de un jugador en osu!.
Expand Down
5 changes: 5 additions & 0 deletions wiki/Performance_points/fr.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
---
outdated_since: 6764d34c29c0eac7037a091e314d7376d1829d9d
outdated_translation: true
---

# Points de performance

Les **points de performance** (abrégé en **pp**) sont une mesure de classement qui vise à être plus contextuellement pertinente pour la progression d'un joueur sur osu!.
Expand Down
2 changes: 2 additions & 0 deletions wiki/Performance_points/pt-br.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
---
outdated_since: 6764d34c29c0eac7037a091e314d7376d1829d9d
outdated_translation: true
no_native_review: true
---

Expand Down
2 changes: 2 additions & 0 deletions wiki/Performance_points/ru.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
---
outdated_since: 6764d34c29c0eac7037a091e314d7376d1829d9d
outdated_translation: true
tags:
- пп
- pp
Expand Down
Loading