x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Sessions, ActiveNetDrivers empty, crash since UE4 4.13.0

This is a duplicate of the forum entry : https://forums.unrealengine.com/showthread.php?124069-Sessions-ActiveNetDrivers-empty-crash-since-UE4-4-13-0 because I did not know I should post here.

I have a simple Multiplayer project which works in 4.12.5 and 4.13 (with conversion). I put the relevant changes in my real project in 4.13, but it does not work there.

I am using How To Use Sessions In C++ as reference how to do it, because I did not find any other documentation which made any sense to me. "Look into shooter" is NOT a documentation.

I think I have all relevant changes in my real project, but instead of just working like my test project, it always crashed in UnrealEngine.cpp line ca. 706 where there is this code:

 for (FNamedNetDriver& ActiveNetDriver : ActiveNetDrivers)
 {
     Collector.AddReferencedObject(ActiveNetDriver.NetDriver, ReferencingObject);
 }

and hovering tells me that ActiveNetDrivers is "Empty".

I saw this entry in the update log:

New: Online Subsystem modules have been moved to Plugins, out of Engine/Source. Engine's dependency on OnlineSubsystem modules have been removed, in some places replaced with a new interface UOnlineEngineInterface for a small subset of features Engine requires. UOnlineEngineInterface is implemented in UOnlineEngineInterfaceImpl. FUniqueNetId and FUniqueNetIdWrapper have been promoted to a basic type in core, but they are still opaque types and must be created by online subsystems.

and I think it possible that this is the reason for my problem. Perhaps the original Project has some network vodoo which my new 4.13 project has not.

I had the idea that in DefaultEngine.ini the section [/Script/Engine.GameEngine] could be of interest. But I just don't find any documentation about this.

Any ideas?

I think it will not help, but here is the callstack:

      UE4Editor-CoreUObject.dll!FGCCollector::HandleObjectReference(UObject * & Object, const UObject * ReferencingObject, const UProperty * ReferencingProperty) Line 571    C++
 >    UE4Editor-Engine.dll!FWorldContext::AddReferencedObjects(FReferenceCollector & Collector, const UObject * ReferencingObject) Line 707    C++
      UE4Editor-Engine.dll!UEngine::AddReferencedObjects(UObject * InThis, FReferenceCollector & Collector) Line 1752    C++
      UE4Editor-CoreUObject.dll!TFastReferenceCollector<FGCReferenceProcessor,FGCCollector,FGCArrayPool,0>::ProcessObjectArray(TArray<UObject *,FDefaultAllocator> & InObjectsToSerializeArray, TRefCountPtr<FGraphEvent> & MyCompletionGraphEvent) Line 352    C++
      UE4Editor-CoreUObject.dll!TGraphTask<TFastReferenceCollector<FGCReferenceProcessor,FGCCollector,FGCArrayPool,0>::FCollectorTask>::ExecuteTask(TArray<FBaseGraphTask *,FDefaultAllocator> & NewTasks, ENamedThreads::Type CurrentThread) Line 868    C++
      UE4Editor-Core.dll!FTaskThreadAnyThread::ProcessTasks() Line 1255    C++
      UE4Editor-Core.dll!FTaskThreadAnyThread::ProcessTasksUntilQuit(int QueueIndex) Line 1149    C++
      UE4Editor-Core.dll!FTaskThreadBase::Run() Line 621    C++
      UE4Editor-Core.dll!FRunnableThreadWin::Run() Line 74    C++
      UE4Editor-Core.dll!FRunnableThreadWin::GuardedRun() Line 23    C++

I created a new project, this time I put into the project the networking code first, tested it with a mini UMG, everything works. I add the slate code, everything works. I close the editor and the Visual Studio, rebuild everything, just a rebuild, no other changes: It crashes again. Any idea?

Product Version: UE 4.13
Tags:
more ▼

asked Sep 29 '16 at 06:29 PM in Bug Reports

avatar image

BugSwat
210 9 14 20

avatar image ImVawx ♦♦ STAFF Sep 30 '16 at 03:06 PM

Hey BugSwat,

Does your project only include whats in the "How To Use Sessions In C++" tutorial? Or, are you using that for something larger?

Thanks.

avatar image BugSwat Sep 30 '16 at 10:01 PM

Hi Kyle, I have some versions of my projects. Each one solves a different problem, because I am new to UE4. Now I wanted to put things together and started with menus and sessions, but because of the UE engine update I have a problem.

Is there somewhere an information how the DefaultEngine.ini entries for sessions (NULL for now, Steam later) have to look like?

avatar image ImVawx ♦♦ STAFF Sep 30 '16 at 10:15 PM

Steam DefaultEngine.ini:

https://wiki.unrealengine.com/Steam,_Using_the_Steam_SDK_During_Development#Config.2FDefaultEngine.ini

OnlineSubsystemNull:

Add this to DefaultEngine.ini:

 [OnlineSubsystem]
 DefaultPlatformService=Null


avatar image ImVawx ♦♦ STAFF Oct 04 '16 at 03:45 PM

Hey BugSwat,

Are you still having issues with your Sessions code?

Thanks.

avatar image BugSwat Oct 10 '16 at 07:51 AM

I stopped working on it because I just have no idea what to change.

The above code was already in my .ini. (OnlineSubsystem...)

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

I found my problem. Kind of very embarrassing but people are so helpful here, it would be not nice to not tell, just in case someone else makes the same mistake. Na, who would do such a dumb thing.

in DefaultEngine.ini I had all the time

 [OnlineSubsystem]
 DefaultPlatformService=Null

but in MyProject.Build.cs I had

 PrivateDependencyModuleNames.Add("OnlineSubsystem");

instead of

 PrivateDependencyModuleNames.Add("OnlineSubsystemNull");
more ▼

answered Oct 17 '16 at 09:38 AM

avatar image

BugSwat
210 9 14 20

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question