Skip to content

Commit

Permalink
Add OnlineIntegration plugin
Browse files Browse the repository at this point in the history
  • Loading branch information
mircearoata committed Oct 21, 2023
1 parent a1c4e65 commit 1bd7304
Show file tree
Hide file tree
Showing 31 changed files with 2,558 additions and 0 deletions.
62 changes: 62 additions & 0 deletions Plugins/OnlineIntegration/OnlineIntegration.uplugin
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
{
"FileVersion": 3,
"Version": 1,
"VersionName": "1.0",
"FriendlyName": "OnlineIntegration",
"Description": "Utility plugin that can be used to enable Online Services Integration",
"Category": "Other",
"CreatedBy": "Coffee Stain Studios",
"CreatedByURL": "https://www.coffeestainstudios.com/",
"DocsURL": "",
"MarketplaceURL": "",
"SupportURL": "",
"CanContainContent": true,
"IsBetaVersion": false,
"IsExperimentalVersion": false,
"Installed": false,
"Modules": [
{
"Name": "OnlineIntegration",
"Type": "Runtime",
"LoadingPhase": "PostConfigInit"
}
],
"Plugins": [
{
"Name": "OnlineServices",
"Enabled": true
},
{
"Name": "OnlineServicesEOS",
"Enabled": true,
"WhitelistPlatforms": [
"Win64",
"Linux"
]
},
{
"Name": "OnlineServicesEOSGS",
"Enabled": true
},
{
"Name": "SocketSubsystemEOS",
"Enabled": true
},
{
"Name": "OnlineServicesOSSAdapter",
"Enabled": true
},
{
"Name": "OnlineSubsystemSteam",
"Enabled": true
},
{
"Name": "ModelViewViewModel",
"Enabled": true
},
{
"Name": "ControlFlows",
"Enabled": true
}
]
}
Binary file added Plugins/OnlineIntegration/Resources/Icon128.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
// Copyright Epic Games, Inc. All Rights Reserved.

using UnrealBuildTool;

public class OnlineIntegration : ModuleRules
{
public OnlineIntegration(ReadOnlyTargetRules Target) : base(Target)
{
PCHUsage = ModuleRules.PCHUsageMode.UseExplicitOrSharedPCHs;
CppStandard = CppStandardVersion.Cpp20;
ShadowVariableWarningLevel = WarningLevel.Warning; // MODDING EDIT: Added to remove warnings for OnlineFriendTypes

PublicDependencyModuleNames.AddRange(
new string[]
{
"Core",
// ... add other public dependencies that you statically link with here ...
"OnlineServicesInterface",
"Engine",
"UMG",
"ModelViewViewModel",
"OnlineServicesInterface"
}
);

PrivateDependencyModuleNames.AddRange(
new string[]
{
"ControlFlows",
"CoreUObject",
"Engine",
"Slate",
"SlateCore",
"DeveloperSettings",
// ... add private dependencies that you statically link with here ...
"OnlineServicesCommonEngineUtils",
"OnlineSubsystemUtils",
"GameplayTags",
"ApplicationCore",
"CoreOnline",
"InputCore",
// "UnrealUSDWrapper" // MODDING EDIT: Not used in headers
});

PublicDependencyModuleNames.Add("DummyHeaders");
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
// This file has been automatically generated by the Unreal Header Implementation tool

#include "CommonSessionSubsystem.h"

FString FCommonSessionCreationSettings::GetMapName() const{ return FString(); }
FString FCommonSessionCreationSettings::ConstructTravelURL() const{ return FString(); }
FString UCommonSession_SearchResult::GetDescription() const{ return FString(); }
void UCommonSession_SearchResult::GetStringSetting(FName Key, FString& Value, bool& bFoundValue) const{ }
void UCommonSession_SearchResult::GetIntSetting(FName Key, int32& Value, bool& bFoundValue) const{ }
int32 UCommonSession_SearchResult::GetNumOpenPrivateConnections() const{ return int32(); }
int32 UCommonSession_SearchResult::GetNumOpenPublicConnections() const{ return int32(); }
int32 UCommonSession_SearchResult::GetMaxPublicConnections() const{ return int32(); }
int32 UCommonSession_SearchResult::GetPingInMs() const{ return int32(); }
void UCommonSession_SearchSessionRequest::NotifySearchFinished(bool bSucceeded, const FText& ErrorMessage){ }
UOnlineAsyncOperation* UCommonSessionSubsystem::CreateSessionCreationSequence(const FCommonSessionCreationSettings &SessionSettings){ return nullptr; }
UCommonSession_SearchSessionRequest* UCommonSessionSubsystem::CreateOnlineSearchSessionRequest(){ return nullptr; }
void UCommonSessionSubsystem::JoinSession(APlayerController* JoiningPlayer, UCommonSession_SearchResult* Request){ }
void UCommonSessionSubsystem::CleanUpSessions(){ }
void UCommonSessionSubsystem::InviteFriendToGameSession(const UOnlineFriend* OnlineFriend){ }
void UCommonSessionSubsystem::RespondToGameInvite(APlayerController* Player, UOnlineFriend* OnlineFriend, bool bAccept){ }
void UCommonSessionSubsystem::JoinFriendGame(APlayerController* Player, UOnlineFriend* OnlineFriend){ }
void UCommonSessionSubsystem::FetchSessionById(APlayerController* Player, const FString& SessionId, FOnFindSessionByIdSessionComplete OnComplete){ }
TFuture<UE::Online::TOnlineResult<UE::Online::FFindSessions>> UCommonSessionSubsystem::FindSessions(UE::Online::FFindSessions::Params&& Params, EOnlineIntegrationUnmappedContext Context){ return TFuture<UE::Online::TOnlineResult<UE::Online::FFindSessions>>(); }
TFuture<UE::Online::TOnlineResult<UE::Online::FJoinSession>> UCommonSessionSubsystem::JoinSession(UE::Online::FJoinSession::Params&& Params, EOnlineIntegrationUnmappedContext Context){ return TFuture<UE::Online::TOnlineResult<UE::Online::FJoinSession>>(); }
void UCommonSessionSubsystem::LeaveSession(ULocalUserInfo* UserInfo, FName SessionName){ }
TFuture<UE::Online::TOnlineResult<UE::Online::FLeaveSession>> UCommonSessionSubsystem::LeaveSession(UE::Online::FLeaveSession::Params&& Params, EOnlineIntegrationUnmappedContext Context){ return TFuture<UE::Online::TOnlineResult<UE::Online::FLeaveSession>>(); }
UE::Online::TOnlineResult<UE::Online::FGetSessionByName> UCommonSessionSubsystem::GetSessionByName(UE::Online::FGetSessionByName::Params&& Params, EOnlineIntegrationUnmappedContext Context){ return UE::Online::TOnlineResult<UE::Online::FGetSessionByName>({MakeShareable<UE::Online::ISession>(nullptr)}); }
TFuture<UE::Online::TOnlineResult<UE::Online::FUpdateSessionSettings>> UCommonSessionSubsystem::UpdateSessionSettings(UE::Online::FUpdateSessionSettings::Params&& Params, EOnlineIntegrationUnmappedContext Context){ return TFuture<UE::Online::TOnlineResult<UE::Online::FUpdateSessionSettings>>(); }
UE::Online::FOnlineSessionId UCommonSessionSubsystem::MakeOnlineSessionId(const FString& SessionIdString, EOnlineIntegrationUnmappedContext Context){ return UE::Online::FOnlineSessionId(); }
FString UCommonSessionSubsystem::OnlineSessionIdToString(UE::Online::FOnlineSessionId SessionId){ return FString(); }
TFuture<UE::Online::TOnlineResult<UE::Online::FLeaveSession>> UCommonSessionSubsystem::DestroySession(ULocalUserInfo* LocalUserInfo, FName SessionName, EOnlineIntegrationUnmappedContext Context){ return TFuture<UE::Online::TOnlineResult<UE::Online::FLeaveSession>>(); }
TFuture<UE::Online::TOnlineResult<UE::Online::FCreateSession>> UCommonSessionSubsystem::CreateSession(ULocalUserInfo* LocalUserInfo, FName SessionName, EOnlineIntegrationUnmappedContext Context, const FCommonSessionCreationSettings& Settings){ return TFuture<UE::Online::TOnlineResult<UE::Online::FCreateSession>>(); }
TFuture<UE::Online::TOnlineResult<UE::Online::FAddSessionMember>> UCommonSessionSubsystem::AddSessionMember(UE::Online::FAccountId User, FName SessionName, EOnlineIntegrationUnmappedContext Context){ return TFuture<UE::Online::TOnlineResult<UE::Online::FAddSessionMember>>(); }
FString UCommonSessionSubsystem::GetStringAttributeFromSession(const FCommonSession& Session, FName Key) const{ return FString(); }
int64 UCommonSessionSubsystem::GetIntAttributeFromSession(const FCommonSession& Session, FName Key) const{ return int64(); }
double UCommonSessionSubsystem::GetDoubleAttributeFromSession(const FCommonSession& Session, FName Key) const{ return double(); }
bool UCommonSessionSubsystem::GetBoolAttributeFromSession(const FCommonSession& Session, FName Key) const{ return bool(); }
bool UCommonSessionSubsystem::IsValidSession(const FCommonSession& Session){ return bool(); }
TSharedPtr<const UE::Online::ISession> UCommonSessionSubsystem::GetSession(const FCommonSession& SessionHandle) const{ return TSharedPtr<const UE::Online::ISession>(); }
FDelegateHandle UCommonSessionSubsystem::AddOnSessionUpdateReceivedDelegate(const FOnCommonSessionUpdateReceived::FDelegate& Delegate){ return FDelegateHandle(); }
void UCommonSessionSubsystem::RemoveSessionUpdateReceivedDelegate(FDelegateHandle Handle){ }
void UCommonSessionSubsystem::Initialize(FSubsystemCollectionBase& Collection){ }
void UCommonSessionSubsystem::Deinitialize(){ }
void UCommonSessionSubsystem::HandleSessionUpdated(const UE::Online::FSessionUpdated& SessionUpdated, EOnlineIntegrationUnmappedContext Context) const{ }
void UCommonSessionSubsystem::TravelLocalSessionFailure(UWorld* World, ETravelFailure::Type FailureType, const FString& ReasonString){ }
void UCommonSessionSubsystem::HandlePostLoadMap(UWorld* World){ }
void UCommonSessionSubsystem::OnOnlineContextCreated(){ }
void UCommonSessionSubsystem::FindSessionsInternal(APlayerController* SearchingPlayer, const TSharedRef<FCommonOnlineSearchSettings>& InSearchSettings){ }
void UCommonSessionSubsystem::JoinSessionInternal(ULocalPlayer* LocalPlayer, UCommonSession_SearchResult* Request){ }
void UCommonSessionSubsystem::InternalTravelToSession(const FName SessionName){ }
void UCommonSessionSubsystem::NotifyUserRequestedSession(const FPlatformUserId& PlatformUserId, UCommonSession_SearchResult* RequestedSession,
const FOnlineResultInformation& RequestedSessionResult){ }
void UCommonSessionSubsystem::NotifyJoinSessionComplete(const FOnlineResultInformation& Result){ }
void UCommonSessionSubsystem::NotifyCreateSessionComplete(const FOnlineResultInformation& Result){ }
void UCommonSessionSubsystem::FindSessionsInternalOSSv2(ULocalPlayer* LocalPlayer){ }
void UCommonSessionSubsystem::JoinSessionInternalOSSv2(ULocalPlayer* LocalPlayer, UCommonSession_SearchResult* Request){ }
UE::Online::ISessionsPtr UCommonSessionSubsystem::GetSessionsInterface(EOnlineIntegrationUnmappedContext Context) const{ return UE::Online::ISessionsPtr(); }
void UCommonSessionSubsystem::CleanUpSessionsOSSv2(){ }
void UCommonSessionSubsystem::OnSessionJoinRequested(const UE::Online::FUILobbyJoinRequested& EventParams){ }
UE::Online::FAccountId UCommonSessionSubsystem::GetAccountId(APlayerController* PlayerController) const{ return UE::Online::FAccountId(); }
UE::Online::FLobbyId UCommonSessionSubsystem::GetLobbyId(const FName SessionName) const{ return UE::Online::FLobbyId(); }
void UCommonSessionSubsystem::UpdatePresencePostLoadMap(UWorld* World){ }
void UCommonSessionStatics::FetchFriendSession( UOnlineFriend* Friend, const FOnFetchFriendSessionComplete& CompletionDelegate){ }
void UCommonSessionStatics::JoinSession(APlayerController* PlayerController, const FCommonSession& Session){ }
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
// This file has been automatically generated by the Unreal Header Implementation tool

#include "CommonSessionTypes.h"

Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
// This file has been automatically generated by the Unreal Header Implementation tool

#include "CommonUserSubsystem.h"
#include "NativeGameplayTags.h"

UE_DEFINE_GAMEPLAY_TAG(FCommonUserTags::SystemMessage_Error, TEXT("SystemMessage.Error"))
UE_DEFINE_GAMEPLAY_TAG(FCommonUserTags::SystemMessage_Warning, TEXT("SystemMessage.Warning"))
UE_DEFINE_GAMEPLAY_TAG(FCommonUserTags::SystemMessage_Display, TEXT("SystemMessage.Display"))
UE_DEFINE_GAMEPLAY_TAG(FCommonUserTags::SystemMessage_Error_InitializeLocalPlayerFailed, TEXT("SystemMessage.Error.InitializeLocalPlayerFailed"))
UE_DEFINE_GAMEPLAY_TAG(FCommonUserTags::Platform_Trait_RequiresStrictControllerMapping, TEXT("Platform.Trait.RequiresStrictControllerMapping"))
UE_DEFINE_GAMEPLAY_TAG(FCommonUserTags::Platform_Trait_SingleOnlineUser, TEXT("Platform.Trait.SingleOnlineUser"))

void UCommonUserSubsystem::Initialize(FSubsystemCollectionBase& Collection){ }
void UCommonUserSubsystem::Deinitialize(){ }
void UCommonUserSubsystem::WhenLocalUserInfoIsCreated(FOnLocalUserInfoCreated::FDelegate Delegate, int32 PlayerIndex){ }
void UCommonUserSubsystem::SendSystemMessage(FGameplayTag MessageType, FText TitleText, FText BodyText){ }
void UCommonUserSubsystem::SetMaxLocalPlayers(int32 InMaxLocalPLayers){ }
int32 UCommonUserSubsystem::GetMaxLocalPlayers() const{ return int32(); }
int32 UCommonUserSubsystem::GetNumLocalPlayers() const{ return int32(); }
ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForLocalPlayerIndex(int32 LocalPlayerIndex) const{ return nullptr; }
ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForPlatformUser(FPlatformUserId PlatformUser) const{ return nullptr; }
const ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForUniqueNetId(const FUniqueNetIdRepl& NetId) const{ return nullptr; }
const ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForControllerId(int32 ControllerId) const{ return nullptr; }
const ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForInputDevice(FInputDeviceId InputDevice) const{ return nullptr; }
ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForLocalPlayer(ULocalPlayer* LocalPlayer) const{ return nullptr; }
UOnlineAsyncOperation* UCommonUserSubsystem::CreateAuthenticationSequence(TScriptInterface<IOnlineAuthenticationHandler> Handler, FPlatformUserId PlatformUserId) { return nullptr; }
ULocalUserInfo* UCommonUserSubsystem::GetUserInfoForAccountId(const UE::Online::FAccountId AccountId, EOnlineIntegrationUnmappedContext Context) const{ return nullptr; }
bool UCommonUserSubsystem::TryToInitializeForLocalPlay(int32 LocalPlayerIndex, FInputDeviceId PrimaryInputDevice, bool bCanUseGuestLogin){ return bool(); }
bool UCommonUserSubsystem::TryToLoginForOnlinePlay(int32 LocalPlayerIndex){ return bool(); }
bool UCommonUserSubsystem::TryToInitializeUser(FCommonUserInitializeParams Params){ return bool(); }
void UCommonUserSubsystem::ListenForLoginKeyInput(TArray<FKey> AnyUserKeys, TArray<FKey> NewUserKeys, FCommonUserInitializeParams Params){ }
bool UCommonUserSubsystem::TryToLogOutUser(int32 LocalPlayerIndex, bool bDestroyPlayer){ return bool(); }
bool UCommonUserSubsystem::IsRealPlatformUserIndex(int32 PlatformUserIndex) const{ return bool(); }
bool UCommonUserSubsystem::IsRealPlatformUser(FPlatformUserId PlatformUser) const{ return bool(); }
FPlatformUserId UCommonUserSubsystem::GetPlatformUserIdForIndex(int32 PlatformUserIndex) const{ return FPlatformUserId(); }
int32 UCommonUserSubsystem::GetPlatformUserIndexForId(FPlatformUserId PlatformUser) const{ return int32(); }
FPlatformUserId UCommonUserSubsystem::GetPlatformUserIdForInputDevice(FInputDeviceId InputDevice) const{ return FPlatformUserId(); }
FInputDeviceId UCommonUserSubsystem::GetPrimaryInputDeviceForPlatformUser(FPlatformUserId PlatformUser) const{ return FInputDeviceId(); }
bool UCommonUserSubsystem::ShouldWaitForStartInput() const{ return bool(); }
ELoginStatusType UCommonUserSubsystem::GetLocalUserLoginStatus(FPlatformUserId PlatformUser,
EOnlineIntegrationUnmappedContext Context) const{ return ELoginStatusType(); }
FUniqueNetIdRepl UCommonUserSubsystem::GetLocalUserNetId(FPlatformUserId PlatformUser,
EOnlineIntegrationUnmappedContext Context) const{ return FUniqueNetIdRepl(); }
FUniqueNetIdRepl UCommonUserSubsystem::GetLocalUserNetId(FPlatformUserId PlatformUser, EOnlineIntegrationMappedContext Context) const{ return FUniqueNetIdRepl(); }
FString UCommonUserSubsystem::PlatformUserIdToString(FPlatformUserId UserId){ return FString(); }
FText UCommonUserSubsystem::GetPrivilegeDescription(ECommonUserPrivilege Privilege) const{ return FText(); }
FText UCommonUserSubsystem::GetPrivilegeResultDescription(ECommonUserPrivilegeResult Result) const{ return FText(); }
TFuture<UE::Online::TOnlineResult<UE::Online::FAuthLogin>> UCommonUserSubsystem::LoginLocalUser(ULocalUserInfo* UserInfo, FCommonUserInitializeParams Params){ return TFuture<UE::Online::TOnlineResult<UE::Online::FAuthLogin>>(); }
void UCommonUserSubsystem::SetLocalPlayerUserInfo(ULocalPlayer* LocalPlayer, const ULocalUserInfo* UserInfo){ }
FName UCommonUserSubsystem::GetServicesProvider(EOnlineIntegrationUnmappedContext Context){ return FName(); }
void UCommonUserSubsystem::SetupLoginForCrossplayRefreshTimer(FPlatformUserId InPlatformUserId){ }
void UCommonUserSubsystem::RefreshLoginForCrossplay(FPlatformUserId InPlatformUserId){ }
ULocalUserInfo* UCommonUserSubsystem::CreateLocalUserInfo(int32 LocalPlayerIndex){ return nullptr; }
void UCommonUserSubsystem::OnOnlineContextCreated(){ }
void UCommonUserSubsystem::LogOutLocalUser(FPlatformUserId PlatformUser){ }
TFuture<UE::Online::TOnlineResult<UE::Online::FAuthLogin>> UCommonUserSubsystem::LoginForContext(ULocalUserInfo* LocalUserInfo, EOnlineIntegrationUnmappedContext Context, TArray<ECommonUserLoginType> AllowedLoginTypes){ return TFuture<UE::Online::TOnlineResult<UE::Online::FAuthLogin>>(); }
TFuture<UE::Online::TOnlineResult<UE::Online::FAuthLogin>> UCommonUserSubsystem::LoginForCrossPlay(ULocalUserInfo* LocalUserInfo){ return TFuture<UE::Online::TOnlineResult<UE::Online::FAuthLogin>>(); }
ECommonUserPrivilege UCommonUserSubsystem::ConvertOnlineServicesPrivilege(UE::Online::EUserPrivileges Privilege){ return ECommonUserPrivilege(); }
UE::Online::EUserPrivileges UCommonUserSubsystem::ConvertOnlineServicesPrivilege(ECommonUserPrivilege Privilege){ return UE::Online::EUserPrivileges(); }
ECommonUserPrivilegeResult UCommonUserSubsystem::ConvertOnlineServicesPrivilegeResult(UE::Online::EUserPrivileges Privilege, UE::Online::EPrivilegeResults Results){ return ECommonUserPrivilegeResult(); }
void UCommonUserSubsystem::CacheConnectionStatus(EOnlineIntegrationUnmappedContext Context){ }
TSharedPtr<UE::Online::FAccountInfo> UCommonUserSubsystem::GetOnlineServiceAccountInfo(UE::Online::IAuthPtr AuthService, FPlatformUserId InUserId) const{ return TSharedPtr<UE::Online::FAccountInfo>(); }
void UCommonUserSubsystem::HandleAuthLoginStatusChanged(const UE::Online::FAuthLoginStatusChanged& EventParameters, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandlePendingAuthExpiration(const UE::Online::FAuthPendingAuthExpiration& PendingAuthExpiration, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleNetworkConnectionStatusChanged(const UE::Online::FConnectionStatusChanged& EventParameters, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandlePresenceUpdated(const UE::Online::FPresenceUpdated& PresenceUpdated, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleSessionInviteReceived(const UE::Online::FSessionInviteReceived& InviteReceived, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleSessionJoined(const UE::Online::FSessionJoined& SessionJoined, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleSessionLeft(const UE::Online::FSessionLeft& SessionLeft, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleSessionUpdated(const UE::Online::FSessionUpdated& SessionUpdated, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleUISessionJoinRequested(const UE::Online::FUISessionJoinRequested& SessionJoinRequested, EOnlineIntegrationUnmappedContext Context){ }
void UCommonUserSubsystem::HandleInputDeviceConnectionChanged(EInputDeviceConnectionState NewConnectionState, FPlatformUserId PlatformUserId,
FInputDeviceId InputDeviceId){ }
bool UCommonUserSubsystem::OverrideInputKeyForLogin(FInputKeyEventArgs& EventArgs){ return bool(); }
Loading

0 comments on commit 1bd7304

Please sign in to comment.