Created
May 1, 2026 19:26
-
-
Save DuyNgao2306/4da0e7feda0258a7f38a8f1a3dcf4305 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --================ 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 | |
| --================ LOADING =================-- | |
| local loadingGui = Instance.new("ScreenGui", playerGui) | |
| loadingGui.IgnoreGuiInset = true | |
| loadingGui.ResetOnSpawn = false | |
| local loadingFrame = Instance.new("Frame", loadingGui) | |
| loadingFrame.Size = UDim2.new(1,0,1,0) | |
| loadingFrame.BackgroundColor3 = Color3.fromRGB(10,10,15) | |
| local title = Instance.new("TextLabel", loadingFrame) | |
| title.Size = UDim2.new(1,0,0.4,0) | |
| title.Position = UDim2.new(0,0,0.3,0) | |
| title.BackgroundTransparency = 1 | |
| title.Text = "SCRIPT LOADING..." | |
| title.Font = Enum.Font.GothamBlack | |
| title.TextScaled = true | |
| title.TextColor3 = Color3.fromRGB(0,255,170) | |
| local author = Instance.new("TextLabel", loadingFrame) | |
| author.Size = UDim2.new(1,0,0.2,0) | |
| author.Position = UDim2.new(0,0,0.7,0) | |
| author.BackgroundTransparency = 1 | |
| author.Text = "By: Crow" | |
| author.Font = Enum.Font.GothamBold | |
| author.TextScaled = true | |
| author.TextColor3 = Color3.fromRGB(180,180,180) | |
| for i = 1,3 do | |
| title.Text = "SCRIPT LOADING" .. string.rep(".", i) | |
| task.wait(0.4) | |
| end | |
| task.wait(1) | |
| for i = 1,10 do | |
| loadingFrame.BackgroundTransparency += 0.1 | |
| title.TextTransparency += 0.1 | |
| author.TextTransparency += 0.1 | |
| task.wait(0.05) | |
| end | |
| loadingGui:Destroy() | |
| --================ CONFIG =================-- | |
| local CONFIG = { | |
| AUTO_COLLECT = true, | |
| AUTO_ISLAND = true, | |
| AUTO_PET = true | |
| } | |
| --================ UI =================-- | |
| local gui = Instance.new("ScreenGui", playerGui) | |
| gui.ResetOnSpawn = false | |
| local frame = Instance.new("Frame", gui) | |
| frame.Size = UDim2.new(0,200,0,110) | |
| frame.Position = UDim2.new(0,10,0,40) | |
| frame.BackgroundColor3 = Color3.fromRGB(20,20,30) | |
| 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 | |
| label.TextColor3 = Color3.fromRGB(0,255,170) | |
| 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" | |
| toggle.TextColor3 = Color3.fromRGB(255,255,255) | |
| toggle.BackgroundColor3 = Color3.fromRGB(40,40,60) | |
| local overlay = Instance.new("Frame", gui) | |
| overlay.Size = UDim2.new(1,0,1,0) | |
| overlay.BackgroundColor3 = Color3.new(0,0,0) | |
| overlay.BackgroundTransparency = 0.5 | |
| overlay.Visible = false | |
| toggle.MouseButton1Click:Connect(function() | |
| overlay.Visible = not overlay.Visible | |
| toggle.Text = overlay.Visible and "Overlay ON" or "Overlay OFF" | |
| end) | |
| --================ DRAG (PC + MOBILE) =================-- | |
| local dragging = false | |
| local dragInput, dragStart, startPos | |
| frame.InputBegan:Connect(function(input) | |
| if input.UserInputType == Enum.UserInputType.MouseButton1 | |
| or input.UserInputType == Enum.UserInputType.Touch then | |
| dragging = true | |
| dragStart = input.Position | |
| startPos = 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) | |
| Services.UIS.InputChanged:Connect(function(input) | |
| if input == dragInput and dragging then | |
| local delta = input.Position - dragStart | |
| frame.Position = UDim2.new( | |
| startPos.X.Scale, | |
| startPos.X.Offset + delta.X, | |
| startPos.Y.Scale, | |
| startPos.Y.Offset + 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 | |
| label.Text = "⚡ FPS: "..math.floor(f/#fpsSamples).."\n📡 Ping: "..math.floor(p/#pingSamples) | |
| end | |
| end) | |
| --================ ANTI AFK =================-- | |
| player.Idled:Connect(function() | |
| Services.VirtualUser:CaptureController() | |
| Services.VirtualUser:ClickButton2(Vector2.new()) | |
| end) | |
| --================ HELPER =================-- | |
| local function getMoney() | |
| local ls = player:FindFirstChild("leaderstats") | |
| if not ls then return 0 end | |
| for _,v in pairs(ls:GetChildren()) do | |
| if v:IsA("NumberValue") or v:IsA("IntValue") then | |
| return v.Value | |
| end | |
| end | |
| return 0 | |
| end | |
| local function scanIslands() | |
| local list = {} | |
| for _,v in pairs(workspace:GetChildren()) do | |
| if v:IsA("Model") and v.Name:lower():find("island") then | |
| table.insert(list,v) | |
| end | |
| end | |
| table.sort(list,function(a,b) return a.Name < b.Name end) | |
| return list | |
| end | |
| --================ AUTO COLLECT (FIX) =================-- | |
| task.spawn(function() | |
| while CONFIG.AUTO_COLLECT do | |
| task.wait(1) | |
| local char = player.Character | |
| if not char or not char:FindFirstChild("HumanoidRootPart") then continue end | |
| local hrp = char.HumanoidRootPart | |
| -- nhặt tất cả vật phẩm trên đảo | |
| for _,v in pairs(workspace:GetDescendants()) do | |
| if v:IsA("BasePart") and not v.Anchored then | |
| if (hrp.Position - v.Position).Magnitude < 60 then | |
| pcall(function() | |
| v.CFrame = hrp.CFrame | |
| end) | |
| end | |
| end | |
| end | |
| end | |
| end) | |
| --================ AUTO ISLAND (FIX) =================-- | |
| task.spawn(function() | |
| local islands = scanIslands() | |
| local index = 1 | |
| while CONFIG.AUTO_ISLAND do | |
| task.wait(3) | |
| local money = getMoney() | |
| local island = islands[index] | |
| if island then | |
| local costObj = island:FindFirstChild("Cost") | |
| local part = island:FindFirstChildWhichIsA("BasePart", true) | |
| if costObj and money >= costObj.Value then | |
| if part and player.Character then | |
| player.Character:MoveTo(part.Position) | |
| end | |
| for _,v in pairs(island:GetDescendants()) do | |
| if v:IsA("ProximityPrompt") then | |
| pcall(function() | |
| fireproximityprompt(v) | |
| end) | |
| end | |
| end | |
| index += 1 | |
| end | |
| end | |
| end | |
| end) | |
| --================ AUTO PET (FIX) =================-- | |
| task.spawn(function() | |
| while CONFIG.AUTO_PET do | |
| task.wait(5) | |
| local pets = player:FindFirstChild("Pets") | |
| if not pets then continue end | |
| local best, bestPower = nil, 0 | |
| for _,pet in pairs(pets:GetChildren()) do | |
| local power = pet:FindFirstChild("Power") | |
| if power and power.Value > bestPower then | |
| bestPower = power.Value | |
| best = pet | |
| end | |
| end | |
| if best then | |
| for _,remote in pairs(game:GetDescendants()) do | |
| if remote:IsA("RemoteEvent") and remote.Name:lower():find("equip") then | |
| pcall(function() | |
| remote:FireServer(best) | |
| end) | |
| end | |
| end | |
| end | |
| end | |
| end) | |
| --================ REJOIN =================-- | |
| local SCRIPT_URL = "https://gist.githubusercontent.com/DuyNgao2306/5a51bdd13f5261dda5b390437ca4991f/raw/802c930fd60e4a61c11d6c675e3d218affbe1d23/Slime_Rng.lua" | |
| if queue_on_teleport then | |
| queue_on_teleport('task.wait(2); loadstring(game:HttpGet("'..SCRIPT_URL..'"))()') | |
| 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