Is it possible to get total number of existing image ID's?

Im making a random image generator, and i made it simple:

repeat script.Parent.Parent.ImageLabel.Image = "rbxassetid://"..math.random(1,x) task.wait(0.1) until script.Parent.Parent.ImageLabel.IsLoaded

But I don’t know how I’m supposed to get the total number of existing imageIDs and put it at x spot.
Is it even possible?

1 Like

I dont think thats possible…
[character limit]


To answer your question on how to get an upper bound for x, upload an image asset yourself and take the numeric ID from that.


But the number of images increases dynamically, so when somebody creates another image then there would be no chance for it to randomize

1 Like

Thats the best you can do tho

or make x increase with +1 every second and save it in DSS but thats just nonsense

1 Like

Yep, good catch! If you wanted to have x dynamically update, couple things you could do…

  • Systematically upload a new asset and get it’s id. This would involve some external web services, I personally wouldn’t know where to start with that. This would be horribly complicated

  • Create a function to “search” for x

  1. Write a “guess” for x that would be insanely large.
  2. Try this, see if it is a valid Id
  3. If it is not valid, divide x by 2 and try again.
  4. Eventually, you will have a value x that is invalid and a value x/2 that is valid. You now have a range for an upper bound
  5. Split the range of [x/2, x] down the middle (mid = (x + (x/2))/2 = (3x/4)). Query this value.
  6. If mid is valid, then you know the upper bound exists in [(3x/4), x]. If it is invalid, you know it is in [x/2, (3x/4)]. Repeat this as an interative process until you reach a range of size 1. This is your final value.

Now, this logic presumes that "rbxassetid://"..x" is valid for all values of x from 1 to x (which is not the case I’m afraid - infact, a majority of your “guesses” will be invalid)

Conclusion being… do you really need to do this? Is there a simpler solution that will achieve the same/similair outcome for you?


This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.