Skip to content

Instantly share code, notes, and snippets.

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

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

Select an option

Save DuyNgao2306/7101c38c2107ac9365c2ba48370f6f85 to your computer and use it in GitHub Desktop.
--================ CORE =================--
local Services = {
Players = game:GetService("Players"),
RunService = game:GetService("RunService"),
Stats = game:GetService("Stats"),
UIS = game:GetService("UserInputService"),
TweenService = game:GetService("TweenService"),
VirtualUser = game:GetService("VirtualUser"),
TeleportService = game:GetService("TeleportService")
}
local player = Services.Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
if not game:IsLoaded() then game.Loaded:Wait() end
--================ CONFIG =================--
local CONFIG = {
AUTO_COLLECT = true,
AUTO_ISLAND = true,
AUTO_PET = true
}
--================ UI SYSTEM =================--
local gui = Instance.new("ScreenGui", playerGui)
gui.ResetOnSpawn = false
local frame = Instance.new("Frame", gui)
frame.Size = UDim2.new(0,180,0,100)
frame.Position = UDim2.new(0,10,0,40)
frame.BackgroundColor3 = Color3.fromRGB(20,20,20)
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
local toggle = Instance.new("TextButton", frame)
toggle.Size = UDim2.new(1,0,0.3,0)
toggle.Position = UDim2.new(0,0,0.7,0)
toggle.Text = "Overlay OFF"
local overlay = Instance.new("Frame", gui)
overlay.Size = UDim2.new(1,0,1,0)
overlay.BackgroundColor3 = Color3.new(0,0,0)
overlay.Visible = false
toggle.MouseButton1Click:Connect(function()
overlay.Visible = not overlay.Visible
toggle.Text = overlay.Visible and "Overlay ON" or "Overlay OFF"
end)
-- drag
local dragging, startPos, startFramePos
frame.InputBegan:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
startPos = i.Position
startFramePos = frame.Position
end
end)
Services.UIS.InputChanged:Connect(function(i)
if dragging and i.UserInputType == Enum.UserInputType.MouseMovement then
local delta = i.Position - startPos
frame.Position = startFramePos + UDim2.new(0,delta.X,0,delta.Y)
end
end)
--================ FPS + PING =================--
local fpsSamples, pingSamples = {}, {}
local lastUpdate = 0
Services.RunService.RenderStepped:Connect(function(dt)
local fps = math.floor(1/dt)
local ping = math.floor(Services.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)
label.Text = "FPS: "..f.."\nPing: "..p
end
end)
--================ ANTI AFK =================--
player.Idled:Connect(function()
Services.VirtualUser:CaptureController()
Services.VirtualUser:ClickButton2(Vector2.new())
end)
--================ SCANNER =================--
local function getMoney()
local ls = player:FindFirstChild("leaderstats")
if not ls then return end
for _,v in pairs(ls:GetChildren()) do
if v:IsA("NumberValue") or v:IsA("IntValue") then
return v
end
end
end
local function scanIslands()
local list = {}
for _,v in pairs(workspace:GetDescendants()) do
if v:IsA("Model") and v.Name:lower():find("island") then
table.insert(list,v)
end
end
return list
end
--================ AUTO =================--
-- auto collect
task.spawn(function()
while CONFIG.AUTO_COLLECT do
task.wait(1)
for _,v in pairs(workspace:GetDescendants()) do
if v:IsA("ProximityPrompt") then
pcall(function()
fireproximityprompt(v)
end)
end
end
end
end)
-- auto island (safe)
task.spawn(function()
local islands = scanIslands()
local index = 1
while CONFIG.AUTO_ISLAND do
task.wait(3)
local money = getMoney()
if not money then continue end
local island = islands[index]
if island then
local part = island:FindFirstChildWhichIsA("Part",true)
if part then
player.Character:MoveTo(part.Position)
end
index += 1
end
end
end)
-- auto pet
task.spawn(function()
while CONFIG.AUTO_PET do
task.wait(3)
for _,v in pairs(game:GetDescendants()) do
if v:IsA("RemoteEvent") and v.Name:lower():find("pet") then
pcall(function()
v:FireServer()
end)
end
end
end
end)
--================ REJOIN =================--
if queue_on_teleport then
queue_on_teleport('loadstring(game:HttpGet("https://gist.githubusercontent.com/DuyNgao2306/f4e6b86f5baf69117a754ef33e387d08/raw/a6a49deb47909d1a01ce8b4e4d12e47975039b07/Slime_Rng.lua"))()')
end
game:GetService("CoreGui").RobloxPromptGui.promptOverlay.ChildAdded:Connect(function(child)
if child.Name == "ErrorPrompt" then
task.wait(2)
Services.TeleportService:Teleport(game.PlaceId, player)
end
end)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment