FPS Flick op key is FPS all caps
Key RequiredUniversal

FPS Flick op key is FPS all caps

Universal ScriptScripthub_ProductionScripthub_Production 921 views 90 executesUpdated Jan 4, 2026
3.3/ 5(3 votes)
2167% Positive
Lua Script•267 lines (9121 chars)
--====================================================
-- Unleaked_dev FPS OP HUB v1
-- Game: FPS (Flick-style)
-- Key: FPS
--====================================================

-- SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local Camera = workspace.CurrentCamera
local LP = Players.LocalPlayer

----------------------------------------------------
-- LOAD RAYFIELD
----------------------------------------------------
local Rayfield = loadstring(game:HttpGet("https://sirius.menu/rayfield"))()

local Window = Rayfield:CreateWindow({
    Name = "Unleaked_dev FPS Hub",
    LoadingTitle = "FPS OP SYSTEM",
    LoadingSubtitle = "Lock-On • ESP • Visual OP",
    ConfigurationSaving = { Enabled = false },
    KeySystem = true,
    KeySettings = {
        Title = "🔑 FPS Key",
        Subtitle = "Enter Access Key",
        Note = "Free Access",
        FileName = "FPS_KEY",
        SaveKey = true,
        GrabKeyFromSite = false,
        Key = {"FPS"}
    }
})

----------------------------------------------------
-- VARIABLES
----------------------------------------------------
local LockOn = false
local LockMobile = false
local LockFOV = 260
local LockSmooth = 0.65 -- faster lock
local WallCheck = false

local ESP = false
local HitboxSize = 0
local RainbowGuns = false

local InfJump = false
local NoClip = false

local Highlights = {}

----------------------------------------------------
-- TARGETING
----------------------------------------------------
local function GetTargetPart(char)
    return char:FindFirstChild("HumanoidRootPart")
        or char:FindFirstChild("UpperTorso")
        or char:FindFirstChild("Head")
end

local function Visible(part)
    if not WallCheck then return true end
    local params = RaycastParams.new()
    params.FilterDescendantsInstances = {LP.Character}
    params.FilterType = Enum.RaycastFilterType.Blacklist
    local ray = workspace:Raycast(Camera.CFrame.Position, part.Position - Camera.CFrame.Position, params)
    return ray and ray.Instance:IsDescendantOf(part.Parent)
end

local function GetClosestTarget()
    local best, distBest
    local center = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2)

    for _,plr in pairs(Players:GetPlayers()) do
        if plr ~= LP and plr.Character then
            local part = GetTargetPart(plr.Character)
            if part then
                local pos, onScreen = Camera:WorldToViewportPoint(part.Position)
                if onScreen then
                    local dist = (Vector2.new(pos.X,pos.Y) - center).Magnitude
                    if dist <= LockFOV and Visible(part) then
                        if not distBest or dist < distBest then
                            best = part
                            distBest = dist
                        end
                    end
                end
            end
        end
    end
    return best
end

----------------------------------------------------
-- MAIN LOOP
----------------------------------------------------
RunService.RenderStepped:Connect(function()
    local hold = UIS:IsMouseButtonPressed(Enum.UserInputType.MouseButton2)

    if LockOn and (hold or LockMobile) then
        local target = GetClosestTarget()
        if target then
            local cam = Camera.CFrame
            local aim = CFrame.new(cam.Position, target.Position)
            Camera.CFrame = cam:Lerp(aim, LockSmooth)
        end
    end

    if NoClip and LP.Character then
        for _,p in pairs(LP.Character:GetDescendants()) do
            if p:IsA("BasePart") then
                p.CanCollide = false
            end
        end
    end

    if RainbowGuns and LP.Character then
        for _,tool in pairs(LP.Character:GetChildren()) do
            if tool:IsA("Tool") then
                for _,p in pairs(tool:GetDescendants()) do
                    if p:IsA("BasePart") then
                        p.Color = Color3.fromHSV((tick()%5)/5,1,1)
                    end
                end
            end
        end
    end
end)

----------------------------------------------------
-- HITBOX EXPAND (VISUAL)
----------------------------------------------------
local function ApplyHitbox()
    for _,plr in pairs(Players:GetPlayers()) do
        if plr ~= LP and plr.Character then
            for _,p in pairs(plr.Character:GetChildren()) do
                if p:IsA("BasePart") and p.Name ~= "HumanoidRootPart" then
                    p.Size = Vector3.new(
                        math.clamp(p.Size.X + HitboxSize, p.Size.X, 10),
                        math.clamp(p.Size.Y + HitboxSize, p.Size.Y, 10),
                        math.clamp(p.Size.Z + HitboxSize, p.Size.Z, 10)
                    )
                    p.Transparency = 0.4
                end
            end
        end
    end
end

----------------------------------------------------
-- INFINITE JUMP
----------------------------------------------------
UIS.JumpRequest:Connect(function()
    if InfJump and LP.Character then
        LP.Character:FindFirstChildOfClass("Humanoid"):ChangeState(Enum.HumanoidStateType.Jumping)
    end
end)

----------------------------------------------------
-- ESP (HIGHLIGHT)
----------------------------------------------------
local function UpdateESP()
    for _,plr in pairs(Players:GetPlayers()) do
        if plr ~= LP and plr.Character then
            if ESP and not Highlights[plr] then
                local h = Instance.new("Highlight")
                h.FillColor = Color3.fromRGB(255,0,0)
                h.OutlineColor = Color3.new(1,1,1)
                h.Adornee = plr.Character
                h.Parent = plr.Character
                Highlights[plr] = h
            elseif not ESP and Highlights[plr] then
                Highlights[plr]:Destroy()
                Highlights[plr] = nil
            end
        end
    end
end

----------------------------------------------------
-- TABS
----------------------------------------------------
local AimTab      = Window:CreateTab("🎯 Aim Core")
local LockTab     = Window:CreateTab("⚡ Lock-On Pro")
local ESPTab      = Window:CreateTab("👁 ESP")
local HitboxTab   = Window:CreateTab("📦 Hitbox")
local CamoTab     = Window:CreateTab("🌈 Weapons")
local MoveTab     = Window:CreateTab("🚀 Movement")
local UtilTab     = Window:CreateTab("🧪 FPS Tools")
local InfoTab     = Window:CreateTab("ℹ️ Info")

----------------------------------------------------
-- AIM CORE (8)
----------------------------------------------------
AimTab:CreateToggle({Name="Enable Lock-On", Callback=function(v) LockOn=v end})
AimTab:CreateToggle({Name="Mobile Lock Toggle", Callback=function(v) LockMobile=v end})
AimTab:CreateToggle({Name="Wall Check", Callback=function(v) WallCheck=v end})
AimTab:CreateSlider({Name="FOV",Range={100,400},CurrentValue=260,Callback=function(v) LockFOV=v end})
AimTab:CreateSlider({Name="Lock Speed",Range={0.4,1},CurrentValue=0.65,Callback=function(v) LockSmooth=v end})
AimTab:CreateButton({Name="Center Camera",Callback=function()
    Camera.CFrame = CFrame.new(Camera.CFrame.Position, Camera.CFrame.Position + Camera.CFrame.LookVector)
end})

----------------------------------------------------
-- ESP (8)
----------------------------------------------------
ESPTab:CreateToggle({Name="Enable ESP",Callback=function(v) ESP=v UpdateESP() end})
ESPTab:CreateButton({Name="Refresh ESP",Callback=UpdateESP})

----------------------------------------------------
-- HITBOX (8)
----------------------------------------------------
HitboxTab:CreateSlider({
    Name="Hitbox Expand (Visual)",
    Range={0,8},
    CurrentValue=0,
    Callback=function(v)
        HitboxSize=v
        ApplyHitbox()
    end
})

----------------------------------------------------
-- WEAPONS (8)
----------------------------------------------------
CamoTab:CreateToggle({
    Name="Rainbow Weapon Camo",
    Callback=function(v) RainbowGuns=v end
})

----------------------------------------------------
-- MOVEMENT (8)
----------------------------------------------------
MoveTab:CreateToggle({Name="Infinite Jump",Callback=function(v) InfJump=v end})
MoveTab:CreateToggle({Name="NoClip",Callback=function(v) NoClip=v end})
MoveTab:CreateSlider({
    Name="WalkSpeed",
    Range={16,120},
    CurrentValue=16,
    Callback=function(v)
        LP.Character:FindFirstChildOfClass("Humanoid").WalkSpeed=v
    end
})

----------------------------------------------------
-- FPS TOOLS (8)
----------------------------------------------------
UtilTab:CreateButton({Name="Remove Camera Shake",Callback=function()
    Camera.CameraType = Enum.CameraType.Custom
end})

----------------------------------------------------
-- INFO
----------------------------------------------------
InfoTab:CreateLabel("Unleaked_dev FPS Hub")
InfoTab:CreateLabel("Key: FPS")
InfoTab:CreateLabel("Lock-On = Camera Assist")
InfoTab:CreateLabel("Hitbox = Visual Only")
InfoTab:CreateLabel("Mobile + PC Supported")

Rayfield:Notify({
    Title="Loaded",
    Content="FPS OP Hub Ready",
    Duration=5
})

Features & Information

OP-Instant lock on also adding v2 layer such as spoof and more and bypassing fly and more Lock on is soo op yall should use it anyways my discord server is:https://discord.gg/qHB3apzB

Community Comments (8)

Let me know what other games yall need

Basicso2Basicso2Jan 4, 2026

Yo bro I like this script you can also create for Blind shot because when I test Synergy hub only player are showing and not lazers

Replying to @Basicso2

@Basicso2 hello yes we can also since there’s a problem with the script we will make you one of our premium members such as free keys perm just join the discord

Replying to @Scripthub_Production
Basicso2Basicso2Jan 4, 2026

@9N9Q What is your discord

Replying to @Basicso2

@Basicso2 here is my user 4k_hd_rdm

Replying to @Scripthub_Production
Basicso2Basicso2Jan 4, 2026

Also I have fps flick script you can't have it just give your discord so i can send it raw

Replying to @Scripthub_Production
Basicso2Basicso2Jan 4, 2026

@9N9Q I will send it deobusficate since I obusficate my script

Basicso2Basicso2Jan 4, 2026

I send you request

More Scripts for Universal Scripts