Currently I believe the only way to see if a player has unlocked an ornament is to look at sockets itemComponents and list out reusablePlugHashes. Apart from this also collecting up a bunch of items that are irrelevant (mainly perks/traits), it means that you can't see if a player has unlocked an Ornament if they don't have the corresponding item it plugs into in their inventory.
Would it be possible to request ornament unlock status directly from the API, perhaps via a new GetProfile component?
I dig the idea - I need to investigate a little more, and see whether that info can be returned in a way that's safe from future Designer meddling (like with most things in the API, nothing's ever "totally safe". But if it'd be very easy for designers to pivot from the "ornaments are always unlocked after you earn them" approach for example, I'd hate for the API to suddenly not be able to return the info. I need to investigate it before I can say for sure whether we can return it in such a manner as a result.)
This may be (I'm 90% certain it will be) something that we'll get "for free" once Collections become a real thing in game (and we implement it in the API), but I need to investigate just to make sure. If it turns out to be the case, we will have to wait until then so we don't end up giving you something in the API and then deprecating it a month or two later in favor of the more permanent system.
Most helpful comment
I dig the idea - I need to investigate a little more, and see whether that info can be returned in a way that's safe from future Designer meddling (like with most things in the API, nothing's ever "totally safe". But if it'd be very easy for designers to pivot from the "ornaments are always unlocked after you earn them" approach for example, I'd hate for the API to suddenly not be able to return the info. I need to investigate it before I can say for sure whether we can return it in such a manner as a result.)