mirror of
https://github.com/ppy/osu.git
synced 2024-12-05 09:42:54 +08:00
Remove total score algorithm
parent
4fb671795c
commit
a57e2eb393
21
Scoring.md
21
Scoring.md
@ -1,25 +1,6 @@
|
||||
# Total score
|
||||
|
||||
Score is divided into three portions: accuracy, combo, and bonus. The accuracy and combo portions together comprise the base 1000000 score, and then the bonus is added on top to determine the total score.
|
||||
|
||||
```
|
||||
accuracy_portion = 0.3
|
||||
combo_portion = 0.7
|
||||
total_score = 1000000 * ((accuracy * accuracy_portion) + (combo / max_achievable_combo * combo_portion)) + bonus_portion
|
||||
```
|
||||
|
||||
These portions can be adjusted by deriving `ScoreProcessor`:
|
||||
|
||||
```csharp
|
||||
public class MyScoreProcessor : ScoreProcessor
|
||||
{
|
||||
// Accuracy accounts for up to 950000 of the base score.
|
||||
protected override double DefaultAccuracyPortion => 0.95;
|
||||
|
||||
// Combo accounts for up to 50000 of the base score.
|
||||
protected override double DefaultComboPortion => 0.05;
|
||||
}
|
||||
```
|
||||
Score is divided into three portions: accuracy, combo, and bonus. The calculation follows a similar algorithm to Score V2 (from stable). Please check the [ScoreProcessor implementation](https://github.com/ppy/osu/blob/master/osu.Game/Rulesets/Scoring/ScoreProcessor.cs) for specifics (`ApplyResultInternal` should be a good place to start).
|
||||
|
||||
# Hit results
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user