An alternative to LoadAsset for plugins

I ran into a problem this morning with uploading a plugin. I have been working on a plugin for a little bit now and was ready to upload the first version. After uploading it, and starting to configure it, I noticed changes weren’t saving, so I refreshed the page. When refreshed, I was greeted with a big red box that read “Not distributed on Creator Store”, “This asset may be in violation of Roblox Community Standards”. This confused me, but I clicked on the link it gave me to see what the problem might be. Turns out, you can’t use InsertService:LoadAsset() in plugins now? From everything I have seen and researched so far, there is no alternative way to load hats or similar. Is anyone aware of a different method that I haven’t been able to find? Plugins to load hats exist, so what could they possibly do differently? I was quite excited to release this project and this is quite frustrating. Any help is appreciated, thanks.

I think you could use DataModel:GetObjects. It returns a array of the instances in the asset.


It is deprecated, but you can use it in plugins (as it’s Plugin Security.)

The changes from LoadAsset that i know are:

  • The asset doesn’t need to be trusted for the place

  • Returns array instead of single model with instances in it.

  • Requires a url instead of id.


Example for it

--puts the asset into the workspace.
--this assumes it's either a folder, module, or model. Since this script only inserts the first item in the array.
local target_id = 11675215679 --check about this asset id later. i found it while editing.

game:GetObjects("rbxassetid://" .. target_id)[1].Parent = game:GetService("Workspace")

That asset id in the script is a hat inserter plugin id. It uses :LoadAsset indeed.

Sweet! I’ll give that a try, thank you.