I’ve looked at countless other questions about this but can’t find a solution. To my knowledge, I have done everything I was supposed to do via:
In fact, that page seems outdated because when I went to install Steamworks in the 4.8 retail engine binaries, it was already there, in folder Steamv132, complete with all the required Steam DLLs. It also appears that rather than adding code into MyGame.Build.cs, all that is required is uncommenting a few lines there. Anyway, here is what I have done:
I have added this code to:
##DefaultEngine.ini
[/Script/Engine.GameEngine]
+NetDriverDefinitions=(DefName="GameNetDriver",DriverClassName="OnlineSubsystemSteam.SteamNetDriver",DriverClassNameFallback="OnlineSubsystemUtils.IpNetDriver")
[OnlineSubsystem]
DefaultPlatformService=Steam
[OnlineSubsystemSteam]
bEnabled=true
SteamDevAppId=480
[/Script/OnlineSubsystemSteam.SteamNetDriver]
NetConnectionClassName="OnlineSubsystemSteam.SteamNetConnection"
##MyGame.Build.cs
// Uncomment if you are using online features
PrivateDependencyModuleNames.Add("OnlineSubsystem");
if ((Target.Platform == UnrealTargetPlatform.Win32) || (Target.Platform == UnrealTargetPlatform.Win64))
{
if (UEBuildConfiguration.bCompileSteamOSS == true)
{
DynamicallyLoadedModuleNames.Add("OnlineSubsystemSteam");
}
}
##MyGame.Target.cs
public MyGameTarget(TargetInfo Target)
{
Type = TargetType.Game;
bUsesSteam = true;
}
I get the following warnings:
LogOnline:Display: STEAM: Loading Steam SDK 1.32
LogOnline:Warning: STEAM: Steam API disabled!
LogOnline:Display: STEAM: OnlineSubsystemSteam::Shutdown()
LogOnline:Warning: Unable to create OnlineSubsystem module Steam
LogOnline:Warning: Unable to load default OnlineSubsystem module Steam, using NULL interface
While the Steam Overlay seems to work fine despite the above warnings, I cannot test multiplayer.