How can I get a player's layered clothing asset IDs?

Hey there! I’m a little confused regarding how to accomplish this. I know how to get the asset IDs of a player’s classic shirt, classic pants, hats, etc. via their humanoid description using player:GetHumanoidDescriptionFromOutfitId(userId). However, this humanoid description doesn’t give me much regarding the new layered clothing. In fact, this chart from the API site doesn’t even show where it’d be stored.

How can I get the asset IDs of all the layered clothing a player is wearing? Including the shirt, pants, and jacket. I need their asset IDs so that I can script it to where players can try and buy other people’s layered clothing. Thanks!

P.S. I have looked into utilizing the AccessoryBlob of the HumanoidDescription but this is impossible because according to the API site, I can only use this within Studio - I cannot access it via Lua code.

A post already exists about this, here.

Like @As8D mentioned, you should use “GetCharacterApperanceInfoAsync”. It returns most of the info about the Character.
Layered Clothing is essentially just an accessory, therefore you should be able to get info about them using the same method.

Example:

local Players		= game:GetService("Players")
local LocalPlayer	= Players["LocalPlayer"]["UserId"]
local ApperanceInfo = Players:GetCharacterAppearanceInfoAsync(LocalPlayer)
print(ApperanceInfo)

Output:

22:49:44.415   ▼  {
                    ["assets"] =  ▼  {
                       [1] =  ▼  {
                          ["assetType"] =  ▼  {
                             ["id"] = 18,
                             ["name"] = "Face"
                          },
                          ["currentVersionId"] = 65701584,
                          ["id"] = 26424808,
                          ["name"] = "Know-It-All Grin"
                       },
                       ...
                 }  -  Client - LocalScript:4

EDIT: Readability.

1 Like