Can't save due to "Graph is linked to external private object"

all of my create objects look like this line here

The function looks correct. I’m sorry but there appears to be nothing left that I can do without repro steps that continue to reproduce this issue.

  • Have you attempted to reproduce the issue in the original project you supplied after making the code change?
  • In your current project, have you examined what the Outer of the created objects are and confirmed that those UObjects are in fact the ones being referenced by the Blueprint?
  • Does this issue only occur after PIE?

Something that is coming in 4.9 that may help you resolve this is a new node exposed for Blueprints which allows you to create generic UObjects safely and I recommend to use that to get around these problems.

I found that that unlinking whatever blueprint is having the issues and compiling the blueprint and then refreshing all the nodes gets rid of the problem

Has this been fixed as of 4.10.4? I’m experiencing a lot of “Graph is linked to private object(s) in an external package.” issues on trying to save my project. Same for 4.11.0 preview 6.

Hello fviktor,

This ended up being determined to be by design. While the “Graph is linked to private object(s) in an external package.” may seem like an error caused by a bug, it is caused by a problem with the structure of your project and most likely a reference that shouldn’t exist. I would be happy to attempt to help you fix this issue, but it would best for you to make a new Answerhub post of your own.

I fixed my problem by going to File > Refresh All Nodes. Took me a while to figure it out.

3 Likes

thx mate :}

man, I owe you one!

I have the same issue with WidgetAnimation / BindWidgetAnim.

As soon as I give a widget an animation, I can no longer use it anywhere, because every blueprint(layout) that uses the widget fails to save with this error.

It’s caused not by the animation itself, but by the UPROPERTY(meta = (BindWidgetAnim)), when I delete it, it works. But I can no longer access the animation with c++.

I had same issue and was able to solve it by adding Transient flag to the property. It looks like engine creates an instance of the anim and copies it to the property, so it must be transient as it happens every time at the property initialization time.

saved my butt 5 years later haha thank you!

saved me many years and months later too. thank you!

I just had this issue with Blueprint and wow.

If refresh node doesn’t work for you, make sure you didn’t cut-paste EXEC / THEN nodes from collapsed ones. Removing them will allow the blueprint to save again.

This bug is literally cancer, my blueprint was entirely gone but thankfully I was able to salvage an auto save.

3 Likes

Hey, for future ref, this bit me on an animation project.

On just a couple of the dozens of squences where I baked animation on an Sk Mesh with “Edit with FK rig”, this bug popped up and would kill the level sequence. (Unreal 5.0.2)

I was able to fix the problem by baking the animation on the SK mesh to an Animation Sequence, adding that sequence and deleting the FK Rig. Was a quick solve thankfully as the possible destruction it would wrought was big.

1 Like

You’re creating a UObject in a transient package and trying to save it, that’s why it won’t save. If you want to create UObjects that are serialized, you need to use the object creating it as the outer.

1 Like

In my case problem was that some bp Function had an “outputs” node copypasted from some collapsed or macro node. Just removing it solved my problem

note: yes, it worked fine like this and even could be saved without a problems. Problem occured only when i tried to move file to other folder

Refreshing the nodes didn’t work for me…
But this other solution did work.

solution

1 Like

thanks!! this helped