x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Bug: Editor crashes on launch when a UDataTable is changed

Editor Version: 4.7.0

OS: Win7 64-bit

I was able to trace an editor crash down to one blueprint in my project. If I delete it from my game, the editor launches. If I add it, the editor crashes. The blueprint itself worked before I changed the underlying C++ code it relies on. The blueprint has a node which contains a reference to a UDataTable I created.

Here is a high level view of what I did to cause the crash:

  1. Create a struct to contain CSV data (inherit from FTableRowBase)

  2. Create a CSV file which will be used to import data into the struct

  3. Build the project, open the editor, import the CSV file, load the data into the game

  4. Create a widget blueprint which references and uses the CSV data. Verify that this works.

Now, to crash the editor:

  1. Don't change your widget blueprint at all. Shut down the editor and go back to the C++ code.

  2. Modify the struct by deleting a few properties and adding a few more.

  3. Modify your CSV file to match the properties in your struct

  4. At this point, the blueprint which relies on this struct is out of date and needs to be updated. No big deal, right? Launch the editor.

  5. Delete the old CSV data object. You may have to manually delete the old data object through windows explorer if the editor crashes on load.

  6. Import the new CSV data object and use the modified struct as the CSV template

  7. If you haven't crashed yet: Try to open the blueprint which used your old CSV data. We're trying to delete the old CSV data object reference so that we can update it with the new one, but we never get this far.

If the outdated widget blueprint is in the content folders on launch, the editor crashes. If the widget blueprint is not in the content folders on launch, the editor will launch. If you open the content directories in windows explorer and manually copy the widget blueprint into the content folders, the asset shows up. However, when you right click the asset or double click on it, the editor will try to load it and crash.

what should happen: The editor complains about an outdated data table in the blueprint within the error log. You can open up the blueprint, but the invalid nodes are grayed out and disabled & disconnected.

Crash Output Log

 [2015.03.24-18.07.56:346][  0]LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/Assets/GUI/Strategic/Strategic_GarrisonUI.Strategic_GarrisonUI_C:ExecuteUbergraph_Strategic_GarrisonUI.CallFunc_Array_Get_Item'. Unknown structure.
 [2015.03.24-18.07.56:346][  0]LogProperty:Error: UStructProperty::Serialize Loading: Property 'StructProperty /Game/Assets/GUI/Strategic/Strategic_GarrisonUI.Strategic_GarrisonUI_C:ExecuteUbergraph_Strategic_GarrisonUI.CallFunc_GetAllUnits_OutCreatureData.CallFunc_GetAllUnits_OutCreatureData'. Unknown structure.

My widget blueprint which causes the crash:

Strategic_GarrisonUI.uasset

Product Version: Not Selected
Tags:
more ▼

asked Mar 24 '15 at 06:27 PM in Bug Reports

avatar image

Slayemin
774 46 26 72

avatar image Tim C ♦♦ STAFF Mar 31 '15 at 10:57 PM

Hi Slayemin,

I tried to replicate the issue that you described using 4.7.0 built from source code, but was unable to see a crash occur. I was left with a Blueprint where I had to reconnect several nodes to use the changed struct's new data types, but I could open the Blueprint without seeing a crash. Would you be able to provide an example of the struct in code before and after you made the changes to it?

Tim

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

Hi Slayemin,

We have not heard back from you for a few days. Do you still need help with this issue? I will be marking this post as resolved for internal tracking purposes, but please feel free to reopen the post with a comment at any time.

Tim

more ▼

answered Apr 07 '15 at 09:15 PM

avatar image

Tim C ♦♦ STAFF
17.9k 422 61 284

avatar image Slayemin Apr 07 '15 at 09:19 PM

Hey Tim,

Sorry about the delay in response. I made a bit of an architectural change to my game which caused some rework of code and I haven't been able to get back to this. I also upgraded the engine to 4.7.3, so I'll have to go back and see if my repro steps still result in a crash. I'll post an update in a few days, and at the latest, by the end of the week.

-Eric

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question