Get asset IDs of multiple image game assets via script

I have a really specific problem, and I can’t seem to find anyone who has had it before me. I have 300 images in the Game Explorer > Images folder, and I want to somehow retrieve the asset ID for each one. Manually, I can right click an individual one and copy the ID: image

With 300 images, it would be a nightmarish experience to manually copy/paste every one. For what I’m doing, I must have the IDs (i.e. “rbxgameasset://Images/Frame1” will not work). Is there some way, possibly via the command bar, I can retrieve them? Thanks.

2 Likes

Unfortunately you can not access game explorer via script, you’re gonna have to do it manually.

I’m not fully sure about your problem, but if you have all images already in your game , let’s say a folder, then you might be able to add all asset ids to a table or something via a simple loop, but no, there’s no way to insert all different ids into different scripts using code.

However to insert all of them in a table or something (if they all are in one place):

container = {}
local folder = workspace:WaitForChild("Folder")
for f=1, #folder do
   table.insert(container, folder[f])
 end
--now to print them all in output
print(unpack(container))

Maybe , if all of the images were renamed according to where you want to bring the id , maybe in a string value you could use some code to insert the asset id to it’s corresponding (in terms of having the same name) datamodel or GUI object
that would be the easiest way.

3 Likes

Thanks for your input. I have an idea and I’ll come back if it works out.

I have a strong suspicion that you must be able to. I’ve noticed a plugin in Studio’s “BuiltInPlugins” folder: image

Someone please correct me if I’m wrong, but “AssetManager” seems like it would be the Game Explorer. I’d assume these all run with the same level of security as plugins or code ran from the command bar. I’ve inserted the .rbxm into a place and tried to find somewhere that might give me a hint on how to do this, but I couldn’t.

Here is how I did it:

local decal = Instance.new("Decal")
	decal.Texture = "rbxgameasset://Images/Silent ".."("..frameN.Value..")"

image

This topic helped me to accomplish this idea late last year.

7 Likes