Making tools invisible locally

Do a loop through all the parts in the model and set it’s LocalTransparencyModifier to 1.

all in one local script, anywhere you want it.

local tool = game:GetService("Players").LocalPlayer.Backpack['YourTooName']

tool.AncestryChanged:Connect(function(_, newParent)
if newParent and newParent == game:GetService("Players").LocalPlayer.Character then
for _, v in pairs(tool:GetDescendants()) do
if v:IsA("BasePart") then
v.Transparency = 1
end
end
end
end)
1 Like

Does you game have filtering enabled?

If not try turning FilteringEnabled to true.

If you have FilteringEnabled unchecked then your game is in experimental mode and all the changes made in the client will be visible to the server as well

If the changes made in the client is visible to the server then I think it could only be that filtering is not happening…no so sure by the way

I don’t get it. For me it filters fine. I make a sword’s handle completely transparent client-side, and it stays opaque server-side.

I think the problem must be not client side but server side, you should make sure that the parts actually exists in server and they are not transparent by default.

Use a localscript. That won’t replicate to the server. Set all the transparencies to 1.

I just realized I was cloning from replicated storage through a local script… Sorry for taking up your time. Thank you for all the help!

1 Like