Chasing the ourorburus of corrupted BP nodes. Help?

At some point my project got a corrupt “something”… when I try to open a BP or launch the game, it crashes with “Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:d:\build++ue4\sync\engine\source\runtime\core\public\Containers/Array.h] [Line: 614] Array index out of bounds: 0 from an array of size 0”

I make frequent backups of my project however, backups as old as 3 days ago show signs of the issue. Backups 4 days or later do not. But if the project was corrupt for 4 days, why did it not show until yesterday? And if it wasn’t corrupt before yesterday then how did 3 days of backups get corrupt as well?

Rather than start from 4 days ago – which would be a lot of work. I am trying to move assets over. In any event, I have gone through the motions of replacing references, testing each blueprint one by one, each struct/data asset, etc. But when I think I’ve narrowed it down to one thing and get the program running, it fails the next time I open the project.

If I were writing in actual code, I’d just do a clean build at this point to guarantee everything gets refreshed. Is there a BP equivalent?

I think I’ve narrowed it down to a nested struct. If I use the old one, it runs. If I use the new one which has more items in it, it crashes. If I rebuild it (which I did) it also crashes so… I have no idea. If I take the old one and empty it out all the data leaving empty elements, it runs. Bear in mind, that it will run just fine with the 'bad" struct in all its glory until I close and reopen it, which is when the issues persist and I’m in circles again.

So far I’ve gotten it to “work” but I can’t seem to get rid of some odd errors/warnings. Firstly, I located the faulty struct, cleared everything out, and rebuilt it. I did rename some things to hopefully avoid going into the same bad chunks of memory. As said, so far it is working and I was able to push a test build to a Android phone.

Here are the warnings and errors.

// This first set of warnings is odd because this custom collision channel was removed some time ago and there shouldn’t be any objects referencing it. Yet, there it is… a leak? Thoughts?

LogCollisionProfile: Warning: Profile (OverlapAll) - Custom Channel Name = ‘Counter’ hasn’t been found
LogCollisionProfile: Warning: Profile (OverlapAllDynamic) - Custom Channel Name = ‘Counter’ hasn’t been found
LogCollisionProfile: Warning: Profile (IgnoreOnlyPawn) - Custom Channel Name = ‘Counter’ hasn’t been found
LogInit: Selected Device Profile: [Windows]

// These are referencing widgets that contain the structure I rebuit. The game plays in editor without issue so I’m not sure why it’s throwing the error here.

LogProperty: Error: UStructProperty::Serialize Loading: Property ‘StructProperty /Game/Blueprints/System/Widgets/MainMenuWidget.MainMenuWidget_C:ShopStructure’. Unknown structure.

LogProperty: Error: UStructProperty::Serialize Loading: Property ‘StructProperty /Game/Blueprints/System/Widgets/ShopWidget.ShopWidget_C:ShopStructure’. Unknown structure.

LogClass: Warning: Property ShopStructure of ShopStructure has a struct type mismatch (tag STRUCT_REINST_ShopStructure_0 != prop FallbackStruct) in package: E:/Users/Seldi/Documents/Unreal Projects Local/RocketFlip 4.23 - Reworking Physics/RocketFlip 4.24 - 111520 - build/Content/Blueprints/System/Widgets/ShopWidget.uasset. If that struct got renamed, add a
n entry to ActiveStructRedirects.

LogClass: Warning: Property ShopStructure of ShopStructure has a struct type mismatch (tag STRUCT_REINST_ShopStructure_0 != prop FallbackStruct) in package: E:/Users/Seldi/Documents/Unreal Projects Local/RocketFlip 4.23 - Reworking Physics/RocketFlip 4.24 - 111520 - build/Content/Blueprints/System/Widgets/MainMenuWidget.uasset. If that struct got renamed, a
dd an entry to ActiveStructRedirects.

LogClass: Warning: Property ShopStructure of ShopStructure has a struct type mismatch (tag FallbackStruct != prop ShopStructure) in package: FObjectReader. If that struct got renamed, add an entry to ActiveStructRedirects.

LogClass: Warning: Property ShopStructure of ShopStructure has a struct type mismatch (tag FallbackStruct != prop ShopStructure) in package: FObjectReader. If that struct got renamed, add an entry to ActiveStructRedirects.

// These have me confused because the asset it can’t find is clearly there in the asset folder.

LogPlayLevel: Error: adb: error: cannot lstat ‘E:\Users\Seldi\Documents\Unreal Projects Local\RocketFlip 4.23 - Reworking Physics\RocketFlip 4.24 - 111520 - build\Saved\StagedBuilds\Android_ASTC\RocketFlip\Content\StaticMesh\Frags\ThunderFlipper\sm_rf_ThunderFlipper_Frag_ThunderFlipper_Fuselage_Lower.uasset’: No such file or directory

LogPlayLevel: Error: adb: error: cannot lstat ‘E:\Users\Seldi\Documents\Unreal Projects Local\RocketFlip 4.23 - Reworking Physics\RocketFlip 4.24 - 111520 - build\Saved\StagedBuilds\Android_ASTC\RocketFlip\Content\StaticMesh\Frags\ThunderFlipper\sm_rf_ThunderFlipper_Frag_ThunderFlipper_Fuselage_Upper.uasset’: No such file or directory