bUseEOSSessions
bUseEOSSessions
#Overview
name: bUseEOSSessions
The value of this variable can be defined or overridden in .ini config files. 2
.ini config files referencing this setting variable.
It is referenced in 36
C++ source files.
#Summary
#Usage in the C++ source code
The purpose of bUseEOSSessions is to control whether the Epic Online Services (EOS) session system is used for online multiplayer sessions instead of the default platform-specific session system.
This setting variable is primarily used by the Online Subsystem EOS Plus module, which is part of the Unreal Engine’s online subsystem framework. It allows developers to choose between using the EOS session system or the platform’s native session system for managing multiplayer game sessions.
The value of this variable is set in the EOS Settings configuration, typically through the project’s configuration files or the Unreal Engine Editor settings.
When bUseEOSSessions is set to true, it affects various session-related operations, such as:
- Creating and joining sessions
- Searching for sessions
- Sending and receiving session invites
- Registering and unregistering players in sessions
- Managing session state and settings
Developers should be aware that enabling this option may change the behavior of their game’s online functionality. It’s important to test thoroughly when switching between EOS and platform-native session systems.
Best practices when using this variable include:
- Ensuring consistent configuration across development and production environments
- Testing all session-related functionality when changing this setting
- Being aware of platform-specific requirements and limitations when using EOS sessions
- Considering cross-platform play implications when using EOS sessions
In summary, bUseEOSSessions is a crucial setting for developers working with online multiplayer games in Unreal Engine, particularly when integrating with Epic Online Services.
#Setting Variables
#References In INI files
Location: <Workspace>/Projects/Lyra/Config/Custom/EOS/DefaultEngine.ini:29, section: [/Script/OnlineSubsystemEOS.EOSSettings]
- INI Section:
/Script/OnlineSubsystemEOS.EOSSettings
- Raw value:
True
- Is Array:
False
Location: <Workspace>/Projects/Lyra/Config/Custom/SteamEOS/DefaultEngine.ini:34, section: [/Script/OnlineSubsystemEOS.EOSSettings]
- INI Section:
/Script/OnlineSubsystemEOS.EOSSettings
- Raw value:
True
- Is Array:
False
#References in C++ code
#Callsites
This variable is referenced in the following C++ source code:
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Private/EOSSettings.cpp:140
Scope (from outer to inner):
file
function FEOSSettings::FEOSSettings
Source code excerpt:
, bUseEAS(false)
, bUseEOSConnect(false)
, bUseEOSSessions(false)
, bMirrorStatsToEOS(false)
, bMirrorAchievementsToEOS(false)
, bMirrorPresenceToEAS(false)
{
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Private/EOSSettings.cpp:189
Scope (from outer to inner):
file
function const FEOSSettings& UEOSSettings::ManualGetSettings
Source code excerpt:
GConfig->GetBool(INI_SECTION, TEXT("bUseEAS"), CachedSettings->bUseEAS, GEngineIni);
GConfig->GetBool(INI_SECTION, TEXT("bUseEOSConnect"), CachedSettings->bUseEOSConnect, GEngineIni);
GConfig->GetBool(INI_SECTION, TEXT("bUseEOSSessions"), CachedSettings->bUseEOSSessions, GEngineIni);
GConfig->GetBool(INI_SECTION, TEXT("bMirrorStatsToEOS"), CachedSettings->bMirrorStatsToEOS, GEngineIni);
GConfig->GetBool(INI_SECTION, TEXT("bMirrorAchievementsToEOS"), CachedSettings->bMirrorAchievementsToEOS, GEngineIni);
GConfig->GetBool(INI_SECTION, TEXT("bMirrorPresenceToEAS"), CachedSettings->bMirrorPresenceToEAS, GEngineIni);
// Artifacts explicitly skipped
GConfig->GetArray(INI_SECTION, TEXT("TitleStorageTags"), CachedSettings->TitleStorageTags, GEngineIni);
GConfig->GetArray(INI_SECTION, TEXT("AuthScopeFlags"), CachedSettings->AuthScopeFlags, GEngineIni);
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Private/EOSSettings.cpp:221
Scope (from outer to inner):
file
function FEOSSettings UEOSSettings::ToNative
Source code excerpt:
Native.bUseEAS = bUseEAS;
Native.bUseEOSConnect = bUseEOSConnect;
Native.bUseEOSSessions = bUseEOSSessions;
Native.bMirrorStatsToEOS = bMirrorStatsToEOS;
Native.bMirrorAchievementsToEOS = bMirrorAchievementsToEOS;
Native.bMirrorPresenceToEAS = bMirrorPresenceToEAS;
Algo::Transform(Artifacts, Native.Artifacts, &FArtifactSettings::ToNative);
Native.TitleStorageTags = TitleStorageTags;
Native.AuthScopeFlags = AuthScopeFlags;
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Private/EOSSettings.cpp:431
Scope (from outer to inner):
file
function void UEOSSettings::PostEditChangeProperty
Source code excerpt:
bMirrorAchievementsToEOS = false;
bMirrorStatsToEOS = false;
bUseEOSSessions = false;
}
}
// These all require EOS turned on if they are on
if (PropertyChangedEvent.Property->GetFName() == FName(TEXT("bMirrorAchievementsToEOS")) ||
PropertyChangedEvent.Property->GetFName() == FName(TEXT("bMirrorStatsToEOS")) ||
PropertyChangedEvent.Property->GetFName() == FName(TEXT("bUseEOSSessions")))
{
if (bMirrorAchievementsToEOS || bMirrorStatsToEOS || bUseEOSSessions)
{
bUseEOSConnect = true;
}
}
Super::PostEditChangeProperty(PropertyChangedEvent);
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Public/EOSSettings.h:81
Scope: file
Source code excerpt:
bool bUseEAS;
bool bUseEOSConnect;
bool bUseEOSSessions;
bool bMirrorStatsToEOS;
bool bMirrorAchievementsToEOS;
bool bMirrorPresenceToEAS;
TArray<FEOSArtifactSettings> Artifacts;
TArray<FString> TitleStorageTags;
TArray<FString> AuthScopeFlags;
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Public/EOSSettings.h:167
Scope (from outer to inner):
file
class class UEOSSettings : public URuntimeOptionsBase
Source code excerpt:
/** Set to true to use EOS for session registration with data mirrored to the default platform */
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="Crossplay Settings", DisplayName="Use Crossplay Sessions")
bool bUseEOSSessions = false;
/** Set to true to have Epic Accounts presence information updated when the default platform is updated */
UPROPERTY(Config, EditAnywhere, BlueprintReadOnly, Category="Crossplay Settings")
bool bMirrorPresenceToEAS = false;
/**
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:10
Scope (from outer to inner):
file
function FOnlineSessionEOSPlus::FOnlineSessionEOSPlus
Source code excerpt:
FOnlineSessionEOSPlus::FOnlineSessionEOSPlus(FOnlineSubsystemEOSPlus* InSubsystem)
: EOSPlus(InSubsystem)
, bUseEOSSessions(false)
{
BaseSessionInterface = EOSPlus->BaseOSS->GetSessionInterface();
EOSSessionInterface = EOSPlus->EosOSS->GetSessionInterface();
check(BaseSessionInterface.IsValid() && EOSSessionInterface.IsValid());
bUseEOSSessions = UEOSSettings::GetSettings().bUseEOSSessions;
BaseSessionInterface->AddOnSessionUserInviteAcceptedDelegate_Handle(FOnSessionUserInviteAcceptedDelegate::CreateRaw(this, &FOnlineSessionEOSPlus::OnSessionUserInviteAcceptedBase));
BaseSessionInterface->AddOnSessionInviteReceivedDelegate_Handle(FOnSessionInviteReceivedDelegate::CreateRaw(this, &FOnlineSessionEOSPlus::OnSessionInviteReceivedBase));
BaseSessionInterface->AddOnCreateSessionCompleteDelegate_Handle(FOnCreateSessionCompleteDelegate::CreateRaw(this, &FOnlineSessionEOSPlus::OnCreateSessionComplete));
IOnlineSessionPtr PrimaryInterface = BaseSessionInterface;
if (bUseEOSSessions)
{
PrimaryInterface = EOSSessionInterface;
EOSSessionInterface->AddOnSessionUserInviteAcceptedDelegate_Handle(FOnSessionUserInviteAcceptedDelegate::CreateRaw(this, &FOnlineSessionEOSPlus::OnSessionUserInviteAcceptedEOS));
EOSSessionInterface->AddOnSessionInviteReceivedDelegate_Handle(FOnSessionInviteReceivedDelegate::CreateRaw(this, &FOnlineSessionEOSPlus::OnSessionInviteReceivedEOS));
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:143
Scope (from outer to inner):
file
function void FOnlineSessionEOSPlus::OnSessionUserInviteAcceptedBase
Source code excerpt:
}
if (bUseEOSSessions)
{
FString SessionIdStr;
InviteResult.Session.SessionSettings.Get(SETTING_CUSTOM_JOIN_INFO, SessionIdStr);
if (SessionIdStr.IsEmpty())
{
UE_LOG_ONLINE(Error, TEXT("Failed to get EOS session id from base session"));
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:220
Scope (from outer to inner):
file
function void FOnlineSessionEOSPlus::OnSessionInviteReceivedBase
Source code excerpt:
}
if (bUseEOSSessions)
{
FString SessionIdStr;
InviteResult.Session.SessionSettings.Get(SETTING_CUSTOM_JOIN_INFO, SessionIdStr);
if (SessionIdStr.IsEmpty())
{
UE_LOG_ONLINE(Error, TEXT("Failed to get EOS session id from base session"));
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:340
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::CreateSession
Source code excerpt:
{
// If EOS is enabled, create there and mirror on platform and include EOS session info
if (bUseEOSSessions)
{
OnCreateSessionCompleteDelegateHandleEOS = EOSSessionInterface->AddOnCreateSessionCompleteDelegate_Handle(
FOnCreateSessionCompleteDelegate::CreateLambda([this, HostingPlayerNum](FName SessionName, bool bWasSuccessful)
{
#if CREATE_MIRROR_PLATFORM_SESSION
if (bWasSuccessful)
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:384
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::CreateSession
Source code excerpt:
// If EOS is enabled, create there and mirror on platform and include EOS session info
if (bUseEOSSessions)
{
OnCreateSessionCompleteDelegateHandleEOS = EOSSessionInterface->AddOnCreateSessionCompleteDelegate_Handle(
FOnCreateSessionCompleteDelegate::CreateLambda([this, HostingPlayerIdStr](FName SessionName, bool bWasSuccessful)
{
#if CREATE_MIRROR_PLATFORM_SESSION
if (bWasSuccessful)
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:423
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::StartSession
Source code excerpt:
bool FOnlineSessionEOSPlus::StartSession(FName SessionName)
{
if (bUseEOSSessions)
{
if (!EOSSessionInterface->StartSession(SessionName))
{
return false;
}
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:440
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::UpdateSession
Source code excerpt:
bool FOnlineSessionEOSPlus::UpdateSession(FName SessionName, FOnlineSessionSettings& UpdatedSessionSettings, bool bShouldRefreshOnlineData)
{
if (bUseEOSSessions)
{
if (!EOSSessionInterface->UpdateSession(SessionName, UpdatedSessionSettings, bShouldRefreshOnlineData))
{
return false;
}
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:461
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::EndSession
Source code excerpt:
bool FOnlineSessionEOSPlus::EndSession(FName SessionName)
{
if (bUseEOSSessions)
{
if (!EOSSessionInterface->EndSession(SessionName))
{
return false;
}
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:480
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::DestroySession
Source code excerpt:
bool FOnlineSessionEOSPlus::DestroySession(FName SessionName, const FOnDestroySessionCompleteDelegate& CompletionDelegate)
{
if (bUseEOSSessions)
{
if (!EOSSessionInterface->DestroySession(SessionName, CompletionDelegate))
{
return false;
}
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:497
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::IsPlayerInSession
Source code excerpt:
bool FOnlineSessionEOSPlus::IsPlayerInSession(FName SessionName, const FUniqueNetId& UniqueId)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(UniqueId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:543
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::FindSessions
Source code excerpt:
bool FOnlineSessionEOSPlus::FindSessions(int32 SearchingPlayerNum, const TSharedRef<FOnlineSessionSearch>& SearchSettings)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->FindSessions(SearchingPlayerNum, SearchSettings);
}
return BaseSessionInterface->FindSessions(SearchingPlayerNum, SearchSettings);
}
bool FOnlineSessionEOSPlus::FindSessions(const FUniqueNetId& SearchingPlayerId, const TSharedRef<FOnlineSessionSearch>& SearchSettings)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(SearchingPlayerId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:571
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::FindSessionById
Source code excerpt:
bool FOnlineSessionEOSPlus::FindSessionById(const FUniqueNetId& SearchingUserId, const FUniqueNetId& SessionId, const FUniqueNetId& FriendId, const FOnSingleSessionResultCompleteDelegate& CompletionDelegate)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(SearchingUserId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:600
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::CancelFindSessions
Source code excerpt:
bool FOnlineSessionEOSPlus::CancelFindSessions()
{
if (bUseEOSSessions)
{
return EOSSessionInterface->CancelFindSessions();
}
return BaseSessionInterface->CancelFindSessions();
}
bool FOnlineSessionEOSPlus::PingSearchResults(const FOnlineSessionSearchResult& SearchResult)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->PingSearchResults(SearchResult);
}
return BaseSessionInterface->PingSearchResults(SearchResult);
}
bool FOnlineSessionEOSPlus::JoinSession(int32 PlayerNum, FName SessionName, const FOnlineSessionSearchResult& DesiredSession)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->JoinSession(PlayerNum, SessionName, DesiredSession);
}
return BaseSessionInterface->JoinSession(PlayerNum, SessionName, DesiredSession);
}
bool FOnlineSessionEOSPlus::JoinSession(const FUniqueNetId& PlayerId, FName SessionName, const FOnlineSessionSearchResult& DesiredSession)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(PlayerId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:646
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::FindFriendSession
Source code excerpt:
bool FOnlineSessionEOSPlus::FindFriendSession(int32 LocalUserNum, const FUniqueNetId& Friend)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->FindFriendSession(LocalUserNum, Friend);
}
return BaseSessionInterface->FindFriendSession(LocalUserNum, Friend);
}
bool FOnlineSessionEOSPlus::FindFriendSession(const FUniqueNetId& LocalUserId, const FUniqueNetId& Friend)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(LocalUserId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:684
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::FindFriendSession
Source code excerpt:
bool FOnlineSessionEOSPlus::FindFriendSession(const FUniqueNetId& LocalUserId, const TArray<FUniqueNetIdRef>& FriendList)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(LocalUserId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:703
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::SendSessionInviteToFriend
Source code excerpt:
bool FOnlineSessionEOSPlus::SendSessionInviteToFriend(int32 LocalUserNum, FName SessionName, const FUniqueNetId& Friend)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr FriendId = GetEOSNetId(Friend.ToString());
if (FriendId.IsValid())
{
// We want to send the platform invite always to comply with platform requirements, so we won't return here
EOSSessionInterface->SendSessionInviteToFriend(LocalUserNum, SessionName, *FriendId);
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:722
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::SendSessionInviteToFriend
Source code excerpt:
bool FOnlineSessionEOSPlus::SendSessionInviteToFriend(const FUniqueNetId& LocalUserId, FName SessionName, const FUniqueNetId& Friend)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(LocalUserId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:754
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::SendSessionInviteToFriends
Source code excerpt:
bool FOnlineSessionEOSPlus::SendSessionInviteToFriends(int32 LocalUserNum, FName SessionName, const TArray<FUniqueNetIdRef>& Friends)
{
if (bUseEOSSessions)
{
// We want to send the platform invite always to comply with platform requirements, so we won't return here
EOSSessionInterface->SendSessionInviteToFriends(LocalUserNum, SessionName, GetEOSNetIds(Friends));
}
return BaseSessionInterface->SendSessionInviteToFriends(LocalUserNum, SessionName, GetBaseNetIds(Friends));
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:765
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::SendSessionInviteToFriends
Source code excerpt:
bool FOnlineSessionEOSPlus::SendSessionInviteToFriends(const FUniqueNetId& LocalUserId, FName SessionName, const TArray<FUniqueNetIdRef>& Friends)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(LocalUserId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:787
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::GetResolvedConnectString
Source code excerpt:
bool FOnlineSessionEOSPlus::GetResolvedConnectString(FName SessionName, FString& ConnectInfo, FName PortType)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetResolvedConnectString(SessionName, ConnectInfo, PortType);
}
return BaseSessionInterface->GetResolvedConnectString(SessionName, ConnectInfo, PortType);
}
bool FOnlineSessionEOSPlus::GetResolvedConnectString(const FOnlineSessionSearchResult& SearchResult, FName PortType, FString& ConnectInfo)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetResolvedConnectString(SearchResult, PortType, ConnectInfo);
}
return BaseSessionInterface->GetResolvedConnectString(SearchResult, PortType, ConnectInfo);
}
FOnlineSessionSettings* FOnlineSessionEOSPlus::GetSessionSettings(FName SessionName)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetSessionSettings(SessionName);
}
return BaseSessionInterface->GetSessionSettings(SessionName);
}
FString FOnlineSessionEOSPlus::GetVoiceChatRoomName(int32 LocalUserNum, const FName& SessionName)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetVoiceChatRoomName(LocalUserNum, SessionName);
}
return BaseSessionInterface->GetVoiceChatRoomName(LocalUserNum, SessionName);
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:824
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::RegisterPlayer
Source code excerpt:
bool FOnlineSessionEOSPlus::RegisterPlayer(FName SessionName, const FUniqueNetId& PlayerId, bool bWasInvited)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(PlayerId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:851
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::RegisterPlayers
Source code excerpt:
bool FOnlineSessionEOSPlus::RegisterPlayers(FName SessionName, const TArray<FUniqueNetIdRef>& Players, bool bWasInvited)
{
if (bUseEOSSessions)
{
if (!EOSSessionInterface->RegisterPlayers(SessionName, GetEOSNetIds(Players), bWasInvited))
{
return false;
}
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:868
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::UnregisterPlayer
Source code excerpt:
bool FOnlineSessionEOSPlus::UnregisterPlayer(FName SessionName, const FUniqueNetId& PlayerId)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(PlayerId.ToString());
if (!Id.IsValid())
{
return false;
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:895
Scope (from outer to inner):
file
function bool FOnlineSessionEOSPlus::UnregisterPlayers
Source code excerpt:
bool FOnlineSessionEOSPlus::UnregisterPlayers(FName SessionName, const TArray<FUniqueNetIdRef>& Players)
{
if (bUseEOSSessions)
{
if (!EOSSessionInterface->UnregisterPlayers(SessionName, GetEOSNetIds(Players)))
{
return false;
}
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:914
Scope (from outer to inner):
file
function void FOnlineSessionEOSPlus:: RegisterLocalPlayer
Source code excerpt:
void FOnlineSessionEOSPlus:: RegisterLocalPlayer(const FUniqueNetId& PlayerId, FName SessionName, const FOnRegisterLocalPlayerCompleteDelegate& Delegate)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(PlayerId.ToString());
if (Id.IsValid())
{
EOSSessionInterface->RegisterLocalPlayer(*Id, SessionName, Delegate);
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:941
Scope (from outer to inner):
file
function void FOnlineSessionEOSPlus:: UnregisterLocalPlayer
Source code excerpt:
void FOnlineSessionEOSPlus:: UnregisterLocalPlayer(const FUniqueNetId& PlayerId, FName SessionName, const FOnUnregisterLocalPlayerCompleteDelegate& Delegate)
{
if (bUseEOSSessions)
{
FUniqueNetIdPtr Id = GetEOSNetId(PlayerId.ToString());
if (Id.IsValid())
{
EOSSessionInterface->UnregisterLocalPlayer(*Id, SessionName, Delegate);
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:966
Scope (from outer to inner):
file
function int32 FOnlineSessionEOSPlus::GetNumSessions
Source code excerpt:
int32 FOnlineSessionEOSPlus::GetNumSessions()
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetNumSessions();
}
return BaseSessionInterface->GetNumSessions();
}
void FOnlineSessionEOSPlus:: DumpSessionState()
{
if (bUseEOSSessions)
{
EOSSessionInterface->GetNumSessions();
}
#if CREATE_MIRROR_PLATFORM_SESSION
BaseSessionInterface->GetNumSessions();
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:987
Scope (from outer to inner):
file
function FNamedOnlineSession* FOnlineSessionEOSPlus::GetNamedSession
Source code excerpt:
FNamedOnlineSession* FOnlineSessionEOSPlus::GetNamedSession(FName SessionName)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetNamedSession(SessionName);
}
return BaseSessionInterface->GetNamedSession(SessionName);
}
void FOnlineSessionEOSPlus:: RemoveNamedSession(FName SessionName)
{
if (bUseEOSSessions)
{
EOSSessionInterface->RemoveNamedSession(SessionName);
return;
}
BaseSessionInterface->RemoveNamedSession(SessionName);
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.cpp:1006
Scope (from outer to inner):
file
function EOnlineSessionState::Type FOnlineSessionEOSPlus::GetSessionState
Source code excerpt:
EOnlineSessionState::Type FOnlineSessionEOSPlus::GetSessionState(FName SessionName) const
{
if (bUseEOSSessions)
{
return EOSSessionInterface->GetSessionState(SessionName);
}
return BaseSessionInterface->GetSessionState(SessionName);
}
bool FOnlineSessionEOSPlus::HasPresenceSession()
{
if (bUseEOSSessions)
{
return EOSSessionInterface->HasPresenceSession();
}
return BaseSessionInterface->HasPresenceSession();
}
FUniqueNetIdPtr FOnlineSessionEOSPlus::CreateSessionIdFromString(const FString& SessionIdStr)
{
if (bUseEOSSessions)
{
return EOSSessionInterface->CreateSessionIdFromString(SessionIdStr);
}
return BaseSessionInterface->CreateSessionIdFromString(SessionIdStr);
}
#Loc: <Workspace>/Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOSPlus/Private/OnlineSessionEOSPlus.h:100
Scope (from outer to inner):
file
class class FOnlineSessionEOSPlus : public IOnlineSession
Source code excerpt:
/** Reference to the owning EOS plus subsystem */
FOnlineSubsystemEOSPlus* EOSPlus;
bool bUseEOSSessions;
/** Critical sections for thread safe operation of session lists */
mutable FCriticalSection SessionLock;
/** Current session settings */
TArray<FNamedOnlineSession> Sessions;