I am trying to figure out how (Blueprint Only) get a list of Data Assets of Type Character, and get meta data for all the characters to display in a list to choose from in UI.
Metadata is not accessible at runtime, so do I need to have a Base Data Asset Class, that would have a single String->String Map Variable to hold key-value pairs for meta data on the Character Base Class, and then use Get Assets by Class, loop through the resulting list, get asset, cast each Data Asset to the Character Base, then get the MetaData Variable? And, in doing so, I know the Cast loads it into memory, but it will only load the Base Class and the Single variable for each correct?
If I create a struct that has a single String–>String Map, I could use that structure to then keep track of available characters and their metadata in a map?
This way I could do further filtering of characters to return for choice list in UI on various meta data, such as Campaign characters, characters based on a specific world, location, type, class or whatever.
Is this a bad way to do this? A better way?