My son decided to save and exit my project I had up which was in no way ready to be saved and exited. Now I cannot open it at all because it wants to crash since the code to build the level is not in a stable state! There definitely needs to be a “Start In Safe Mode” option that will allow me to open the project without it trying to render it so I can fix the problem that’s happening and re-save it. I’m trying to load different backups, but they’re not working, either.
I am VERY upset right now, because it’s really not that difficult of a fix to get it working again, but I cannot get in there to make the simple fix. Is there anything I’m missing to be able to open this up right now? If not, I’m completely, well, I won’t say that here.
We have had a number of close calls over the year or so too. And not being able to open a project after some stupid little error is one of our biggest fears.
We (my team and I) could live with a manual way to edit the project as well; in fact I fixed CryENGINE projects all the time for the company I worked for a few years ago.
But some sort of “safe mode” to open a project, where for example the execution of blueprints is suspended until the user decides otherwise. This would be awesome and solve soooooo many headaches.
@Mbublitz: You will be the first to know if we come up with anything that might help you! In the meantime, can you please provide the forum with the version of the engine/editor you are based on, as well as log files that may help track down why the editor is refusing to open the project? thanks.
If you know the BP thats messing with you and it seems like you do, see if there is one in the auto backups folder.
Go into the folder where that bad BP is and CUT it and paste it somewhere on your PC, make sure its outside of the project folders. Replace it with the backup, but make sure the backup has the exact same name. Launch the project.
If that don’t work.
Take the bad BP, start a new project. Drop it into the content folder of the new project. See if you can open it there and fix the problem. Then manually move it back to the original project and see if you can launch it then.
I’ve been able to recover from this each time (except the very first) using backups or opening the BP in a diff project and fixing it.
Thats opening projects with the BP in the content folder. Trying to import uasset files doesnt work.
Yes, taking out the bad BP, opening a new clean project and then moving the BP into the new content folder might just do the trick! Thanks for the reminder
Still, I very much welcome the idea of a “safe mode” to ease that process xD
I’m trying to recover by creating the clean project, then moving my BP to the new content folder, but since it’s a subclass of my C++ class, I’m running into difficulties.
So far I’ve added my C++ class to the new project with the same name as it was in the old one, but my BP is still refusing to open because it says it “derives from an invalid class.” And if I mouse-over the BP it lists the parent class as “None.” All my other BPs seem to open just fine.
I’ve got the 4.10.2 version of the project that I may have to fall back onto and then redo all my work since then. NOT something I’m looking forward to, since the only reason I switched to 4.11 was because an engine bug was causing problems on 4.10.2 with regards to saving the BP after recompiling the C++ code and after dealing with that error many times, after the last time it just wouldn’t open the project anymore until I migrated it to 4.11.
I’ve done so much since then. Just wish I knew why none of the backup BPs are working. From what I’m seeing on the error message when I try to open my project (“Array index out of bounds: 0 from an array of size 0”) it is just a simple checkbox that is checked that shouldn’t be checked or my number of rooms is set to 0 instead of 1. (This is what I was working on when my son exited it out.) Either way it would get rid of this error if I could just get in there to change one of those variables. I’m trying to reset the defaults in the C++ portion (or returning out of any related C++ functions before they execute any code), but it’s not working. I’m pretty sure the invalid references are coming in through the BP directly and I’m not going to be able to fix it with any code trickery.
This is the specific message on the crash reporter:
Assertion failed: (Index >= 0) & (Index < ArrayNum) [File:D:\programs\Epic Games\4.11\Engine\Source\Runtime\Core\Public\Containers\Array.h] [Line: 785]
Array index out of bounds: 0 from an array of size 0
Here’s something interesting. Just updated to 4.11 preview 3 (was using preview 2) and (magically) my project is opening again! Didn’t do anything different than to update the engine version (which had the side-effect of rebuilding my game .dll file on first load.)
Anyway, woohoo!!! Still want that “Open In Safe Mode” option, though.
Just wanted to say, 6 years later, that this is the best solution. If you have any idea what’s causing the crash, remove it from the project. Better to lose some progress instead of all!
Yeah, honestly, it’s insane that this problem can still exist after almost a decade. No hobbyist programmer is going to have the slightest idea what they did that caused their app to be permanently destroyed by leaving out a semicolon or something, nor how to fix it. The engine should always be able to at least launch to the editor, even if the app’s not in a renderable state. I’ve only been using Unreal for a couple months, and this has already happened to me a dozen or more times; many of them requiring me to toss my entire project, build a new one, and migrate stuff over one step at a time. That’s hardly a reasonable solution for a professional IDE.
Commenting for the boost to your post, not that they’ll fix it after a decade, clearly they dont mind crippling bugs and just want more features
But alas i just ran into a similar problem where it wouldn’t open to editor its sad to think a single IF statement could fix this problem
IF render/execution crippling issue… don’t execute display black screen
a simple check box to disable any execution/preview would be nice
i run into a sad moment with Sessions too where they’d be so much more useful if they just exposed all the variables to the node i know its possible because the adv sessions plugin made by a user does it and more, sorry to rant mostly here to boost yer post
Hobbyist devs, folks learning the platform, and educational users are all extremely likely not to have version control – and most of the “free” version control systems don’t work well for games because even a small number of assets push you over the size limits into “Student-unfriendly” pricing tiers. And tellingly, in Unity, RealityKit, Godot… they wouldn’t need to. And these are the people least likely to be able to figure out how to fix it once they get into this state. (Plus, “you can always throw away your work and go back to the last time you pushed” is hardly a strong argument in favor of your dev environment not being able to a pretty basic sanity check.)
I have 40 years of development experience, DO use version control, and am competent in C++. And I’ve still lost a dozen or so hours to this single issue in the short time I’ve been using Unreal Engine. I imagine most newbies just rage-quit and go back to Unity or Godot.
I just made my own backup program with unreal
its all on disk and quite space inefficient but i only keep the last 10 anyways and it beats me doing it manually i just open it choose between the options i made
“Backup and delete oldest”
“Backup no deletes”
“Restore backup and keep current @ other place”
“Restore and NUKE current”
“Sync on”
“Sync off”
it’s come in super handy so far as i haven’t been bothered to even figure out revision control and probably won’t as i’ve basically made my own at this point if using sync it makes a backup anytime i hit save and it finds a difference
idk if there’s something special that rev control does apart from allowing multiple people to sync their work
but i actually chose UE about 8 months to a year ago because it was so much easier to pickup at lest for me compared to Unity and Godot is just confusing atm but i plan to learn at least the basics in unity and Godot at some point
But yes i nearly gave up many times as some of the problems are years old and have crazy workarounds some of which could literally be fixed with an If statement i even hovered over the uninstall button at one point and only choose not to because i realized id essentially be uninstalling my dreams of game dev