Help patching Fe Kill Exploit

Hello Guys Recently in my game some people use fe kill when i asked them what they use they seems to use inf yield to fe kill people they somehow drop the tool or make their character kinda look weird then you get teleported to void even though i have no collision on character’s is there any solutions ?

1 Like

You mean teleport player with tool?

yeah they seems to get some tool and drop it after that they make people in void

Try off this in tools: image

thank you so much i hope this solution work well

1 Like

hello seems the problem not fixed yet they seem to make a new humanoid instance then they destroy the original one and replace it with fake one after that they destroy it and make the animate to false and make the camera to their character and after that the tool they parent it to the character and teleport to the player like a lot of times to get the tool even if the drop is disabled and make u in void

Mh. But they can’t create humanoid for server from local script

yeah but the point is they can drop the tool even if the dropable is false which make ppl fling to void

Check if the tool is dropped. If not then its a hack.
Check to see if they teleport.
Check to see what their tool is doing. - Creating an active watcher and seeing where its parent is.
Turn off player collisions.

they somehow abusing a glitch in roblox i did a little research in my side

local RunService = game:GetService("RunService")
local Player = game:GetService("Players").LocalPlayer
local Character = Player.Character
local Humanoid = Character.Humanoid
local Saved = Character.HumanoidRootPart.CFrame

local Victim = game.Players[PlayerName].Character 
local Tool = Player.Backpack:FindFirstChildWhichIsA("Tool")

Humanoid.Name = "_Humanoid"
local FakeHumanoid = Humanoid:Clone()
FakeHumanoid.Parent = Character
FakeHumanoid.Name = "Humanoid"
wait(0.1)
Humanoid:Destroy()
Character.Animate.Disabled = true

workspace.CurrentCamera.CameraSubject = Character
FakeHumanoid.DisplayDistanceType = "None"
wait(0.1)

Tool.Parent = Character
Character.HumanoidRootPart.CFrame = Victim.HumanoidRootPart.CFrame * CFrame.new(0, 0, 0) * CFrame.new(math.random(-50, 50) / 200, math.random(-50, 50) / 200, math.random(-50, 50) / 200)
for i = 1, 5 do
 wait(0.2)
 Character.HumanoidRootPart.CFrame = Victim.HumanoidRootPart.CFrame
end

local count = 0
while wait(0.2) do
 count = count + 1
 if count == 5 then Character:FindFirstChild("Humanoid"):ChangeState(Enum.HumanoidStateType.Dead) end
 
 local did = pcall(function()
     Character.HumanoidRootPart.CFrame = CFrame.new(2048, 9e9, 2048)
 end)
 if not did then break end
end

and i am sure i have no backdoors or anything similar

then check t osee if the humanoid is deleted on the server, Yes. We can see that from the server. So an exploiter cannot bypass this.

local function monitorCharacter(character)
     local connection

     connection = character.ChildRemoved:Connect(function(childObject)
          if childObject:IsA("Humanoid") and not childObject.health == 0 then
             game:GetService("Players"):GetPlayerFromCharacter(character):Kick("Ooga booga")

             connection:Disconnect()
         end
    end
end

I’m not sure if thats 100% accurate. But thats an example.

my game is a simple game is this will effect anything ?

game.Players.PlayerAdded:Connect(function(plr)
	plr.CharacterAdded:Connect(function(char)
		char.ChildRemoved:Connect(function(v)
			if v:IsA("Humanoid") then 
				plr:Kick("YAY")
			end
		end)  
	end ) 
end ) 

i think this will work as they need to destroy the humanoid

The humanoid will be removed if the character dies. So make a check to see if the character is dead. That and make a check to see if the character is destroyed by the workspace destroy hieght. You can see in properties.

seems when u die the event does not trigger only if u removed it it will trigger which might fix the problem

Remember to destroy the humanoid or disconnect the connections. You dont want a memory leak.

local connections
connections = game.Players.PlayerAdded:Connect(function(plr)
	plr.CharacterAdded:Connect(function(char)
		char.ChildRemoved:Connect(function(v)
			if v:IsA("Humanoid") then 
				plr:Kick("YAY")
				connections:Disconnect()
			end
		end)  
	end ) 
end ) 

like that ?

local connection

connection = char.ChildRemoved:Connect(function(v)
    if v:IsA("Humanoid") then 
       plr:Kick("YAY")
       connection:Disconnect()
    end
end)  

so you disconnect the childremoved event when u kick the player ? sorry but i like to learn

Yeah. There is no point in keeping it. I’m not 100% sure if they disconnect it automatically so disconnecting it manually is an okay method to making sure. :smiley:

thank you so much for that
much appreciated
for anyone want the final result

local connections
 game.Players.PlayerAdded:Connect(function(plr)
	plr.CharacterAdded:Connect(function(char)
		connections = char.ChildRemoved:Connect(function(v)
			if v:IsA("Humanoid") then 
				plr:Kick("YAY")
				connections:Disconnect()
			end
		end)  
	end ) 
end ) 
2 Likes