Skip to content

Instantly share code, notes, and snippets.

@DuyNgao2306
Created May 1, 2026 17:24
Show Gist options
  • Select an option

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

Select an option

Save DuyNgao2306/ecb7be393016cdcd8a1b685324da6b7b to your computer and use it in GitHub Desktop.
--// Services
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Stats = game:GetService("Stats")
local UIS = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local VirtualUser = game:GetService("VirtualUser")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
-- Đợi game load
if not game:IsLoaded() then
game.Loaded:Wait()
end
--================ LOADING =================--
local loadingGui = Instance.new("ScreenGui", playerGui)
local bg = Instance.new("Frame", loadingGui)
bg.Size = UDim2.new(1,0,1,0)
bg.BackgroundColor3 = Color3.fromRGB(0,0,0)
local logo = Instance.new("ImageLabel", bg)
logo.Size = UDim2.new(0,100,0,100)
logo.Position = UDim2.new(0.5,-50,0.35,-50)
logo.BackgroundTransparency = 1
logo.Image = "rbxassetid://7120937379"
local title = Instance.new("TextLabel", bg)
title.Size = UDim2.new(1,0,0,40)
title.Position = UDim2.new(0,0,0.5,0)
title.BackgroundTransparency = 1
title.Text = "Crow"
title.TextColor3 = Color3.fromRGB(255,255,255)
title.Font = Enum.Font.GothamBold
title.TextScaled = true
local barBg = Instance.new("Frame", bg)
barBg.Size = UDim2.new(0.4,0,0,20)
barBg.Position = UDim2.new(0.3,0,0.65,0)
barBg.BackgroundColor3 = Color3.fromRGB(50,50,50)
Instance.new("UICorner", barBg).CornerRadius = UDim.new(0,8)
local bar = Instance.new("Frame", barBg)
bar.Size = UDim2.new(0,0,1,0)
Instance.new("UICorner", bar)
local percent = Instance.new("TextLabel", bg)
percent.Size = UDim2.new(1,0,0,30)
percent.Position = UDim2.new(0,0,0.7,0)
percent.BackgroundTransparency = 1
percent.TextColor3 = Color3.fromRGB(255,255,255)
percent.Font = Enum.Font.Gotham
percent.TextScaled = true
local sound = Instance.new("Sound", bg)
sound.SoundId = "rbxassetid://6026984224"
sound.Volume = 1
-- đổi màu thanh load
local running = true
task.spawn(function()
while running do
TweenService:Create(bar, TweenInfo.new(0.4), {
BackgroundColor3 = Color3.fromRGB(
math.random(100,255),
math.random(100,255),
math.random(100,255)
)
}):Play()
task.wait(0.4)
end
end)
-- load
for i = 1, 100 do
percent.Text = "Loading... "..i.."%"
bar.Size = UDim2.new(i/100,0,1,0)
task.wait(0.02)
end
running = false
sound:Play()
for i = 1,10 do
bg.BackgroundTransparency += 0.1
task.wait(0.05)
end
loadingGui:Destroy()
--================ ANTI AFK =================--
player.Idled:Connect(function()
VirtualUser:CaptureController()
VirtualUser:ClickButton2(Vector2.new(0,0))
end)
--================ UI =================--
local screenGui = Instance.new("ScreenGui", playerGui)
screenGui.ResetOnSpawn = false
local frame = Instance.new("Frame", screenGui)
frame.Size = UDim2.new(0, 170, 0, 90)
frame.Position = UDim2.new(0, 10, 0, 40)
frame.BackgroundColor3 = Color3.fromRGB(20,20,20)
frame.BackgroundTransparency = 0.2
Instance.new("UICorner", frame)
local label = Instance.new("TextLabel", frame)
label.Size = UDim2.new(1,0,0.7,0)
label.BackgroundTransparency = 1
label.Font = Enum.Font.GothamBold
label.TextScaled = true
-- Button
local button = Instance.new("TextButton", frame)
button.Size = UDim2.new(1,0,0.3,0)
button.Position = UDim2.new(0,0,0.7,0)
button.Text = "Black: OFF"
button.Font = Enum.Font.Gotham
button.TextScaled = true
button.BackgroundColor3 = Color3.fromRGB(40,40,40)
Instance.new("UICorner", button)
-- overlay
local overlay = Instance.new("Frame", screenGui)
overlay.Size = UDim2.new(1,0,1,0)
overlay.BackgroundColor3 = Color3.fromRGB(0,0,0)
overlay.Visible = false
local black = false
button.MouseButton1Click:Connect(function()
black = not black
overlay.Visible = black
button.Text = black and "Black: ON" or "Black: OFF"
end)
-- kéo UI
local dragging, dragInput, startPos, startFramePos
frame.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
startPos = input.Position
startFramePos = frame.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
frame.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
UIS.InputChanged:Connect(function(input)
if input == dragInput and dragging then
local delta = input.Position - startPos
frame.Position = UDim2.new(
startFramePos.X.Scale,
startFramePos.X.Offset + delta.X,
startFramePos.Y.Scale,
startFramePos.Y.Offset + delta.Y
)
end
end)
-- FPS + Ping
local fpsSamples, pingSamples = {}, {}
local lastUpdate = 0
RunService.RenderStepped:Connect(function(dt)
local fps = math.floor(1/dt)
local ping = math.floor(Stats.Network.ServerStatsItem["Data Ping"]:GetValue())
table.insert(fpsSamples, fps)
table.insert(pingSamples, ping)
if #fpsSamples > 20 then table.remove(fpsSamples,1) end
if #pingSamples > 20 then table.remove(pingSamples,1) end
if tick() - lastUpdate >= 0.5 then
lastUpdate = tick()
local f,p = 0,0
for _,v in ipairs(fpsSamples) do f+=v end
for _,v in ipairs(pingSamples) do p+=v end
f = math.floor(f/#fpsSamples)
p = math.floor(p/#pingSamples)
local color = Color3.fromRGB(0,255,0)
if f < 30 then
color = Color3.fromRGB(255,0,0)
elseif f < 50 then
color = Color3.fromRGB(255,255,0)
end
label.TextColor3 = color
label.Text = "FPS: "..f.."\nPing: "..p.." ms\nBy: Crow"
end
end)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment