Hey guys. I’m trying to get my dedicated server to work with steam. Where I can register the server to steam for a server list however I am getting a SteamUtilsPtr crash when the server loads up. However when I turn bUsesPresence and AllowJoinViaPresence off the server loads up fine and goes to its waitingformatch state.
Here is my code for the RegisterServer in GameSession
void ARokkitGameSession::RegisterServer() {
const int MaxNumPlayers = 8;
const bool bIsPresence = false;
const bool bIsLAN = false;
const int HostingPlayerNum = 0;
const FString GameType = "RokkitGameMode";
const FString MapName = "Playground"; //< TODO: Get actual name.
const auto UserId = MakeShareable(new FUniqueNetIdString(FString::Printf(TEXT("%d"), HostingPlayerNum)));
IOnlineSubsystem* const OnlineSub = IOnlineSubsystem::Get();
if (OnlineSub)
{
IOnlineSessionPtr Sessions = OnlineSub->GetSessionInterface();
if (Sessions.IsValid())
{
FOnlineSessionSettings Settings;
Settings.NumPublicConnections = 8;
Settings.bShouldAdvertise = true;
Settings.bAllowJoinInProgress = true;
Settings.bIsLANMatch = false;
Settings.bUsesPresence = false;
Settings.bAllowJoinViaPresence = false;
Settings.bIsDedicated = true;
UE_LOG(LogTemp, Warning, TEXT("Creating Session for Dedicated Server"));
Sessions->CreateSession(0, GameSessionName, Settings);
}
}
}
Interestingly enough I can find the game in the server list in steam. It shows up as “Unreal Test” and you can see 0/8 slots etc etc. However anytime I try to join game via that in steam I get some error about not having the mod install (very separate issue). I do have a UI in my game set up right now to see if I can get the list of servers however that is coming back 0. Someone told me you can’t necessarily join a dedicated server if its on the same machine with steam is that true? Which would make sense why I can’t see my server in the list. Any way around that?
Anyways, here’s the crash dump. Important bit is at the bottom of it.
Log file open, 08/29/17 10:15:23
LogPlatformFile: Not using cached read wrapper
LogInit:Display: RandInit(306925828) SRandInit(306925828).
LogTaskGraph: Started task graph with 5 named threads and 9 total threads with 1 sets of task threads.
LogStats: Stats thread started at 0.087235
LogInit: Using libcurl 7.47.1
LogInit: - built for x86_64-pc-win32
LogInit: - supports SSL with OpenSSL/1.0.2g
LogInit: - supports HTTP deflate (compression) using libz 1.2.8
LogInit: - other features:
LogInit: CURL_VERSION_SSL
LogInit: CURL_VERSION_LIBZ
LogInit: CURL_VERSION_IPV6
LogInit: CURL_VERSION_ASYNCHDNS
LogInit: CURL_VERSION_LARGEFILE
LogInit: CURL_VERSION_IDN
LogInit: CurlRequestOptions (configurable via config and command line):
LogInit: - bVerifyPeer = false - Libcurl will NOT verify peer certificate
LogInit: - bUseHttpProxy = false - Libcurl will NOT use HTTP proxy
LogInit: - bDontReuseConnections = false - Libcurl will reuse connections
LogInit: - CertBundlePath = nullptr - Libcurl will use whatever was configured at build time.
LogOnline:Display: STEAM: Loading Steam SDK 1.39
LogInit: WinSock: version 1.1 (2.2), MaxSocks=32767, MaxUdp=65467
LogInit: Build: ++UE4+Release-4.16-CL-0
LogInit: Engine Version: 4.16.3-0+++UE4+Release-4.16
LogInit: Compatible Engine Version: 4.16.0-0+++UE4+Release-4.16
LogInit: Net CL: 0
LogDevObjectVersion: Number of dev versions registered: 16
LogDevObjectVersion: Dev-Blueprints (B0D832E4-1F89-4F0D-ACCF-7EB736FD4AA2): 9
LogDevObjectVersion: Dev-Build (E1C64328-A22C-4D53-A36C-8E866417BD8C): 0
LogDevObjectVersion: Dev-Core (375EC13C-06E4-48FB-B500-84F0262A717E): 2
LogDevObjectVersion: Dev-Editor (E4B068ED-F494-42E9-A231-DA0B2E46BB41): 17
LogDevObjectVersion: Dev-Framework (CFFC743F-43B0-4480-9391-14DF171D2073): 23
LogDevObjectVersion: Dev-Mobile (B02B49B5-BB20-44E9-A304-32B752E40360): 0
LogDevObjectVersion: Dev-Networking (A4E4105C-59A1-49B5-A7C5-40C4547EDFEE): 0
LogDevObjectVersion: Dev-Online (39C831C9-5AE6-47DC-9A44-9C173E1C8E7C): 0
LogDevObjectVersion: Dev-Physics (78F01B33-EBEA-4F98-B9B4-84EACCB95AA2): 0
LogDevObjectVersion: Dev-Platform (6631380F-2D4D-43E0-8009-CF276956A95A): 0
LogDevObjectVersion: Dev-Rendering (12F88B9F-8875-4AFC-A67C-D90C383ABD29): 15
LogDevObjectVersion: Dev-Sequencer (7B5AE74C-D270-4C10-A958-57980B212A5A): 4
LogDevObjectVersion: Dev-VR (D7296918-1DD6-4BDD-9DE2-64A83CC13884): 0
LogDevObjectVersion: Dev-LoadTimes (C2A15278-BFE7-4AFE-6C17-90FF531DF755): 1
LogDevObjectVersion: Private-Geometry (6EACA3D4-40EC-4CC1-B786-8BED09428FC5): 1
LogDevObjectVersion: Dev-AnimPhys (29E575DD-E0A3-4627-9D10-D276232CDCEA): 3
LogInit: Compiled (64-bit): Aug 2 2017 12:47:17
LogInit: Compiled with Visual C++: 19.00.24215.01
LogInit: Build Configuration: Development
LogInit: Branch Name: ++UE4+Release-4.16
LogInit: Command line: -log LOG=the_steam_tests_1.log
LogInit: Base directory: D:/Unreal Engine Projects/Rokkit/WindowsNoEditor/Rokkit/Binaries/Win64/
LogInit: Installed Engine Build: 0
LogInit: Presizing for max 2097152 objects, including 0 objects not considered by GC, pre-allocating 0 bytes for permanent pool.
LogStreaming:Display: Async Loading initialized: Event Driven Loader: true, Async Loading Thread: false
LogInit: Object subsystem initialized
[2017.08.29-14.15.23:448] 0]LogInit: Selected Device Profile: [WindowsServer]
[2017.08.29-14.15.23:449] 0]LogInit: Applying CVar settings loaded from the selected device profile: [WindowsServer]
[2017.08.29-14.15.23:454] 0]LogInit: Computer: BRANDON-PC
[2017.08.29-14.15.23:454] 0]LogInit: User: Brandon
[2017.08.29-14.15.23:455] 0]LogInit: CPU Page size=4096, Cores=6
[2017.08.29-14.15.23:455] 0]LogInit: High frequency timer resolution =3.416985 MHz
[2017.08.29-14.15.23:456] 0]LogMemory: Memory total: Physical=15.9GB (16GB approx)
[2017.08.29-14.15.23:456] 0]LogMemory: Platform Memory Stats for WindowsServer
[2017.08.29-14.15.23:456] 0]LogMemory: Process Physical Memory: 105.44 MB used, 105.44 MB peak
[2017.08.29-14.15.23:457] 0]LogMemory: Process Virtual Memory: 117.44 MB used, 117.44 MB peak
[2017.08.29-14.15.23:457] 0]LogMemory: Physical Memory: 8358.28 MB used, 7951.31 MB free, 16309.59 MB total
[2017.08.29-14.15.23:458] 0]LogMemory: Virtual Memory: 433.45 MB used, 7951.31 MB free, 134217728.00 MB total
[2017.08.29-14.15.23:503] 0]LogInit: Using OS detected language (en-US).
[2017.08.29-14.15.23:503] 0]LogInit: Using OS detected locale (en-US).
[2017.08.29-14.15.23:504] 0]LogTextLocalizationManager: No specific localization for 'en-US' exists, so the 'en' localization will be used.
[2017.08.29-14.15.23:549] 0]LogAssetRegistry: FAssetRegistry took 0.0082 seconds to start up
[2017.08.29-14.15.23:630] 0]LogPackageLocalizationCache: Processed 4 localized package path(s) for 2 prioritized culture(s) in 0.003241 seconds
[2017.08.29-14.15.23:630] 0]LogPakFile: New pak file ../../../Rokkit/Content/Paks/Rokkit-WindowsNoEditor.pak added to pak precacher.
[2017.08.29-14.15.23:632] 0]LogInit: Selected Device Profile: [WindowsServer]
[2017.08.29-14.15.23:678] 0]LogNetVersion: Rokkit , NetCL: 0, EngineNetVer: 2, GameNetVer: 0 (Checksum: 3894751114)
[2017.08.29-14.15.23:690] 0]LogUObjectArray: 29698 objects as part of root set at end of initial load.
[2017.08.29-14.15.23:691] 0]LogUObjectAllocator: 6159456 out of 0 bytes used by permanent object pool.
[2017.08.29-14.15.23:691] 0]LogUObjectArray: CloseDisregardForGC: 0/0 objects in disregard for GC pool
[2017.08.29-14.15.23:692] 0]LogModuleManager:Warning: ModuleManager: Module 'XAudio2' not found - its StaticallyLinkedModuleInitializers function is null.
[2017.08.29-14.15.23:709] 0]LogAndroidPermission: UAndroidPermissionCallbackProxy::GetInstance
[2017.08.29-14.15.23:722] 0]LogEngine: Initializing Engine...
[2017.08.29-14.15.23:722] 0]LogStreaming:Error: Couldn't find file for package /Script/Engine requested by async loading code. NameToLoad: /Script/Engine
[2017.08.29-14.15.23:762] 0]LogStats: UGameplayTagsManager::ConstructGameplayTagTree: Construct from data asset - 0.000 s
[2017.08.29-14.15.23:762] 0]LogStats: UGameplayTagsManager::ConstructGameplayTagTree: GameplayTagTreeChangedEvent.Broadcast - 0.000 s
[2017.08.29-14.15.23:763] 0]LogInit: Texture streaming: Disabled
[2017.08.29-14.15.23:767] 0]LogInit:Display: Game Engine Initialized.
[2017.08.29-14.15.23:767] 0]LogInit:Display: Starting Game.
[2017.08.29-14.15.23:767] 0]LogNet: Browse: /Game/Maps/Playground?Name=Player
[2017.08.29-14.15.23:768] 0]LogLoad: LoadMap: /Game/Maps/Playground?Name=Player
[2017.08.29-14.15.23:785] 0]LogMemory: Platform Memory Stats for WindowsServer
[2017.08.29-14.15.23:786] 0]LogMemory: Process Physical Memory: 185.46 MB used, 252.70 MB peak
[2017.08.29-14.15.23:786] 0]LogMemory: Process Virtual Memory: 173.25 MB used, 243.55 MB peak
[2017.08.29-14.15.23:787] 0]LogMemory: Physical Memory: 8446.48 MB used, 7863.11 MB free, 16309.59 MB total
[2017.08.29-14.15.23:787] 0]LogMemory: Virtual Memory: 503.49 MB used, 7863.11 MB free, 134217728.00 MB total
[2017.08.29-14.15.23:787] 0]LogMemory:
[2017.08.29-14.15.23:788] 0]Allocator Stats for binned2: (not implemented)
[2017.08.29-14.15.23:794] 0]LogAIModule: Creating AISystem for world Playground
[2017.08.29-14.15.23:795] 0]LogLoad: Game class is 'RokkitGameMode'
[2017.08.29-14.15.23:795] 0]LogTemp:Display: ParseSettings for GameNetDriver
[2017.08.29-14.15.23:796] 0]LogTemp:Display: ParseSettings for SteamNetDriver_0
[2017.08.29-14.15.23:796] 0]LogTemp:Display: ParseSettings for GameNetDriver
[2017.08.29-14.15.23:797] 0]LogNet:Display: SteamNetDriver_0 bound to port 7777
[2017.08.29-14.15.23:797] 0]PacketHandlerLog: Loaded PacketHandler component: Engine.EngineHandlerComponentFactory (StatelessConnectHandlerComponent)
[2017.08.29-14.15.23:798] 0]LogNet: GameNetDriver SteamNetDriver_0 IpNetDriver listening on port 7777
[2017.08.29-14.15.23:799] 0]LogWorld: Bringing World /Game/Maps/Playground.Playground up for play (max tick rate 30) at 2017.08.29-10.15.23
[2017.08.29-14.15.23:800] 0]LogTemp:Warning: Creating Session for Dedicated Server
[2017.08.29-14.15.23:800] 0]LogNetVersion: Rokkit 1.0.0.0, NetCL: 0, EngineNetVer: 2, GameNetVer: 0 (Checksum: 2887692576)
[2017.08.29-14.15.23:801] 0]LogWorld: Bringing up level for play took: 0.002063
[2017.08.29-14.15.23:801] 0]LogGameMode:Display: Match State Changed from EnteringMap to WaitingToStart
[2017.08.29-14.15.23:802] 0]LogScript:Warning: Accessed None trying to read property CallFunc_Create_ReturnValue
Playground_C /Game/Maps/Playground.Playground:PersistentLevel.Playground_C_0
Function /Game/Maps/Playground.Playground_C:ExecuteUbergraph_Playground:0081
[2017.08.29-14.15.23:803] 0]LogScript:Warning: Script call stack:
Function /Game/Maps/Playground.Playground_C:ReceiveBeginPlay
Function /Game/Maps/Playground.Playground_C:ExecuteUbergraph_Playground
[2017.08.29-14.15.23:805] 0]LogGameState: Match State Changed from EnteringMap to WaitingToStart
[2017.08.29-14.15.23:805] 0]LogLoad: Took 0.036719 seconds to LoadMap(/Game/Maps/Playground)
[2017.08.29-14.15.23:806] 0]LogLoad: (Engine Initialization) Total time: 0.79 seconds
[2017.08.29-14.15.23:806] 0]LogExternalProfiler: No external profilers were discovered. External profiling features will not be available.
[2017.08.29-14.15.23:850] 1]LogWindows: Windows GetLastError: The operation completed successfully. (0)
[2017.08.29-14.15.23:917] 3]LogWindows:Warning: CreateProc failed (2) ../../../Engine/Binaries/Win64/CrashReportClient.exe "D:/Unreal Engine Projects/Rokkit/WindowsNoEditor/Rokkit/Saved/Crashes/UE4CC-Windows-A663BBED4783424C4D7E1BA0235CF43D_0000" -Unattended -nullrhi -AppName=UE4-Rokkit -CrashGUID=UE4CC-Windows-A663BBED4783424C4D7E1BA0235CF43D_0000 -DebugSymbols=..\..\..\Engine\Intermediate\Symbols
[2017.08.29-14.15.23:918] 3]LogThreadingWindows:Error: Runnable thread OnlineAsyncTaskThreadSteam DefaultInstance crashed.
[2017.08.29-14.15.23:918] 3]LogWindows:Error: === Critical error: ===
[2017.08.29-14.15.23:919] 3]LogWindows:Error:
[2017.08.29-14.15.23:919] 3]LogWindows:Error: Assertion failed: SteamUtilsPtr [File:D:\Unreal Engine Source\UnrealEngine-4.16.3\Engine\Plugins\Online\OnlineSubsystemSteam\Source\Private\OnlineSessionAsyncLobbySteam.cpp] [Line: 433]
[2017.08.29-14.15.23:920] 3]LogWindows:Error:
[2017.08.29-14.15.23:921] 3]LogWindows:Error:
[2017.08.29-14.15.23:921] 3]LogWindows:Error:
[2017.08.29-14.15.23:922] 3]LogWindows:Error: KERNELBASE.dll!0x00000000ECC93C58
[2017.08.29-14.15.23:922] 3]LogWindows:Error: RokkitServer.exe!0x00000000A50E0EBA
[2017.08.29-14.15.23:923] 3]LogWindows:Error: RokkitServer.exe!0x00000000A4EF788B
[2017.08.29-14.15.23:923] 3]LogWindows:Error: RokkitServer.exe!0x00000000A4E86548
[2017.08.29-14.15.23:924] 3]LogWindows:Error: RokkitServer.exe!0x00000000A8B82EED
[2017.08.29-14.15.23:924] 3]LogWindows:Error: RokkitServer.exe!0x00000000A8B237B9
[2017.08.29-14.15.23:925] 3]LogWindows:Error: RokkitServer.exe!0x00000000A8B21D5B
[2017.08.29-14.15.23:925] 3]LogWindows:Error: RokkitServer.exe!0x00000000A50F42F8
[2017.08.29-14.15.23:926] 3]LogWindows:Error: RokkitServer.exe!0x00000000A50EF1A9
[2017.08.29-14.15.23:927] 3]LogWindows:Error: KERNEL32.DLL!0x00000000EEA58364
[2017.08.29-14.15.23:928] 3]LogWindows:Error: ntdll.dll!0x00000000EF957091
[2017.08.29-14.15.23:928] 3]LogWindows:Error: ntdll.dll!0x00000000EF957091
[2017.08.29-14.15.23:929] 3]LogWindows:Error:
[2017.08.29-14.15.23:930] 3]LogWindows:Error: Crash in runnable thread OnlineAsyncTaskThreadSteam DefaultInstance
[2017.08.29-14.15.23:933] 3]LogExit: Executing StaticShutdownAfterError
[2017.08.29-14.15.23:933] 3]LogWindows: FPlatformMisc::RequestExit(1)
[2017.08.29-14.15.23:934] 3]Log file closed, 08/29/17 10:15:23
If anyone could help me figure this out I would greatly appreciate it. Been at this a few weeks now and been banging my head against the wall it seems. I just want to find a way to reliably test multiplayer and reliably test it with other people until I get a deployment strategy for future builds.