Since the 4.8 update I noticed that certain properties of certain BP classes placed on the map lose data from time to time. Here is the details panel of such an actor:
The Transform and Items categories are fine but General and Drone get reset occasionally. (Enemy Waves is unused currently so I’m not sure if it’s affected.) Interestingly I don’t seem to recall a category partially losing data: it’s always all the properties on those two groups and only those groups.
I tried to reproduce the issue but couldn’t. I tried the following:
Modify BP class slightly to force a recompile.
Modify parent class to force a recompile.
Force recompile any of the referenced BP classes.
Save the map and restart the editor.
I think I always noticed this data loss right after starting the editor in the morning. I’m on binary 4.8 and I do not have versioning, all files are writable.
So far I’ve only noticed it in one particular BP class which is game logic critical so it was obvious that something went wrong. I don’t know if others are affected so I’m going to place all currently unused classes on the map too and see what happens to them.
Have you found any additional information on whether it was limited to the one class or if any other classes have been affected? Thus far I have not been able to reproduce this on my end. Do you get any errors when this occurs?
I’ll leave this thread open for a few more days just in case it does occur again. If it does, please list the steps that you took to recreate this and I’ll be happy to try to reproduce it on my end.
We have not heard from you in several days. I am marking this as answered for tracking purposes. If this occurs again please comment here with additional information on how to reproduce the error.
It happened again in the last 4 hours, but I don’t know exactly when, I was focusing on other things. It really slows down work when I check the placed actors after each BP change.
That approach haven’t helped me so far either so I was wondering if there is a mechanics inside the editor which would instantly alert me if a particular actor’s given property changed (not in-game)? Some kind of a plugin or blutility thing or I don’t know. Something to help me narrow down the repro steps from “working on the project for a few hours”.
Unfortunately I don’t know of any at this time. What were you focusing on and what changes did you make before you noticed this occur? Were you updating a parent class of the actor?
Modification of a BP struct used in both the pawn and the engine actors. Changing it set half a dozen blueprints dirty, those needed recompile.
Extensive editing of an engine class. (“Engine type” in the screenshot above.)
I did not touch the class displaying the problem.
When I saw the lost properties I went through the obvious steps: changed the pawn class, changed the BP struct, changed the engine base class, changed the engine child class. I checked the placed actors for data loss between each step, no bug…
One thing tho: My persistent level gets dirty every time I quit a PIE session. I’m not sure if it means anything, it’s been like that since forever. It’s just interesting and now I’m really grasping at straws.
In the struct, do you have any references to actors in your project? For example, do you have a variable for an actor blueprint in your struct? If so, has this recently been moved in your content browser?
The struct only contains a few floats, no actor derived blueprint references.
Two of the resetting properties are for storing a reference to a class which should be spawned at runtime. However those classes have not been moved/renamed in the past 6 months.
As soon as I figure out how to repro this I’ll post the steps and the project. In the meantime I guess I’ll just store the fully set up actors in a text file to replace the existing ones when they reset.
We have not heard from you in several days. I am marking this thread as answered for tracking purposes. If you are still experiencing this error, please comment back with the requested information.
It seems that most of the time I notice the problem right after loading the project. So the data loss occurs between the end of the last PIE run (which worked fine) in the previous editing session and the start of the editor next time around.
I checked the startup logs for anything suspicious. All the warnings seem to be unrelated, although I’m not sure about these two:
LogD3D11RHI: InitD3DDevice
LogUObjectGlobals:Warning: Failed to find object 'Class None.'
LogUObjectGlobals:Warning: Failed to find object 'Class None.'
LogLoad: Full Startup: 31.60 seconds (BP compile: 9.38 seconds)
Maybe it’s nothing relevant but I thought here I take a note of anything I find.
I set up realtime backup / file versioning. It seems that during an editor session (for whatever reason) at some point it starts saving the map with the data already lost. The map keeps working (I still see those properties with valid values) right until I restart the editor and the permanent level is loaded back.
I made a python script which monitors the persistent level’s file and searches for the binary representation of the properly set up actor once every 4 seconds. If the hardwired pattern is not found then it alerts me. It often gives false positives but it’s still helped me to catch 8 data losses instantly. And the thing occurs very very very randomly.
Last night I thought I found solid repro steps: I was able to make the data loss happen at will 3 times, doing the same thing, modifying and recompiling a BP class. I went to bed, got up next morning ready to send you guys the info. Tried the steps once again, no bug.
Is it at all possible that something outside the editor matters? Something in the OS, background processes, the way the editor is started (directly or through the launcher), hibernation or anything like that?
I know it sounds unlikely but the bug is so unpredictable that I want to leave no stones unturned. Even with the instant notification the best I can say is that it seems I’m always working with 2 important BP’s when stuff happens: my pawn and my game state.
Comodo’s virus scan came back negative. (I uninstalled Java and flash some time ago and I’m also monitoring traffic through the firewall but haven’t seen anything suspicious in a while.)
Please find the dxdiag results attached. link text The sound card driver is unsigned because the manufacturer haven’t produced a Win10 version yet so I had to resort installing an unofficial package. However I was using WHQL drivers back on win 7 when the issues started.