Project Heartbeat

Project Heartbeat

评价数不足
How the Scoring System Works in Project Heartbeat
由 Steven 制作
A complete explanation of every basic and obscure scoring mechanic. Master them all and climb to the top of song leaderboards.
   
奖励
收藏
已收藏
取消收藏
Scoring Basics
This section contains the basics that must be understood to see why the advanced techniques presented in the next section work. If you're an experienced player, you should already know almost everything here. Sections you may want to read regardless are the closing passage in the Judgements section and the entire Hold Notes section.
Scoring Basics: Judgements
Judgements is the term for the different ratings and points assigned to a button press. The closer your input was to being perfectly timed, the better the judgement you receive. Hitting a wrong button will prevent you from gaining points, but the game will still show you the judgement you would have received. In every chart, the reward for your timing and accuracy makes up a majority of score. Additionally, hitting all Cools corresponds to a total percent of 100%.

Standard Judgements
Judgement
Points
Window
Cool
1000
0-32ms
Fine
800
33-64ms
Safe
500
65-96ms
Sad
100
97-128ms
Worst
0
>128ms

Slider and Heart Judgements
Judgement
Points
Window
Cool
1000
0-32ms
Fine
800
33-128ms
Worst
0
>128ms

Slide Chain Judgements
Judgement
Points
Window
Cool
1000
0-128ms
Worst
0
>128ms

As an additional note, each button of a multi note is judged separately. If all judgements are Fine or better, then the judgement awarded is the average of the button judgements. For example, a triple multi where two buttons were pressed in the Cool window and one button was pressed in the Fine window would award a Cool. In a situation where the average is evenly split, it is rounded down to a Fine. So, a double multi where one is a Cool and one is a Fine would award a Fine. If one of the judgements is worse than a Fine, instead of averaging judgements, it will award the worst judgement obtained.
Scoring Basics: Sustains
Sustains are notes that require the button to be held down and released with specific timing. The start of the sustain behaves like a normal note. If hit with a Cool or Fine, the input can be held until the sustain ends, where a second note can be hit by releasing the input on time. Hitting with a Safe or worse immediately breaks the sustain and awards zero points for the sustain end. Sustains always use the same timing windows and score as the standard judgements for both starts and ends, meaning Safes and Sads can be hit on heart sustains. Hitting sustain ends with all Cools is required to achieve 100% on charts that contain them. For multi-sustains, the starts behave like a typical multi note, but each end is handled independently, allowing the charter to set different release times and giving 1000 points per button, regardless if they require release at the same time.
Scoring Basics: Rush Notes
Rush notes award bonus score based on the number of hits performed after the initial hit. Unlike slide chains and hold notes, the bonus score does not contribute to percentage. The first hit to activate a rush behaves like a normal note, awarding the standard judgement score and percent. If hit with a Cool or Fine, additional hits can be performed to receive an extra 30 points per hit. Additional hits do not have to be timed to the beat and wrong notes do not break the chain, allowing macro binds to be used to mash faster. Rushes have a maximum number of hits and a duration in which to achieve them. Reaching the cap on additional hits will display a special particle effect and will hide the rush from the screen. Both duration and maximum additional hits are customizable by the charter. If left unchanged, the cap of additional hits is based on the duration of the rush and equal to the following:
additional hits = floor( rush duration / 64 ms )
Because the duration is floored (rounded down) after division, the default values create a variable mash speed requirement, with 15.625 hits per second being the highest possible default value, occurring when rush duration is a multiple of 64, and all others being slower. The lowest required speed of 7.874 hits per second is achieved with a duration of 127ms. Longer durations tend to be closer to the maximum value. This cap only applies to the default configuration for rushes; charters can make rushes with arbitrarily fast or slow mashing requirements.

Multi-rushes behave similar to multi-sustains, where the initial hit is judged together, but each rush note is handled independently afterwards. This means multi-rushes do not require both buttons to be pressed simultaneously for the bonus hits and each rush has an independent hit cap and duration.
Scoring Basics: Slide Bonuses
Slide chains give an extra 10 points per piece of the chain that has been hit. Slide bonuses give extra percent past the total percent of 100% for hitting all Cools. This extra percentage is equal to:
min ( slide bonus / (1000 * total notes) * 100% , 7.5% )
Slide bonuses typically correspond to less than 1% of both a chart's score and percentage.
Scoring Basics: Hold Notes
At the most basic level, hold notes give 1 bonus point per note held per millisecond. Missing a note, letting go of the button corresponding to the hold note, or hitting a note of the same type as an already held note will drop all held notes and give the score accumulated up to that point. Holding a note will start a timer. After 3300ms, all held notes will be dropped and a max hold bonus will be awarded. When a new hold note appears and is held in additional to the old, it is called chaining holds. When holds are chained, the timer will be reset, allowing the previous holds to be held longer than 3300ms.

Hold Bonuses
At a minimum, the hold bonus is a flat 3300 extra points, regardless of the quantity of notes held. However, when holds are chained together, the hold bonus adds even more points. This extra bonus is equal to the amount of accumulated hold points before the last hold note in the chain was held.

Hold Anchoring
While you would expect hold notes to start accumulating points from the time you begin holding them, they actually start accumulating score from the beginning of the early Fine window. Therefore, hitting a hold note at a 0ms Cool will start the counter at 64 points (per hold).

Hold Percentage
Hold score counts towards percent in a similar way to slide bonuses:
min ( hold score / (1000 * total notes) * 100% , 7.5% )
Charts containing hold notes will often reach the 7.5% bonus percent cap.
Advanced Techniques
In order to min-max your score to reach the tops of the leaderboards and stay there, there are a few advanced techniques you can make use of on charts that contain hold notes. Though you do not need to read the sections on the basic scoring mechanics to make use of these techniques, it is advised to read it so you have an understanding of why these techniques work.
Advanced Techniques: Overholding
Overholding is the most intuitive and basic in the suite of advanced techniques. When you are forced to drop a hold note, you want avoid dropping the hold for as long as possible so you can continue gaining hold points. Thus, at it's most basic level, overholding is attempting to hold the note as close to the upper bound of the Cool window as possible (+32ms), netting a bonus 32 points (per hold) over a perfectly timed 0ms Cool hit. In addition to when holds are dropped, whenever holds are chained, you can overhold to gain bonus points due to its interaction with hold anchoring.

Multi-Overholding
Using the special way multi-notes are judged, it is possible to overhold even longer than the Cool window to gain a benefit. For multis with three or more notes, by hitting over half of them with a Cool and the remainder with a Fine, you can retain the Cool judgement, but the hold timer will end in the Fine window, netting up to 64 bonus points (per hold) over a 0ms Cool hit by hitting at the end of the Fine window (+64ms).

If you would like more explanation, I created a video explaining Multi-Overholding when it was first discovered: https://www.youtube.com/watch?v=eseUzW0lF7I

Miscellaneous Notes on Overholding
  • If the hold would drop on a Heart, holding until the end of the Fine window (+128ms) gives more points when more than two hold notes are being held.
  • Similarly, if a Heart hold is being chained to two or more held notes, hitting it as close to the end of the Fine window is optimal.
  • If you're holding all 7 note types and encounter a note that will break your chain, it is optimal to hold until the end of the Fine window as the points gained from holding into the strictest Fine window (7 holds * 32 ms = 224 points) is greater than the difference in judgement score between a Fine and a Cool (200 points).
Advanced Techniques: Score Attacks
Score Attacks are methods in which you play suboptimally in order to get a bigger net payoff of points later in the chart. Score Attacks are not so much a technique as a strategy. Instead of being something which you can be generally skillful at, most of the bonus points come from routing that must be calculated before playing the chart. There are three types of score attack: hold switches, hold extends, and hold chains.

Finding Score Attack Routes
Score Attack routes are often tedious and computationally expensive to find, as you must individually check each hold note and sometimes combinations of hold notes in order to find the routing. For this reason, I created a program that calculates routes for charts and publishes them to a website: https://projectheartattack.com

Any chart published to the workshop will be automatically routed and indexed (typically within a minute of the publish time). Updates to charts will also be recalculated, though updates may take up to an hour before changes are shown.
Score Attacks: Hold Switches
Hold Switches are a scenario where you willingly let go of certain hold notes in order to achieve a higher overall hold score. While it sounds unintuitive, consider this scenario:
If you hit and hold these notes in order, you will be holding X → XA → X, and receive 6600 points when the final hold times out. Instead, if you let go of the first X before hitting the A, your holds will look like this: X → A → AX, and 9900 points will be gained when the final hold times out. If the 3300 more points is greater than the lost points for dropping the X before the A, then it is optimal to perform this hold switch.

As an additional note, I implore you to use the term Hold Switch to exclusively refer to the score attack and to avoid using it to refer the action of juggling holds between buttons. This is to prevent confusion when discussing charts with others. Instead use terms such as hold swapping, hold juggling, or transferring holds.

According to statistics pulled from Project HeartAttack, roughly 40% of charts that contain hold notes have hold switches. Here is an example of a chart with hold switches: https://projectheartattack.com/song/2642583938
Score Attacks: Hold Extends
When your held notes time out inside of the judgement window of a note that would force you to drop the hold, you can extend the hold to completion by receiving a worse judgement on the note that would force you to drop it. Because combo does not reward extra points, the maximum loss for extending a hold is 1000 points (unless it's a hold note), while the minimum gain for letting the note time out is 3300 points. This means that you come out 2300 points ahead for performing it. Note that missing a note forces you to drop all holds, so this can only be performed in scenarios where the note is still possible to hit (which technically means the maximum loss with perfect play is 900 points).

According to statistics pulled from Project HeartAttack, roughly 20% of charts that contain hold notes have hold extending. Here is an example of a chart with Hold Extends: https://projectheartattack.com/song/2517845966
Score Attacks: Hold Chains
It should be easy to infer if you've read the rest of the guide, but Hold Chains are when you must hit a note early to prevent your current hold notes from timing out and rewarding a hold bonus. Because chained holds give extra points when receiving a hold bonus, it is better to forgo the hold bonus early and chain them to get a multitude more points when the extra holds also reach the hold bonus.

This form of score attack is the rarest, only 1% of charts containing hold notes have this type of score attack. While I would like to include an example that has only hold chains like I've done for switches and extends, there are no indexed charts that contain only hold chains. Instead, here's a chart that contains all three types of score attacks: https://projectheartattack.com/song/2794336296
Known Scoring Bugs
This section highlights bugs and unknown mechanics in the scoring system. There used to be more, which warranted them having their own section, but most have been fixed as of 0.19.

Undefined End Time Exploit
Charters can specify an end time for their charts or have the chart end when the source audio file ends. When left to end when the source audio ends, swapping out or modifying the source audio will change when the chart ends. In the very specific scenario where a chart has a variable end time and your held notes do not time out before the normal source audio file ends, the source audio can be swapped out for a longer version that will extend the time you can hold the note.
Closing Statement
If you enjoyed this guide, please check out https://projectheartattack.com. I spent a lot of time working on it to make sure it's as accurate and useful as possible, even for things other than score attacks, like advanced searching for charts, calculating stats, aggregating leaderboard and download links, and even better embeds when sharing them on Discord or social media.