Dean Herbert
541cd972e1
Rename ArchiveReader
implementations to read better
2023-09-14 13:36:07 +09:00
Dean Herbert
0657b55196
Avoid MemoryStream.ToArray
overhead in LegacyByteArrayReader
2023-09-14 13:33:25 +09:00
Dean Herbert
b5902a8736
Avoid MemoryStream
overhead for incoming non-MemoryStream
in ImportTask
2023-09-14 13:29:29 +09:00
Dan Balasescu
753c1c877c
Revert masking SSBO changes
2023-09-13 23:10:13 +09:00
sw1tchbl4d3
8f9cde01aa
Add test
2023-09-13 13:38:13 +02:00
Dean Herbert
32946413de
Change display text from "difficulty" to "score" multiplier
2023-09-13 20:01:19 +09:00
Dean Herbert
3e1388c73f
Add vertical animation when difficulty multiplier is changed
2023-09-13 19:57:48 +09:00
Dean Herbert
824a3e4adc
Update DifficultyMultiplierDisplay
to use new shared design
2023-09-13 19:56:31 +09:00
sw1tchbl4d3
5b2af7f264
Default to none bank if invalid samplebank is specified
2023-09-13 12:44:00 +02:00
Dean Herbert
46d5aa59bf
Split base design out of BeatmapAttributesDisplay
2023-09-13 19:33:30 +09:00
Dean Herbert
9a7d1ed98b
Tidy up DifficultyMultiplierDisplay
2023-09-13 18:55:17 +09:00
Dean Herbert
35840bf671
Combine ModCounterDisplay
and DifficultyMultiplierDisplay
into one class
2023-09-13 18:51:56 +09:00
Dean Herbert
491d94c5ac
Use local shear definition
2023-09-13 18:51:50 +09:00
Dean Herbert
41b0619533
Fix shear being included on wrong side of ModCounterDisplay
2023-09-13 18:19:42 +09:00
Dean Herbert
923c2a16ed
Fix weird centering of multiplier "x"
2023-09-13 18:11:16 +09:00
Dean Herbert
21252c1c23
Fix animations
2023-09-13 18:06:50 +09:00
Dean Herbert
e241e41f2a
Fix layout decision to account for new multiplier addition
2023-09-13 17:55:21 +09:00
Dean Herbert
49114430ed
Move multiplier display to bottom of sceen to make visible while customising
2023-09-13 17:43:55 +09:00
Dean Herbert
be373391f8
Simplify multiplier display implementation
2023-09-13 17:43:41 +09:00
Dean Herbert
f5cee22db7
Collapse mod presets column slightly when not in use
2023-09-13 17:05:42 +09:00
Dean Herbert
d146da9546
Fix rate adjust mods not showing "x" prefix on customisation slider's tooltip
2023-09-13 16:43:48 +09:00
Dean Herbert
f90f2491c3
Merge pull request #24792 from bdach/fix-score-v1-multiplier-handling
...
Fix Score V1 simulation in scoring test scene incorrectly applying multiplier
2023-09-13 13:30:11 +09:00
Bartłomiej Dach
7c65a9de75
Fix Score V1 simulation in scoring test scene incorrectly applying multiplier
...
`TestSceneScoring` included a local simulation of stable's Score V1
algorithm. One of the parts of said algorithm is a mysterious
"score multiplier", influenced by - among others - the beatmap's drain
rate, overall difficulty, circle size, object count, drain length,
and active mods. (An implementation of this already exists in lazer
source, in `OsuLegacyScoreSimulator`, but more on this later.)
However, `TestSceneScoring` had this multiplier in _two_ places, with
_two_ distinct values, one of which being 1 (i.e. basically off).
Unfortunately, the place that had 1 as the multiplier was the wrong one.
Stable calculates the score increase for every hit in two stages;
first, it takes the raw numerical value of the judgement, but then
applies a combo-based bonus on top of it:
scoreIncrease += (int)(Math.Max(0, ComboCounter.HitCombo - 1) * (scoreIncrease / 25 * ScoreMultiplier));
On the face of it, it may appear that the `ScoreMultiplier` factor
can be factored out and applied at the end only when returning total
score. However, once the above formula is rewritten as:
scoreIncrease = scoreIncrease + (int)(Math.Max(0, ComboCounter.HitCombo - 1) * (scoreIncrease / 25 * ScoreMultiplier));
= scoreIncrease * (1 + (Math.Max(0, ComboCounter.HitCombo - 1) / 25 * ScoreMultiplier))
it becomes clear that that assumption is actually _incorrect_,
and the `ScoreMultiplier` _must_ be applied to every score increase
individually.
The above was cross-checked experimentally against stable source
on an example test map with 100 objects, and a replay hitting them
perfectly.
2023-09-12 21:33:26 +02:00
Dean Herbert
2bc6759704
Merge pull request #24662 from frenzibyte/stable-spinner-ticks-2
...
Add two spins gap before awarding bonus score on osu! spinners
2023-09-12 21:39:37 +09:00
Dean Herbert
3aca295aa5
Merge pull request #24790 from bdach/scoring-test-scene-improvements
...
Improve scoring test scene usability
2023-09-12 21:06:06 +09:00
Dean Herbert
e810abf1e6
Rename variable
2023-09-12 20:51:22 +09:00
Dean Herbert
39d69903ab
Merge branch 'master' into stable-spinner-ticks-2
2023-09-12 20:41:43 +09:00
Dean Herbert
7db4b3e83c
Merge pull request #24661 from frenzibyte/stable-spinner-ticks-1
...
Update osu! spinner ticks calculation method to better match with osu!(stable)
2023-09-12 20:41:28 +09:00
Bartłomiej Dach
3981e2e957
Only show visible graph values in tooltip
2023-09-12 13:29:02 +02:00
Bartłomiej Dach
15708ee465
Add toggle for showing relative/absolute score values
2023-09-12 13:27:40 +02:00
Bartłomiej Dach
607ceeccb9
Persist visibility state of graphs
2023-09-12 12:19:50 +02:00
Bartłomiej Dach
3cf8082aa7
Add capability to toggle visibility of graph
2023-09-12 12:07:12 +02:00
Dean Herbert
4ecc4632aa
Make rounding error even less precise
...
Basically matching the old code more closely to avoid too much precision
from doing math in a slightly different way.
2023-09-12 18:41:09 +09:00
Bartłomiej Dach
95d15a703e
Improve legibility of scoring test scene
...
- Add black background to avoid clashes with background images.
- Use sorta-tetradic colours for the four plots.
2023-09-12 11:36:41 +02:00
Dean Herbert
b1f48ce1a2
Merge pull request #24705 from Givikap120/map_info_on_mod_settings
...
Add star rating / BPM / difficulty display while mod select is open
2023-09-12 17:51:29 +09:00
Dean Herbert
0d7157f727
Merge branch 'master' into map_info_on_mod_settings
2023-09-12 17:16:47 +09:00
Dean Herbert
e35325c445
Merge pull request #24782 from ItsShamed/overlays/profile/previous-usernames
...
Integrate past usernames tooltip to user profile overlay
2023-09-12 17:16:36 +09:00
Dean Herbert
7e3652284d
Adjust various class naming and add some xmldoc
2023-09-12 17:15:16 +09:00
Dean Herbert
3da30485b2
Move shear spec to correct location
2023-09-12 17:06:45 +09:00
Dean Herbert
e40eaa7377
Improve collapse/expand animations
...
Especially when on a screen resolution where it would start collapsed.
2023-09-12 17:06:45 +09:00
Dean Herbert
7aaf88ae84
Merge branch 'master' into overlays/profile/previous-usernames
2023-09-12 15:54:41 +09:00
Dean Herbert
23521ad394
Simplify container structure and mention why a zero-size container is being used
2023-09-12 15:53:27 +09:00
Dean Herbert
a6acd00908
Reword inline comment
2023-09-12 15:46:05 +09:00
Dean Herbert
b4bedee49e
Adjust naming of component to give more context
2023-09-12 15:43:59 +09:00
Dean Herbert
04ab44bb7a
Reword xmldoc to read better
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2023-09-12 15:28:55 +09:00
tsrk.
dbc07bc6dc
fix: provide OverlayColourProvider
as a dep in tests
2023-09-12 01:34:17 +02:00
Bartłomiej Dach
824416067e
Fix test failure
2023-09-11 20:53:17 +02:00
tsrk.
f331f92151
chore: explain f6031bc1
2023-09-11 16:06:06 +02:00
tsrk.
8c989d77bd
revert: use OverlayColourProvider
for B6
...
Refs: 293b81106261b1a3aad47d9461a8ba7f550c8b6
2023-09-11 16:03:15 +02:00
tsrk.
c6e8a77f08
refactor: slightly offset to make it look good
2023-09-11 15:22:23 +02:00