-- FTFHAX Version 1.03 - FIXED FLY (No Glitch + No Tilt) -- Smooth fly, no physics glitches, no character tilting local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local LocalPlayer = Players.LocalPlayer -- Wait for character properly local Character = LocalPlayer.Character if not Character or not Character:FindFirstChild("HumanoidRootPart") then Character = LocalPlayer.CharacterAdded:Wait() end local Humanoid = Character:WaitForChild("Humanoid", 5) local ESPFolder = Instance.new("Folder") ESPFolder.Name = "FTFHAX_ESP" ESPFolder.Parent = workspace -- Colors & Toggles local Colors = { Computers = Color3.fromRGB(0, 255, 0), Survivors = Color3.fromRGB(255, 255, 255), Pods = Color3.fromRGB(0, 0, 255), Beast = Color3.fromRGB(255, 0, 0) } local Toggles = { Computers = false, Survivors = false, Pods = false, Beast = false, Fly = false, Noclip = false, FreezeBeast = false } -- ─────────────────────────────────────────────── -- FIXED FLY (NO GLITCH, NO TILT) -- ─────────────────────────────────────────────── local FlySpeed = 50 local BodyVelocity = nil local BodyPosition = nil local connection = nil local function ToggleFly(state) if state then local root = Character:FindFirstChild("HumanoidRootPart") if not root then return end -- Disable humanoid walking while flying Humanoid.PlatformStand = true -- Smooth BodyPosition for perfect position control (no glitch) BodyPosition = Instance.new("BodyPosition") BodyPosition.MaxForce = Vector3.new(4000, 4000, 4000) BodyPosition.Position = root.Position BodyPosition.D = 1000 -- High damping = smooth no-glitch BodyPosition.P = 10000 -- High power = instant response BodyPosition.Parent = root -- BodyVelocity for movement BodyVelocity = Instance.new("BodyVelocity") BodyVelocity.MaxForce = Vector3.new(4000, 4000, 4000) BodyVelocity.Velocity = Vector3.new(0, 0, 0) BodyVelocity.Parent = root -- Main fly loop - NO TILT, NO GLITCH connection = RunService.Heartbeat:Connect(function() if not Toggles.Fly or not Character or not root.Parent then ToggleFly(false) return end local camera = workspace.CurrentCamera local moveVector = Vector3.new(0, 0, 0) -- WASD + Space/Shift movement if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveVector = moveVector + camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveVector = moveVector - camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveVector = moveVector - camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveVector = moveVector + camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveVector = moveVector + Vector3.new(0, 1, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.LeftShift) then moveVector = moveVector - Vector3.new(0, 1, 0) end -- Normalize and apply speed if moveVector.Magnitude > 0 then moveVector = moveVector.Unit * FlySpeed end BodyVelocity.Velocity = moveVector BodyPosition.Position = root.Position -- Keep position stable end) else -- Disable fly if connection then connection:Disconnect() connection = nil end if BodyVelocity then BodyVelocity:Destroy() BodyVelocity = nil end if BodyPosition then BodyPosition:Destroy() BodyPosition = nil end if Humanoid then Humanoid.PlatformStand = false end end end -- ─────────────────────────────────────────────── -- NOCLIP -- ─────────────────────────────────────────────── local noclipConn local function ToggleNoclip(state) if state then if noclipConn then noclipConn:Disconnect() end noclipConn = RunService.Stepped:Connect(function() if not Character then return end for _, part in Character:GetDescendants() do if part:IsA("BasePart") then part.CanCollide = false end end end) else if noclipConn then noclipConn:Disconnect() noclipConn = nil end end end -- ─────────────────────────────────────────────── -- BEAST FREEZE (Local Illusion) -- ─────────────────────────────────────────────── local BeastFreezeConnection local function ToggleFreezeBeast(state) if state then if BeastFreezeConnection then BeastFreezeConnection:Disconnect() end BeastFreezeConnection = RunService.Heartbeat:Connect(function() for _, plr in Players:GetPlayers() do if plr ~= LocalPlayer then local char = plr.Character if char and char:FindFirstChild("HumanoidRootPart") and char:FindFirstChild("BeastPowers") then local root = char.HumanoidRootPart root.Anchored = true root.Velocity = Vector3.zero local hum = char:FindFirstChild("Humanoid") if hum then hum.PlatformStand = true hum.JumpPower = 0 hum.WalkSpeed = 0 end end end end end) else if BeastFreezeConnection then BeastFreezeConnection:Disconnect() BeastFreezeConnection = nil end for _, plr in Players:GetPlayers() do local char = plr.Character if char and char:FindFirstChild("HumanoidRootPart") and char:FindFirstChild("BeastPowers") then local root = char.HumanoidRootPart root.Anchored = false local hum = char:FindFirstChild("Humanoid") if hum then hum.PlatformStand = false hum.JumpPower = 50 hum.WalkSpeed = 16 end end end end end -- Respawn handler LocalPlayer.CharacterAdded:Connect(function(newChar) Character = newChar Humanoid = newChar:WaitForChild("Humanoid", 8) task.wait(0.15) if Toggles.Fly then ToggleFly(true) end if Toggles.Noclip then ToggleNoclip(true) end end) -- ─────────────────────────────────────────────── -- ESP -- ─────────────────────────────────────────────── local function CreateBox(part, color) local box = Instance.new("BoxHandleAdornment") box.Adornee = part box.Size = part.Size + Vector3.new(0.5,0.5,0.5) box.Color3 = color box.Transparency = 0.45 box.AlwaysOnTop = true box.ZIndex = 10 box.Parent = ESPFolder end local function UpdateESP() -- Players ESP for _, plr in Players:GetPlayers() do if plr == LocalPlayer then continue end local char = plr.Character if not char or not char:FindFirstChild("HumanoidRootPart") then continue end local isBeast = char:FindFirstChild("BeastPowers") ~= nil local targetColor = isBeast and Toggles.Beast and Colors.Beast or (not isBeast and Toggles.Survivors and Colors.Survivors) local hl = char:FindFirstChildOfClass("Highlight") if targetColor then if not hl then hl = Instance.new("Highlight") hl.Name = "FTFHAX_HL" hl.Parent = char end hl.FillColor = targetColor hl.OutlineColor = targetColor hl.FillTransparency = 0.6 hl.OutlineTransparency = 0 elseif hl then hl:Destroy() end end -- Map ESP if not ReplicatedStorage:FindFirstChild("CurrentMap") then return end local mapName = ReplicatedStorage.CurrentMap.Value local map = workspace:FindFirstChild(mapName) if not map then return end if Toggles.Computers then for _, v in map:GetDescendants() do if v.Name == "Screen" and v.Parent.Name == "ComputerTable" and not v:FindFirstChildOfClass("BoxHandleAdornment") then CreateBox(v, Colors.Computers) end end end if Toggles.Pods then for _, v in map:GetDescendants() do if v:IsA("BasePart") and (v.Name:lower():find("freez") or v.Name:lower():find("pod")) and not v:FindFirstChildOfClass("BoxHandleAdornment") then CreateBox(v, Colors.Pods) end end end end RunService.Heartbeat:Connect(UpdateESP) -- ─────────────────────────────────────────────── -- GUI (Reliable) -- ─────────────────────────────────────────────── local success, Rayfield = pcall(function() return loadstring(game:HttpGet('https://sirius.menu/rayfield', true))() end) if not success or not Rayfield then game:GetService("StarterGui"):SetCore("SendNotification", { Title = "FTFHAX v1.03", Text = "GUI failed.\nF=Fly N=Noclip B=FreezeBeast", Duration = 10 }) else local Window = Rayfield:CreateWindow({ Name = "FTFHAX Version 1.03", LoadingTitle = "FTFHAX v1.03 - FIXED FLY", LoadingSubtitle = "Smooth No-Glitch Fly", Theme = "Default", ConfigurationSaving = { Enabled = false }, KeySystem = false }) local mainTab = Window:CreateTab("📱 Main", "zap") local trollTab = Window:CreateTab("😂 Troll", "skull") -- Main Tab mainTab:CreateToggle({ Name = "🖥️ Computers (Green)", CurrentValue = false, Callback = function(v) Toggles.Computers = v end }) mainTab:CreateToggle({ Name = "👥 Survivors (White)", CurrentValue = false, Callback = function(v) Toggles.Survivors = v end }) mainTab:CreateToggle({ Name = "👹 Beast ESP (Red)", CurrentValue = false, Callback = function(v) Toggles.Beast = v end }) mainTab:CreateToggle({ Name = "🧊 Pods (Blue)", CurrentValue = false, Callback = function(v) Toggles.Pods = v end }) mainTab:CreateToggle({ Name = "✈️ Fly (F) - FIXED SMOOTH NO GLITCH", CurrentValue = false, Callback = function(v) Toggles.Fly = v ToggleFly(v) end }) mainTab:CreateSlider({ Name = "Fly Speed", Range = {16, 200}, Increment = 8, CurrentValue = 50, Callback = function(v) FlySpeed = v end }) mainTab:CreateToggle({ Name = "👻 Noclip (N)", CurrentValue = false, Callback = function(v) Toggles.Noclip = v ToggleNoclip(v) end }) -- Troll Tab trollTab:CreateToggle({ Name = "🧊 FREEZE BEAST (B) - Local Illusion", CurrentValue = false, Callback = function(v) Toggles.FreezeBeast = v ToggleFreezeBeast(v) end }) -- Keybinds mainTab:CreateKeybind({ Name = "Fly Toggle", CurrentKeybind = "F", Callback = function() Toggles.Fly = not Toggles.Fly ToggleFly(Toggles.Fly) end }) mainTab:CreateKeybind({ Name = "Noclip Toggle", CurrentKeybind = "N", Callback = function() Toggles.Noclip = not Toggles.Noclip ToggleNoclip(Toggles.Noclip) end }) trollTab:CreateKeybind({ Name = "Freeze Beast", CurrentKeybind = "B", Callback = function() Toggles.FreezeBeast = not Toggles.FreezeBeast ToggleFreezeBeast(Toggles.FreezeBeast) end }) Rayfield:Notify({ Title = "🚀 FTFHAX v1.03 LOADED", Content = "✈️ FIXED SMOOTH FLY (NO GLITCH/NO TILT)\nF=Fly N=Noclip B=FreezeBeast", Duration = 8 }) end print("🌟 FTFHAX v1.03 - SMOOTH FLY FIXED!")