Bartłomiej Dach
76a7aabfe8
Always create realtime-specific player elements regardless of token
2020-12-24 14:32:30 +01:00
Dean Herbert
21a4e6a3f9
Merge pull request #11282 from peppy/disallow-skipping
...
Disallow skipping in multiplayer
2020-12-24 21:31:02 +09:00
Dean Herbert
647cb8310a
Merge pull request #11281 from peppy/fix-ruleset-pollution
...
Schedule UpdateFilter calls to avoid operations occuring while at a sub screen
2020-12-24 21:30:47 +09:00
Dean Herbert
9b654c741b
Merge pull request #11283 from peppy/add-match-start-sound
...
Play a sound when starting a timeshift or multiplayer room
2020-12-24 21:30:24 +09:00
Dean Herbert
25ff32cdf8
Merge pull request #11284 from peppy/add-ready-changed-sound
...
Add sound when players change ready state
2020-12-24 21:30:06 +09:00
Bartłomiej Dach
49103a4421
Merge branch 'master' into add-match-start-sound
2020-12-24 13:22:06 +01:00
Bartłomiej Dach
40b9d1bc5e
Invert if & early-return to reduce nesting
2020-12-24 12:45:01 +01:00
Bartłomiej Dach
d5fc517fab
Merge branch 'master' into disallow-skipping
2020-12-24 12:35:22 +01:00
Bartłomiej Dach
c00d6f78be
Merge pull request #11279 from peppy/improved-loading-experience
2020-12-24 12:35:02 +01:00
Bartłomiej Dach
ee5a6ff9fa
Merge branch 'master' into improved-loading-experience
2020-12-24 11:59:46 +01:00
Bartłomiej Dach
dd97fcb43c
Merge pull request #11278 from peppy/frame-bundle-accuracy
2020-12-24 11:53:37 +01:00
Bartłomiej Dach
261c250b46
Update outdated comment
2020-12-24 11:33:49 +01:00
Bartłomiej Dach
4fb2610c82
Merge branch 'master' into frame-bundle-accuracy
2020-12-24 11:20:06 +01:00
Bartłomiej Dach
4cc58903ed
Merge pull request #11267 from peppy/disallow-multiplayer-restart-retry
2020-12-24 10:18:46 +01:00
Bartłomiej Dach
6750f1574f
Merge branch 'master' into disallow-multiplayer-restart-retry
2020-12-24 09:45:50 +01:00
Dean Herbert
c35454081c
Add sound when players change ready state
2020-12-24 17:17:45 +09:00
Dean Herbert
3148c04fb8
Play a sound when starting a timeshift or multiplayer room
2020-12-24 16:53:25 +09:00
Dean Herbert
6bd6888a93
Disallow skipping in multiplayer for now
2020-12-24 16:29:51 +09:00
Dean Herbert
5457e4598b
Schedule UpdateFilter calls to avoid operations occuring while at a sub screen
2020-12-24 16:20:38 +09:00
Dean Herbert
e86e9bfae6
Don't begin gameplay until all users are in a completely prepared state
2020-12-24 15:32:55 +09:00
Dean Herbert
d66e218318
Source display accuracy from header and remove from ScoreProcessor function
2020-12-24 14:57:23 +09:00
Dean Herbert
1f80f01b53
Add accuracy to frame bundle header
2020-12-24 14:46:52 +09:00
Dean Herbert
43370d7021
Merge pull request #11273 from bdach/duplicate-user-in-mp-room
...
Improve reliability of handling user joined messages
2020-12-24 14:31:44 +09:00
Dean Herbert
61a5d3ef4a
Remove double handling of restart allowance on results screen (already handled locally)
2020-12-24 13:32:35 +09:00
Dean Herbert
76935b93b6
Merge branch 'master' into disallow-multiplayer-restart-retry
2020-12-24 13:31:54 +09:00
Dean Herbert
b29a5e2073
Merge pull request #11270 from bdach/better-error-handling
...
Improve error handling at realtime room settings screen
2020-12-24 13:23:49 +09:00
Dean Herbert
15cef44351
Merge pull request #11275 from peppy/safer-user-ids
...
Send multiplayer user IDs via ctor for better thread safety
2020-12-24 12:20:48 +09:00
Dean Herbert
1ac93d4eeb
Merge pull request #11268 from bdach/fix-room-song-select-stuck
...
Fix realtime multiplayer song select getting stuck after selecting invalid beatmap
2020-12-24 11:26:07 +09:00
Dean Herbert
547c71bdaf
Merge pull request #11274 from bdach/create-match-button
...
Split create game buttons for timeshift and realtime multiplayer
2020-12-24 11:07:36 +09:00
Dean Herbert
d6dadd12fa
Send multiplayer user IDs via ctor for better thread safety
2020-12-24 10:39:15 +09:00
Bartłomiej Dach
414f886b02
Split timeshift & multiplayer "create" buttons
...
Multiplayer button gets new, different "Create match" text, and disable
logic in case of a dropped connection to the multiplayer server.
2020-12-23 22:03:57 +01:00
Bartłomiej Dach
c13acb609a
Move out sizing logic to multiplayer screen
2020-12-23 22:03:30 +01:00
Bartłomiej Dach
05d9f23762
Move out create room button to separate class
2020-12-23 22:03:30 +01:00
Bartłomiej Dach
a71496bc4e
Sanity check received user joined messages
...
While test failures fixed in 9843da5
were a shortcoming of the test,
they exposed a potential vulnerable point of the multiplayer client
logic. In case of unreliable message delivery it is not unreasonable
that duplicate messages might arrive, in which case the same scenario
that failed in the tests could crash the game.
To ensure that is not the case, explicitly screen each new joined user
against the room user list, to ensure that duplicates do not show up.
`UserLeft` is already tolerant in that respect (if a user is requested
to be removed twice by the server, the second removal just won't do
anything).
2020-12-23 21:00:49 +01:00
Bartłomiej Dach
47020c8887
Add failing test cases
2020-12-23 21:00:47 +01:00
Bartłomiej Dach
9843da59f4
Fix intermittent test fail due to duplicate user
...
`TestSceneRealtimeReadyButton` was manually adding `API.LocalUser`,
which wasn't actually needed. The base `RealtimeMultiplayerTestScene` by
default creates a new room as `API.LocalUser`, therefore automatically
adding that user to the room - and as such there is no need to add them
manually unless the `joinRoom` ctor param is specified as `false`.
2020-12-23 20:29:17 +01:00
Bartłomiej Dach
152df2ad84
Merge branch 'master' into better-error-handling
2020-12-23 18:13:50 +01:00
Bartłomiej Dach
e7a91b3dca
Merge branch 'master' into fix-room-song-select-stuck
2020-12-23 18:13:27 +01:00
Bartłomiej Dach
3087aba5bc
Merge pull request #11266 from peppy/fix-hard-crash-on-signal-r-exceptions
2020-12-23 18:12:43 +01:00
Bartłomiej Dach
b1fb906773
Merge branch 'master' into fix-hard-crash-on-signal-r-exceptions
2020-12-23 17:37:49 +01:00
Bartłomiej Dach
2549039362
Merge pull request #11265 from peppy/fix-multiplayer-server-disconnection-flow
2020-12-23 17:35:53 +01:00
Bartłomiej Dach
e4959489b7
Improve user-facing error messages in room settings
2020-12-23 17:10:53 +01:00
Bartłomiej Dach
3b0bf11366
Fix JoinRoom failing to return canceled token
...
As it turns out, `Task.FromCanceled` expects to receive an already
cancelled `CancellationToken`, which `CancellationToken.None` is not.
2020-12-23 17:01:01 +01:00
Bartłomiej Dach
6c421b873d
Merge branch 'master' into fix-multiplayer-server-disconnection-flow
2020-12-23 16:55:22 +01:00
Bartłomiej Dach
980e85ce25
Refactor player exit logic to convey intention better
2020-12-23 16:16:24 +01:00
Dean Herbert
4296f61d6c
Tidy up event flow of change settings call
2020-12-23 22:39:14 +09:00
Dean Herbert
60be1bedc9
Merge pull request #11254 from frenzibyte/fix-multi-songselect-looping
...
Fix beatmap track not looping on multiplayer song selects
2020-12-23 22:35:11 +09:00
Bartłomiej Dach
c5692a5d6a
Re-enable carousel selection after error
2020-12-23 14:19:30 +01:00
Bartłomiej Dach
582b0d2a74
Revert logic to be closer to original
...
Note the reversal of the order of operations in `endHandlingTrack()`
(done for extra safety, to ensure no more value changed events can be
fired at the point of cancelling looping).
2020-12-23 13:47:28 +01:00
Bartłomiej Dach
74f0c50d82
Merge branch 'fix-multiplayer-server-disconnection-flow' into fix-hard-crash-on-signal-r-exceptions
2020-12-23 13:31:36 +01:00