Crash on load - SkeletonGeneratedClass is null

After upgrading to 4.2, my project now crashes on load. The only relevant log line is:

[2014.06.05-03.34.49:609][
0]LogWindows:Error: appError called:
Assertion failed:
Blueprint->SkeletonGeneratedClass !=
NULL
[File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.2\Engine\Source\Editor\UnrealEd\Private\Kismet2\BlueprintEditorUtils.cpp]
[Line: 2906]

I’ve narrowed the culprit down to one particular blueprint, if it’s removed the project loads fine. The project also works perfectly as-is in 4.1.1 and the only change here is the presence/absence of this blueprint. The issue is that this blueprint is pretty large and complex so recreating it or stripping parts out at random to see if something makes it work would take a very long time. Is this error familiar or is there a best way to debug an issue like this?

Hey dbc211,

Thank you for reporting the issue that is occurring for you in UE4. If possible, could you please share the Blueprint with us so we could further investigate your issue. Could you also provide your logs, dxdiag, and callstacks from the project so we can look into those as well.

Thanks and have a great day!

I get that crash when I open one of my blueprints. It derives from a C++ class so not sure if I can share the blueprint.

I’ll see if I can repro the crash on a blueprint that is not derived from a custom native class later

Crash dump (part of it):

UE4Editor-Core.dll!FDebug::AssertFailed(const char * Expr, const char * File, int Line, const wchar_t * Format, …) Line 160 C++
UE4Editor-UnrealEd.dll!FBlueprintEditorUtils::GetClassVariableList(const UBlueprint * Blueprint, TArray<FName,FDefaultAllocator> & VisibleVariables, bool bIncludePrivateVars) Line 2907 C++
UE4Editor-UnrealEd.dll!FKismetNameValidator::FKismetNameValidator(const UBlueprint * Blueprint, FName InExistingName) Line 95 C++
UE4Editor-KismetCompiler.dll!FKismetCompilerContext::ValidateVariableNames() Line 383 C++
UE4Editor-KismetCompiler.dll!FKismetCompilerContext::CreateClassVariablesFromBlueprint() Line 438 C++
UE4Editor-KismetCompiler.dll!FKismetCompilerContext::Compile() Line 3045 C++
UE4Editor-KismetCompiler.dll!FKismet2CompilerModule::CompileBlueprintInner(UBlueprint * Blueprint, bool bPrintResultSuccess, const FKismetCompilerOptions & CompileOptions, FCompilerResultsLog & Results, TArray<UObject *,FDefaultAllocator> * ObjLoaded) Line 125 C++
UE4Editor-KismetCompiler.dll!FKismet2CompilerModule::CompileBlueprint(UBlueprint * Blueprint, const FKismetCompilerOptions & CompileOptions, FCompilerResultsLog & Results, FBlueprintCompileReinstancer * ParentReinstancer, TArray<UObject *,FDefaultAllocator> * ObjLoaded) Line 159 C++
UE4Editor-UnrealEd.dll!FKismetEditorUtilities::GenerateBlueprintSkeleton(UBlueprint * BlueprintObj, bool bForceRegeneration) Line 428 C++
UE4Editor-UnrealEd.dll!FBlueprintEditorUtils::RegenerateBlueprintClass(UBlueprint *

link text
Okay here is one of my blueprints that crashes on me. It derives from a native class though. However, the native code is just a stub. I included it as well just in case. In the meanwhile I am thinking I should rollback my project to 4.1.1. Luckily I backed it up. I have a bunch of other blueprints that crash too if that can help track this down

Here’s mine for comparison, though it’s substantially larger than sandboxgod’s.

hey sandbox,

I am having an issue trying to open the Blueprint. It is claiming that the blueprint is trying to reference a parent class that we do not have. What parent class is the blueprint derived from? I would need this to open your blueprint.

Hey dbc211,

Could you please share your logs and callstacks with us so we can check those as well. I know that you have shared the one line but if you could share the whole log file, that would better assist us to help with the issue.

Thanks for your patience!

Attached is my log, dump, and dxdiag. Thanks for looking into this!

Sandboxgod, I tried to open your blueprint as well. I added the native parent class to my source and got it to compile after some editing but the BP still claimed to have a bad parent. Might be worth posting another.

Crap, all of my blueprints derive from a native class. But yeah, I attached all the sources you should have needed to open the blueprint.I think that is the bug- it cannot find the parent class in 4.2. In 4.1.1 this was working perfectly. Hopeful for a fix! In the meanwhile I have to go back to 4.1.1 I don’t know the blueprint code well enough to fix :frowning:

Okay that Blueprint opens for me if I go through my project and open all the base blueprints first, compile the ones that have a ‘compile’ sign. Currently my game crashes though when I try to run. Also noticed when I reopened the editor if I don’t repeat those steps I’ll crash when I attempt to open that blueprint I attached.

We are also hitting this bug when trying to upgrade to 4.2.

It seems to be related to using a hierarchy of BP-only classes because deleting the leaf classes got rid of the crash.

We’re reverting back to 4.1.1 for now. I’ve attached minidump and dxdiag files in case they are helpful.

minidump
dxdiag

sandboxgod,

Could you please provide the crash logs you are getting with the new crash when you try and run?

Clapfoot,

Thank you for your information. We will use your information provided to further investigate the issue also.

Thanks all for your patience!

Hi,

I spent a little time today trying to reproduce this issue and have so far been unsuccessful. I created several projects in 4.1.1 using a series of Blueprints derived from one another, some from a base Blueprint and some from a C++ base class, then upgrading the projects to 4.2.0 and I did not run into any problems with opening the project in 4.2.0.

Here are the steps that I was following:

  1. Create new project in 4.1.1.
  2. Create new Blueprint (BP1) either in the Editor or from new C++ class added to the project.
  3. Create new Blueprint derived from BP1 (BP2).
  4. Create two new Blueprints derived from BP2 (BP3 & BP4).
  5. Create new Blueprint derived from BP3 (BP5).
  6. Upgrade project to 4.2.0.

I also tried including the Blueprints that were provided by some of you and derived several new Blueprints from those, but still had no issues when upgrading to 4.2.0.

Would you be able to provide any additional information about how you are setting up your Blueprints? Can you make this issue happen in one of the template projects, or has it only happened for you when upgrading your own projects to 4.2.0? Any information you can provide to help us track this down would be greatly appreciated.

Blueprint crashes on 4.2 Just uploaded another blueprint. This one does not extend a custom native class so hopefully you can reproduce the crash with this one. If not, I can send you Epic devs a link to my project (I probably will anyway just in case).

I was able to create a brand new 4.2 project, insert a combination of blueprints, and cause the crash reliably. The crash only seems to occur when all of the attached blueprints are in the project - if any one of them is missing, no crash. Just copy the attached folder into the Content of a new project, start it, and try to open the blueprint BP_PlayerCharacter. You should get the crash then.

The blueprints all have references to each other and three of them form a BP hierarchy, so it’s very difficult to narrow down further what the problem is here.

Good job dbc I think you nailed it! I just repro’ed the bug using those exact same steps!

Hi,

Using the files provided by dbc211 I was able to recreate the issue. I did not see a crash event when loading the project, but whenever I tried to open one of the Blueprints that you provided the Editor would crash, so we are making progress. I was also able to open all of the Blueprints in a 4.1.1 project without any problems. I will give this information to a Developer for further investigation. We really appreciate your patience and help with this issue.

Thanks,

The crash on project load was because the broken BP(s) were referenced by the default map, so they were trying to compile on load. Thanks for your help!

Yay! Please let us know when you submit a fix. I can integrate the change and upgrade to 4.2 when it is ready :smiley:

I think this fix went into the 4.2 branch yesterday.
Submitted as “[INTEGRATE] Change 2098168”.

I re-downloaded the source, rebuilt and now I don’t get any crashes on load. Not sure if this will fix your issue but might be worth giving it a shot.