Hi!
I’ve noticed that our shipping build for the Steam version of our game continues to work fine even when the Steam application is closed and UE_PROJECT_STEAMSHIPPINGID is 0.
I know, that UE_PROJECT_STEAMSHIPPINGID has not to be 0, but I wanted to let you know about this issue. It looks like a problem, but maybe I’m wrong.
After looking into the OnlineSubsystemSteam, I noticed that there may be a flaw in the FOnlineSubsystemSteam::InitSteamworksClient method.
My quick fix was to add else block with exiting after to “if (bSteamworksClientInitialized)” check.
if (bSteamworksClientInitialized)
{
// ...
}
#if UE_BUILD_SHIPPING
else // new code starts
{
UE_LOG_ONLINE(Error, TEXT("Steamworks client has not been initialized, exiting."));
FPlatformMisc::RequestExit(false);
} // new code ends
#endif
UE_LOG_ONLINE(Log, TEXT("[AppId: %d] Client API initialized %i"), GetSteamAppId(), bSteamworksClientInitialized);
return bSteamworksClientInitialized;
Maybe there is some other logic that have to solve this problem?
Thank you in advice