I really don’t encourage putting RemoteEvents in game.Lighting, it should preferably be in game.ReplicatedStorage.
The first argument to FireClient is the player which (in theory) should be parent to game.Players
I don’t know what you’re trying to achieve though. If you’re trying to make a dummy of the player’s character, you should probably delete the localscripts inside the character (using a For loop), and set Archivable to false
Perhaps due to the Archivable property of the character model being false.
However, before you go changing it to true and cloning, there are a lot of reasons for it being false, as you likely don’t want all the character scripts and rubbish with it.
Can I ask the use case? It may be more appropriate to have a blank NPC rig and simply call Humanoid:LoadDescription(player had:GetAppliedDescription()) on the humanoid of the NPC. That will make it look like the character and load accessories.
Side note: Player.CharacterAdded exists. You don’t need to check if every child added to the workspace has the same name as the player.