4.2 Urgent Help Needed (Unrecoverable)

Something happened to my project to where it is now unrecoverable. I can run the level in the simulator and current viewport but as soon as I try to run it as a standalone game and/or mobile preview it crashes. I narrowed it down to one of my base blueprints bd__base. I have a test project in 4.2 that uses this blueprint. If I take the BP out of the level it will run. As soon as I put it into the level I get the following crash (see below). Here is a link to the files:

There is nothing going on in the BP that should be producing the crash =(

Please help as this project was in the middle of being deployed to our internal iOS devices for our next meeting.

!Id:a43a967b537c098152a9997edfa510e3

Access violation - code c0000005 (first/second chance not available)

MSVCR120.dll

msvcr120 + 248163 bytes
UE4Editor_Engine + 24853944 bytes
UE4Editor_Core + 1090639 bytes
UE4Editor_CoreUObject + 1071962 bytes
UE4Editor_CoreUObject + 1057454 bytes
UE4Editor_CoreUObject + 1574611 bytes
UE4Editor_CoreUObject + 1503677 bytes
UE4Editor_CoreUObject + 349757 bytes
UE4Editor_CoreUObject + 412108 bytes
UE4Editor_CoreUObject + 747229 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 692228 bytes
UE4Editor_CoreUObject + 564920 bytes
UE4Editor_CoreUObject + 859933 bytes
UE4Editor_CoreUObject + 747886 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 745987 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 745987 bytes
UE4Editor_CoreUObject + 844978 bytes
UE4Editor_CoreUObject + 1580602 bytes
UE4Editor_CoreUObject + 920669 bytes
UE4Editor_CoreUObject + 917426 bytes
UE4Editor_CoreUObject + 920969 bytes
UE4Editor_CoreUObject + 917426 bytes
UE4Editor_CoreUObject + 750078 bytes
UE4Editor_CoreUObject + 841081 bytes
UE4Editor_CoreUObject + 692228 bytes
UE4Editor_CoreUObject + 1428375 bytes
UE4Editor_CoreUObject + 589538 bytes
UE4Editor_CoreUObject + 587873 bytes
UE4Editor_CoreUObject + 1200216 bytes
UE4Editor_CoreUObject + 1196934 bytes
UE4Editor_CoreUObject + 859933 bytes
UE4Editor_UnrealEd + 8196819 bytes
UE4Editor_UnrealEd + 8196827 bytes
UE4Editor_UnrealEd + 8196827 bytes
UE4Editor_UnrealEd + 8206126 bytes
UE4Editor_CoreUObject + 516982 bytes
UE4Editor_CoreUObject + 747483 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 692228 bytes
UE4Editor_CoreUObject + 564920 bytes
UE4Editor_CoreUObject + 859933 bytes
UE4Editor_CoreUObject + 747886 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 745987 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 745987 bytes
UE4Editor_CoreUObject + 844978 bytes
UE4Editor_CoreUObject + 1580602 bytes
UE4Editor_CoreUObject + 920669 bytes
UE4Editor_CoreUObject + 917426 bytes
UE4Editor_CoreUObject + 920969 bytes
UE4Editor_CoreUObject + 917426 bytes
UE4Editor_CoreUObject + 750078 bytes
UE4Editor_CoreUObject + 841081 bytes
UE4Editor_CoreUObject + 692228 bytes
UE4Editor_CoreUObject + 859933 bytes
UE4Editor_CoreUObject + 484621 bytes
UE4Editor_CoreUObject + 483902 bytes
UE4Editor_CoreUObject + 567415 bytes
UE4Editor_CoreUObject + 565322 bytes
UE4Editor_CoreUObject + 859933 bytes
UE4Editor_CoreUObject + 484621 bytes
UE4Editor_CoreUObject + 482674 bytes
UE4Editor_CoreUObject + 564059 bytes
UE4Editor_CoreUObject + 859933 bytes
UE4Editor_CoreUObject + 747886 bytes
UE4Editor_CoreUObject + 840964 bytes
UE4Editor_CoreUObject + 745987 bytes
UE4Editor_CoreUObject + 844978 bytes
UE4Editor_CoreUObject + 1580602 bytes
UE4Editor_CoreUObject + 920669 bytes
UE4Editor_CoreUObject + 917426 bytes
UE4Editor_CoreUObject + 920969 bytes
UE4Editor_CoreUObject + 917426 bytes
UE4Editor_CoreUObject + 743334 bytes
UE4Editor_CoreUObject + 844978 bytes
UE4Editor_CoreUObject + 1580602 bytes
UE4Editor_Engine + 8856532 bytes
UE4Editor_Engine + 8570969 bytes
UE4Editor_Engine + 3601858 bytes
UE4Editor!FEngineLoop::Init() + 526 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.2\engine\source\runtime\launch\private\launchengineloop.cpp:1871]
UE4Editor!GuardedMain() + 292 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.2\engine\source\runtime\launch\private\launch.cpp:127]
UE4Editor!GuardedMainWrapper() + 26 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.2\engine\source\runtime\launch\private\windows\launchwindows.cpp:125]
UE4Editor!WinMain() + 249 bytes [d:\buildfarm\buildmachine_++depot+ue4-releases+4.2\engine\source\runtime\launch\private\windows\launchwindows.cpp:207]
UE4Editor!__tmainCRTStartup() + 329 bytes [f:\dd\vctools\crt\crtw32\dllstuff\crtexe.c:618]

You can always upload the project to Google Drive, Dropbox or alternatives and link to it here - I’ve had to do that before because of the attachment limit too!

Updated the original message with the link. Also putting it here:

#Copy Paste

Copy paste the contents out of the bp that is crashing into a new one and reparent all your blueprints to use this newly created copy of the original!

Good luck!

Rama

PS: this has worked in the past for people

Hi jeffvoigt,

I’m unsure of what was causing the issue with the first blueprint, but I just downloaded your project and ran through what Rama said to do. This fixed the issue. Let us know if it works for you.

Thanks, TJ

I went ahead and created a new base and then re-parented. It took a long time but it seemed to work at first. There were no crashes. However my game wasn’t running as expected. My base blueprint has some custom events that were overridden in the child BP’s. I noticed they were not being called anymore (on the derived BPs). I removed the custom events and added new ones to the base and then overrode them in my derived blueprints.

Again, things seemed to work when I run in viewport but as soon as I ran in mobile (BAM… same access violation exception). This is NOT good…

I need to figure out how to get back to a good point without having to rewrite it all =(

It’s hard to troubleshoot the functionality of the game because without assets it isn’t playable on my end. If you’re okay with posting or Private Messaging me some screenshots of the game with some basic rules I can try to recreate the functionality and attempt a workaround.

Here is another link to the files. When you open the project it should default to a single board. When you run it in the editor it should show a board with letters. When you run it in the mobile preview it should crash with an access violation.

http://.ms/UfiEFf

OK. I narrowed it down to the exact steps and can reproduce it.

PLEASE USE THIS LINK NOW AS IT IS IN THE STATE TO REPRODUCE IT USING THE BELOW STEPS:

http://.ms/1sxyzxn

  1. Open the project in 4.2
  2. Run the Mobile Preview (It should work)
  3. Close the preview and open the Common/Decorators/bd__decorator blueprint
  4. Add a Custom Event call FOO
  5. Save and Compile
  6. Close project (This will force you to save all sub classes of the base class that you just added FOO to which include about 5+ sub classes
  7. Reopen the project and you will find an error: Failed import: BoolProperty /Game/Common/Blueprints/bp_tile.bp_tile_C:HasImportance in /Game/Common/Decorators/bd_board_generator
  8. Run the Mobile Preview and you should be met with the ACCESS VIOLATION

So I narrowed it down to what caused the initial issue which was adding another method to my base class. This base class was already a copy that I did the other day based on the prior suggestion in this thread.

So, I’m dead in the water if I try to add more methods to my base class. I’m praying you all can fix the blueprint with the import issue if that is the root of the problem =(

Thanks!

Great research and repro steps by the way. I was easily able to reproduce the issue, although I am unsure of the cause. I’ve submitted it to our developers to further investigate and will update you if we have a solution.

Hey , thanks for all your work on creating a reproduce-able case. I’m taking a look at the crash this morning. I’ll let you know when I have an ETA on a fix.

Sounds good. I’m also adding another issue that may be related to this. I wish I could just email and talk to you directly =). Heck I live/work in Raleigh, Six Forks as a senior software engineer. Anyhow, please look for my next bug report on the main thread in a few! Tell Max P. I said hi.

Agh! That took a long time. I’ve got a fix, but I have some obligations tomorrow and I’m not totally confident in my fix (we have a large test suite I want to run it against). I’ll try to get it posted tomorrow afternoon after I consult with another developer.

If you need something ASAP just post here and I’ll give you a hotfix, but if you can spare a few hours then I’ll be able to do some more testing and verify that it’s solid.

In the mean time my understanding of the issue is that you can work around it by using Playign in Editor (as opposed to cooking or playing on a device).

Again, just post here if you need a super quick fix.

I don’t mind waiting, however, i’m hoping whatever you do may fix my other related issue i mentioned above. Is it something I can avoid in the future?

This is the other related issue. It is an access violation when running on the ipad. Hoping it is the same issue that would be fixed with the hotfix.

Hi again ,

Still running my tests and following up with a discussion internally. Should be good to go tomorrow AM. I’m on the west coast, so maybe a bit later than you if you’re near Raleigh! :slight_smile:

This should fix your other issue, by the way. The crash that I’m reproducing looks identical.

Fix submitted. This will be available in 4.4, but you can also trivially pull the change as it is quite localized.

FYI the issue was that we attempted to load your maze blueprint before its super class (decorator) was fully loaded. Some differences in the editor codepath vs. pure game codepath meant that the crash only occurred when you ran the game without the editor enabled.

Edit: Updated fix is available in github. I have verified that this works in 4.2, but given the fragility of my test case I may have made another mistake in testing!

I will manually put in the source changes and let you know how it goes!

Awesome, thanks.

So I went ahead and added the few lines of code changes that were posted, rebuilt, recompiled and ran through the test again. I opened up the base _decorator class and added a method, compiled, saved, closed, reopened and reran the mobile previewer. It still crashed.

Are you running 4.2 source with just your change or is there a much later code branch I need to get? I’m hesitant to pull down 4.3 code because I’m not sure it will work with the remote build (iOS) procedures that were documented for 4.2.

Also, here is the latest “Content” folder just in case my content has something else going on (although I can’t imagine what). What is interesting is that the crash doesn’t even bring up the log reporter anymore =)

http://.ms/1x2uU8w

Thanks,