OSS, Is pre-match lobbies without travelling possible?

Good day.

Am i getting it right, that OSS doesn’t support no-travel pre-match lobbies by design? So far all guides and source code i checked shows instant travel on creating\joining to lobby.

The pipeline i looking for is as classic as it can be:

  • HostGame → create a lobby on backend; LobbyOwner see new LobbyUI without any travels;
  • JoinGame → client joins to lobby on backend; LobbyClient see the same LobbyUI without any travels;
  • All players click “ready”;
  • Host click “start game” → Host finally travel, starting listen server;
  • Clients are notified about game being started → Clients finally travel to Host’s server.

Currently I’m looking at the problem in context of Steam as backend.

As i can see, my scheme is pretty much valid on the steam’s side: Steam Matchmaking & Lobbies (Steamworks Documentation), but there are plenty features missing from the oss\oss steam, like chats (there is an interface in oss sources, but i don’t see it’s being implemented for steam), setting per-member metadata, etc.

So the question is: Am i getting it right and such pipeline really impossible to implement with oss as is?

I’m fine with extending oss-steam code for my needs, but i want to double check i don’t miss anything simple.

There’s definitely some kind of lobby handling in OSS Steam e.g. FOnlineSessionSteam::CreateLobbySession, JoinLobbySession although I’m not familiar with the details. You may also be able to use the LobbyBeacon classes for this purpose.