Can't package game: "...has an inappropriate outermost"

Every time I pack my game, I have a lot of warnings and I can’t fix them because I have no idea what they mean.

Same thing when an error happen, like this one:

LogLinker:Error: BPGC_ARCH_FOR_CDO_StaticUtils_59 has an inappropriate outermost, it was probably saved with a deprecated outer (file: …/…/…/…/…/…/Users/marci_000/Projects/Squad51/Content/Gameplay/BP_TravellingCar.uasset)

UStaticUtils is a C++ class.
BP_TravellingCar is a blueprint.

There is some other similar errors, the only thing that changes is the blueprint, like these ones:

LogLinker:Error: BPGC_ARCH_FOR_CDO_StaticUtils_56 has an inappropriate outermost, it was probably saved with a deprecated outer (file: …/…/…/…/…/…/Users/marci_000/Projects/Squad51/Content/Gameplay/BP_DamagedPawn.uasset)
LogLinker:Error: BPGC_ARCH_FOR_CDO_SoundManager_52 has an inappropriate outermost, it was probably saved with a deprecated outer (file: …/…/…/…/…/…/Users/marci_000/Projects/Squad51/Content/Gameplay/BP_GameplayUtils.uasset)

The project works fine in editor, but I can’t pack. What can I do? I have no idea how to fix this (I don’t even know what is this error).

Edit:
I opened the reference viewer of one of the blueprints, and the result is the screenshot below. What the hell is that?

1 Like

Hey Marcio Daniel,

Could you do me a favor and provide the full output log so I can take a closer look?

link text

Here it is

Please also check the screenshot I added to the original post now. There are strange things on the reference viewer.

In my experience, this issue happens when something goes wrong with hot reload. Try closing the editor, and compile from visual studio. Try removing binaries and intermediate folder too before compiling if that doesn’t work, then re-open the editor and try to package again. Have you renamed the c++ classes or moved them to a different folder? If so try to generate the visual studio files again with the editor closed before compiling from visual studio.

I hope this helps.

Thank you for the answer. The only thing I didn’t try was “try to generate the visual studio files again with the editor closed”, how can I do that?

I don’t think it will fix, though. It appears my blueprints are “infected” with some sort of plague.

And yes, I have made many refactors on my project. Renames, reparentings… I really hope one day UE4 will be more “refactorable”… today, it’s a real pain. Everytime I do that, I have to enter the jungle and hunt the bugs that UE4 spreads over the way…

I feel your pain, trust me. Try right clicking on your .uproject file in your project folder, then click on “Generate Visual Studio project files”, and then try compiling again.
As a rule of thumb, every time you remove, move or rename a class, you should re-generate the visual studio file so ue4 can compile properly.
Give that a try and let me know if that fixed it.

Didn’t work… :frowning:
My project is infected by a plague…

It’s working now… there is a very silly way to fix the issue.

To kill the plague that infected the Blueprint, you just have to make any change on that (you can just unpin something, and then pin again) and click the Compile button. That’s it.

Stupid, right? How I didn’t try it before? This is why: I had some similar issues in the past, but usually the error had some information about it, not just that “garbage” names. This time, since I didn’t know WHERE the error was, I didn’t know where to make some silly modification to “refresh” stuff. I didn’t know that ANY silly change would fix the problem.

Come on, Epic, please make UE4 more smart about these things. Blueprints are FAR away of being stable, so they should manage better how to behave when data are not 100% as it expects.

3 Likes

My project is havin the same issue. It’s making us unable to deploy

Just happened to me. Closing editor, rebuilding solution, then rebuilding/resaving the blueprint fixed it. Looks like you’re right - Hot Reload incorrectly builds the blueprint.

Did you try the steps I mentioned on my answer? You just need to do that in all your “infected” blueprints.

This happens fairly commonly at our studio when we use hot reload. Close editor, rebuild (to get a clean/non-hot reload version), then recompile/resave blueprints fixes it.

It is doubly frustrating because no the error only appears during cooking, so individuals don’t see the error right away. The nightly build finds it instead.

This fixed my issue too.

I went through every blueprint that was affected. Unconnected a wire, compile, reconnected, compile, refresh all nodes. - Fixed.

This is not working for me. No amount or combination of disconnecting, reconnecting, or compiling of BP or C++ (even with the editor closed) is fixing it.

EDIT: okay, you left out a step:

  1. futz with the BP
  2. compile
  3. un-futz with the BP
  4. compile
    5) save the BP

now it works

1 Like

What do you mean with “futz”?

I think he means you can make some reversible changes, e.g. disconnect and reconnect the nodes (or any other changes that requires a recompile of your BP)
On another note, I still experience this problem on the relatively new version in 4.15.1. Can we have a staff to escalate a bugfix for this?

Hi,

Does anyone know if this issue has been reported as a bug yet? Or if it’s been fixed in 4.16?

Thanks,
Nick

At first your solution didn’t seem to work. But key is disconnect, compile, save, reconnect, compile, save. For every single asset that reported the error in the log.

Works now!

I have just hit this problem for the 1st time. In my process I develop with hot-reload too, to ‘fix’ the issue I loaded each of the affected BPs into the editor and Selected Refresh all nodes, then saved the BP again. This cleared the issue for me. No recompiling, or cleaning the project files etc. Just loaded editor, the two BPs, refresh, save.

I have noticed that 4.16 (version I am now working with), doesn’t complain about unmatched dependencies like 4.13 would do (engine we have just moved from), when updating the base C++ for a BP.

1 Like