It is expected that cooking, including COTF, will fix-up all string asset references. There were a few reasons this wasn't happening, but we should get these fixes into 4.15 as the impact was worst on out-of-source projects (which is what most UE4 users will have).

Steps to Reproduce
  1. Create a new project outside of your UE4 source/installation location.
  2. Create an actor containing a TAssetSubclassOf<UUserWidget> property.
  3. Create a Widget Blueprint.
  4. Create a new world, and place an instance of your actor within it.
  5. Change the TAssetSubclassOf<UUserWidget> on the instance to reference the widget BP.
  6. Close the current world (by creating a new empty world).
  7. Rename the widget BP and verify that a redirector was created.
  8. Run a COTF server for your game (-run=cook -targetplatform=WindowsNoEditor -cookonthefly -iterate -log).
  9. Run your game, connected to the COTF server (-filehostip=YourIPHere).
  10. Observe that the TAssetSubclassOf<UUserWidget> property on your actor instance is still referencing the old name of the widget BP. The COTF server may also crash due to a bad FString::Mid call.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-40790 in the post.

Login to Vote

Affects Versions4.144.15
Target Fix4.15
Fix Commit3262103
Main Commit3389599
Release Commit3262103
CreatedJan 18, 2017
ResolvedJan 18, 2017
UpdatedApr 27, 2018
View Jira Issue