Steam Sockets

This commit is contained in:
Risensy
2024-07-19 18:12:27 +03:00
parent cec34f0d50
commit 8fe5fa0e86
6 changed files with 142 additions and 3 deletions

View File

@@ -76,7 +76,8 @@ bUseManualIPAddress=False
ManualIPAddress= ManualIPAddress=
[/Script/Engine.GameEngine] [/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] [OnlineSubsystem]
DefaultPlatformService=Steam DefaultPlatformService=Steam
@@ -84,9 +85,17 @@ DefaultPlatformService=Steam
[OnlineSubsystemSteam] [OnlineSubsystemSteam]
bEnabled=true bEnabled=true
SteamDevAppId=480 SteamDevAppId=480
bInitServerOnClient=true bInitServerOnClient=true
bUsesPresence=true
bUseLobbiesIfAvailable=true
bUseSteamNetworking=true
bAllowP2PPacketRelay=true
[/Script/OnlineSubsystemSteam.SteamNetDriver] [/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection" NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"
[SystemSettings]
net.CurrentHandshakeVersion=2
net.MinHandshakeVersion=2
net.VerifyNetSessionID=0
net.VerifyNetClientID=0

View File

@@ -1,6 +1,8 @@
# Steam (Advanced Session Plugin) # 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! 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 Discord Server - https://discord.gg/AyPUwKdbTK
Developed with Unreal Engine 5

View File

@@ -11,6 +11,9 @@ public class Steam : ModuleRules
PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" }); PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore" });
PrivateDependencyModuleNames.AddRange(new string[] { }); PrivateDependencyModuleNames.AddRange(new string[] { });
DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam");
// Uncomment if you are using Slate UI // Uncomment if you are using Slate UI
// PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" }); // PrivateDependencyModuleNames.AddRange(new string[] { "Slate", "SlateCore" });

View File

@@ -25,6 +25,29 @@
{ {
"Name": "OnlineSubsystemSteam", "Name": "OnlineSubsystemSteam",
"Enabled": true "Enabled": true
},
{
"Name": "SteamSockets",
"Enabled": true
},
{
"Name": "OnlineSubsystemGooglePlay",
"Enabled": false,
"SupportedTargetPlatforms": [
"Android"
]
},
{
"Name": "OnlineSubsystemIOS",
"Enabled": false,
"SupportedTargetPlatforms": [
"IOS",
"TVOS"
]
},
{
"Name": "OnlineSubsystemNull",
"Enabled": false
} }
], ],
"TargetPlatforms": [ "TargetPlatforms": [

102
SteamSettings.ini Normal file
View File

@@ -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