I'm trying to transport data from the main menu to the actual game, but the character doesn't get changed with the data.
Here's how it looks: link
-- Local script local player = game.Players.LocalPlayer local char = player.Character or player.CharacterAdded:Wait() local TeleportService = game:GetService("TeleportService") local playerData = TeleportService:GetLocalPlayerTeleportData() print(playerData) local decodedData = game:GetService("HttpService"):JSONDecode(playerData) print(decodedData) game.ReplicatedStorage.Remotes.GetData:FireServer(decodedData) player.PlayerData.MagicEnergy.Value = decodedData.magicEnergy player.PlayerData.Levels.XP.Value = decodedData.xp player.PlayerData.Levels.Value = decodedData.levels player.PlayerData.Silver.Value = decodedData.silver player.PlayerData.HP.Value = decodedData.hp player.PlayerData.MagicType.MagicLevel.Value = decodedData.magicLevel player.PlayerData.MagicXP.Value = decodedData.magicXP player.PlayerData.MagicXPNeeded.Value = decodedData.magicXPN player.PlayerData.MagicType.Value = decodedData.magicType player.PlayerData.Hair1.Value = decodedData.hair1 player.PlayerData.Hair1Color.Value = Vector3.new(tonumber(decodedData.hair1Color)) player.PlayerData.Hair1Offset.Value = Vector3.new(tonumber(decodedData.hair1Offset)) player.PlayerData.Hair2.Value = decodedData.hair2 player.PlayerData.Hair2Color.Value = Vector3.new(tonumber(decodedData.hair2Color)) player.PlayerData.Hair2Offset.Value = Vector3.new(tonumber(decodedData.hair2Offset)) player.PlayerData.SkinColor.Value = Color3.fromRGB(tonumber(decodedData.skinColor)) player.PlayerData.Face.Value = decodedData.face player.PlayerData.Shirt.Value = decodedData.shirt player.PlayerData.ShirtColor.Value = Color3.fromRGB(tonumber(decodedData.shirtColor)) player.PlayerData.Pants.Value = decodedData.pants player.PlayerData.PantsColor.Value = Color3.fromRGB(tonumber(decodedData.pantsColor)) char:WaitForChild("Hair").Handle.Mesh.MeshId = decodedData.hair1 char:WaitForChild("Hair").Handle.Mesh.VertexColor = Vector3.new(tonumber(decodedData.hair1Color)) char:WaitForChild("Hair").Handle.Mesh.Offset = Vector3.new(tonumber(decodedData.hair1Offset)) char:WaitForChild("Hair2").Handle.Mesh.MeshId = decodedData.hair2 char:WaitForChild("Hair2").Handle.Mesh.VertexColor = Vector3.new(tonumber(decodedData.hair2Color)) char:WaitForChild("Hair2").Handle.Mesh.Offset = Vector3.new(tonumber(decodedData.hair2Offset)) char:WaitForChild("Body Colors").HeadColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").LeftArmColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").RightArmColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").LeftLegColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").RightLegColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").TorsoColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char.Head.face.Texture = decodedData.face char:WaitForChild("Shirt").ShirtTemplate = decodedData.shirt char:WaitForChild("Shirt").Color3 = Color3.fromRGB(tonumber(decodedData.shirtColor)) char:WaitForChild("Pants").PantsTemplate = decodedData.pants char:WaitForChild("Pants").Color3 = Color3.fromRGB(tonumber(decodedData.pantsColor))
Server script:
local DSS = game:GetService("DataStoreService") local playerData = DSS:GetDataStore("PlayerData") function generateDataKey(player) local ret = "user_"..player.UserId return ret end function generateDataTable(player) local dataTable = { magicType = player.PlayerData.MagicType.Value, magicLevel = player.PlayerData.MagicType.MagicLevel.Value, magicXP = player.PlayerData.MagicXP.Value, magicXPN = player.PlayerData.MagicXPNeeded.Value, magicEnergy = player.PlayerData.MagicEnergy.Value, levels = player.PlayerData.Levels.Value, xp = player.PlayerData.Levels.XP.Value, xpn = player.PlayerData.Levels.XPNeeded.Value, silver = player.PlayerData.Silver.Value, hp = player.PlayerData.HP.Value, hair1 = player.PlayerData.Hair1.Value, hair1Color = player.PlayerData.Hair1Color.Value, hair1Offset = player.PlayerData.Hair1Offset.Value, hair2 = player.PlayerData.Hair2.Value, hair2Color = player.PlayerData.Hair2Color.Value, hair2Offset = player.PlayerData.Hair2Offset.Value, skinColor = player.PlayerData.SkinColor.Value, face = player.PlayerData.Face.Value, shirt = player.PlayerData.Shirt.Value, shirtColor = player.PlayerData.ShirtColor.Value, pants = player.PlayerData.Pants.Value, pantsColor = player.PlayerData.PantsColor.Value } return dataTable end function inputData(player, data) local char = player.Character or player.CharacterAdded:Wait() player.PlayerData.MagicType.Value = data.magicType player.PlayerData.MagicType.MagicLevel.Value = data.magicLevel player.PlayerData.MagicXP.Value = data.magicXP player.PlayerData.MagicXPNeeded.Value = data.magicXPN player.PlayerData.MagicEnergy.Value = data.magicEnergy player.PlayerData.Levels.Value = data.levels player.PlayerData.Levels.XP.Value = data.xp player.PlayerData.Levels.XPNeeded.Value = data.xpn player.PlayerData.Silver.Value = data.silver player.PlayerData.HP.Value = data.hp player.PlayerData.Hair1.Value = data.hair1 player.PlayerData.Hair1Color.Value = Vector3.new(tonumber(data.hair1Color)) player.PlayerData.Hair1Offset.Value = Vector3.new(tonumber(data.hair1Offset)) player.PlayerData.Hair2.Value = data.hair2 player.PlayerData.Hair2Color.Value = Vector3.new(tonumber(data.hair2Color)) player.PlayerData.Hair2Offset.Value = Vector3.new(tonumber(data.hair2Offset)) player.PlayerData.SkinColor.Value = Color3.fromRGB(tonumber(data.skinColor)) player.PlayerData.Face.Value = data.face player.PlayerData.Shirt.Value = data.shirt player.PlayerData.ShirtColor.Value = Color3.fromRGB(tonumber(data.shirtColor)) player.PlayerData.Pants.Value = data.pants player.PlayerData.PantsColor.Value = Color3.fromRGB(tonumber(data.pantsColor)) char:WaitForChild("Hair").Handle.Mesh.MeshId = data.hair1 char:WaitForChild("Hair").Handle.Mesh.VertexColor = Vector3.new(tonumber(data.hair1Color)) char:WaitForChild("Hair").Handle.Mesh.Offset = Vector3.new(tonumber(data.hair1Offset)) char:WaitForChild("Hair2").Handle.Mesh.MeshId = data.hair2 char:WaitForChild("Hair2").Handle.Mesh.VertexColor = Vector3.new(tonumber(data.hair2Color)) char:WaitForChild("Hair2").Handle.Mesh.Offset = Vector3.new(tonumber(data.hair2Offset)) char:WaitForChild("Body Colors").HeadColor3 = Color3.fromRGB(tonumber(data.skinColor)) char:WaitForChild("Body Colors").LeftArmColor3 = Color3.fromRGB(tonumber(data.skinColor)) char:WaitForChild("Body Colors").RightArmColor3 = Color3.fromRGB(tonumber(data.skinColor)) char:WaitForChild("Body Colors").LeftLegColor3 = Color3.fromRGB(tonumber(data.skinColor)) char:WaitForChild("Body Colors").RightLegColor3 = Color3.fromRGB(tonumber(data.skinColor)) char:WaitForChild("Body Colors").TorsoColor3 = Color3.fromRGB(tonumber(data.skinColor)) char.Head.face.Texture = data.face char:WaitForChild("Shirt").ShirtTemplate = data.shirt char:WaitForChild("Shirt").Color3 = Color3.fromRGB(tonumber(data.shirtColor)) char:WaitForChild("Pants").PantsTemplate = data.pants char:WaitForChild("Pants").Color3 = Color3.fromRGB(tonumber(data.pantsColor)) end function loadData(player) local key = generateDataKey(player) local data = playerData:GetAsync(key) inputData(player, data) end game.Players.PlayerAdded:Connect(function(player) player.CharacterAdded:Connect(function(char) spawn(function() wait(1) for i, v in pairs(char:GetChildren()) do if v:IsA("Accessory") then v:Destroy() end end for i, v in pairs(game.ServerStorage:GetChildren()) do if v:IsA("Accessory") then v:Clone().Parent = char end end end) game.ReplicatedStorage.Remotes.GetData.OnServerEvent:Connect(function(player, decodedData) print(decodedData) local success = pcall(function() return playerData:GetAsync(key) end) if success then print("Data exists") inputData(player, decodedData) else print("No data found") end char:WaitForChild("Hair").Handle.Mesh.MeshId = decodedData.hair1 char:WaitForChild("Hair").Handle.Mesh.VertexColor = Vector3.new(tonumber(decodedData.hair1Color)) char:WaitForChild("Hair").Handle.Mesh.Offset = Vector3.new(tonumber(decodedData.hair1Offset)) char:WaitForChild("Hair2").Handle.Mesh.MeshId = decodedData.hair2 char:WaitForChild("Hair2").Handle.Mesh.VertexColor = Vector3.new(tonumber(decodedData.hair2Color)) char:WaitForChild("Hair2").Handle.Mesh.Offset = Vector3.new(tonumber(decodedData.hair2Offset)) char:WaitForChild("Body Colors").HeadColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").LeftArmColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").RightArmColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").LeftLegColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").RightLegColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char:WaitForChild("Body Colors").TorsoColor3 = Color3.fromRGB(tonumber(decodedData.skinColor)) char.Head.face.Texture = decodedData.face char:WaitForChild("Shirt").ShirtTemplate = decodedData.shirt char:WaitForChild("Shirt").Color3 = Color3.fromRGB(tonumber(decodedData.shirtColor)) char:WaitForChild("Pants").PantsTemplate = decodedData.pants char:WaitForChild("Pants").Color3 = Color3.fromRGB(tonumber(decodedData.pantsColor)) end) end) end)