1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 02:11:05 +08:00
Commit Graph

146 Commits

Author SHA1 Message Date
PC
7e127dafe2 Update reference 2023-02-07 11:52:47 +03:00
Cootz
b00848e742 Fix realm error. Apply OriginalBeatmapHash on import 2023-02-06 13:58:41 +03:00
Salman Ahmed
e6479b73de Remove one more unused using directive 2023-01-09 23:43:35 +03:00
Salman Ahmed
f216d7264b Improve missing beatmap failure logging on score import 2023-01-09 23:06:59 +03:00
Dan Balasescu
fb85eaee95 Add description for lazer score version 30000001 2022-12-14 18:30:33 +09:00
Dan Balasescu
ad7554cc7d Allow keeping stream open after encoding scores 2022-12-13 16:15:14 +09:00
Dean Herbert
0372e38f57 Add nullability assertion to appease CI 2022-12-11 13:00:12 +09:00
Dan Balasescu
e00c075482 Fix incorrectly modified first lazer version 2022-12-08 11:30:18 +09:00
Dan Balasescu
df181acffe Append lazer score data to .osr files 2022-12-07 12:12:32 +09:00
Dan Balasescu
7c0e99c5a8 Decode Geki/Katu from legacy taiko scores into LargeBonus 2022-09-07 00:12:34 +09:00
andy840119
8c2f4b48fc Use debug.assert for better readable. 2022-07-03 19:27:56 +08:00
andy840119
0a1543c6e8 Use AsNonNull() instead. 2022-07-02 19:48:32 +08:00
andy840119
c6d0f0f81b pretend that the beatmap property will not be null.
Not really throw exception will be the better way?
2022-07-02 13:20:46 +08:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dean Herbert
a7554dcdf7 Use a constant for the early version timing offset 2022-03-24 16:43:41 +09:00
Dean Herbert
a7d5f2281c Apply beatmap offsets to legacy replay frame handling 2022-03-24 16:16:40 +09:00
Bartłomiej Dach
36263b4dbf
Replace remaining manual online ID check with extension method 2022-03-03 23:09:56 +01:00
Dean Herbert
eb75a29b20 Use constant for maximum legacy ruleset id 2022-03-01 12:07:03 +09:00
Dean Herbert
52e50db6b9 Enable nullable for LegacyScoreEncoder 2022-02-28 18:42:23 +09:00
Dean Herbert
723e96309a Only convert non-legacy frames (and throw on conversion failure) 2022-02-28 18:42:23 +09:00
Dean Herbert
2e96f74c94 Allow LegacyScoreEncoder to be used without a beatmap if frames are already legacy frames 2022-02-28 18:42:23 +09:00
Dean Herbert
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
Dean Herbert
2b8706b6ce Detach and reattach scores to make work 2022-01-12 17:00:16 +09:00
Dean Herbert
53792811b2 more fixes (almost compiles, except ruleset and manager) 2022-01-12 16:57:27 +09:00
Dean Herbert
aac2aa341c Update some more incorrect types for primary key access/set 2022-01-12 16:57:27 +09:00
Dean Herbert
c5e401d678 Update usages to consume IRulesetStore 2022-01-12 16:57:27 +09:00
Dean Herbert
dbb08f7d46 Use OnlineID for set operations 2021-12-10 16:11:48 +09:00
Dean Herbert
bf1418bafc Use OnlineID instead of legacy IDs for equality and lookups 2021-12-10 16:11:48 +09:00
Bartłomiej Dach
f051720fa1
Fix score encoder being dependent on current culture
As it turns out, on some cultures, the "negative integer" sign is not
encoded using the U+002D HYPHEN-MINUS codepoint. For instance, Swedish
uses U+2212 MINUS SIGN instead. This was confusing the legacy decoder,
since it is correctly depending on the serialisation being
culture-independent.

To fix, ensure that the special "end replay" frame, as well as the
replay MD5 hash, are generated in a culture-invariant manner.

Thankfully the replay MD5 hash is currently being discarded in
`LegacyScoreDecoder`, so it changing in future scores should not have
any negative effect on lazer operation.
2021-12-04 17:13:43 +01:00
Dean Herbert
bbd3ea5b77 Update all actual usages of RulesetInfo.ID to use OnlineID instead 2021-11-24 15:50:26 +09:00
Dan Balasescu
9182eab486 Rename method + xmldoc 2021-11-17 20:45:48 +09:00
Dan Balasescu
08f129b4c8 Expose LegacyScoreDecoder.CalculateAccuracy() 2021-11-17 20:09:30 +09:00
Dean Herbert
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dean Herbert
853cf6feaa Rename last remaining BeatmapInfo Beatmap usage 2021-10-04 17:35:53 +09:00
Dean Herbert
cf633973a9 Refactor exposed mod retrieval methods for better safety 2021-09-10 11:09:13 +09:00
Dean Herbert
2edb851008 Add ability to lookup mod from a type specification 2021-09-09 16:50:59 +09:00
Dean Herbert
4ee7721c51 Extract first version out to constant 2021-06-08 18:38:47 +09:00
Dean Herbert
061e3d7f26 Move legacy ScoreInfo to be completely based on presence of classic mod 2021-06-08 18:00:09 +09:00
Dean Herbert
4d9fffc01b Update score encoder version to be higher than any existing stable version 2021-06-08 17:59:43 +09:00
PercyDan54
e716162ac2
Fix formatting 2021-04-29 17:19:25 +08:00
PercyDan54
4fe1497f63
Add comment & remove lastF 2021-04-28 20:39:06 +08:00
PercyDan54
126056c436
Fix precision loss on exporting legacy replays 2021-04-28 19:27:18 +08:00
smoogipoo
213ac88a8b Fix exported scores not being compatible with osu-stable 2021-04-26 20:52:20 +09:00
smoogipoo
f439c1afbc Make osu/taiko/catch use Ok+Great 2020-09-29 17:16:55 +09:00
Bartłomiej Dach
af59e2c179 Use extension methods instead of reading directly 2020-08-27 18:18:32 +02:00
Bartłomiej Dach
fc51e9d81a Fix some legacy mania replays crashing on import 2020-08-27 18:16:20 +02:00
smoogipoo
e91e4a73af Fix catch crashing when finishing maps 2020-05-07 12:22:07 +09:00
smoogipoo
ae210d567d Add temporary solution for tick hit/miss count 2020-04-16 18:16:08 +09:00
Dean Herbert
9602ab17b0 Fix replay imports failing for certain mod combinations 2020-03-31 17:13:42 +09:00
Dean Herbert
f75c082601 Fix osu!mania replays recording incorrectly when key mod applied 2020-03-27 15:50:11 +09:00
Dean Herbert
8a2aac5f83 Rename conversion methods for clarity 2020-03-25 20:21:34 +09:00
Dean Herbert
2feb66d423 Correctly handle missing positional data 2020-03-24 15:43:34 +09:00
Dean Herbert
02a3c7c025 Fix incorrect ruleset being recorded to file 2020-03-24 15:43:22 +09:00
Dean Herbert
022465f546 Add encoding and import support 2020-03-24 14:51:52 +09:00
Dean Herbert
546772192c Add helper method to convert to legacy mods enums 2020-03-24 13:07:51 +09:00
Dean Herbert
e5f4d8686e Rename decoder 2020-03-24 13:07:50 +09:00
Dean Herbert
d03723303d
Fix typo in comment 2020-01-30 16:29:15 +09:00
Dean Herbert
7b4a658264 Fix negative replay frames being played back incorrectly 2020-01-30 14:54:57 +09:00
Dean Herbert
1ce6a5ceb3 Rename class 2019-12-03 15:38:57 +09:00
Dean Herbert
f0d49d0cdf Decouple APILegacyScoreInfo from ScoreInfo 2019-12-03 15:31:11 +09:00
smoogipoo
dfc0928ebe Fix scores importing with deleted beatmap sets 2019-09-20 19:39:21 +09:00
Dean Herbert
624e5644a4 Change osu!catch key trigger to occur on frame before positional change 2019-09-13 23:06:35 +09:00
Dean Herbert
acdfeef1dc Improve how osu!catch stores and replays key actions 2019-09-12 18:33:46 +09:00
Dean Herbert
ac01e9fbeb Fix legacy scores with no online ID being imported with a non-null ID 2019-07-29 18:36:07 +09:00
Arphox
07e17518e9 Fix all "Maintainability" CodeFactor issues 2019-06-11 10:28:16 +02:00
smoogipoo
d7c09e7dbd Merge remote-tracking branch 'origin/master' into fix-new-inspections
# Conflicts:
#	osu.Game.Rulesets.Catch/Judgements/CatchDropletJudgement.cs
#	osu.Game.Rulesets.Catch/Judgements/CatchJudgement.cs
#	osu.Game.Rulesets.Mania/Scoring/ManiaScoreProcessor.cs
#	osu.Game.Rulesets.Osu/Replays/OsuAutoGenerator.cs
#	osu.Game.Rulesets.Osu/UI/Cursor/CursorTrail.cs
#	osu.Game.Tests/Visual/SongSelect/TestCaseBeatmapScoresContainer.cs
#	osu.Game/Graphics/OsuFont.cs
#	osu.Game/Online/API/Requests/Responses/APILegacyScoreInfo.cs
#	osu.Game/Overlays/Profile/Header/BadgeContainer.cs
#	osu.Game/Overlays/Profile/ProfileHeader.cs
#	osu.Game/Screens/Select/PlaySongSelect.cs
#	osu.Game/Skinning/LegacySkinDecoder.cs
2019-05-07 13:20:17 +09:00
Dean Herbert
2060bad3bc Try applying minimal inspection fixes for latest Rider EAP 2019-04-01 13:28:14 +09:00
Dean Herbert
c39c37a18d Apply more missed cases 2019-04-01 12:44:46 +09:00
Dean Herbert
7d6a08d6da Fix a few new inspections in latest Rider EAP 2019-04-01 11:39:02 +09:00
smoogipoo
fb0bba9b37 Use Parsing helpers 2019-04-01 11:23:07 +09:00
smoogipoo
f453675838 Fix replays being parsed with incorrect cultures 2019-04-01 10:31:20 +09:00
smoogipoo
0066459968 Don't convert 100s/50s for catch 2019-03-28 12:55:56 +09:00
smoogipoo
977122d05f Fix ScoreInfo not getting set 2019-03-27 16:59:29 +09:00
smoogipoo
8fcb75809d Add LegacyScoreInfo for statistics preservation/conversion 2019-03-27 16:55:46 +09:00
smoogipoo
a5d5f469eb Populate more hit results for catch 2019-03-27 14:52:56 +09:00
Dean Herbert
26d53d06a9 Fix remaining issues 2019-02-28 13:31:40 +09:00
Dean Herbert
91d875db0d Remove unused local 2019-02-04 12:56:55 +09:00
Dean Herbert
cd92dddd46 Add per-ruleset mappings 2019-02-04 12:31:05 +09:00
Dean Herbert
2d7c23dd9f Merge remote-tracking branch 'upstream/master' into fix-replay-import-statistics 2019-02-04 12:15:53 +09:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Dean Herbert
484268f1f2 Expose CalculateAccuracy for performance tools 2019-01-23 20:30:32 +09:00
Dean Herbert
aec3753863 Fix imported replays having excess statistics 2019-01-03 14:01:20 +09:00
Dean Herbert
94045413ce Change statistics to be int for now 2018-12-05 19:44:01 +09:00
smoogipoo
8eff49bccd Remove User from Replay 2018-11-30 18:25:14 +09:00
Dean Herbert
2dd5dad7c5 Remove empty lines 2018-11-30 18:07:15 +09:00
Dean Herbert
66e43e6ed9 Update hashing method in line with master 2018-11-30 17:36:06 +09:00
Dean Herbert
3727955911 Refactors/renames 2018-11-30 16:35:45 +09:00
smoogipoo
69370c53ca Fix rank not being read 2018-11-30 14:48:25 +09:00
smoogipoo
2bb7a078c9 Don't import replays with no existing beatmap 2018-11-28 20:19:35 +09:00
smoogipoo
b8e60afa69 Move replays to an wrapping Score class 2018-11-28 18:45:17 +09:00
smoogipoo
219929eb47 Score -> ScoreInfo 2018-11-28 18:33:01 +09:00
smoogipoo
ed02847752 Beatmap -> BeatmapInfo + add foreign key 2018-11-28 17:26:39 +09:00
smoogipoo
2ee181daf7 Re-namespace replay-related classes 2018-11-28 17:20:37 +09:00
smoogipoo
7a82b99417 Add storage for a few more parsed fields 2018-11-28 17:02:14 +09:00
smoogipoo
5fd6e6ca77 Re-namespacing 2018-11-28 16:12:57 +09:00