Editor crashing after updating from 4.5.1 to 4.6.1

After updating from 4.5.1 to 4.6.1, the editor started crashing on launch. After deleting my Config folder, the editor now loads into an empty level without crashing, but crashes upon opening most blueprints.

The crashing blueprints are the ones which make a lot of calls to other blueprints. I was able to get them to open by deleting some of the blueprints they’re referencing, so I began removing all the casts from each blueprint. While I was able to open and compile blueprints after doing this, it obviously broke everything in the game itself.

I tried putting everything back together again, blueprint-by-blueprint, in an attempt to isolate which blueprint might be causing the problem, but everything worked perfectly up until I put the very last blueprint back together, at which point it all fell apart again. Reverting that last blueprint didn’t make it start working again, either; I had to start from scratch.

I read here that the problem is likely circular references, and that interfaces might help to solve the problem. I reverted to 4.5.1 to make editing feasible, and tried using interfaces to isolate problem blueprints. I took a blueprint and replaced all its casts – and all instances of it being cast to – with interfaces. Nothing coming in or out. It shouldn’t rely on anything other than the interface blueprint itself.

After updating again, it was still crashing on launch. I deleted the Config folder again, and tried opening the isolated blueprint.

Crash. Other blueprints I isolated also crash. I’m at a loss. Anyone have some ideas on what my next step in solving this might be?

Hi lleidr,

Can you send me a copy of your callstack and crash logs? The logs can be found at \Unreal Projects\PROJECTNAME\saved\logs.

Log.txt

Callstack.txt

I just realized that log is from a crash when I tried removing the Abilities blueprint entirely. It turns out I’m able to open the Enchantment Blueprint if I remove both the Abilities and Effects blueprints entirely, but I haven’t quite figured out what to do with that information. I removed every single reference to other custom classes from the Enchantment blueprint, including interfaces, variable types, function inputs/outputs, event inputs/outputs, and casts; and it still crashes if either the Abilities or Effects blueprints exist.

This isn’t the only blueprint that’s crashing, either, but if I can figure out what’s wrong with this one, I should be able to figure out others.

Here are the logs for that:
Blueprint Crash Callstack,
Blueprint Crash Log

Have you recent moved or renamed any of your blueprints, actors, etc? Additionally Do you have any situations in which a function references another blueprint and then the second blueprint references the first blueprint (or any chain of functions that eventually link back to the first blueprint for information required to complete the chain of events)?

Just so I’m clear, this is only a problem if it references the blueprint in that specific chain, right? A blueprint can call back to another blueprint that’s calling it as long as it’s not all in the same chain? For example:

Not OK:
Blueprint A’s function 1 calls blueprint B’s function 1, which calls Blueprint A’s function 2

OK:
blueprint A’s function 1 calls blueprint B’s function 1;
blueprint B’s function 2 calls blueprint A’s function 2

Correct?

First question: Not recently, no. At least, not until the crashing started and I started experimenting with pulling various blueprints out of my content folder to get it to stop crashing. As I mentioned in my other post, the Ability blueprint will be missing in that first log, but that’s a reaction to the problem, rather than the source of it.

Second question: Almost certainly. The trouble is tracking it down. Since the blueprint I’ve been working with crashes whether I reference a second blueprint or not, it’s been tricky to troubleshoot.

You are correct. There can be references between two or more blueprints, that is certainly workable and necessary. It is when it is a single chain of events that wrap back around to a previous blueprint in the chain that you start to see circular dependencies. Do you have a copy of the project you would be willing to share? I’d be happy to take a look and see what might be occurring.

I sent you a forum PM with a download link.

I made a new project in 4.6.1 where I intentionally created a circular dependency to test a few different ways of solving the problem. It compiles and executes just fine. No warnings. No errors. No crashes. Functions perfectly. I even updated it to 4.7 just to see if the update would break things, and it worked fine there too.

If I could reproduce the problem in a separate project, it would be easier to see a way forward. As it stands, I’m not sure what my next step should be.

Hi lleidr,

I attempted to reproduce the crash with your project but have thus far been unsuccessful. What steps are you taking in this project that result in a crash? Do you have specific blueprints and actions you can point me to?

Nothing special. Open the editor, and open the Enchantment blueprint. Crash. Most blueprints crash it.

What was your process for unpacking the files? Your response prompted me to start a new (4.6.1, Blank, Desktop, Maximum Quality, No Starter Content) project where I imported the content folder and tried opening the Enchantment blueprint, but I ran into the exact same problems.

Here’s my dxdiag.txt in case it’s a difference between our systems. I’ll try it on my home computer as well to see if I get a different result.

Tried my home computer. Also tried reinstalling on this one. Still behaves the same way.

We have to be doing something differently.

Ah that was it, I was opening the wrong blueprint. I will try to see if I can pin down what is causing this and get back to you as soon as I have more information!

Hi lleidr,

Ok, I have some good news, and some that unfortunately isn’t quite as good. I was able to open both effects and enchantments. However I had to remove the abilities blueprints to do so. After significant testing I’ve found that the Abilities blueprint is definitely the one crashing your program. I noticed several cast nodes in your effects blueprints, are you casting to the abilities? If so, are these abilities then casting back to the effects blueprints? If yes, remove the cast back and see if the crashes stop. Additionally, are your enchantments running similar circles in code? If so you have to break the circle to stop the crashing. If this does fix the error, this is a known issue and we are looking into solutions to prevent crashes from occurring.

Found the culprit. It was a variable defined as a custom class, which was referencing a blueprint from earlier in the chain.

In the Ability blueprint, there was a variable defined as the MyController custom class. This created a circular reference. I redefined it to the Controller variable type (which is not a custom class) and cast it to MyController to get the data I needed. Still circular, but it doesn’t crash.

I also had to remove several individual child ability blueprints, but it launches now. I’m confident that I’ll be able to take care of those without too many problems.

Thank you so much for your help!