✓ Accepted answer
I actually just recently finished making a custom character system which will let me change my character without using the "startercharacter" method:
local respawnDelay = 3
game.Players.CharacterAutoLoads = false
game.Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(character)
local humanoid = character:FindFirstChild("Humanoid")
if humanoid then
humanoid.Died:Connect(function()
wait(respawnDelay)
player:LoadCharacter()
wait()
local newmodel = game.ServerStorage.TestRig:Clone()
wait()
newmodel.Parent = game.Workspace
wait()
newmodel.Name = player.Name
repeat wait() until
newmodel.Parent == game.Workspace
player.Character = newmodel
end)
end
end)
player:LoadCharacter()
end)
its pretty easy, you first disable autospawning and set up a manually respawn system. I took this one off of the wiki on :loadcharacter. right now I haven't made the mechanics that switch it out. but you can use an object value or a string value to represent "newmodel". newmodel is the model you wish to turn into.