Skip to content

Conversation

@nanaya
Copy link
Collaborator

@nanaya nanaya commented Mar 4, 2025

Related to ppy/osu#31908

  • validation/type restriction?
  • what response is needed for this
  • is deleting channel also needed?

@nanaya nanaya requested review from peppy and smoogipoo March 7, 2025 07:57
@smoogipoo
Copy link
Contributor

smoogipoo commented Mar 7, 2025

For my own knowledge, how performant are channels in general? For example, if there were 50000 players and we made a channel for each of them containing just one player, would that be an issue?

validation/type restriction?

Correct me if I'm wrong but are players already able to join arbitrary multiplayer channels right now, assuming they have the channel id? If so, that may be something we don't want, and for spectator too. If so, then maybe we want validation that clients can't manually join these types of channels and for the realtime server to be authoritative on that (i.e. skipping that validation).

Type restriction is probably unnecessary, but if it makes it any easier the server's only ever going to be creating temporary channels (either temporary or spectator or multiplayer flags, likely only the latter two even).

what response is needed for this

Probably either the full channel in the store as you have it, or just the channel id. Both are fine I think.

is deleting channel also needed?

In my mind the realtime server is going to need to be able to both create and delete channels as it needs.

For example, when spectating I see the following flow:

  1. User 1 starts playing. channel not created
  2. User 2 starts spectating. channel created, users 1 and 2 added to it
  3. User 2 stops spectating or user 1 quits the game. channel destroyed

This is how osu-stable behaves so unless there's a particular UI/UX difference we want...

@nanaya
Copy link
Collaborator Author

nanaya commented Mar 8, 2025

do we want to delete messages and everything when deleting channel?

@smoogipoo
Copy link
Contributor

For spectator channels yeah. For multiplayer channels we have a discussion recently (can't remember where) about multiplayer events, and peppy wanted to see chat displayed as well, so maybe not.

That said, maybe we don't need to delete channels at all and just get clients to part them?

@nanaya
Copy link
Collaborator Author

nanaya commented Mar 10, 2025

Correct me if I'm wrong but are players already able to join arbitrary multiplayer channels right now, assuming they have the channel id? If so, that may be something we don't want, and for spectator too. If so, then maybe we want validation that clients can't manually join these types of channels and for the realtime server to be authoritative on that (i.e. skipping that validation).

no, only public and tournament channels can be joined through general chat endpoint

@smoogipoo
Copy link
Contributor

smoogipoo commented Mar 10, 2025

For any reviewers: probably best to let us get the spectator channel in the game before merging this since requirements may change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants