[UnSolved] Getting Every instance that you can add In studio in a loop

Currently, I’ve been trying to get every Object in studio Like (Part, Meshes, GUIS, etc) in a loop
(All Instances in studio that you can add, if that’s even possible)
I’ve looked through the entire internet and found none.

How would I do that? Is it even possible?

for i,v in pairs(game.???:GetChildren()) do

end

This is what I want to create (Automatically in a loop, Has Every instance you can ever add in studio)

try:

for i,v in pairs(game:GetDescendants()) do
    print(i)
end

I think you don’t understand what I mean, I’m trying to get Every object you can add in studio.
This is what I want to create (Automatically in a loop, Has Every instance you can ever add in studio)

In what situation would you need to get every object? Just wondering.

Not sure there is a way to do this in a loop. Might need to manually make a table like:

local objects = {
	ProxmityPrompt = Instance.new('ProximityPrompt');
	ClickDetector = Instance.new('ClickDetector');
	MaterialVariant = Instance.new('MaterialVariant');
	...
}
1 Like

Uh :sweat_smile: I’m doing a Plugin feature, It would be better if I made it automatically rather than manually as this will take a very long time.

Yea it would be a lot more efficient if you could loop through it. Once again there might be a way I don’t know, but if your dedicated enough you should consider creating a dictionary

1 Like

Yup, I don’t think I can create a whole dictionary as this is will take a very long time
Hopefully it’s possible though.

just noticed how does other Plugins like ClassType plugins change them For example ReClass, So it’s definitely possible

Does anybody have any idea how could I do it? I’m really in the need of it…
Please help.

Actually ReClass uses dictionary’s to store the instances. If you’re thinking how do I know this is because I am using a plugin importer.
Here you can copy reclass’s dictionary for all instances:

return {
	
	
	--== Parts ==--
	Part = {
		WedgePart = 2,
		CornerWedgePart = 1,
		TrussPart = 1
	},
	WedgePart = {
		CornerWedgePart = 2,
		Part = 1,
		TrussPart = 1
	},
	CornerWedgePart = {
		WedgePart = 2,
		Part = 1,
		TrussPart = 1
	},
	TrussPart = {
		Part = 1
	},
	MeshPart = {
		Part = 1
	},
	
	
	--== Scripts ==--
	ModuleScript = {
		Script = 2,
		LocalScript = 1
	},
	Script = {
		LocalScript = 2,
		ModuleScript = 1
	},
	LocalScript = {
		Script = 2,
		ModuleScript = 1
	},
	
	
	--== UI ==--
	ImageButton = {
		ImageLabel = 2,
		TextButton = 1,
		Frame = 1
	},
	ImageLabel = {
		ImageButton = 2,
		TextLabel = 1,
		ViewportFrame = 1,
		Frame = 1
	},
	TextButton = {
		TextLabel = 2,
		TextBox = 1,
		ImageButton = 1,
		Frame = 1
	},
	TextBox = {
		TextButton = 2,
		TextLabel = 1,
		Frame = 1
	},
	TextLabel = {
		TextButton = 2,
		ImageLabel = 1,
		Frame = 1
	},
	ViewportFrame = {
		ImageLabel = 2,
		Frame = 1
	},
	Frame = {
		ScrollingFrame = 2,
		TextLabel = 1,
		ImageLabel = 1,
		TextButton = 1,
		ImageButton = 1
	},
	ScrollingFrame = {
		Frame = 2,
		TextLabel = 1,
		ImageLabel = 1,
		TextButton = 1,
		ImageButton = 1
	},
	UIListLayout = {
		UIGridLayout = 2,
		UIPageLayout = 1
	},
	UIGridLayout = {
		UIListLayout = 2,
		UIPageLayout = 1,
		UITableLayout = 1
	},
	UIPageLayout = {
		UIListLayout = 2,
		UIGridLayout = 1
	},
	UITableLayout = {
		UIGridLayout = 1
	},
	
	
	--== Storage ==--
	Model = {
		Folder = 1
	},
	Folder = {
		Model = 2,
		Configuration = 1
	},
	Configuration = {
		Folder = 2,
		Model = 1
	},
	
	
	--== Events and Functions ==--
	BindableEvent = {
		BindableFunction = 2,
		RemoteEvent = 1,
		RemoteFunction = 1
	},
	BindableFunction = {
		BindableEvent = 2,
		RemoteEvent = 1,
		RemoteFunction = 1
	},
	RemoteEvent = {
		RemoteFunction = 2,
		BindableEvent = 1,
		BindableFunction = 1
	},
	RemoteFunction = {
		RemoteEvent = 2,
		BindableEvent = 1,
		BindableFunction = 1
	},
	
	
	--== Data Types ==--
	IntValue = {
		NumberValue = 2,
		StringValue = 1,
		ObjectValue = 1,
		BoolValue = 1	
	},
	NumberValue = {
		IntValue = 2,
		StringValue = 1,
		ObjectValue = 1,
		BoolValue = 1	
	},
	StringValue = {
		NumberValue = 2,
		IntValue = 1,
		ObjectValue = 1,
		BoolValue = 1	
	},
	ObjectValue = {
		StringValue = 2,
		IntValue = 1,
		NumberValue = 1,
		BoolValue = 1	
	},
	BoolValue = {
		IntValue = 2,
		ObjectValue = 1,
		NumberValue = 1,
		StringValue = 1	
	},
	Color3Value = {
		BrickColorValue = 2,
		Vector3Value = 1
	},
	BrickColorValue = {
		Color3Value = 2,
		StringValue = 1
	},
	CFrameValue = {
		Vector3Value = 1
	},
	Vector3Value = {
		CFrameValue = 2,
		Color3Value = 1
	},
	
	
	--== Part Decorations ==--
	Decal = {
		Texture = 2,
		SurfaceGui = 1
	},
	Texture = {
		Decal = 2,
		SurfaceGui = 1
	},
	SurfaceGui = {
		BillboardGui = 2,
		Decal = 1,
		Texture = 1
	},
	Handles = {
		ArcHandles = 1
	},
	ArcHandles = {
		Handles = 1
	},
	Beam = {
		Trail = 2,
		ParticleEmitter = 1
	},
	Trail = {
		Beam = 2,
		ParticleEmitter = 1
	},
	ParticleEmitter = {
		Trail = 2,
		Beam = 1
	},
	BlockMesh = {
		SpecialMesh = 1
	},
	SpecialMesh = {
		BlockMesh = 1
	},
	Sparkles = {
		ParticleEmitter = 2,
		Smoke = 1,
		Fire = 1
	},
	Smoke = {
		ParticleEmitter = 2,
		Sparkles = 1,
		Fire = 1
	},
	Fire = {
		ParticleEmitter = 2,
		Sparkles = 1,
		Smoke = 1
	},
	PointLight = {
		SpotLight = 2,
		SurfaceLight = 1
	},
	SpotLight = {
		PointLight = 2,
		SurfaceLight = 1
	},
	SurfaceLight = {
		SpotLight = 2,
		PointLight = 1
	},
	SelectionBox = {
		SelectionSphere = 2,
		SurfaceSelection = 1
	},
	SelectionSphere = {
		SelectionBox = 2,
		SurfaceSelection = 1
	},
	SurfaceSelection = {
		SelectionBox = 2,
		SelectionSphere = 1
	}
}

You can change this very easily and quickly to your liking

Hmm, Weird he said that it has all Instances automatically So if Studio updates with a new instance it will appear and that’s true, Also I’m pretty sure this doesn’t have all the instances in Studio.

Here:
image
Reclass directory, I looked at all scripts defaultscores stored these things

I’ve found out these are scores for recommendation, So that’s not the real one (He has a system for the most used Instances will get recommended), He also said that it’s from the Roblox api if that could help you

You could manually copy this… Class Index

This module will do the exact thing for you:
(2) API Service - Roblox
Then type this code:

local API = require(game:GetService("ServerScriptService"):WaitForChild("APIService")) -- Or replace with path to module
local classes = API.RobloxAPI
for i, v in ipairs(classes) do
	print(v["Name"])
end

This will print every single roblox class’s name which you can customize to your liking. Here is a directory for a class:
image
Marking this as a solution really helps!

I was asleep I’ll try it out now.

@TheManInCity It doesn’t print anything.
image

I Could but It doesn’t have all the instances and when Roblox updates I’ll have to add the new instances again…

Can someone help please?