I’m working on making instanced pickups that can be added to a level and edited as needed. Everything I’ve seen online suggests that there shouldn’t be anything wrong with my setup, but I’m still unable to edit properties of the actual instance. Leading me to believe that the property actually isn’t being instanced at all.
I have 3 classes:
ReplicatedObject - with the following Macros
UCLASS(Abstract, Blueprintable, EditInlineNew, DefaultToInstanced)
class GAME_API UReplicatedObject : public UObject
{
GENERATED_BODY()
public:
UReplicatedObject();
...
}
Then I have an item class that’s inheriting from that
UCLASS(Abstract, Blueprintable, EditInlineNew, DefaultToInstanced)
class GAME_API UItem : public UReplicatedObject
{
GENERATED_BODY()
public:
UItem();
/** Various UPROPERTY() 's defining icon, static mesh, quantity, name and etc */
...
}
Lastly I have a pickup class, and this has a UPROPERTY of UItem that im trying to configure as an instance in the editor
UCLASS(ClassGroup = (Items), Blueprintable, Abstract)
class GAME_API APickup : public AActor
{
GENERATED_BODY()
public:
APickup();
UPROPERTY(EditAnywhere, BlueprintReadWrite, Instanced)
UItem* ItemTemplate;
...
}
Inside the editor I made BP_PickupBase Blueprint class and set some default values, but as you can see I’m able drop down the item and edit its properties. But only in the base class
When I go to place the object in the level and configure it, I dont have any of the dropdown options. Just the ability to set ItemTemplate, as you can see here
If anyone has any suggestions or feedback, it would be greatly appreciated