How to create UPROPERTY that can select from available sockets

Hi Community!

I am looking into defining a Character class that will expose a property to blueprints to allow someone to defined which socket a weapon can be attached to.

One solution I see is to defined a member variable as such:

UPROPERTY(EditDefaultsOnly, Category = "Equipment")
FName PrimaryWeaponSocket;

This will work as I can use the FName to setup attachments. This is great an all but I would like to make this more user friend and provide a Dropdown list of available sockets. The idea is the PrimaryWeaponSocket property in the details pane will have a drop down of all sockets of the character static mesh, and the user would be able to select the socket they want. This behavior is exactly like how “Parent Socket” works in the Blueprint editor.

I went down the rabibit hole of looking into the source code and found where this custom details property is being created, but it doesn’t appear to be reusable/not really sure how I can apply what’s there into making it reusable. Does anyone know of any useful resources or advise on tackling this issue?

2 Likes