Ok so i have been searching quite a while and i haven’t found a solution. Is there a way you can change a player character smoothly without respawning them? And if possible being a default character in case they respawn again? If not any way i can change a player character even if they can respawn without using CharacterAppearanceId because this requires a specific player id and if that player changes his avatar it will change it as well.
Yes the player has this stuff called Shirt and Pants which you can change as if it were a decal
Ok so i found away and stuff. The only thing that i don’t know is how can i set a specific player different StarterCharacter any ideas?
What do you mean exactly?
As for the changing of the character part, you can use multiple ways, 1 easy way is setting a StarterCharacter in the StarterPlayer found in the explorer, other ways can be done using CharacterAutoLoadsOff as well as the cloning of the specific character.
Yes but using StarterCharacter can only be used for everyone and in the beggining. I want to be able to set only a specific player a StartCharacter and not by the beggining. Right now i am testing the CharacterAutoLoadsOff to see if i can do it
To make CharacterAutoLoads off work, you’ll have to load the character before setting the new player’s character. here’s a script that could work
game.Players.PlayerAdded:Connect(function(Player)
local Character = Player.Character or Player.Character:Wait()
wait(5)
local NewPlayerChar = --path to the character you want to use, make sure to have a clone at the end if you want multiple players to use the same character.
PlayerLoadCharacter()
NewPlayerChar.Name = Player.Name
Character = NewPlayerChar
NewPlayerChar.Parent = workspace
end)
Make sure the new character you’re using has all the essentials to make each humanoid status functional, what I mean by that is having all the essential scripts as well as a humanoid.
This is what i am doing but whenever a player dies with having CharacterAutoLoads off he won’t respawn. Here is the code
game.Players.PlayerAdded:Connect(function(Player)
Player:LoadCharacter()
Player.Character.Humanoid.Died:Connect(function()
print("Hello")
wait(1)
Player:LoadCharacterWithHumanoidDescription(Description)
end)
And basically at the start of a game the player default character loads and i want to make it so whenever he dies gonna spawn with a specific HumanoidDescription. And it does work but just once. It’s like when the player respawn has like a different humanoid and the Humanoid.Died doesn’t fire again when he dies and won’t respawn the player again. Any ideas?
Probably fire the Humanoid.Died event through a local script and with the help of RemoteEvents you’ll have the ability to reload players since loading players only works through server scripts.
local function recursiveLoadChar(plr)
Player:LoadCharacterWithHumanoidDescription(Description)
plr.Character.Humanoid.Died:Connect(function()
wait(1)
loadChar(plr)
end
end