Set by caller magnitude : Dataname is Visible defaults and uneditable

Hi,

When using “set by caller magnitude” in a gameplay effect modifier the field “Data Name” is greyed out and uneditable.
I think this should be editable in some way but I did not find how yet. Since gameplay effect are data only assets it causes be a problem implementing my custom effects.

In code the struct FSetByCallerFloat has the UProperty DataName set to VisibleDefaultsOnly shouldn’t it be EditDefaultsOnly ?

in file GameplayEffect.h

USTRUCT()
struct FSetByCallerFloat
{
	GENERATED_USTRUCT_BODY()

	FSetByCallerFloat()
	: DataName(NAME_None)
	{}

	/** The Name the caller (code or blueprint) will use to set this magnitude by. */
	UPROPERTY(VisibleDefaultsOnly, Category=SetByCaller)
	FName	DataName;

	UPROPERTY(EditDefaultsOnly, Category = SetByCaller, meta = (Categories = "SetByCaller"))
	FGameplayTag DataTag;

	/** Equality/Inequality operators */
	bool operator==(const FSetByCallerFloat& Other) const;
	bool operator!=(const FSetByCallerFloat& Other) const;
};

++

Jnat

I started having this same problem recently with gameplay abilities. They just stopped working on some recent update. Instead of using names, switch it to use a gameplay tag for each set by caller value and it works perfect.