Description

Our team has been using property instances, and have run into several problems. We were able to reproduce one of the problems, and I was hoping to have your team look at it.

General scenario. We have a custom K2 node that can reference 1-x instances of a BP class. An instance of this class can also reference 1-x instances of another (same archetype) BP class. There is no cyclic loop in this example, as all instances are unique. If you fill in some of the fields with instances, and then compile, the instance will no longer match the base type, and have some odd values.

This happens in several different ways, and is not just isolated to newly created blueprints. When this node is used in a graph, the issue creates major problems, and always requires a re-launch to make things work again.

Steps to Reproduce

The reproduction can be done with the following project: <project attached>

Here are the steps to reproduce:

In the Asset Window, Create a new Blueprint that inherits from Actor.

Open the newly created Blueprint

In the Graph view, create a new BP node of type: FSM State Node

In the Node properties add a new value to "Exit Conditions"

Select the instance, currently None, and change it to BP_FirstChildCompoundCondition
Expand the new property labeled Conditions. It should have three items (figure 1)

In the AssetWindow open the blueprint "BP_FirstChildCompoundCondition"

Notice that the contents of this class match the contents of the newly created instance on the node (figure 2)

In the BP_FirstChildCompoundCondition window (not the the instance), clear out all of the "Conditions" in the array by hitting "Remove All Elements"

Compile the BP_FirstChildCompoundCondition blueprint

Back in the newly created blue print, with our FSM State Node, select the node and look at its properties.
Notice that there are three conditions still, when there should be none. (figure 3)

Notice that all of the conditions have empty text. (figure 3)

Compile the new Blueprint
Notice that the conditions still do not match the parent, which should be empty. Instead, the first two match the original data, but the third is "None". (figure 4)

Have Comments or More Details?

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

1
Login to Vote

Won't Fix
CreatedJan 25, 2018
ResolvedAug 18, 2021
UpdatedAug 18, 2021