Slicer X Fly V1.5
Key RequiredUniversal

Slicer X Fly V1.5

Universal Scriptsjjsksjsnnnsnssjjsksjsnnnsns 612 views 2.8K executesUpdated Apr 3, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•186 lines (5193 chars)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local CoreGui = game:GetService("CoreGui")
local speaker = Players.LocalPlayer

local iyflyspeed = 2
local FLYING = false
local mfly1, mfly2

local function getRoot(char)
	return char and char:FindFirstChild("HumanoidRootPart")
end

local function createFly(root)
	if not root then return end
	
	local att = Instance.new("Attachment")
	att.Name = "FlyAttachment"
	att.Parent = root

	local lv = Instance.new("LinearVelocity")
	lv.Name = "FlyVelocity"
	lv.Attachment0 = att
	lv.MaxForce = math.huge
	lv.VectorVelocity = Vector3.new(0, 0, 0)
	lv.RelativeTo = Enum.ActuatorRelativeTo.World
	lv.Parent = root

	local ao = Instance.new("AlignOrientation")
	ao.Name = "FlyAlign"
	ao.Attachment0 = att
	ao.Mode = Enum.OrientationAlignmentMode.OneAttachment
	ao.MaxTorque = math.huge
	ao.Responsiveness = 20
	ao.Parent = root
end

local function startFly()
	FLYING = true
	local camera = workspace.CurrentCamera
	local controlModule = require(speaker.PlayerScripts:WaitForChild("PlayerModule"):WaitForChild("ControlModule"))

	createFly(getRoot(speaker.Character))

	mfly1 = speaker.CharacterAdded:Connect(function(char)
		task.wait(0.1)
		createFly(getRoot(char))
	end)

	mfly2 = RunService.RenderStepped:Connect(function()
		local root = getRoot(speaker.Character)
		if not root then return end

		local lv = root:FindFirstChild("FlyVelocity")
		local ao = root:FindFirstChild("FlyAlign")
		local humanoid = speaker.Character:FindFirstChildWhichIsA("Humanoid")

		if lv and ao and humanoid then
			humanoid.PlatformStand = true
			ao.CFrame = camera.CFrame

			local dir = controlModule:GetMoveVector()
			local move = (camera.CFrame.RightVector * dir.X) + (camera.CFrame.LookVector * -dir.Z)

			if move.Magnitude > 0 then
				move = move.Unit
			end

			lv.VectorVelocity = move * (iyflyspeed * 50)
		end
	end)
end

local function stopFly()
	FLYING = false
	if mfly1 then mfly1:Disconnect() end
	if mfly2 then mfly2:Disconnect() end
	
	local root = getRoot(speaker.Character)
	if root then
		for _, v in ipairs(root:GetChildren()) do
			if v.Name == "FlyVelocity" or v.Name == "FlyAlign" or v.Name == "FlyAttachment" then
				v:Destroy()
			end
		end
	end
	
	local humanoid = speaker.Character and speaker.Character:FindFirstChildWhichIsA("Humanoid")
	if humanoid then humanoid.PlatformStand = false end
end

local gui = Instance.new("ScreenGui")
gui.Name = "ModernFlyGui"
gui.ResetOnSpawn = false
gui.Parent = CoreGui

local main = Instance.new("Frame")
main.Name = "Main"
main.Size = UDim2.new(0, 200, 0, 160)
main.Position = UDim2.new(0.5, -100, 0.5, -80)
main.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
main.BorderSizePixel = 0
main.Active = true
main.Draggable = true
main.Parent = gui

local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 8)
corner.Parent = main

local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(45, 45, 45)
stroke.Thickness = 2
stroke.Parent = main

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 35)
title.BackgroundTransparency = 1
title.Text = "Slicer X Fly V1.5"
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.Font = Enum.Font.GothamBold
title.TextSize = 14
title.Parent = main

local speedInput = Instance.new("TextBox")
speedInput.Size = UDim2.new(0, 160, 0, 30)
speedInput.Position = UDim2.new(0.5, -80, 0, 45)
speedInput.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
speedInput.Text = tostring(iyflyspeed)
speedInput.PlaceholderText = "Speed..."
speedInput.TextColor3 = Color3.fromRGB(255, 255, 255)
speedInput.Font = Enum.Font.Gotham
speedInput.TextSize = 12
speedInput.Parent = main

local speedCorner = Instance.new("UICorner")
speedCorner.CornerRadius = UDim.new(0, 6)
speedCorner.Parent = speedInput

local toggleBtn = Instance.new("TextButton")
toggleBtn.Size = UDim2.new(0, 160, 0, 35)
toggleBtn.Position = UDim2.new(0.5, -80, 0, 85)
toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 215)
toggleBtn.Text = "Enable Fly"
toggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
toggleBtn.Font = Enum.Font.GothamBold
toggleBtn.TextSize = 12
toggleBtn.AutoButtonColor = true
toggleBtn.Parent = main

local btnCorner = Instance.new("UICorner")
btnCorner.CornerRadius = UDim.new(0, 6)
btnCorner.Parent = toggleBtn

local statusLabel = Instance.new("TextLabel")
statusLabel.Size = UDim2.new(1, 0, 0, 20)
statusLabel.Position = UDim2.new(0, 0, 1, -25)
statusLabel.BackgroundTransparency = 1
statusLabel.Text = "Status: Idle"
statusLabel.TextColor3 = Color3.fromRGB(150, 150, 150)
statusLabel.Font = Enum.Font.Gotham
statusLabel.TextSize = 10
statusLabel.Parent = main

speedInput.FocusLost:Connect(function()
	local val = tonumber(speedInput.Text)
	if val then
		iyflyspeed = val
	else
		speedInput.Text = tostring(iyflyspeed)
	end
end)

toggleBtn.MouseButton1Click:Connect(function()
	if FLYING then
		stopFly()
		toggleBtn.Text = "Enable Fly"
		toggleBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 215)
		statusLabel.Text = "Status: Idle"
	else
		startFly()
		toggleBtn.Text = "Disable Fly"
		toggleBtn.BackgroundColor3 = Color3.fromRGB(215, 50, 50)
		statusLabel.Text = "Status: Flying"
	end
end)

Features & Information

Slicer X Fly V1.5 Open Source Now it should work in all games

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts