How to fix server lag for lantern gear physics

I have a lantern gear in my game, physics and lighting looks smooth on the client bug lags on server. The weld in the code doesn’t have anything to do with the laggy physics and SetNetworkOwner doesnt help

local function onEquip()
	Handle.LanternWeld.Enabled = false
	Handle.HingeConstraint.Enabled = true
	
	Player = game.Players:GetPlayerFromCharacter(Lantern.Parent)
	if Player then
		for _,Part in pairs(Lantern:GetDescendants()) do if Part:IsA("Part") then
				Part:SetNetworkOwner(Player)
			end
		end
		
	else
		for _,Part in pairs(Lantern:GetDescendants()) do if Part:IsA("Part") then
				Part:SetNetworkOwnership(nil)
			end
		end
	end
end

local function onUnequip()
	Handle.LanternWeld.Enabled = true
	Handle.HingeConstraint.Enabled = false
end
External Media

Would it be possible to remove it on the server side and just tell all clients that the player has the lantern?

Have you considered using a single mesh part for the lantern instead of multiple parts? This will greatly reduce the network traffic and calculations needed. Also, make sure to disable unnecessary properties like CanCollide, CanTouch, CanQuery, CastShadow, and set the part to be massless. Hope this helps!

just tried changing it all to one mesh, sadly didnt work thanks though