diff --git a/Config/DefaultEngine.ini b/Config/DefaultEngine.ini index 03b5afd..6f24f3f 100644 --- a/Config/DefaultEngine.ini +++ b/Config/DefaultEngine.ini @@ -76,7 +76,8 @@ bUseManualIPAddress=False ManualIPAddress= [/Script/Engine.GameEngine] -+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver") +!NetDriverDefinitions=ClearArray ++NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="/Script/SteamSockets.SteamSocketsNetDriver",DriverClassNameFallback="/Script/SteamSockets.SteamNetSocketsNetDriver") [OnlineSubsystem] DefaultPlatformService=Steam @@ -84,9 +85,17 @@ DefaultPlatformService=Steam [OnlineSubsystemSteam] bEnabled=true SteamDevAppId=480 - bInitServerOnClient=true +bUsesPresence=true +bUseLobbiesIfAvailable=true +bUseSteamNetworking=true +bAllowP2PPacketRelay=true [/Script/OnlineSubsystemSteam.SteamNetDriver] NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection" +[SystemSettings] +net.CurrentHandshakeVersion=2 +net.MinHandshakeVersion=2 +net.VerifyNetSessionID=0 +net.VerifyNetClientID=0 \ No newline at end of file diff --git a/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset b/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset index ac91ace..6c2e5d8 100644 Binary files a/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset and b/Content/StarterContent/HDRI/HDRI_Epic_Courtyard_Daylight.uasset differ diff --git a/README.md b/README.md index e0bc854..f6e0345 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,8 @@ # Steam (Advanced Session Plugin) +An example project with OSS Steam, Steam Sockets made on Blueprints. IMPORTANT: The name ‘Advanced Session Plugin’ refers to the use of this plugin in this project! -Developed with Unreal Engine 5 +Build Game (with Steam Sockets) - [link](https://mega.nz/file/7ChX3BpD#Jg5qy90EQs_ON-VONYps329WP5cfC7NeL9-85X7ASQQ) Discord Server - https://discord.gg/AyPUwKdbTK +Developed with Unreal Engine 5 diff --git a/Source/Steam/Steam.Build.cs b/Source/Steam/Steam.Build.cs index 4d82b4b..3065e80 100644 --- a/Source/Steam/Steam.Build.cs +++ b/Source/Steam/Steam.Build.cs @@ -11,6 +11,9 @@ public class Steam : ModuleRules PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" }); PrivateDependencyModuleNames.AddRange(new string[] { }); + + DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam"); + // Uncomment if you are using Slate UI // PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" }); diff --git a/Steam.uproject b/Steam.uproject index 579c9ce..e7823f2 100644 --- a/Steam.uproject +++ b/Steam.uproject @@ -25,6 +25,29 @@ { "Name": "OnlineSubsystemSteam", "Enabled": true + }, + { + "Name": "SteamSockets", + "Enabled": true + }, + { + "Name": "OnlineSubsystemGooglePlay", + "Enabled": false, + "SupportedTargetPlatforms": [ + "Android" + ] + }, + { + "Name": "OnlineSubsystemIOS", + "Enabled": false, + "SupportedTargetPlatforms": [ + "IOS", + "TVOS" + ] + }, + { + "Name": "OnlineSubsystemNull", + "Enabled": false } ], "TargetPlatforms": [ diff --git a/SteamSettings.ini b/SteamSettings.ini new file mode 100644 index 0000000..a50e259 --- /dev/null +++ b/SteamSettings.ini @@ -0,0 +1,102 @@ +Default: +[URL] +GameName=Steam + +[/Script/EngineSettings.GameMapsSettings] +EditorStartupMap=/Game/ThirdPerson/Maps/ThirdPersonMap.ThirdPersonMap +GameDefaultMap=/Game/ThirdPerson/Maps/MainMenu.MainMenu +TransitionMap=/Game/ThirdPerson/Maps/TransitionMap.TransitionMap +bUseSplitscreen=True +TwoPlayerSplitscreenLayout=Horizontal +ThreePlayerSplitscreenLayout=FavorTop +GlobalDefaultGameMode=/Game/ThirdPerson/Blueprints/BP_ThirdPersonGameMode.BP_ThirdPersonGameMode_C +GlobalDefaultServerGameMode=None + +[/Script/Engine.RendererSettings] +r.ReflectionMethod=2 +r.GenerateMeshDistanceFields=False +r.DynamicGlobalIlluminationMethod=0 +r.Lumen.TraceMeshSDFs=1 +r.Shadow.Virtual.Enable=0 +r.Mobile.EnableNoPrecomputedLightingCSMShader=1 +r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=True +r.DefaultFeature.AutoExposure.ExtendDefaultLuminanceRange=true +net.AllowPIESeamlessTravel=true + +[/Script/WindowsTargetPlatform.WindowsTargetSettings] +DefaultGraphicsRHI=DefaultGraphicsRHI_DX12 +-D3D12TargetedShaderFormats=PCD3D_SM5 ++D3D12TargetedShaderFormats=PCD3D_SM6 +-D3D11TargetedShaderFormats=PCD3D_SM5 ++D3D11TargetedShaderFormats=PCD3D_SM5 +Compiler=VisualStudio2022 +AudioSampleRate=48000 +AudioCallbackBufferFrameSize=1024 +AudioNumBuffersToEnqueue=1 +AudioMaxChannels=0 +AudioNumSourceWorkers=4 +SpatializationPlugin= +SourceDataOverridePlugin= +ReverbPlugin= +OcclusionPlugin= +CompressionOverrides=(bOverrideCompressionTimes=False,DurationThreshold=5.000000,MaxNumRandomBranches=0,SoundCueQualityIndex=0) +CacheSizeKB=65536 +MaxChunkSizeOverrideKB=0 +bResampleForDevice=False +MaxSampleRate=48000.000000 +HighSampleRate=32000.000000 +MedSampleRate=24000.000000 +LowSampleRate=12000.000000 +MinSampleRate=8000.000000 +CompressionQualityModifier=1.000000 +AutoStreamingThreshold=0.000000 +SoundCueCookQualityIndex=-1 + +[/Script/HardwareTargeting.HardwareTargetingSettings] +TargetedHardwareClass=Desktop +AppliedTargetedHardwareClass=Desktop +DefaultGraphicsPerformance=Maximum +AppliedDefaultGraphicsPerformance=Maximum + +[/Script/Engine.Engine] ++ActiveGameNameRedirects=(OldGameName="TP_ThirdPersonBP",NewGameName="/Script/Steam") ++ActiveGameNameRedirects=(OldGameName="/Script/TP_ThirdPersonBP",NewGameName="/Script/Steam") + +[/Script/AndroidFileServerEditor.AndroidFileServerRuntimeSettings] +bEnablePlugin=True +bAllowNetworkConnection=True +SecurityToken=02698D004705CC8BAEBCD695ADDC04A3 +bIncludeInShipping=False +bAllowExternalStartInShipping=False +bCompileAFSProject=False +bUseCompression=False +bLogFiles=False +bReportStats=False +ConnectionType=USBOnly +bUseManualIPAddress=False +ManualIPAddress= + +[/Script/Engine.GameEngine] ++NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver") + +[OnlineSubsystem] +DefaultPlatformService=Steam + +[OnlineSubsystemSteam] +bEnabled=true +SteamDevAppId=480 +bInitServerOnClient=true +bUsesPresence=true +bUseLobbiesIfAvailable=true +bUseSteamNetworking=true + +[/Script/OnlineSubsystemSteam.SteamNetDriver] +NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection" + + +steamsockets: +[SystemSettings] +net.CurrentHandshakeVersion=2 +net.MinHandshakeVersion=2 +net.VerifyNetSessionID=0 +net.VerifyNetClientID=0 \ No newline at end of file