Is it possible to store accessories in a Data Store?

  1. What do you want to achieve? Keep it simple and clear!
    I am trying to save a players’ accessories’ in a DataStore so they can get them when they rejoin the game.
  2. What is the issue? Include screenshots / videos if possible!
    I don’t think it is possible to save an accessory unless you can get its ID but the ID isn’t anywhere on the accessory in the workspace.
  3. What solutions have you tried so far? Did you look for solutions on the Developer Hub?
    I have a textbox which players can type into and when they click a button then that ID gets inserted in to the game which then gets put on them, so I thought I could get that ID when they insert it and then then save it but, I realized it wouldn’t work because they could remove their accessories and then the wrong thing will be saved.

If anyone has any ideas on how to save 1+ accessories to a data store please share!

Any help is appreciated!

You could practically save the assetID of an accessory as data, if they are on the Roblox catalog, then you can load them in with insert service.

I was thinking a system similar to that, but my only issue is that if they join the game with accessories already on they wouldn’t be able to save those with whatever they added. I’m not sure if there is any way whatsoever to circumvent this.

You can simply create another script where it checks for accessories. First get all the children in the players character, then check if it is a Accessory. From there you can fire a bindable event if it’s on the same server or client, or a remote event saying if it had the accessory or not

That’s similar to what I was thinking but it still doesn’t solve the issue that there seems to be no way to save accessories people equipped on the roblox website instead of in game.

Like I said above, save the asset ID then use insert service to load the accessory

The asset ID isn’t a property of accessory, therefore there are no ways to save the accessories they had on before they joined because the script has no way of finding the accessory ID, unless there is some way I’m not aware of.

Never mind, I realize now that there is no reason to save the accessories that the player joins with, and I’ve solved the original question.