Hello, I created a plugin to search the entire game for a specific class type, then search that child’s value, gut I am lacking permission 6. If I make it search workspace, that works, but I want it to search workspace, lighting, replicated storage, etc. Any way to get past permission 6?
1 Like
You should be able to access Replicated storage, Lighting, etc., in my experience. Just don’t loop through the whole game, because there are some Roblox Core services you can’t access (for security reasons).
May I know what code you currently have?
1 Like
I managed to have a work around, I didn’t want to write code for every child under game, but I did anyways. Here is the updated code that works:
local toolbar = plugin:CreateToolbar("Check Everything")
button = toolbar:CreateButton("Find Values","Looks in all items for a value","http://www.roblox.com/asset/?id=5831578939")
ui = game:GetService("CoreGui")
button.Click:Connect(function()
local e,r = pcall(function()
if ui:FindFirstChild("CheckAll") == nil then
gui = script.CheckAll:Clone()
gui.Parent = ui
gui.Enabled = true
gui.TextButton.MouseButton1Click:Connect(function()
local x = false
print("Checking...")
for i,v in pairs(game.Workspace:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.Players:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.Lighting:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.NetworkClient:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.ReplicatedFirst:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.ReplicatedStorage:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.ServerScriptService:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.ServerStorage:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.StarterGui:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.StarterPack:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.StarterPlayer:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.Teams:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.SoundService:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.Chat:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.LocalizationService:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
for i,v in pairs(game.TextService:GetDescendants()) do
if v:IsA(gui.What.Text) then
if v[gui.Att.Text] == gui.Val.Text then
x = true
print("Found it! Its name is: "..v.Name..", its parent is: "..v.Parent.Name)
end
end
end
if x == false then
print("Nothing Found!")
end
end)
else
ui:FindFirstChild("CheckAll"):Destroy()
end
end)
end)
1 Like