Commit Graph

136 Commits

Author SHA1 Message Date
Dean Herbert 27c497145f Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0 2022-12-16 18:16:26 +09:00
Bartłomiej Dach 849245b90c
Merge branch 'master' into beginplaying-score-token 2022-12-13 17:15:24 +01:00
Dan Balasescu caa0b7c290 Move score token to BeginPlaying 2022-12-12 13:59:27 +09:00
Dan Balasescu e9998f1690 Store maximum statistics to spectator state 2022-12-09 20:15:07 +09:00
Dan Balasescu 4a65f5c864 Add score token to spectator state 2022-12-09 19:09:51 +09:00
Dan Balasescu 7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
maromalo b7ef9b176d Make score type consistent 2022-11-06 19:59:27 -03:00
Dean Herbert 74db42394a Silence unobserved exceptions in `BeginPlayingInternal`
Closes #20526.
2022-10-05 14:31:13 +09:00
Salman Ahmed 6840e906e7 `watchedUsers` -> `watchedUsersRefCounts` 2022-08-25 09:50:52 +03:00
Salman Ahmed 7e5086c8d7 Fix spectator client not handling multiple watch calls properly 2022-08-24 10:02:21 +03:00
Dean Herbert fd09155990 Revert blocking call when sending spectator frames
There are a lot of these requests, and we don't really care about
waiting on them to finish sending. This may have negatively affected
send performance for users with very high latency.

Reverts part of 0533249d11.

Addresses concerns in https://github.com/ppy/osu/discussions/19429#discussioncomment-3276400.
2022-07-29 12:24:54 +09:00
Salman Ahmed e0266b0d81 Reword comment slightly 2022-07-25 04:39:14 +03:00
Salman Ahmed f5a5887669 Fix players potentially not displaying in spectator after restart 2022-07-25 04:21:53 +03:00
Dean Herbert 12e5bc3f3d Fix `BeginPlayingInternal` firing actual errors when beatmap not available online 2022-07-19 17:14:57 +09:00
Dan Balasescu c07f78409e
Merge pull request #19189 from peppy/peform-actions-after-reconnect
Fix creating multiplayer game during server migration not joining new room correctly
2022-07-19 14:46:29 +09:00
Dean Herbert 0533249d11 Update all `OnlineSpectatorCalls` to `InvokeAsync` 2022-07-18 14:34:02 +09:00
Dean Herbert da7edd5d49 Perform actions after server reconnection 2022-07-17 21:09:48 +09:00
Dean Herbert 8e7e1e6b51 Fix spectator client not correctly reconnecting after shutdown 2022-07-17 21:07:11 +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
Dean Herbert 22b254e5c5 Handle task exception outside of schedule to avoid unobserved exceptions 2022-06-28 15:09:28 +09:00
Dan Balasescu f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Dan Balasescu 5245995689 Use IsNotNull() helper 2022-06-03 19:50:21 +09:00
Dan Balasescu 4d9a77bdc0 Stop using Drawable.Clock altogether 2022-06-02 15:02:50 +09:00
Dan Balasescu 6fb1fe06a0 Remove unnecessary ApplyBeatmap call 2022-06-02 14:47:04 +09:00
Dan Balasescu 13d85b8cc7 Merge branch 'scoreprocessor-cleanup' into multiplayer-leaderboard-user-mods-2 2022-05-31 19:53:37 +09:00
Dan Balasescu 22d998dc2a Use new score processor in MultiplayerGameplayLeaderboard 2022-05-30 19:26:26 +09:00
Dan Balasescu 75b50de269 Implement score processor for spectator states 2022-05-30 19:26:26 +09:00
Dan Balasescu a052e09ac3 Send ScoreProcessor statistics in SpectatorState 2022-05-30 19:26:26 +09:00
Dean Herbert abb69a49b0 Handle server shutdown messages in room creation and spectator initialisation 2022-05-26 18:03:41 +09:00
Dean Herbert 09d560c93e Add test coverage of spectator requests 2022-04-11 19:27:14 +09:00
Dean Herbert 34457b4742 Expose mocked members as `virtual` on `Multiplayer` and `SpectatorClient` 2022-04-11 19:04:15 +09:00
Dean Herbert 67082b8c5d Remove verbose logging from `SpectatorClient` for now 2022-02-25 22:25:36 +09:00
Dan Balasescu 8eef1774d5 Use Logger.Log instead of console 2022-02-25 20:18:22 +09:00
Dean Herbert 3f2ef030e4 Group `SpectatorClient` private fields together 2022-02-24 02:31:55 +09:00
Dean Herbert 5ffdd57895 Rename weirdly named parameter 2022-02-24 02:28:13 +09:00
Dean Herbert 694c6ad872 Fix frames potentially getting lost due to non-matching `Schedule` usage 2022-02-24 02:28:13 +09:00
Dean Herbert 47b84295a6 Fix bundle send logic not correctly waiting for task completion (due to nested schedule) 2022-02-24 02:23:48 +09:00
Dean Herbert cff6f85472 Add note about reconnection being insufficient currently 2022-02-24 02:23:48 +09:00
Dean Herbert 5ff4d3f8e5 Add support to `SpectatorClient` to resend failed frame bundles 2022-02-24 02:21:29 +09:00
Dean Herbert 28b45fa899 Add assertions against null reference for connection usages 2022-02-15 15:19:50 +09:00
Dan Balasescu ffc4c64f7e Unify namings across the board 2022-02-09 12:10:07 +09:00
Dan Balasescu 886d1d2df6 Refactorings 2022-02-08 21:29:43 +09:00
Dan Balasescu c1766d8a41 Add paused state 2022-02-08 20:29:53 +09:00
Dan Balasescu 4c76027178 Rename completed state to passed 2022-02-08 20:29:49 +09:00
Dan Balasescu 81a22dbd29 Add back playing users list 2022-02-02 23:19:43 +09:00
Dan Balasescu fcbba3d948 Rename PlayingUserStates -> WatchingUserStates 2022-02-02 23:11:29 +09:00
Dan Balasescu 6d3bc005ea Merge branch 'master' into spectator-state-rework 2022-02-02 18:57:04 +09:00
Dan Balasescu f4210f7a30 Rework spectator components to use new user state 2022-02-01 21:53:25 +09:00