Cable components disappear on editor reload

In the main character I used two cable components and every time I close the editor, the next time I open it the cable components are missing. I already tried to use object variables and cast them to cable components and setting them on construction script (to avoid having to replace every single reference of them every time) but on restart the casting nodes appeared with bad casting warning signs… Is anyone experiencing this too? I’m using 4.15 btw

For those who are having the same problem, I found out that it was because I was using a C++ template. I don’t know if in previous versions it’s the same or if with a blueprint on 4.15, but you have to add the cable component plugin to your build.cs file:

{
    		PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay", "CableComponent" });
            PrivateDependencyModuleNames.AddRange(new string[] { "CableComponent" });
            PrivateIncludePathModuleNames.AddRange(new string[] { "CableComponent" });
    }

Been struggling with that for a while, thanks!

I have the exact same problem on 4.21 with C++ template and this solution doesn’t help anymore

For future sufferers, there are bugs in the asset reference loading. You’re going to have find your hard dependencies in blueprint that are causing circular cycles, and break them. You shouldn’t have them anyway.

Extra hint for what happened here… we had a config UPROPERTY that was a hard pointer instead of a soft pointer that made the problem much more likely to occur by moving a lot of loading earlier.

How did you go about finding these errors @Robert Man?

I looked at what was loading on the callstack when I crashed because the cable component was missing.

We don’t crash at all the node just malfunctions and resets for us. Any ideas on how to troubleshoot this? Also it always works till we reopen the editor

You can breakpoint the code that throws the error in linker.cpp. Look for “PackageNotFoundShort”

Do you have a discord or something? Also what launch the project in visual studio debugging and it will flag there? Is that a function?

Hi there,
go to your engine installation to Engine/Plugins/Runtime/CableComponent and edit the CableComponent.uplugin file (you can do it with a text editor). Simply change the “LoadingPhase” variable to “PreDefault” instead of “Default”. This way, the plugin will initialize earlier and the Cable components will load properly.

3 Likes

This solution worked for me on 5.0 preview 2. Thanks for sharing!

This is still the fix as of official release 5.0.3, thanks for finding it!

Thanks for finding this.

Hi I want to ask do you know whether this can be pushed to git? Since it work for me but then everyone else in a Team also needs to change it to predefault but not everyone has code editor installed.
Thank you

I would say this depends if you use the engine source in git as well or just the project.
Since the cable component is an engine plugin, the said file does not reside within the project folder but the engine installation so in a usual source control setting where you only sync the project you would not be able to push this to the server.
But you could manually distribute the updated uplugin file.

I have 5.1, LoadingPhase is already PreDefault (by default. I didn’t change it) and I anyway lost Referenced Actor every time I close project and open it again. I need to fix it every time manually. Why?

And I have normal oficial engine installed by launcher.

i am using 5.1 and still facing the same issue the ref. keeps reseting on restart any solutions ??