Accoutrement.InsertedID or other means of finding a hat by ID

As a Roblox developer, it is currently too hard to tell apart accessories, using HumanoidDescription as a reference.

Example? Let’s say I want to give player an ability to retexture their hats.
They insert hats using this format: HatID.TextureID
HumanoidDescription is cool, but there’s one issue.
How am I supposed to tell hats apart? Some hats use exactly the same names. Mostly retextures.

I don’t want to insert hats just check their mesh, texture and name.
That’s not efficient.

InsertedID [read-only] only appears when hat is inserted right into the game.
It’s not permament though.
Once the game or studio instance starts, every value will be nil.
Hats inserted later keep the said ID.

I don’t think Roblox should alter accessory names to something like “Accessory_ID”, since it could break many games and gears that used hat names for bonuses.

If Roblox is able to adress this issue, it could save us time.

7 Likes

I think if there was a number value inside of each hat, that could solve the issue potentially.

Yeah, value could be nice as well - but I believe people would forget to remove the value when they use custom / already inserted hats.

Perhaps the value could be set to Archivable = false then?

Oh right, that sounds reasonable.
It’s up to staff though.

Maybe a function which returns accessories in a table?

-- ID / Accoutrement instance
local example = {[123456789] = character.Tophat;}

This is something I could use. I want to check if users are wearing a specific hat a lot (I do a lot of avatar-related stuff) for things like databases. This would help extremely because right now there’s no good way to know which accessories a player is wearing.

Since UGC got announced, this could help us tell hats apart!