I think we’re saying the same thing for the first portion. In OnlineAsyncTaskManagerSteam.h
STEAM_CALLBACK(FOnlineAsyncTaskManagerSteam, OnInviteAccepted, GameRichPresenceJoinRequested_t, OnInviteAcceptedCallback);coupled with
OnInviteAcceptedCallback(this, &FOnlineAsyncTaskManagerSteam::OnInviteAccepted),
binds onto Steam’s events (the one that creates the data inside of GameRichPresenceJoinRequested_t).
My understanding is that with OSSv1, OnlineAsyncTaskManagerSteam handles binding to that callback inside the Unreal Engine. It creates FOnlineAsyncEventSteamInviteAccepted, which searches for the friend session, which eventually returns back to EOSPlus which maps that found session to the EOSSessionID
I wanted verification that with OSSv2, the EOS SDK handles that steam event internally, and it maps the data in
struct GameRichPresenceJoinRequested_t
{
enum { k_iCallback = k_iSteamFriendsCallbacks + 37 };
CSteamID m_steamIDFriend; // the friend they did the join via (will be invalid if not directly via a friend)
char m_rgchConnect[k_cchMaxRichPresenceValueLength];
};
to an EOSLobbyID, and then triggers NotifyLobbyInviteAccepted.
If that was true, does that meant we have to replicate that functionality with our custom platform OSS?
The effect we’re trying to replicate is:
Player1 and Player2 are playing our game in seperate lobbies (or not in a lobby at all)
Player1 uses the custom platform UI to invite Player2 to play.
This triggers an EOS lobby and a mirrored Platform lobby (done proprietarily) to be created
After that is done, custom platform library sends event from Player1 to Player2 with proprietary platform lobby data
Custom platform library on Player2 triggers the event: OnInvited(Player1’s PlatformLobbyData)
This is the point where we’re at now, but Player2 cannot join the game yet, because they don’t have the EOS lobby.
They would first have to map that Player1 Lobby data to the EOS lobby, and then somehow trigger NotifyLobbyInviteAccepted (which it sounds like we can’t so we’d have to call the same OnLobbyInviteAccepted) so they can join that.
I wanted to get confirmation on the above^
[Attachment Removed]