smoogipoo
da85fb372d
Merge branch 'master' into fix-multiplayer-client-connection-reliability
2021-02-08 13:43:24 +09:00
Dean Herbert
c5fa818630
Actually handle case of failing to achieve lock on SemaphoreSlim
2021-02-05 14:08:13 +09:00
Dean Herbert
cd67fe1091
Merge branch 'master' into fix-multiplayer-client-connection-reliability
2021-02-05 14:04:57 +09:00
Dean Herbert
9258836f10
Merge pull request #11641 from smoogipoo/freemods
...
Add support for optional per-user mods in multiplayer (aka freemod)
2021-02-05 13:59:30 +09:00
smoogipoo
2e85ce5b82
Rename UserMods -> Mods for MultiplayerRoomUser
2021-02-05 12:40:16 +09:00
smoogipoo
85e63afcb4
Rename Mods -> RequiredMods
2021-02-05 12:36:25 +09:00
Dan Balasescu
a71d6a4c97
Merge branch 'master' into multiplayer-beatmap-tracker
2021-02-05 12:25:36 +09:00
smoogipoo
a2fdba3e51
Rename to OnlinePlayBeatmapAvailabilityTracker
2021-02-05 12:24:38 +09:00
Salman Ahmed
d62bbbb762
Enhance documentation
...
Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2021-02-05 00:38:56 +03:00
smoogipoo
cf5233c6ab
Merge branch 'master' into freemods
2021-02-05 00:27:14 +09:00
Dean Herbert
76cfeae7e9
Add support for Bindable int in config
2021-02-04 15:10:56 +09:00
Salman Ahmed
db3f9e7cbe
Apply documentation suggestion
2021-02-04 02:20:18 +03:00
Dean Herbert
e3d323989c
Switch to SignalR 5.0 and implement using better API
2021-02-03 22:04:14 +09:00
Dean Herbert
1380717ebb
Use PrimitiveObjectFormatter to simplify code
2021-02-03 20:19:27 +09:00
Dean Herbert
d3f056f188
Add missing licence header
2021-02-03 20:06:25 +09:00
Dean Herbert
75f1ebd5f9
Add custom resolver for mod settings dictionary
2021-02-03 19:46:47 +09:00
Salman Ahmed
62d0036c81
Fix using private constructor on MessagePack object
2021-02-02 17:45:11 +03:00
smoogipoo
97247b7a67
Fix unset key
2021-02-01 19:59:18 +09:00
smoogipoo
9c4c47599f
Merge branch 'master' into freemods
2021-02-01 19:28:10 +09:00
smoogipoo
89a42d60fb
General cleanup
2021-02-01 18:50:32 +09:00
smoogipoo
f538963607
Extra mods -> user mods
2021-02-01 17:57:32 +09:00
smoogipoo
ac2a995041
Add user and panel states
2021-02-01 17:54:56 +09:00
Dean Herbert
1d8de2f718
Rename class to better match purpose
2021-02-01 17:32:54 +09:00
Dean Herbert
fabb0eeb29
Add signalr messagepack key attribute
2021-02-01 17:27:14 +09:00
Dean Herbert
c73a05d0b5
Merge branch 'master' into multiplayer-beatmap-tracker
2021-02-01 17:24:24 +09:00
smoogipoo
ab9a3e6dd0
Pass allowed mods and consume on server callback
2021-01-29 18:21:22 +09:00
Dean Herbert
a61444690e
Remove all usage of CatchUnobservedExceptions
...
This should no longer be required with the recent framework side change
that stops a game from crashing on unobserved exceptions
(https://github.com/ppy/osu-framework/pull/4171 ).
2021-01-29 16:32:29 +09:00
Bartłomiej Dach
386f9f7842
Fix typos in comments
2021-01-28 22:36:07 +01:00
Dean Herbert
90a82f986b
Fallback to using json for signalr communication if JIT is unavailable
2021-01-28 16:20:19 +09:00
smoogipoo
c408b46a21
Add AllowedMods to MultiplayerRoomSettings model
2021-01-27 22:25:14 +09:00
Dan Balasescu
7d06af916c
Merge branch 'master' into add-messagepack
2021-01-27 13:00:46 +09:00
Bartłomiej Dach
4d4d97661e
Fix connection loop always getting a cancelled token
2021-01-26 21:26:50 +01:00
Dean Herbert
b573c96c07
Move disconnect logic inside connection loop to ensure previous connection is disposed
2021-01-26 18:59:42 +09:00
Dean Herbert
15885c17af
Remove unused usings
2021-01-26 18:07:43 +09:00
Dean Herbert
20cfa991bf
Switch clients to MessagePack mode
2021-01-26 17:41:21 +09:00
Dean Herbert
9537090d28
Setup all spectator model classes for MessagePack
2021-01-26 16:39:35 +09:00
Dean Herbert
e4fc604163
Setup all multiplayer model classes for MessagePack support
2021-01-26 16:26:03 +09:00
Salman Ahmed
c317d60169
Add offline test scene for beatmap listing overlay
2021-01-26 00:03:20 +03:00
Dean Herbert
0f09a7feb9
Avoid semaphore potentially getting held forever
2021-01-25 17:17:04 +09:00
Dean Herbert
994fb2667d
Call DisposeAsync instead of StopAsync
2021-01-25 17:11:04 +09:00
Dean Herbert
c05ae3497a
Make connect/disconnect private
2021-01-25 17:02:24 +09:00
Dean Herbert
d24d236468
Make OperationCanceledException throwing behaviour consistent
2021-01-22 14:34:58 +09:00
Dean Herbert
9f89b4e6d7
Rewrite connection logic to better handle failure cases
...
The main goal here is to ensure the connection is built each connection
attempt. Previously, the access token would never be updated, leading to
outdated tokens failing repeatedly (in the connection retry loop) and
never being able to establish a new connection as a result.
Due to threading considerations, this isn't as simple as I would hope it
to be. I'm open to proposals as to a better way of handling this.
Also, keep in mind that this logic will need to be abstracted and
(re)used in `SpectatorClient` as well. I've intentionally not done that
yet until we agree that this is a good direction forward.
2021-01-22 14:25:23 +09:00
Dean Herbert
e6980688f6
Leave the multiplayer channel when leaving multiplayer
2021-01-21 15:42:23 +09:00
Salman Ahmed
63b4c529a6
Add xmldoc explaining what the multiplayer beatmap tracker is for
2021-01-19 11:59:07 +03:00
Salman Ahmed
5a64abee64
Inline with above method
2021-01-19 11:59:07 +03:00
Salman Ahmed
63ca9de7e4
Rewerite beatmap term properly
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-01-18 23:00:07 +03:00
Salman Ahmed
5e476fa189
Enforce one missed property back to single-floating type
2021-01-18 22:07:25 +03:00
Salman Ahmed
25f511fd5b
Remove unnecessary full querying
2021-01-18 21:34:24 +03:00
Salman Ahmed
dc91cebce9
Merge branch 'master' into multiplayer-beatmap-tracker
2021-01-18 19:15:45 +03:00