TSoftObjectPtr in TMap fails to update to Cooked Path when using UWorldPartitionRuntimeCellTransformer

Hi there

We’ve encountered an issue where TSoftObjectPtr references to Actors, stored inside a TMap within a USTRUCT, are not updated to their generated cell paths during cooking if any UWorldPartitionRuntimeCellTransformer is used.

The references keep pointing to the source level package instead of the _Generated_ cell package, causing them to fail at runtime. This happens even with built-in engine transformers.

Data Structure:

USTRUCT()
struct FSequenceParameters {
  GENERATED_BODY()
  UPROPERTY(EditAnywhere)
  TMap<FString, TSoftObjectPtr<AActor>> Bindings;
};
 
UCLASS()
class USequenceNarrationComponent : public UActorComponent {
  GENERATED_BODY()
  UPROPERTY(EditAnywhere)
  FSequenceParameters Parameters;
};

Evidence:

  • Screenshot 1 (With Transformer):

[Image Removed] Shows the path remains unchanged, pointing to the source level instance.

  • Screenshot 2 (Without Transformer):

[Image Removed]Shows the correct behavior where the path is remapped to the generated WP cell.

Questions:

  1. Is this a known issue, and is there a Changelist (CL)?
  2. If no fix exists, what is the recommended way to manually trigger the path remapping for nested containers during the cell transformation phase?
  3. Which part of the cooking pipeline is responsible for fixing up these references when a transformer is present?

Best regards

Igor

[Attachment Removed]

Hello!

The Runtime cell transformers should not affect the remapping of the soft actor paths as it happens before the RCT transforms the instances. I took the code you shared and implemented a quick test. The soft path was properly resolved both in editor and at cook time with the ISM and the FastGeo transformers. Are you using a custom cell transformer? Is the binding changed through code in some ways that could happen after the paths have been updated? Can you try to create a test project that demonstrate the problem?

Regards,

Martin

[Attachment Removed]

The remapping happens in UWorldPartitionLevelStreamingPolicy::ConvertEditorPathToRuntimePath and this is done after the transformers have been applied.

[Attachment Removed]

Hi Martin,

Thanks for checking this and for the quick test.

On our side the issue reproduces only in the cooked build — in the editor everything resolves correctly. We specifically tested with the built‑in UWorldPartitionRuntimeCellTransformerISM transformer (no custom transformers involved) and consistently observed the problem there as well.

It actually took us about three days to track this down because the connection between “enabling a runtime transformer” and “soft references no longer being remapped” was not obvious at all. Once we removed the transformer settings from the World Settings, the soft paths immediately started resolving to the generated cell packages again. Further isolated tests confirmed that the transformer is the factor that changes the behavior.

I’ll try to reproduce this in a clean minimal project, but I can’t promise a quick turnaround — our main project is in a late production stage and there are many moving parts. If I manage to get a lab‑level repro, I’ll attach it.

In parallel, could you suggest how we might debug the cooking pipeline to understand where the remapping stops happening when a transformer is active? Any hints on which subsystem or step handles the soft path fix‑up before/after RCT would help us narrow it down.

Best regards,

Igor

[Attachment Removed]