local Players = game:GetService("Players") local UIS = game:GetService("UserInputService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local gui = Instance.new("ScreenGui") gui.Name = "TPmove" gui.ResetOnSpawn = false gui.Parent = player:WaitForChild("PlayerGui") local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 280, 0, 170) frame.Position = UDim2.new(0.5, -140, 0.5, -85) frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) frame.Active = true frame.Draggable = true frame.Parent = gui local title = Instance.new("TextLabel") title.Size = UDim2.new(1, 0, 0, 28) title.BackgroundColor3 = Color3.fromRGB(20, 20, 20) title.Text = "TPmove" title.TextColor3 = Color3.new(1,1,1) title.Parent = frame local close = Instance.new("TextButton") close.Size = UDim2.new(0, 28, 0, 28) close.Position = UDim2.new(1, -28, 0, 0) close.Text = "X" close.BackgroundColor3 = Color3.fromRGB(170, 0, 0) close.TextColor3 = Color3.new(1,1,1) close.Parent = frame close.MouseButton1Click:Connect(function() gui.Enabled = false end) local speedBox = Instance.new("TextBox") speedBox.Size = UDim2.new(1, -20, 0, 30) speedBox.Position = UDim2.new(0, 10, 0, 50) speedBox.PlaceholderText = "0 - 200" speedBox.Text = "" speedBox.BackgroundColor3 = Color3.fromRGB(45,45,45) speedBox.TextColor3 = Color3.new(1,1,1) speedBox.Parent = frame local execBtn = Instance.new("TextButton") execBtn.Size = UDim2.new(1, -20, 0, 30) execBtn.Position = UDim2.new(0, 10, 0, 85) execBtn.Text = "EXECUTE" execBtn.BackgroundColor3 = Color3.fromRGB(60,60,60) execBtn.TextColor3 = Color3.new(1,1,1) execBtn.Parent = frame local deactBtn = Instance.new("TextButton") deactBtn.Size = UDim2.new(1, -20, 0, 25) deactBtn.Position = UDim2.new(0, 10, 0, 120) deactBtn.Text = "DEACTIVATE" deactBtn.BackgroundColor3 = Color3.fromRGB(150,0,0) deactBtn.TextColor3 = Color3.new(1,1,1) deactBtn.Parent = frame local active = false local stepDistance = 1 local stepInterval = 0.05 local lastStep = 0 local function getRoot() local char = player.Character if not char then return end return char:FindFirstChild("HumanoidRootPart") end RunService.RenderStepped:Connect(function() if not active then return end local root = getRoot() if not root then return end local now = tick() if now - lastStep < stepInterval then return end lastStep = now local dir = root.CFrame.LookVector root.CFrame = root.CFrame + (dir * stepDistance) end) execBtn.MouseButton1Click:Connect(function() local val = tonumber(speedBox.Text) if not val then return end stepDistance = math.clamp(val, 1, 200) active = true end) deactBtn.MouseButton1Click:Connect(function() active = false end) UIS.InputBegan:Connect(function(input, gp) if gp then return end if input.KeyCode == Enum.KeyCode.X then gui.Enabled = not gui.Enabled end end)