All spawnables in sequencer lose their class bindings during autosaves.

With autosaves on, a number of people have been working and find that after the autosave action completes that all their class bindings get broken. The only way to fix this that we have found is to manually reassign their classes to each item. I attached an image of what the actors look like but blurred the names so that this can be a community ticket. It happens maybe 1/100 times the autosave is activated. We’ve had to ask people to turn off autosave and since then it hadn’t been an issue, but that is not ideal since autosave would be helpful in other regards. The only way I can think to repro this is to up the cadence of the autosaves and work for a while and see if it happens. It only seems to affect the spawnables in the scene that is open.

Hi there,

This is going to be difficult to reproduce given the infrequency of the issue. I’ve kept the engine running for a while with 1 minute auto-saves, and haven’t encountered the issue.

Due to the infrequent nature of the issue, it will be difficult to catch the bug with a debugger attached, so you may want to look into putting debug print statements into UMovieScene::Serialize specifically around the areas where we interact with the spawnables array.

If that doesn’t narrow things down you can look into calling FPackageAutoSaver::ForceAutoSaveTimer directly to trigger an auto-save, and hopefully that will let you catch it with a debugger.

In 5.5 we overhauled spawnables, so that might also affect this issue. If you are able to confirm the issue still occurs in 5.6 that would be helpful to us as I currently can’t confirm if the issue is still valid or not due to how infrequently it happens. Also it would be helpful if you can confirm this happens with actor classes from the base engine. I tried with a static mesh actor and an empty blueprint actor, but if this is only happening with actors specific to your project, we’d need more details about their setup to reproduce the issue.

Thanks!

We won’t be on 5.6 any time soon unfortunately. I can have the team look into the debugger, thanks for that tip. I can confirm this happens to actor classes from the base engine. This happened just yesterday to an artist and all the spawnable StaticMeshActor and CineCameraActor classes disconnected as well as the blueprints for the characters. It usually happens to people after working a number of hours in UE where they are saving periodically but keeping UE open and not pushing to perforce at all. I wonder if the list of changes they make throughout the day has any effect on why this happens to them. Or if there is a process happening in the engine when Autosave kicks in that causes everything to lose their classes.

Thanks for the info. I’ll keep the engine running for a while to try to get a repro case on our end. If you reload the asset after the classes are lost, does that resolve the issue? Hopefully frequent saving can at least work around the issue in the meantime.

Do you mean to reload the Level Sequence asset? I heard some artists say that closing and reopening without saving worked to bring it back but there were a number of artists that said that it didn’t fix it for them. So I might be misunderstanding exactly what they were doing to get it back. Would there be a difference between reloading an asset and closing and reopening the project?

Closing and re-opening the level sequence may still retain unsaved changes. The changes to the asset aren’t cleared from memory, unless the project is completely closed, so yes there is a difference. However you can manually force the engine to reload the asset from disk, reverting it to the last saved version. To do this right click on the asset in the content browser and select “Reload” from the “Asset Actions” menu.

Ok. I’ll have the next artist with this issue try that reload angle. Last person I had close UE without saving and reopening didn’t fix his issue. Wondering if maybe there was an autosave that happened between everything breaking and me helping them.