Nothing Will Clone

Hey! I’m trying to do something very simple; clone an attachment. I’ve done this before and it has worked and now it hasn’t. I originally tried writing the code from scratch but that didn’t work so I just copied old code that I know works but this just won’t work. I’ve changed the position of the part, used different methods, etc but it doesn’t clone at all. I even tried individually cloning the particles under the attachment but it just seems to not clone at all. I know this is a silly question but I swear I’ve tried everything and searched for solutions. :sob:

game.Players.PlayerAdded:Connect(function(Player)
	print(Player.Name)
	script.Particle.Attachment:Clone().Parent = Player.Character.LeftHand
end)

Ensure that the object you are trying to clone has “Archivable” set to true

https://developer.roblox.com/en-us/api-reference/property/Instance/Archivable

This property determines whether an object should be included when the game is published or saved, or when Instance:Clone is called on one of the object’s ancestors. Calling Clone directly on an object will return nil if the cloned object is not archivable.

Also, you are cloning the attachment, which are not visible unless you set it to true. Are you sure you are only meant to clone the attachment?
If you want the particle to appear on the players hand try cloning the entire particle. Assuming it’s a ParticleEmitter, an attachment isn’t even needed because it can be parented to any basepart and still work.

try this:
game.Players.PlayerAdded:Connect(function(Player)
print(Player.Name)
local ParticleClone = script.Particle.Attachment:Clone()
ParticleClone.Parent = Player.Character.LeftHand
end)

Make sure that the Attachment is Archivable. You also forgot to Connect this into a CharacterAdded event, Meaning that if you don’t connect it into one it will mostly likely neither recognize nor find the Character. Try using the script below and let me know if it works.

game.Players.PlayerAdded:Connect(function(Player)
	Player.CharacterAdded:Connect(function(Character)
		-- Wait so we ensure the Character is there
		task.wait()

		-- Add Particle
		print(Player.Name)
		script.Particle.Attachment:Clone().Parent = Player.Character:WaitForChild("LeftHand")
	end)
end)

I previously tried using CharacterAdded and waiting for the appearance to load and didn’t work.

I specifically checked if it was archivable and it was. I’ll try specifically cloning the particles.

i doubt the character would be loaded by then…

game.Players.PlayerAdded:Connect(function(Player)
    Player.CharacterAppearanceLoaded:Connect(function(char)
        script.Particle.Attachment:Clone().Parent = Player.Character.LeftHand
    end)
end)

oh wait that doesn’t work either, silly solution to your silly question: make a new particle with all the properties of that particle

It was my ROBLOX studio. Roblox introduced an update which caused cloning to not work for some people.