HumanoidRootPart Being Unanchored On Server Doesn't Occur On Client

I’ve just finished creating the loading screen for my game and wanted to make it so when a player presses the play button, they get teleported to a certain part. To hide the player while they’re loading, I made them invisible, non collidable, and anchored in the air. When the button is pressed, they will get teleported to the part and become visible and their HumanoidRootPart will become unanchored, allowing them to move.

All of this works except for one aspect; the player’s HumanoidRootPart doesn’t get unanchored. Here’s the weird part, the player’s HumanoidRootPart gets unanchored on the server but not on the client. I thought what happened on the server got replicated to all clients, where in this circumstance this doesn’t seem to be the case.

Here’s my code:

Part of local script that fires the remote event

	if clicked == false then
		clicked = true
		button.HoverScript.Disabled = true
		button.Image = "rbxassetid://5013062082"
		for i = 0, 1, 0.1 do
			background.BackgroundTransparency = i
			logo.ImageTransparency = i
			button.ImageTransparency = i

Server script that teleports the player to the part

local event = game.ReplicatedStorage:WaitForChild("FinishedLoading")
local spawnPart = workspace:WaitForChild("Spawn1")

	local character = player.Character
	local HRP = character.HumanoidRootPart
	HRP.CFrame = spawnPart.CFrame *, 5, 0)
	HRP.Anchored = false
	for i, v in pairs(character:GetChildren()) do
		if v:IsA("MeshPart") and v ~= HRP or v:IsA("Part") and v~= HRP then
			v.Transparency = 0

If you know what the issue is, please let me know!

Why don’t you just teleport the player in the local script?

1 Like

This is one of those facepalm moments when you just want to hide in a hole.

1 Like

LOL. Trust me, at least it’s better you tried to do it more complicated. I try to do everything the simple way :laughing: