-
-
Notifications
You must be signed in to change notification settings - Fork 2.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for "freestyle" in multiplayer #31260
base: master
Are you sure you want to change the base?
Conversation
@ppy/team-design able to provide some basic design direction for how ruleset and difficulty selection could be shown per-user here? |
Had to pretty much rewrite the entire screen and add server-side support to do the above ¯\(ツ)/¯. Added it as a ruleset icon displayed on the panel: 2024-12-25.23-36-05.mp4 |
…have valid online IDs This is local to playlists, since in multiplayer the validation is already provided by `osu-server-spectator`.
I've done an initial pass and fixed a few things up. Overall, the code is bearable (there are changes I'd propose for code quality reasons, but it's isolated and at this point it wouldn't be achieving too much – as you know the whole multiplayer screens / drawable structuring isn't great). Remaining requirements to push this live in my eyes are:
I'll do a second pass tomorrow with the goal of getting this merged, unless there are any blockers. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As above
I believe this will need additional osu-web support because we only receive the current playlist item in the lounge, not the full playlist. Unless that's what you mean - for the badge to be shown only when the current item is freestyle? |
Preamble
I was told to effectively hack this in, and was not given an opportunity to refactor multiplayer to properly support it or even to be able to write tests without pulling my hair out. So here goes.
Have I done some basic testing to see things work? Yes.
Will things break? Definitely.
Do I know what will break? Nope.
Description
2024-12-24.19-46-05.mp4
I've named this "freestyle", because I see a future where this is more than just beatmap/ruleset but also mods and thus include "freemods" in it. Perhaps something like a menu where you can choose what is free.
For the time being, when it's enabled, it will disable mods/freemods. I'm not sure what the intended UX is, but it will definitely be a lot more complicated due to mod types not matching between rulesets, i.e. this will fail a ton of validation everywhere. So I'm keeping it simple.
There's no display in the room for what/how other users have chosen to play, I'm not even sure where I'd add that in because the room design is a whole bunch of mess. There's already no display of other users' freemods either, so /shrug?