Network ownership to player works in Roblox studio but not in Roblox?

game.Players.PlayerAdded:Connect(function(Player)
	local AddGolf = Instance.new("Part") do
		AddGolf.Shape = "Ball"
		AddGolf.Size = Vector3.new(1,1,1)
		AddGolf.Position = Vector3.new(0, 5, 0)
		AddGolf.Name = Player.name
		AddGolf.Anchored = false
		AddGolf.Parent = workspace.GolfFolder
	end
	
	local GolfCam = Instance.new("Part") do
		GolfCam.Name = Player.name
		GolfCam.Anchored = true
		GolfCam.Transparency = 1
		GolfCam.CanCollide = false
		GolfCam.Parent = workspace.CamFolder
	end
	
	local GolfPlayer = Instance.new("StringValue") do
		GolfPlayer.Value = Player.name
		GolfPlayer.Name = "Name"
		GolfPlayer.Parent = AddGolf
	end
	
	local GolfPos = Instance.new("IntValue", AddGolf) do
		GolfPos.Name = "Pos"
		GolfPos.Parent = AddGolf
	end
end)
	
local RemoteEvent = game.ReplicatedStorage:WaitForChild("FireEvent")

RemoteEvent.OnServerEvent:Connect(function(Player, Mouse)
	local PlayerName = Player.name
	
	workspace.GolfFolder[PlayerName]:SetNetworkOwner(Player)
	
	workspace.GolfFolder[Player].CFrame = CFrame.new(workspace.GolfFolder[Player].Position, Mouse)
	
	workspace.GolfFolder[Player].Velocity = workspace.GolfFolder[Player].CFrame.lookVector * 50
end)

An improvement you could make in the future, is to set the parent of objects last;