Exploiters hijacked my game and are crashing it for others using an FE Enabled script with the character in demand that I TP my players to their game

Just wanted to address this point, it’s pretty much impossible. Roblox already does a ton of anti exploit in the client but it’s not as simple as “locking the process”. On Windows, for example, each process can load Windows modules that allow them to read and write to the memory of other processes. These functions are built in to Windows.

2 Likes

I already have a full proof fix of this, this also captures welds that are buried into workspace.

local Players = game:GetService("Players")

function GetPlayerByWeld(WeldObject)
	if not WeldObject then return nil end
	for i,v in pairs(Players:GetPlayers()) do
		if v.Character and WeldObject.Part0 and WeldObject.Part0:IsDescendantOf(v.Character) then
			return v
		end
	end
end

game.Workspace.DescendantAdded:Connect(function(Object)
	if Object:IsA("Weld") and Object.Name == "RightGrip" then
		local Player = GetPlayerByWeld(Object)
		local WeldCount = 0
		if Player then
			Object.AncestryChanged:Connect(function()
				if Object.Parent ~= nil and not Object:IsDescendantOf(Player.Character) then
					Player:Kick("Ancestry")
					Object:Destroy()
				end
			end)
			for i,v in pairs(Object.Parent:GetChildren()) do
				if v:IsA("Weld") and v.Name == "RightGrip" then
					local Owner = GetPlayerByWeld(v)
					if Owner and Owner == Player then
						WeldCount = WeldCount + 1
					end
				end
			end
			if WeldCount > 2 then
				Player:Kick("Max")
				Object:Destroy()
			end
		end
	end
end)
1 Like