1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-17 07:22:55 +08:00
Commit Graph

397 Commits

Author SHA1 Message Date
smoogipoo
213ac88a8b Fix exported scores not being compatible with osu-stable 2021-04-26 20:52:20 +09:00
smoogipoo
6560dc2d1f Fix exported replays being wrapped in zip packages 2021-04-26 20:46:44 +09:00
smoogipoo
8a6267580a Fix nullref 2021-04-22 18:44:14 +09:00
Salman Ahmed
1a715b2926 Append "classic" mod to legacy scores 2021-04-21 09:16:28 +03:00
smoogipoo
e9a114a15c Rename property back 2021-04-12 20:50:18 +09:00
smoogipoo
8413b0a5d3 Don't map api mods to DB 2021-04-12 20:49:44 +09:00
smoogipoo
625484468e Fix DB serialisation 2021-04-12 20:49:37 +09:00
smoogipoo
982d8fa8b1 Fix incorrect reference 2021-04-12 20:49:26 +09:00
smoogipoo
d2d7f77430 Fix mods not being serialised correctly in ScoreInfo 2021-04-12 20:09:01 +09:00
Dean Herbert
630faa3b56 Add TODO marking incorrect EF core data type
As mentioned in the comment, we probably don't need to be storing this
in the database in the first place (as it should be able to be
calculated from the other statistics we have available to us). Something
to consider when we refactor the database backend.
2021-03-25 17:50:21 +09:00
Bartłomiej Dach
a16c0641b2 Revert EF Core to version 2.2
This reverts commit f3faad74d5, reversing
changes made to 712e7bc7bf.

Several issues arose after migrating to 5.0, including, but possibly not
limited to, performance regressions in song select, as well as failures
when attempting to save beatmaps after metadata changes in the editor.
2021-03-21 11:05:15 +01:00
smoogipoo
917717686a Expand explanatory comment 2021-03-18 19:26:29 +09:00
smoogipoo
b68dc686ee Fix converted mania scores not accounting for GREATs 2021-03-18 19:19:53 +09:00
Roman Kapustin
0a1e325fc7 Extract requerying of navigational properties from DbContext 2021-03-14 19:34:53 +03:00
Roman Kapustin
a60ff80c04 Use expression body in ModsJson get accessor 2021-03-12 00:02:29 +03:00
Roman Kapustin
d2f943395d Hotfix importing scores from stable 2021-03-11 22:12:47 +03:00
Roman Kapustin
c6c616f244 Actualize tests 2021-03-11 21:02:40 +03:00
Dean Herbert
b1cd01ceb8 Apply ConfigureAwait changes to game side 2021-03-08 14:36:35 +09:00
Dean Herbert
03771ce8ec Allow determining a BeatmapDifficultyCache's bindable return's completion state via nullability 2021-02-25 16:19:01 +09:00
Dean Herbert
5f23bd7259 Revert most of the changes to ArchiveModeManager by using better code 2021-02-12 12:48:32 +09:00
Lucas A
51d4da565c Fix ArchiveModelManagers lookup paths. 2021-01-24 22:25:49 +01:00
Lucas A
d71ac83428 Use StableStorage in ArchiveModelManager. 2021-01-24 19:46:10 +01:00
Dean Herbert
9bb32f0914 Merge branch 'master' into move-cache-logic-to-base-impl 2020-11-06 16:56:35 +09:00
Dan Balasescu
972fc54c2d
Merge pull request #10710 from peppy/user-id-as-int
Use int instead of long for user_id fields for now
2020-11-06 14:35:14 +09:00
Dean Herbert
a2606d31c7 Move lookup/storage/compute logic to base class (and consume in ScorePerformanceCache) 2020-11-06 13:51:41 +09:00
Dean Herbert
0103b12575 Add basic base class to begin to standardise function across caching components 2020-11-06 13:26:39 +09:00
Dean Herbert
14bb079feb Rename ScorePerformanceManager to ScorePerformanceCache 2020-11-06 13:15:33 +09:00
Dean Herbert
5113d4af8f Rename BeatmapDifficultyManager to BeatmapDifficultyCache 2020-11-06 13:14:29 +09:00
Dean Herbert
1e1569eb53 Use int instead of long for user_id fields for now 2020-11-06 12:59:46 +09:00
Dean Herbert
7b320a991f Add note about missing expiration logic 2020-11-02 14:53:32 +09:00
Dean Herbert
d46f7535c9 Add xmldoc for new component 2020-11-02 14:50:44 +09:00
Lucas A
a96c067bea Remove uncessary async-await state machine level. 2020-10-27 13:45:21 +01:00
Bartłomiej Dach
ba818e3ae0
Merge branch 'master' into results-dynamic-pp-calc 2020-10-19 21:41:07 +02:00
Dean Herbert
83482ca15c Fix one more missed occurrence 2020-10-16 13:21:47 +09:00
Bartłomiej Dach
d4ba9d2682 Simplify implementation of CalculatePerformanceAsync 2020-10-12 22:10:02 +02:00
Lucas A
a0e6226b7a Rename LocalId -> LocalScoreID 2020-10-10 19:19:24 +02:00
Lucas A
de522d53ea Make CalculatePerformanceAsync() nullable. 2020-10-10 19:16:21 +02:00
Lucas A
6459ce28a3 Don't calculate performance if difficulty attributes aren't locally computable. 2020-10-09 18:32:03 +02:00
Lucas A
fa201be2ad Simplify PerformanceCacheLookup 2020-10-08 18:31:29 +02:00
Lucas A
cd15f83f85 Update ScorePerformanceCalculator code path. 2020-10-07 14:10:25 +02:00
Lucas A
7f5cf04b2b Fix merge conflicts. 2020-10-07 13:28:49 +02:00
Dean Herbert
6ac70945f2 Show bonus judgements on expanded panel 2020-10-07 16:17:28 +09:00
Dean Herbert
d6d0bd90a3 Extract tuple into class 2020-10-07 15:34:03 +09:00
Dean Herbert
50eca202f4 User IEnumerable for HandledExtensions 2020-10-02 16:17:10 +09:00
Dean Herbert
a1b8ced46d
Merge branch 'master' into fix-score-recalc 2020-10-01 17:00:20 +09:00
Lucas A
2766cf73b4 Reuse BeatmapDifficultyManager cache for beatmap difficulty attributes. 2020-09-29 18:32:02 +02:00
Lucas A
35f7de2084 Apply review suggestions. 2020-09-29 18:08:21 +02:00
smoogipoo
297168ecc4 Fix scores sometimes not being re-standardised correctly 2020-09-29 19:06:09 +09:00
smoogipoo
f439c1afbc Make osu/taiko/catch use Ok+Great 2020-09-29 17:16:55 +09:00
smoogipoo
31fae045fa Update judgement processors with new hit results 2020-09-29 16:33:38 +09:00
Lucas A
6efc4c4250 Cache performance calculations to prevent recomputations. 2020-09-28 19:04:39 +02:00
Lucas A
ddede85704 Split performance calculation to its own class. 2020-09-27 12:44:29 +02:00
smoogipoo
a07597c369 Adjust displays to use new results/orderings 2020-09-25 20:22:59 +09:00
smoogipoo
5cdc8d2e7b Add cancellation support 2020-09-09 17:37:11 +09:00
smoogipoo
37a659b2af Refactor/add xmldocs 2020-09-09 17:36:47 +09:00
smoogipoo
e271408fca Move max score calculation inside ScoreProcessor 2020-09-09 16:51:53 +09:00
smoogipoo
117c7ec6b2 Merge branch 'master' into score-recalc 2020-09-09 14:38:36 +09:00
smoogipoo
ec2674e1ea Fix nullref with null beatmap 2020-08-28 22:51:39 +09:00
smoogipoo
d7bbb362bf Separate bindables 2020-08-28 22:51:19 +09:00
smoogipoo
8ffc4309fb Fix possible NaN values 2020-08-28 22:23:44 +09:00
smoogipoo
39f8b5eb85 Use async difficulty calculation 2020-08-28 21:45:27 +09:00
smoogipoo
1e5e5cae0c Add support for standardised -> classic changes 2020-08-28 21:34:34 +09:00
smoogipoo
4d15f0fe52 Implement basic score recalculation 2020-08-28 19:16:46 +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
b361761d86 Add position display in contracted score panels 2020-07-31 22:02:25 +09:00
smoogipoo
33fdd7466c Merge branch 'master' into results-screen-statistics-overlapping-transition 2020-06-22 15:38:48 +09:00
smoogipoo
eab00ec9d9 Move hit events to the ScoreProcessor 2020-06-19 19:58:35 +09:00
smoogipoo
20db5b33ab Rework score processor to provide more generic events 2020-06-18 22:11:03 +09:00
smoogipoo
900da88498 Populate hit offsets from score processor 2020-06-15 22:44:55 +09:00
Dean Herbert
90d69c1216 Allow legacy score to be constructed even if replay file is missing 2020-06-15 20:31:47 +09:00
Dean Herbert
c490dba7b3 Fix crash on local score display 2020-06-13 18:18:46 +09:00
smoogipoo
f3b5149648 Move some suggestions to warnings, resolve issues 2020-06-03 16:48:44 +09: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
TheWildTree
59cf2037d0 Introduce SortedStatistics 2020-02-07 21:11:58 +01:00
recapitalverb
a8ce50fadd Add FormatUtils.FormatAccuracy and usages 2020-02-04 11:17:23 +07:00
recapitalverb
ddf9317bec Replace :P2 with :0.00% 2020-02-04 08:25:01 +07:00
recapitalverb
257b4052e8 Add {ScoreInfo,UserStatistics}.Accuracy 2020-02-03 22:09:07 +07: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
b1533ae2a9 Fix score serialisation failing for unknown mod properties 2019-12-19 14:58:56 +09:00
Dean Herbert
886db8eb22
Merge branch 'master' into fix-local-score-availability 2019-12-18 01:15:20 +09:00
smoogipoo
946a202ee5 Fix online replays not being available locally 2019-12-17 15:47:08 +09:00
Huo Yaoyuan
caf3f774ba CA1309: compare strings correctly. 2019-12-17 13:00:15 +08:00
Dean Herbert
ca1f3417a3
Merge pull request #7046 from smoogipoo/fix-replay-button
Fix replay download button not working
2019-12-04 23:00:40 +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
aadbbb1af3 Fix replay download button not working 2019-12-03 13:33:42 +09:00
smoogipoo
6288e6da56 Add null check 2019-11-20 13:42:54 +09:00
smoogipoo
76ed573c56 Fix crash when loading results after gameplay 2019-11-20 12:21:49 +09:00
smoogipoo
c89c092b98 Allow undeleting scores if their beatmap exists 2019-09-20 19:55:59 +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
f925e781a9 Refactor HitWindows for legibility 2019-09-06 15:24:14 +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
Dean Herbert
598b0d668b
Merge branch 'master' into import-stable-scores 2019-07-05 15:54:33 +09:00
Dean Herbert
87c8fd0035 Fix path specification not being cross-platform compliant 2019-07-05 14:15:29 +09:00
Dean Herbert
ba8df3ba92 Clean up stable lookup and mutate logic 2019-07-05 13:59:31 +09:00
iiSaLMaN
bff5ad22f4 Check if the locally available score has files 2019-07-05 05:16:40 +03:00
Dean Herbert
7575047db8
Merge branch 'master' into import-stable-scores 2019-07-04 01:00:42 +09:00
naoey
bc52f76556
Move replay button to score card 2019-06-29 10:55:30 +05:30
naoey
53d6d74537
Update to match upstream changes 2019-06-28 09:33:13 +05:30
naoey
ab0bb8b678
Implement replay downloading with ArchiveDownloadModelManager 2019-06-28 09:33:13 +05:30
HoLLy
802da225d4 Move responsibility for selecting paths to model managers 2019-06-21 17:32:47 +02:00
HoLLy
c1c19243cd Change FirstOrDefault back to First 2019-06-19 20:40:30 +02:00
HoLLy
8d62ce8967 Remove now unneeded check against file extension 2019-06-19 20:38:43 +02:00
HoLLy
15c75b4442 Add basic score import from stable 2019-06-19 18:33:51 +02:00
Arphox
07e17518e9 Fix all "Maintainability" CodeFactor issues 2019-06-11 10:28:16 +02:00
iiSaLMaN
a2b9dba92c
Remove ScoreRank.F 2019-06-08 19:35:29 +03:00
iiSaLMaN
383b937a7e
Rename F grade to D 2019-06-08 19:10:00 +03:00
Dean Herbert
24e64c1333 Add proper co-dependent beatmap/score deletion via events 2019-05-09 15:15:28 +09:00
Dan Balasescu
288b3deb94
Merge branch 'master' into fix-rank-display 2019-05-07 15:00:51 +09: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
6bdaca1e3b Fix mod equality checks not working as intended 2019-05-03 10:09:47 +09:00
Dean Herbert
30d4dd9355 Change + rank strings to be cleaner for the end-user 2019-04-21 21:38:12 +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
Dan Balasescu
fd147dae21
Merge branch 'master' into fix-disabled-set-crash 2019-03-05 17:25:13 +09:00
Dean Herbert
1871e8bb2c
Merge branch 'master' into master 2019-03-01 21:22:34 +09:00
Dean Herbert
6bccdd50ef
Merge branch 'master' into UserIDDBStore 2019-03-01 11:07:30 +09:00
Dean Herbert
d4041d5d42 Automate includes of files in ArchiveModelManager use cases 2019-03-01 10:25:21 +09:00
David Zhao
9f9b2b1902 Remove redundant setters 2019-02-28 17:13:25 +09:00
Dean Herbert
26d53d06a9 Fix remaining issues 2019-02-28 13:31:40 +09:00
Dean Herbert
c8793911a8 Enable more stringent inspectcode style inspections 2019-02-27 21:25:40 +09:00
Dean Herbert
56697339b3
Merge branch 'master' into fix-disabled-set-crash 2019-02-27 11:14:42 +09:00
smoogipoo
8a943a6e65 Fix scores being stored as ints 2019-02-26 13:10:59 +09:00
Dean Herbert
314f35b0c5 Further simplify import messaging 2019-02-25 18:42:08 +09:00
David Zhao
22a68d7bea Perform new migration 2019-02-25 15:25:22 +09:00
David Zhao
4475643726 Revert database migration 2019-02-25 14:40:44 +09:00
David Zhao
8da671fa6c Check if a user exists before creating new user 2019-02-25 13:58:19 +09:00
David Zhao
809ab86ed0 Fix user ID not being added to database
Needed for avatar retrieval
2019-02-23 17:04:02 +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
e73845172c
Merge branch 'master' into fix-replay-import-statistics 2019-01-07 13:44:01 +09:00
Dean Herbert
4a7c6fb19d Fix PP not display on profile overlay 2019-01-04 16:33:35 +09:00
Dean Herbert
aec3753863 Fix imported replays having excess statistics 2019-01-03 14:01:20 +09:00
Dean Herbert
bb502769c7 Fix enum 2018-12-26 22:42:17 +09:00
smoogipoo
3570c35d7f Make RoomScore derive ScoreInfo 2018-12-22 15:17:35 +09:00
smoogipoo
9726eea0d0 Basic score submission implementation 2018-12-14 21:09:17 +09:00
Dean Herbert
94045413ce Change statistics to be int for now 2018-12-05 19:44:01 +09:00
Dean Herbert
f9fb6dc39b Remove health from ScoreInfo 2018-12-01 00:17:05 +09:00
Dean Herbert
af3ef9a089 Fix some data types on ScoreInfo 2018-11-30 20:43:38 +09:00
Dean Herbert
2860f5a5cd Revert "Fix D rank displaying as F"
This reverts commit 17b2a4ca0d.
2018-11-30 20:03:21 +09:00
Dean Herbert
3921834cfd
Merge branch 'master' into fix-d-rank 2018-11-30 19:49:36 +09:00
Dean Herbert
b985d19078
Merge branch 'master' into local-score-saving 2018-11-30 19:48:00 +09:00
Dean Herbert
17b2a4ca0d Fix D rank displaying as F 2018-11-30 19:46:40 +09:00
smoogipoo
f80a30cba4 Fix null being serialized 2018-11-30 18:52:31 +09:00
smoogipoo
10ed09521c Add leaderboard display for local scores 2018-11-30 18:40:53 +09:00
smoogipoo
8eff49bccd Remove User from Replay 2018-11-30 18:25:14 +09:00
Dean Herbert
059e9e180b Apply review 2018-11-30 18:07:15 +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
d97a15a504 Add IMod and change ShortenedName to Acronym 2018-11-30 17:16:00 +09:00
Dean Herbert
e82ad3539b Move JsonIgnore specification to interface 2018-11-30 16:39:25 +09:00
Dean Herbert
3727955911 Refactors/renames 2018-11-30 16:35:45 +09:00
Dean Herbert
831cd3ed59 ScoreInfo scoreInfo -> ScoreInfo score 2018-11-30 15:18:52 +09:00
smoogipoo
69370c53ca Fix rank not being read 2018-11-30 14:48:25 +09:00
smoogipoo
690a1f0765 Fix score statistics not being serialised 2018-11-30 14:27:34 +09:00
smoogipoo
5530736541 Cleanup mods string 2018-11-30 14:27:34 +09:00
smoogipoo
b673eb79b1 Fix local score infos conflicting 2018-11-30 14:27:34 +09:00
smoogipoo
aa7f66b24a Fix crash when loading scores with no mods 2018-11-30 14:27:34 +09:00
smoogipoo
d2f0a921ca Fix lookups by beatmapinfo failing for imports of existing sores 2018-11-28 20:41:48 +09:00
smoogipoo
aaf3e650a5 Fix some columns 2018-11-28 20:19:35 +09:00
smoogipoo
2bb7a078c9 Don't import replays with no existing beatmap 2018-11-28 20:19:35 +09:00
smoogipoo
554c858944 Fix mods not deserializing properly 2018-11-28 20:19:35 +09:00
smoogipoo
542a75d076 Add index on online score id 2018-11-28 18:56:20 +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
41a8a12df3 Add ruleset foreign key 2018-11-28 17:26:46 +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
1717d7defb Implement importing of scores into ScoreManager 2018-11-28 17:19:58 +09:00
smoogipoo
7a82b99417 Add storage for a few more parsed fields 2018-11-28 17:02:14 +09:00
smoogipoo
4ba7690e04 Initial scoremanager/scorestore structure 2018-11-28 16:50:16 +09:00
smoogipoo
3fe4a36845 Add databased fields to Score 2018-11-28 16:39:08 +09:00
smoogipoo
09b79d736b Remove unused usings 2018-11-28 16:33:42 +09:00
smoogipoo
5fd6e6ca77 Re-namespacing 2018-11-28 16:12:57 +09:00