Let's start with some context as it might be easier to follow along. I'm making a game where you spawn as either the nightguard or a random animatronic. The nightguard works fine. The issue is the animatronic. At first it works fine, the player posseses the custom character and it all runs pretty smooth. But after about 5 seconds the custom character dissapears and the player resets returning to the base character.
Here is the code: Some context v is the player. v.Character:destroy() local freddy = game.ReplicatedStorage.Animatronics:WaitForChild("Freddy"):Clone() freddy.Parent = workspace freddy.Name = v.Name v.Character = freddy
Hello! For achieving what you want, you would have to use RemoteEvents, in order to make a Client-Server connection that changes the player's character for the whole server, not just the certain client(Player). You would fire the remote in a LocalScript, then when the RemoteEvent picks the request up, it would change the character in a Script that is located in ServerScriptService.
Hope this helps! Make sure to mark as solution if useful.