Skip to content

Instantly share code, notes, and snippets.

@DuyNgao2306
Created May 19, 2026 00:19
Show Gist options
  • Select an option

  • Save DuyNgao2306/b703b7e42198e8cd73ee7cdd8027eb3a to your computer and use it in GitHub Desktop.

Select an option

Save DuyNgao2306/b703b7e42198e8cd73ee7cdd8027eb3a to your computer and use it in GitHub Desktop.
--// ANTI DUPLICATE
if getgenv().CrowUI_Loaded then return end
getgenv().CrowUI_Loaded = true
-- SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local Stats = game:GetService("Stats")
local VirtualUser = game:GetService("VirtualUser")
local UIS = game:GetService("UserInputService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- CLEAR OLD
for _,v in pairs(playerGui:GetChildren()) do
if v.Name == "CrowUI" then v:Destroy() end
end
-- GUI
local gui = Instance.new("ScreenGui", playerGui)
gui.Name = "CrowUI"
gui.ResetOnSpawn = false
-- VERSION
local version = Instance.new("TextLabel", gui)
version.Size = UDim2.new(0,120,0,20)
version.Position = UDim2.new(1,-10,1,-10)
version.AnchorPoint = Vector2.new(1,1)
version.BackgroundTransparency = 1
version.Text = "Crow UI FINAL FIX"
version.TextScaled = true
version.TextColor3 = Color3.new(1,1,1)
-- ================= DRAG =================
local function drag(frame)
local dragging=false
local startPos, startFrame
frame.InputBegan:Connect(function(input)
if input.UserInputType==Enum.UserInputType.MouseButton1 or input.UserInputType==Enum.UserInputType.Touch then
dragging=true
startPos=input.Position
startFrame=frame.Position
end
end)
frame.InputEnded:Connect(function()
dragging=false
end)
UIS.InputChanged:Connect(function(input)
if dragging and (input.UserInputType==Enum.UserInputType.MouseMovement or input.UserInputType==Enum.UserInputType.Touch) then
local delta=input.Position-startPos
frame.Position=UDim2.new(
startFrame.X.Scale,
startFrame.X.Offset+delta.X,
startFrame.Y.Scale,
startFrame.Y.Offset+delta.Y
)
end
end)
end
-- ================= OPEN BUTTON =================
local openBtn = Instance.new("TextButton", gui)
openBtn.Size = UDim2.new(0,55,0,55)
openBtn.Position = UDim2.new(0,20,0.5,-25)
openBtn.Text = "≡"
openBtn.TextScaled = true
openBtn.BackgroundColor3 = Color3.fromRGB(255,255,255)
Instance.new("UICorner", openBtn)
drag(openBtn)
-- ================= MENU =================
local menu = Instance.new("Frame", gui)
menu.Size = UDim2.new(0,240,0,320)
menu.Position = UDim2.new(0.5,-120,0.5,-160)
menu.BackgroundColor3 = Color3.fromRGB(245,245,245)
menu.Visible = false
Instance.new("UICorner", menu)
drag(menu)
-- TITLE
local title = Instance.new("TextLabel", menu)
title.Size = UDim2.new(1,0,0,40)
title.Text = "Setting ⚙️"
title.TextScaled = true
title.BackgroundTransparency = 1
title.TextColor3 = Color3.fromRGB(0,200,200)
-- SCROLL
local scroll = Instance.new("ScrollingFrame", menu)
scroll.Size = UDim2.new(1,0,1,-45)
scroll.Position = UDim2.new(0,0,0,45)
scroll.BackgroundTransparency = 1
scroll.AutomaticCanvasSize = Enum.AutomaticSize.Y
local layout = Instance.new("UIListLayout", scroll)
layout.Padding = UDim.new(0,8)
-- ================= SWITCH (FIX REAL) =================
local function createSwitch(text,order)
local btn = Instance.new("TextButton", scroll)
btn.Size = UDim2.new(0.9,0,0,45)
btn.LayoutOrder = order
btn.BackgroundColor3 = Color3.fromRGB(230,230,230)
btn.Text = text.." : OFF"
btn.TextScaled = true
btn.TextColor3 = Color3.new(0,0,0)
Instance.new("UICorner", btn)
local state = false
btn:SetAttribute("State",false)
btn.MouseButton1Click:Connect(function()
state = not state
btn:SetAttribute("State",state)
btn.Text = text.." : "..(state and "ON" or "OFF")
end)
return btn
end
-- SWITCHES
local fpsSw = createSwitch("FPS",1)
local pingSw = createSwitch("Ping",2)
local gfxSw = createSwitch("Graphics",3)
local partSw = createSwitch("Part Reduce",4)
local hideSw = createSwitch("Hide UI",5)
local flySw = createSwitch("Fly",6)
local afkSw = createSwitch("Anti AFK",7)
-- ================= FPS =================
local fpsLabel = Instance.new("TextLabel", gui)
fpsLabel.Position = UDim2.new(0,10,0,10)
fpsLabel.Size = UDim2.new(0,120,0,25)
fpsLabel.BackgroundTransparency = 1
RunService.RenderStepped:Connect(function(dt)
fpsLabel.Text = fpsSw:GetAttribute("State") and ("FPS: "..math.floor(1/dt)) or ""
end)
-- ================= PING =================
local pingLabel = Instance.new("TextLabel", gui)
pingLabel.Position = UDim2.new(0,10,0,35)
pingLabel.Size = UDim2.new(0,120,0,25)
pingLabel.BackgroundTransparency = 1
RunService.RenderStepped:Connect(function()
if pingSw:GetAttribute("State") then
local p=0
pcall(function() p=Stats.PerformanceStats.Ping:GetValue() end)
pingLabel.Text = "Ping: "..math.floor(p)
else
pingLabel.Text=""
end
end)
-- ================= GRAPHICS =================
local lightingBackup={}
gfxSw:GetAttributeChangedSignal("State"):Connect(function()
local s=gfxSw:GetAttribute("State")
if s then
lightingBackup={
Brightness=Lighting.Brightness,
GlobalShadows=Lighting.GlobalShadows,
FogEnd=Lighting.FogEnd
}
Lighting.Brightness=1
Lighting.GlobalShadows=false
Lighting.FogEnd=100
for _,v in ipairs(Lighting:GetDescendants()) do
if v:IsA("PostEffect") or v:IsA("Atmosphere") then
pcall(function() v.Enabled=false end)
end
end
else
for k,v in pairs(lightingBackup) do Lighting[k]=v end
for _,v in ipairs(Lighting:GetDescendants()) do
if v:IsA("PostEffect") or v:IsA("Atmosphere") then
pcall(function() v.Enabled=true end)
end
end
end
end)
-- ================= PART REDUCE =================
local reduced={}
local conn
local function reduce(v)
if v:IsA("BasePart") and not reduced[v] then
reduced[v]={v.Material,v.Color}
v.Material=Enum.Material.SmoothPlastic
v.Color=Color3.fromRGB(120,120,120)
v.CastShadow=false
end
if v:IsA("MeshPart") then pcall(function() v.TextureID="" end) end
if v:IsA("UnionOperation") then pcall(function() v.UsePartColor=true end) end
if v:IsA("Decal") or v:IsA("Texture") then v.Transparency=1 end
end
local function restore()
for v,d in pairs(reduced) do
if v then v.Material=d[1] v.Color=d[2] end
end
reduced={}
end
partSw:GetAttributeChangedSignal("State"):Connect(function()
if partSw:GetAttribute("State") then
for _,v in ipairs(workspace:GetDescendants()) do reduce(v) end
conn=workspace.DescendantAdded:Connect(reduce)
else
restore()
if conn then conn:Disconnect() end
end
end)
-- ================= HIDE UI =================
local hidden={}
hideSw:GetAttributeChangedSignal("State"):Connect(function()
if hideSw:GetAttribute("State") then
hidden={}
for _,v in ipairs(playerGui:GetChildren()) do
if v:IsA("ScreenGui") and v~=gui then
hidden[v]=true
v.Enabled=false
end
end
else
for v in pairs(hidden) do
if v then v.Enabled=true end
end
end
end)
-- ================= FLY =================
flySw:GetAttributeChangedSignal("State"):Connect(function()
if flySw:GetAttribute("State") then
loadstring(game:HttpGet("https://rawscripts.net/raw/Universal-Script-Fly-V3-X-132770"))()
end
end)
-- ================= ANTI AFK =================
local anti=false
afkSw:GetAttributeChangedSignal("State"):Connect(function()
anti=afkSw:GetAttribute("State")
end)
player.Idled:Connect(function()
if anti then
VirtualUser:CaptureController()
VirtualUser:Button2Down(Vector2.new(),workspace.CurrentCamera.CFrame)
task.wait(1)
VirtualUser:Button2Up(Vector2.new(),workspace.CurrentCamera.CFrame)
end
end)
-- MENU
openBtn.MouseButton1Click:Connect(function()
menu.Visible = not menu.Visible
end)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment