From 2716bd41d9f34d57733943bc7ec10f9fecd2ffbe Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Tue, 19 Jul 2022 15:33:02 +0900 Subject: [PATCH 1/3] Use more correct json casing in `APIScoresCollection` osu-web API is already returning both of these casings for backwards compatibility, but the former will be removed at some point. https://github.com/ppy/osu-web/blob/e540276721951b72bd1b6625260da5e6b33110b0/app/Http/Controllers/BeatmapsController.php#L314-L315 --- osu.Game/Online/API/Requests/Responses/APIScoresCollection.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/osu.Game/Online/API/Requests/Responses/APIScoresCollection.cs b/osu.Game/Online/API/Requests/Responses/APIScoresCollection.cs index 38c67d92f4..4ef39be5e5 100644 --- a/osu.Game/Online/API/Requests/Responses/APIScoresCollection.cs +++ b/osu.Game/Online/API/Requests/Responses/APIScoresCollection.cs @@ -13,7 +13,7 @@ namespace osu.Game.Online.API.Requests.Responses [JsonProperty(@"scores")] public List Scores; - [JsonProperty(@"userScore")] + [JsonProperty(@"user_score")] public APIScoreWithPosition UserScore; } } From 12e5bc3f3d2ea4c109f1b77edbd88b12ef15e224 Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Tue, 19 Jul 2022 17:14:57 +0900 Subject: [PATCH 2/3] Fix `BeginPlayingInternal` firing actual errors when beatmap not available online --- osu.Game/Online/Spectator/OnlineSpectatorClient.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/osu.Game/Online/Spectator/OnlineSpectatorClient.cs b/osu.Game/Online/Spectator/OnlineSpectatorClient.cs index 9bbc2a11c7..030ca724c4 100644 --- a/osu.Game/Online/Spectator/OnlineSpectatorClient.cs +++ b/osu.Game/Online/Spectator/OnlineSpectatorClient.cs @@ -66,10 +66,10 @@ namespace osu.Game.Online.Spectator await connector.Reconnect(); await BeginPlayingInternal(state); - return; } - throw; + // Exceptions can occur if, for instance, the locally played beatmap doesn't have a server-side counterpart. + // For now, let's ignore these so they don't cause unobserved exceptions to appear to the user (and sentry). } } From 09613f1af3bf92b2fb072b5b909b45b4d8f173ca Mon Sep 17 00:00:00 2001 From: Dean Herbert Date: Tue, 19 Jul 2022 17:25:52 +0900 Subject: [PATCH 3/3] Add mention of "compatibility mode" in windows version check error message --- osu.Desktop/Program.cs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/osu.Desktop/Program.cs b/osu.Desktop/Program.cs index cebbcb40b7..19cf7f5d46 100644 --- a/osu.Desktop/Program.cs +++ b/osu.Desktop/Program.cs @@ -37,9 +37,15 @@ namespace osu.Desktop // See https://www.mongodb.com/docs/realm/sdk/dotnet/#supported-platforms if (windowsVersion.Major < 6 || (windowsVersion.Major == 6 && windowsVersion.Minor <= 2)) { + // If users running in compatibility mode becomes more of a common thing, we may want to provide better guidance or even consider + // disabling it ourselves. + // We could also better detect compatibility mode if required: + // https://stackoverflow.com/questions/10744651/how-i-can-detect-if-my-application-is-running-under-compatibility-mode#comment58183249_10744730 SDL.SDL_ShowSimpleMessageBox(SDL.SDL_MessageBoxFlags.SDL_MESSAGEBOX_ERROR, "Your operating system is too old to run osu!", - "This version of osu! requires at least Windows 8.1 to run.\nPlease upgrade your operating system or consider using an older version of osu!.", IntPtr.Zero); + "This version of osu! requires at least Windows 8.1 to run.\n" + + "Please upgrade your operating system or consider using an older version of osu!.\n\n" + + "If you are running a newer version of windows, please check you don't have \"Compatibility mode\" turned on for osu!", IntPtr.Zero); return; }