---------- [ Libraries & Services ]---------- local Library = loadstring(game:HttpGet("https://pastebin.com/raw/b5QLVFiM"))() local Players = game:GetService("Players") local StarterGui = game:GetService("StarterGui") local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local ReplicatedStorage = game:GetService("ReplicatedStorage") local PathfindingService = game:GetService("PathfindingService") local VirtualInputManager = game:GetService("VirtualInputManager") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local character = player.Character or player.CharacterAdded:Wait() local humanoid = character:WaitForChild("Humanoid") local rootPart = character:WaitForChild("HumanoidRootPart") local backpack = player:WaitForChild("Backpack") local playerGui = player:WaitForChild("PlayerGui") local mouse = player:GetMouse() ---------- [ Global Variables & Settings ]---------- local Farm = false local Rebirth = false local IsSelling = false local AutoFarmAI = false local ESPEnabled = false local FarmPaused = false local XRayEnabled = false local AutoSellEnabled = false local ESPPlayerEnabled = false local VisualEffectsEnabled = true local ToolDestroyerEnabled = false local GodModeEnabled = false local InvisibleEnabled = false local NoclipEnabled = false -- New: NoClip local CurrentChest = nil local FarmingSpeed = 0.001 local XRayTransparency = 0.2 local PlayerHighlights = {} -- Stores ESP info for players local ChestHighlights = {} -- Stores ESP info for chests local ESPLineObjects = {} -- Stores ESP lines for players -- Additional Tools (in Tools tab) local InfiniteJumpEnabled = false local FlyEnabled = false local FlySpeed = 50 -- Default Fly Speed local SpeedBoostEnabled = false local SpeedBoostMultiplier = 2 -- Default Boost Multiplier local BaseWalkSpeed = humanoid.WalkSpeed -- Save initial walk speed -- Auto Buy & Server Hop toggles local AutoBuyShovelsEnabled = false local AutoBuyBackpacksEnabled = false local AutoBuyPetsEnabled = false local AutoBuyCratesEnabled = false local AutoOpenCratesEnabled = false local AutoServerHopEnabled = false -- Anti-AFK variable local AntiAFKEnabled = false -- Infinite Yield local IY = false -- Variabel tambahan untuk auto–buy crate: pilih crate dan jumlahnya local chosenCrate = "Tier1" -- default; sesuaikan dengan nama crate di folder Crates local chosenQuantity = 1 -- Data item untuk auto–buy (asumsi terdapat folder–folder berikut di ReplicatedStorage) local itemData = { shovels = ReplicatedStorage:WaitForChild("Shovels"), backpacks = ReplicatedStorage:WaitForChild("Backpacks"), pets = ReplicatedStorage:WaitForChild("Pets"), crates = ReplicatedStorage:WaitForChild("Crates") } ---------- [ Helper Functions ]---------- -- Fungsi untuk mengirim notifikasi ke player local function notify(title, text) StarterGui:SetCore("SendNotification", { Title = title, Text = text, Duration = 5, }) end -- Nonaktifkan koneksi Anti-AFK (metode 1) local function disableAFK() for _, con in ipairs(getconnections(player.Idled)) do con:Disable() end end -- Metode Anti-AFK dengan input virtual (metode 2) local function antiAFKLoop() while AntiAFKEnabled do task.wait(50) pcall(function() VirtualInputManager:SendKeyEvent(true, "LeftShift", false, nil) VirtualInputManager:SendKeyEvent(false, "LeftShift", false, nil) end) end end ------------------------------------------------------------------ -- LOGIKA AUTO BUY ITEM (BERDASARKAN HARGA DAN COIN) ------------------------------------------------------------------ local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local player = Players.LocalPlayer ------------------------------------------------------------------- -- Remote Event yang digunakan untuk pembelian item -- (dari daftar remote event: "ReplicatedStorage.Events.Checkout") ------------------------------------------------------------------- local checkoutEvent = ReplicatedStorage:WaitForChild("Events"):WaitForChild("Checkout") ------------------------------------------------------------------- -- Tabel default item (digunakan bila deteksi item gagal) ------------------------------------------------------------------- local defaultItems = { shovels = "BasicShovel", backpacks = "BasicBackpack", pets = "None" } ------------------------------------------------------------------- -- Folder data item -- Sesuaikan struktur data Anda; misalnya, data item disimpan di ReplicatedStorage ------------------------------------------------------------------- local itemData = { shovels = ReplicatedStorage:WaitForChild("Shovels"), -- misal: folder Shovels backpacks = ReplicatedStorage:WaitForChild("Backpacks"), -- misal: folder Backpacks pets = ReplicatedStorage:WaitForChild("Pets") -- misal: folder Pets } ------------------------------------------------------------------- -- Fungsi untuk memperbarui data pemain (karakter, backpack, tool) ------------------------------------------------------------------- local function updatePlayerData() local character = player.Character or player.CharacterAdded:Wait() local backpack = player:WaitForChild("Backpack") -- Cari tool di dalam karakter, jika tidak ada, cari di backpack local tool = character:FindFirstChildOfClass("Tool") if not tool then tool = backpack:FindFirstChildOfClass("Tool") end return { Character = character, Backpack = backpack, Tool = tool } end ------------------------------------------------------------------- local function getCurrentItem(item_type) local data = updatePlayerData() item_type = string.lower(item_type) if item_type == "shovels" then if data.Tool then print("[Debug] Current shovel (dari Tool): " .. data.Tool.Name) return data.Tool.Name else print("[Debug] Tool tidak ditemukan, gunakan default shovel: " .. defaultItems.shovels) return defaultItems.shovels end elseif item_type == "backpacks" then -- Contoh: deteksi backpack berupa Model di karakter yang memiliki child bernama "BackpackIdentifier" for _, obj in ipairs(data.Character:GetChildren()) do if obj:IsA("Model") and obj:FindFirstChild("BackpackIdentifier") then print("[Debug] Current backpack (dari karakter): " .. obj.Name) return obj.Name end end print("[Debug] Backpack tidak terdeteksi, gunakan default: " .. defaultItems.backpacks) return defaultItems.backpacks elseif item_type == "pets" then -- Contoh: asumsikan pet disimpan di dalam folder "PetHolder" di karakter local petHolder = data.Character:FindFirstChild("PetHolder") if petHolder and #petHolder:GetChildren() > 0 then local pet = petHolder:GetChildren()[1] print("[Debug] Current pet: " .. pet.Name) return pet.Name else print("[Debug] Tidak ada pet ditemukan, gunakan default: " .. defaultItems.pets) return defaultItems.pets end else warn("[Debug] Tipe item tidak dikenal: " .. item_type) return nil end end ------------------------------------------------------------------- local function getPlayerCoins() local leaderstats = player:WaitForChild("leaderstats") local coins = leaderstats:WaitForChild("Coins") print("[Debug] Coins: " .. coins.Value) return coins.Value end ------------------------------------------------------------------- local function getNextBestItem(item_type, max_price) local current_item_name = getCurrentItem(item_type) if not current_item_name then return nil end local folder = itemData[item_type] if not folder then warn("[Debug] Data item untuk tipe '" .. item_type .. "' tidak ditemukan!") return nil end local current_item = folder:FindFirstChild(current_item_name) local min_price = 0 if current_item and current_item:FindFirstChild("Price") then min_price = current_item.Price.Value end print("[Debug] Harga current " .. item_type .. " (" .. current_item_name .. "): " .. tostring(min_price)) local next_best_item = nil for _, item in ipairs(folder:GetChildren()) do if item:FindFirstChild("Price") then local price = item.Price.Value if price > min_price and price <= max_price then if not next_best_item or price < next_best_item.Price.Value then next_best_item = item end end end end if next_best_item then print("[Debug] Candidate upgrade untuk " .. item_type .. ": " .. next_best_item.Name .. " (Price: " .. next_best_item.Price.Value .. ")") else print("[Debug] Tidak ada candidate upgrade yang memenuhi untuk " .. item_type) end return next_best_item end ------------------------------------------------------------------- -- Fungsi untuk membeli upgrade item berikutnya. ------------------------------------------------------------------- local function buyNextBestItem(item_type) local coins = getPlayerCoins() local nextItem = getNextBestItem(item_type, coins) if nextItem then print("[AutoBuy] Mencoba membeli upgrade " .. item_type .. ": " .. nextItem.Name .. " (Price: " .. nextItem.Price.Value .. ")") checkoutEvent:FireServer(nextItem.Name) -- Jika perlu, setelah pembelian bisa dipanggil logika tambahan untuk meng-equip item baru. else print("[AutoBuy] Upgrade tidak ditemukan atau tidak terjangkau untuk " .. item_type) end end ------------------------------------------------------------------- -- Contoh pemanggilan fungsi upgrade berdasarkan toggle ------------------------------------------------------------------- local autoBuyShovels = true local autoBuyBackpacks = true local autoBuyPets = true if autoBuyShovels then buyNextBestItem("shovels") end if autoBuyBackpacks then buyNextBestItem("backpacks") end if autoBuyPets then buyNextBestItem("pets") end ------------------------------------------------------------------ -- LOGIKA AUTO BUY & OPEN CRATES ------------------------------------------------------------------ -- Fungsi untuk membeli crate local function buyCrate(crateName, targetName, quantity) local crate = itemData.crates:FindFirstChild(crateName) if crate then print("[Crate] Buying crate: " .. crateName .. " for " .. targetName .. " (" .. tostring(quantity) .. ")") ReplicatedStorage.Events.BuyCrate:FireServer(crate, targetName, quantity) else warn("Crate not found: " .. crateName) end end -- Fungsi untuk membuka crate local function openCrate(crateName) local crate = itemData.crates:FindFirstChild(crateName) if crate then print("[Crate] Opening crate: " .. crateName) ReplicatedStorage.Events.OpenCrate:FireServer(crate) else warn("Crate not found: " .. crateName) end end ------------------------------------------------------------------ -- LOOP AUTO BUY / AUTO OPEN (TERINTEGRASI DENGAN LOGIKA DI ATAS) ------------------------------------------------------------------ local function autoBuyShovelsLoop() while AutoBuyShovelsEnabled do pcall(function() buyNextBestItem("shovels") end) task.wait(0.5) -- gunakan delay lebih lama (0.5 detik) untuk debugging end end local function autoBuyBackpacksLoop() while AutoBuyBackpacksEnabled do pcall(function() buyNextBestItem("backpacks") end) task.wait(0.5) end end local function autoBuyPetsLoop() while AutoBuyPetsEnabled do pcall(function() buyNextBestItem("pets") end) task.wait(0.5) end end local function autoBuyCratesLoop() while AutoBuyCratesEnabled do pcall(function() buyCrate(chosenCrate, player.Name, chosenQuantity) end) task.wait(0.5) end end local function autoOpenCratesLoop() while AutoOpenCratesEnabled do pcall(function() openCrate(chosenCrate) end) task.wait(0.5) end end local function autoServerHopLoop() while AutoServerHopEnabled do pcall(function() -- Contoh: ReplicatedStorage.Events.ServerHop:FireServer() end) task.wait(0.5) end end ------------------------------------------------------------------ -- FUNGSI–FUNGSI LAINNYA (TIDAK DIUBAH DARI SCRIPT ASLI) ------------------------------------------------------------------ -- God Mode: Pastikan health selalu maksimum local function enableGodMode() spawn(function() while GodModeEnabled do if humanoid and humanoid.Health < humanoid.MaxHealth then humanoid.Health = humanoid.MaxHealth end task.wait(0.1) end end) end -- Atur karakter agar tidak terlihat (transparansi) local function setInvisible(state) if character then for _, part in ipairs(character:GetDescendants()) do if part:IsA("BasePart") then part.Transparency = state and 1 or 0 end end end end -- Teleport ke pemain lain secara acak local function teleportToRandomPlayer() local playersList = Players:GetPlayers() local candidates = {} for _, p in ipairs(playersList) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then table.insert(candidates, p) end end if #candidates > 0 then local target = candidates[math.random(1, #candidates)] if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then rootPart.CFrame = target.Character.HumanoidRootPart.CFrame * CFrame.new(5, 0, 0) notify("Teleport", "Teleported to " .. target.Name) end end end -- Acak posisi semua pemain di sekitar player lokal local function randomizePlayerPositions() local localChar = player.Character if not (localChar and localChar:FindFirstChild("HumanoidRootPart")) then return end local rootPos = localChar.HumanoidRootPart.CFrame for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then pcall(function() p.Character.HumanoidRootPart.CFrame = rootPos * CFrame.new(math.random(-10,10), 0, math.random(-10,10)) end) end end notify("Troll", "Player positions randomized.") end -- Teleport ke lokasi acak di sekitar local function teleportToRandomLocation() local randomOffset = Vector3.new(math.random(-50,50), 0, math.random(-50,50)) rootPart.CFrame = CFrame.new(rootPart.Position + randomOffset) notify("Teleport", "Teleported to a random location.") end -- Fitur ESP: Buat atau perbarui garis ESP dari player lokal ke target local function updateESPLine(targetPlayer) if targetPlayer.Character and targetPlayer.Character:FindFirstChild("HumanoidRootPart") then local startPos = rootPart.Position local targetPos = targetPlayer.Character.HumanoidRootPart.Position if not ESPLineObjects[targetPlayer] then local attachment0 = Instance.new("Attachment") attachment0.WorldPosition = startPos attachment0.Parent = rootPart local attachment1 = Instance.new("Attachment") attachment1.WorldPosition = targetPos attachment1.Parent = targetPlayer.Character.HumanoidRootPart local beam = Instance.new("Beam") beam.Attachment0 = attachment0 beam.Attachment1 = attachment1 beam.Color = ColorSequence.new(Color3.new(0, 1, 0)) beam.Width0 = 0.1 beam.Width1 = 0.1 beam.FaceCamera = true beam.Parent = rootPart ESPLineObjects[targetPlayer] = {beam = beam, attachment0 = attachment0, attachment1 = attachment1} else local objs = ESPLineObjects[targetPlayer] objs.attachment0.WorldPosition = startPos objs.attachment1.WorldPosition = targetPos end end end -- Bersihkan garis ESP untuk pemain tertentu local function removeESPLine(targetPlayer) if ESPLineObjects[targetPlayer] then local objs = ESPLineObjects[targetPlayer] if objs.beam then objs.beam:Destroy() end if objs.attachment0 then objs.attachment0:Destroy() end if objs.attachment1 then objs.attachment1:Destroy() end ESPLineObjects[targetPlayer] = nil end end ------------------------------------------------------------------ -- [ Window & Tabs Setup ] ------------------------------------------------------------------ local Window = Library:CreateWindow('JustShare - Hub Advanced Pro') local Tabs = { Home = Window:addTab('•Home + Settings'), ESP = Window:addTab('•ESP'), Troll = Window:addTab('•Troll'), Tools = Window:addTab('•Universal'), } ------------------------------------------------------------------ -- [ SECTION: HOME TAB ] ------------------------------------------------------------------ local Home_Left = Tabs.Home:addSection() -- Primary Settings Section local Home_Right = Tabs.Home:addSection() -- Advanced Settings Section local Main_Home = Home_Left:addMenu("#Home") ------------------------------------------------------------------ -- [ HOME TAB FUNCTIONS ] ------------------------------------------------------------------ local function DestroyTools() while ToolDestroyerEnabled do if character then for _, tool in ipairs(character:GetChildren()) do if tool:IsA("Tool") then pcall(function() tool:Destroy() end) end end end if backpack then for _, tool in ipairs(backpack:GetChildren()) do if tool:IsA("Tool") then pcall(function() tool:Destroy() end) end end end task.wait(0.1) end end local function Sell() if IsSelling then return end IsSelling = true local localChar = player.Character if localChar and localChar:FindFirstChild("HumanoidRootPart") then local oldPos = localChar.HumanoidRootPart.CFrame localChar.HumanoidRootPart.CFrame = CFrame.new(3, 10, -160) task.wait(0.1) pcall(function() ReplicatedStorage.Events.AreaSell:FireServer() end) task.wait(0.1) localChar.HumanoidRootPart.CFrame = oldPos end IsSelling = false end local function setPositionAtChest(targetPosition, tool) if tool.Name == "Dynamite" or tool.Name == "Nuke" then local offset = Vector3.new(0, 5, -3) rootPart.CFrame = CFrame.new(targetPosition + offset, targetPosition) else if (rootPart.Position - targetPosition).Magnitude > 0.5 then rootPart.CFrame = CFrame.new(targetPosition) end end end local function AutoFarmLoop() while Farm do if FarmPaused then task.wait(0.5) else local localChar = player.Character if not localChar then task.wait(0.5) continue end local tool = localChar:FindFirstChildOfClass("Tool") or backpack:FindFirstChildOfClass("Tool") if not tool then notify("Error!", "No tool found! Auto Farm disabled.") Farm = false return elseif not localChar:FindFirstChildOfClass("Tool") then pcall(function() localChar.Humanoid:EquipTool(tool) end) task.wait(0.1) end if CurrentChest and CurrentChest.Parent then local targetPosition = CurrentChest.Position setPositionAtChest(targetPosition, tool) if tool:FindFirstChild("RemoteClick") then pcall(function() tool.RemoteClick:FireServer(CurrentChest) end) end task.wait(FarmingSpeed) if AutoSellEnabled and playerGui.Gui and playerGui.Gui.Popups and playerGui.Gui.Popups.BackpackFull and playerGui.Gui.Popups.BackpackFull.Visible then FarmPaused = true Sell() task.wait(0.5) FarmPaused = false end else CurrentChest = nil for _, v in ipairs(workspace.SandBlocks:GetChildren()) do if not Farm then break end if v:FindFirstChild("Chest") then CurrentChest = v v.CanCollide = false if localChar then local targetPosition = v.Position setPositionAtChest(targetPosition, tool) if tool:FindFirstChild("RemoteClick") then pcall(function() tool.RemoteClick:FireServer(v) end) end task.wait(0.05) end break end end end end task.wait(0.05) end end ------------------------------------------------------------------ -- [ HOME TAB TOGGLES & TRIGGERS ] ------------------------------------------------------------------ Main_Home:addToggle('Auto Farm', false, function(state) Farm = state if state then local localChar = player.Character local tool = localChar and localChar:FindFirstChildOfClass("Tool") or backpack:FindFirstChildOfClass("Tool") if not tool then notify("Error!", "No tool found! Auto Farm disabled.") Farm = false return end if localChar and not localChar:FindFirstChildOfClass("Tool") then pcall(function() localChar.Humanoid:EquipTool(tool) end) task.wait(0.1) end notify("Success!", "Auto Farm enabled.") task.spawn(AutoFarmLoop) else notify("Info", "Auto Farm disabled.") end end) Main_Home:addToggle('Auto Farm With AI', false, function(state) AutoFarmAI = state if AutoFarmAI then notify("Auto Farm AI Enabled", "Auto Farm AI is now active.") task.spawn(function() while AutoFarmAI do task.wait(1) end end) else notify("Auto Farm AI Disabled", "Auto Farm AI is now disabled.") end end) Main_Home:addToggle('Auto Sell', false, function(state) AutoSellEnabled = state notify("Success!", "Auto Sell " .. (state and "enabled." or "disabled.")) end) Main_Home:addToggle('Auto Rebirth', false, function(state) Rebirth = state if Rebirth then notify("Auto Rebirth Enabled", "Auto Rebirth is now active.") task.spawn(function() while Rebirth do task.wait(1) local coinsText = playerGui.Gui.Buttons.Coins.Amount.Text:gsub(',', '') local rebirthCostText = playerGui.Gui.Rebirth.Needed.Coins.Amount.Text:gsub(',', '') local coins = tonumber(coinsText) local cost = tonumber(rebirthCostText) if coins and cost and coins > cost then warn('Rebirth triggered!') pcall(function() ReplicatedStorage.Events.Rebirth:FireServer() end) if playerGui.ToolBox then playerGui.ToolBox.Text = "Bucket" end repeat task.wait(0.1) until playerGui.Gui.Popups.GiveReward and playerGui.Gui.Popups.GiveReward.Visible == true playerGui.Gui.Popups.GiveReward.Visible = false task.wait() end end end) end end) -- Toggle Auto Buy untuk Shovels, Backpacks, dan Pets Main_Home:addToggle("Auto Buy Shovels", false, function(state) AutoBuyShovelsEnabled = state if state then task.spawn(autoBuyShovelsLoop) end end) Main_Home:addToggle("Auto Buy Backpacks (Not Work)", false, function(state) AutoBuyBackpacksEnabled = state if state then task.spawn(autoBuyBackpacksLoop) end end) Main_Home:addToggle("Auto Buy Pets", false, function(state) AutoBuyPetsEnabled = state if state then task.spawn(autoBuyPetsLoop) end end) -- Toggle Auto Buy dan Auto Open Crates (gunakan variabel chosenCrate dan chosenQuantity) Main_Home:addToggle("Auto Buy Crates (Test)", false, function(state) AutoBuyCratesEnabled = state if state then task.spawn(autoBuyCratesLoop) end end) Main_Home:addToggle("Auto Open Crates (Not Work)", false, function(state) AutoOpenCratesEnabled = state if state then task.spawn(autoOpenCratesLoop) end end) --[[ Main_Home:addToggle("Auto Server Hop", false, function(state) AutoServerHopEnabled = state if state then task.spawn(autoServerHopLoop) end end) --]] Main_Home:addToggle('X-Ray', false, function(state) XRayEnabled = state if XRayEnabled then for _, obj in ipairs(workspace:GetDescendants()) do if obj:IsA("BasePart") and not obj:IsDescendantOf(player.Character) then obj.Transparency = XRayTransparency end end notify("X-Ray Enabled", "Objects are now transparent.") else for _, obj in ipairs(workspace:GetDescendants()) do if obj:IsA("BasePart") then obj.Transparency = 0 end end notify("X-Ray Disabled", "Objects are now back to normal.") end end) local Home_Right_Menu = Home_Right:addMenu("#Settings") Home_Right_Menu:addTextbox('Farming Speed', tostring(FarmingSpeed), function(value) local newSpeed = tonumber(value) if newSpeed and newSpeed > 0 then FarmingSpeed = newSpeed notify("Farming Speed Updated", "Farming speed set to: " .. tostring(newSpeed)) else notify("Invalid Input", "Enter a valid positive number for Farming Speed.") end end) Home_Right_Menu:addToggle("Anti-AFK", false, function(state) AntiAFKEnabled = state if AntiAFKEnabled then disableAFK() task.spawn(antiAFKLoop) notify("Anti-AFK Enabled", "Idle kick prevention active.") else notify("Anti-AFK Disabled", "Idle kick prevention off.") end end) ---------- [ SECTION: ESP TAB ]---------- local ESP_Left = Tabs.ESP:addSection() -- ESP for Players local ESP_Right = Tabs.ESP:addSection() -- ESP for Chests / Extras local ESP_Left_Menu = ESP_Left:addMenu("#Player ESP") local ESP_Right_Menu = ESP_Right:addMenu("#Chest ESP / Extras") -- Variabel untuk menyimpan referensi toggle ESP Lines local espLinesToggle = nil ESP_Left_Menu:addToggle('ESP Player', false, function(state) ESPPlayerEnabled = state local function AddPlayerESP(targetPlayer) if targetPlayer.Character and targetPlayer.Character:FindFirstChild("HumanoidRootPart") then local highlight = Instance.new("Highlight") highlight.Parent = targetPlayer.Character highlight.Adornee = targetPlayer.Character.HumanoidRootPart highlight.FillColor = Color3.fromRGB(255, 0, 0) highlight.FillTransparency = 0.5 highlight.OutlineColor = Color3.fromRGB(255, 255, 255) highlight.OutlineTransparency = 0.5 local billboard = Instance.new("BillboardGui") billboard.Parent = targetPlayer.Character billboard.Adornee = targetPlayer.Character.HumanoidRootPart billboard.Size = UDim2.new(0, 100, 0, 50) billboard.StudsOffset = Vector3.new(0, 3, 0) billboard.AlwaysOnTop = true local nameLabel = Instance.new("TextLabel") nameLabel.Parent = billboard nameLabel.Size = UDim2.new(1, 0, 1, 0) nameLabel.Text = targetPlayer.Name nameLabel.TextColor3 = Color3.new(1,1,1) nameLabel.BackgroundTransparency = 1 nameLabel.TextStrokeTransparency = 0.5 local distanceLabel = Instance.new("TextLabel") distanceLabel.Parent = billboard distanceLabel.Size = UDim2.new(1, 0, 0, 20) distanceLabel.Position = UDim2.new(0, 0, 1, 0) distanceLabel.TextColor3 = Color3.new(1,1,1) distanceLabel.BackgroundTransparency = 1 distanceLabel.TextStrokeTransparency = 0.5 task.spawn(function() while ESPPlayerEnabled and targetPlayer.Character and targetPlayer.Character:FindFirstChild("HumanoidRootPart") do local dist = (targetPlayer.Character.HumanoidRootPart.Position - rootPart.Position).Magnitude distanceLabel.Text = string.format("Distance: %.2f", dist) if espLinesToggle and espLinesToggle.state then updateESPLine(targetPlayer) end task.wait(1) end end) table.insert(PlayerHighlights, {player = targetPlayer, highlight = highlight, billboard = billboard}) end end local function RemovePlayerESP(targetPlayer) for i, esp in ipairs(PlayerHighlights) do if esp.player == targetPlayer then if esp.highlight then esp.highlight:Destroy() end if esp.billboard then esp.billboard:Destroy() end table.remove(PlayerHighlights, i) removeESPLine(targetPlayer) break end end end if ESPPlayerEnabled then notify("ESP Player Enabled", "Player highlights and distances are now visible.") for _, p in ipairs(Players:GetPlayers()) do if p ~= player then AddPlayerESP(p) end end Players.PlayerAdded:Connect(function(p) if p ~= player then AddPlayerESP(p) end end) Players.PlayerRemoving:Connect(function(p) RemovePlayerESP(p) end) if not espLinesToggle then espLinesToggle = ESP_Left_Menu:addToggle("ESP Lines", false, function(lineState) for _, p in ipairs(Players:GetPlayers()) do if p ~= player then if lineState then updateESPLine(p) else removeESPLine(p) end end end end) end else notify("ESP Player Disabled", "Player highlights and distances are now hidden.") for _, esp in ipairs(PlayerHighlights) do if esp.highlight then esp.highlight:Destroy() end if esp.billboard then esp.billboard:Destroy() end end PlayerHighlights = {} for p, _ in pairs(ESPLineObjects) do removeESPLine(p) end if espLinesToggle then Library:DestroyGui(espLinesToggle) espLinesToggle = nil end end end) ESP_Right_Menu:addToggle('ESP Chest', false, function(state) ESPEnabled = state if ESPEnabled then for _, v in ipairs(workspace.SandBlocks:GetChildren()) do if v:FindFirstChild("Chest") then local highlight = Instance.new("Highlight") highlight.Parent = v highlight.Adornee = v highlight.FillColor = Color3.fromRGB(255, 0, 0) highlight.FillTransparency = 0.5 highlight.OutlineColor = Color3.fromRGB(255, 255, 255) highlight.OutlineTransparency = 0.5 table.insert(ChestHighlights, highlight) end end else for _, h in ipairs(ChestHighlights) do h:Destroy() end ChestHighlights = {} end end) task.spawn(function() while true do if ESPEnabled then for _, v in ipairs(workspace.SandBlocks:GetChildren()) do if v:FindFirstChild("Chest") then local exists = false for _, h in ipairs(ChestHighlights) do if h.Adornee == v then exists = true break end end if not exists then local highlight = Instance.new("Highlight") highlight.Parent = v highlight.Adornee = v highlight.FillColor = Color3.fromRGB(255, 0, 0) highlight.FillTransparency = 0.5 highlight.OutlineColor = Color3.fromRGB(255, 255, 255) highlight.OutlineTransparency = 0.5 table.insert(ChestHighlights, highlight) end end end for i = #ChestHighlights, 1, -1 do local h = ChestHighlights[i] if not h.Adornee or not h.Adornee.Parent then h:Destroy() table.remove(ChestHighlights, i) end end end task.wait(1) end end) ---------- [ SECTION: TROLL TAB ]---------- local Troll_Left = Tabs.Troll:addSection() -- Troll Tools Section local Troll_Right = Tabs.Troll:addSection() -- Troll Actions Section local Troll_Left_Menu = Troll_Left:addMenu("#Troll") local Troll_Right_Menu = Troll_Right:addMenu("#Actions") -- Existing Troll Feature: Remove Tool Troll_Left_Menu:addToggle('Remove Tool', false, function(state) ToolDestroyerEnabled = state if ToolDestroyerEnabled then notify("Tool Destroyer Enabled", "All tools will be removed automatically.") task.spawn(DestroyTools) else notify("Tool Destroyer Disabled", "Tool removal has been stopped.") end end) local joinIslandEvent = ReplicatedStorage:FindFirstChild("Events") and ReplicatedStorage.Events:FindFirstChild("JoinIsland") if not joinIslandEvent then warn("JoinIsland Event not found! Ensure it exists in ReplicatedStorage.Events.") end Troll_Right_Menu:addToggle("Bring All Players (Instant)", _G.BringAllPlayers or false, function(value) _G.BringAllPlayers = value if _G.BringAllPlayers then task.spawn(function() local localChar = player.Character if localChar and localChar:FindFirstChild("HumanoidRootPart") then local rootPos = localChar.HumanoidRootPart.CFrame for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then pcall(function() if joinIslandEvent then joinIslandEvent:FireServer(p) else p.Character.HumanoidRootPart.CFrame = rootPos + Vector3.new(math.random(-5,5), 0, math.random(-5,5)) end end) end end end end) end end) Troll_Right_Menu:addButton("Teleport to Random Player", function() teleportToRandomPlayer() end) Troll_Right_Menu:addButton("Randomize Player Positions", function() randomizePlayerPositions() end) -- === Fitur Troll Tambahan === -- 1. Kill All: Mematikan seluruh karakter pemain (selain lokal) Troll_Right_Menu:addButton("Kill All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("Humanoid") then pcall(function() p.Character:BreakJoints() end) end end notify("Troll", "Kill All executed!") end) -- 2. Explode All: Membuat ledakan di posisi setiap pemain (selain lokal) Troll_Right_Menu:addButton("Explode All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then local explosion = Instance.new("Explosion") explosion.BlastRadius = 10 explosion.BlastPressure = 50000 explosion.Position = p.Character.HumanoidRootPart.Position explosion.Parent = workspace end end notify("Troll", "Explode All executed!") end) -- 3. Freeze All: Anchor seluruh bagian karakter pemain (selain lokal) Troll_Right_Menu:addButton("Freeze All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character then for _, part in ipairs(p.Character:GetDescendants()) do if part:IsA("BasePart") then part.Anchored = true end end end end notify("Troll", "Freeze All executed!") end) -- 4. Unfreeze All: Lepaskan anchor dari seluruh bagian karakter pemain (selain lokal) Troll_Right_Menu:addButton("Unfreeze All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character then for _, part in ipairs(p.Character:GetDescendants()) do if part:IsA("BasePart") then part.Anchored = false end end end end notify("Troll", "Unfreeze All executed!") end) -- 5. Teleport All to Local: Teleport semua pemain (selain lokal) ke posisi pemain lokal Troll_Right_Menu:addButton("Teleport All to Local", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then p.Character.HumanoidRootPart.CFrame = rootPart.CFrame + Vector3.new(math.random(-3,3), 0, math.random(-3,3)) end end notify("Troll", "Teleport All to Local executed!") end) -- 6. Teleport All to Random: Teleport semua pemain (selain lokal) ke lokasi acak Troll_Right_Menu:addButton("Teleport All to Random", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then p.Character.HumanoidRootPart.CFrame = CFrame.new(math.random(-500,500), 10, math.random(-500,500)) end end notify("Troll", "Teleport All to Random executed!") end) -- 7. Swap All Positions: Tukar posisi antara semua pemain (selain lokal) secara acak Troll_Right_Menu:addButton("Swap All Positions", function() local positions = {} for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then table.insert(positions, p.Character.HumanoidRootPart.CFrame) end end for i, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") and positions[i] then p.Character.HumanoidRootPart.CFrame = positions[i] end end notify("Troll", "Swap All Positions executed!") end) -- 8. Set Gravity Low: Mengatur gravitasi workspace menjadi rendah Troll_Right_Menu:addButton("Set Gravity Low", function() workspace.Gravity = 10 notify("Troll", "Gravity set to low!") end) -- 9. Set Gravity High: Mengatur gravitasi workspace menjadi tinggi Troll_Right_Menu:addButton("Set Gravity High", function() workspace.Gravity = 300 notify("Troll", "Gravity set to high!") end) -- 10. Force Dance All: Memaksa semua pemain (selain lokal) berputar seolah-olah berdansa selama 5 detik Troll_Right_Menu:addButton("Force Dance All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then spawn(function() local duration = 5 local startTime = tick() while tick() - startTime < duration do p.Character.HumanoidRootPart.CFrame = p.Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(20), 0) task.wait(0.1) end end) end end notify("Troll", "Force Dance All executed!") end) -- 11. Rename All Players: Ubah nama tampilan semua pemain (selain lokal) Troll_Right_Menu:addButton("Rename All Players", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player then p.DisplayName = "Trolled!" end end notify("Troll", "Rename All Players executed!") end) -- 12. Spawn Bricks Rain: Hujan bata di atas kepala semua pemain (selain lokal) Troll_Right_Menu:addButton("Spawn Bricks Rain", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then for i = 1, 5 do local brick = Instance.new("Part") brick.Size = Vector3.new(4,1,4) brick.Position = p.Character.HumanoidRootPart.Position + Vector3.new(math.random(-3,3), 50, math.random(-3,3)) brick.Anchored = false brick.Parent = workspace game.Debris:AddItem(brick, 5) end end end notify("Troll", "Spawn Bricks Rain executed!") end) -- 13. Spin All Players: Putar semua pemain (selain lokal) selama 5 detik Troll_Right_Menu:addButton("Spin All Players", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then spawn(function() local duration = 5 local startTime = tick() while tick() - startTime < duration do p.Character.HumanoidRootPart.CFrame = p.Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(30), 0) task.wait(0.1) end end) end end notify("Troll", "Spin All Players executed!") end) -- 14. Fake Server Crash: Buat ledakan secara berulang di sekitar pemain lokal selama 3 detik Troll_Right_Menu:addButton("Fake Server Crash", function() spawn(function() local duration = 3 local startTime = tick() while tick() - startTime < duration do local explosion = Instance.new("Explosion") explosion.BlastRadius = 15 explosion.BlastPressure = 100000 explosion.Position = rootPart.Position + Vector3.new(math.random(-5,5), 0, math.random(-5,5)) explosion.Parent = workspace task.wait(0.2) end end) notify("Troll", "Fake Server Crash executed!") end) -- 15. Color All Players: Ubah warna semua bagian karakter pemain (selain lokal) ke warna acak Troll_Right_Menu:addButton("Color All Players", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character then for _, part in ipairs(p.Character:GetDescendants()) do if part:IsA("BasePart") then part.BrickColor = BrickColor.Random() end end end end notify("Troll", "Color All Players executed!") end) -- 16. Anchor All Players: Anchor seluruh bagian karakter pemain (selain lokal) Troll_Right_Menu:addButton("Anchor All Players", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character then for _, part in ipairs(p.Character:GetDescendants()) do if part:IsA("BasePart") then part.Anchored = true end end end end notify("Troll", "Anchor All Players executed!") end) -- 17. Explode Self: Buat ledakan pada karakter pemain lokal Troll_Right_Menu:addButton("Explode Self", function() if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local explosion = Instance.new("Explosion") explosion.BlastRadius = 10 explosion.BlastPressure = 50000 explosion.Position = player.Character.HumanoidRootPart.Position explosion.Parent = workspace notify("Troll", "Explode Self executed!") end end) -- 18. Chain Lightning: Buat rangkaian ledakan ke pemain terdekat secara berantai Troll_Right_Menu:addButton("Chain Lightning", function() local function getNearestPlayer(fromPos) local nearest, minDist = nil, math.huge for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then local dist = (p.Character.HumanoidRootPart.Position - fromPos).Magnitude if dist < minDist then minDist = dist nearest = p end end end return nearest end local currentPos = rootPart.Position for i = 1, 5 do local target = getNearestPlayer(currentPos) if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then local explosion = Instance.new("Explosion") explosion.BlastRadius = 8 explosion.BlastPressure = 80000 explosion.Position = target.Character.HumanoidRootPart.Position explosion.Parent = workspace currentPos = target.Character.HumanoidRootPart.Position task.wait(0.5) else break end end notify("Troll", "Chain Lightning executed!") end) -- 19. Force Respawn All: Memaksa semua pemain (selain lokal) respawn Troll_Right_Menu:addButton("Force Respawn All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character then p.Character:BreakJoints() end end notify("Troll", "Force Respawn All executed!") end) -- 20. Spin Self: Putar karakter pemain lokal selama 5 detik Troll_Right_Menu:addButton("Spin Self", function() if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then local duration = 5 local startTime = tick() while tick() - startTime < duration do player.Character.HumanoidRootPart.CFrame = player.Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(30), 0) task.wait(0.1) end notify("Troll", "Spin Self executed!") end end) -- 21. Random Freeze All: Secara acak anchor sebagian bagian dari karakter pemain (selain lokal) Troll_Right_Menu:addButton("Random Freeze All", function() for _, p in ipairs(Players:GetPlayers()) do if p ~= player and p.Character then for _, part in ipairs(p.Character:GetDescendants()) do if part:IsA("BasePart") then part.Anchored = (math.random() < 0.5) end end end end notify("Troll", "Random Freeze All executed!") end) ---------- [ SECTION: TOOLS TAB ]---------- local Tools_Left = Tabs.Tools:addSection() -- Primary Tools Section local Main_Tools = Tools_Left:addMenu("#Tools") local Tools_Right = Tabs.Tools:addSection() -- Extra Tools Section local Extra_Tools = Tools_Right:addMenu("#Extra Tools") Main_Tools:addButton("Reset Character", function() if player.Character then player.Character:BreakJoints() notify("Reset Character", "Character will respawn shortly.") end end) --[[. Infinite Yield local BjK = loadstring(game:HttpGet('https://raw.githubusercontent.com/DarkNetworks/Infinite-Yield/main/latest.lua'))() ] Main_Tools:addButton('Infinite Yield', false, function(state) IY = state if IY then notify("Actived", "Infinite Yield") task.spawn(BjK) else print("Deactive", "Infinite Yield") end end) --]] Main_Tools:addButton("Teleport to Cursor", function() if mouse and rootPart then local targetPos = mouse.Hit.p rootPart.CFrame = CFrame.new(targetPos) notify("Teleport", "Teleported to cursor position.") end end) Main_Tools:addButton("Teleport to Random Location", function() teleportToRandomLocation() end) Extra_Tools:addTextbox("Set Walk Speed", tostring(BaseWalkSpeed), function(value) local newSpeed = tonumber(value) if newSpeed and newSpeed > 0 then BaseWalkSpeed = newSpeed if SpeedBoostEnabled then humanoid.WalkSpeed = BaseWalkSpeed * SpeedBoostMultiplier else humanoid.WalkSpeed = BaseWalkSpeed end notify("Walk Speed", "Walk speed set to " .. tostring(newSpeed)) else notify("Invalid Input", "Enter a valid positive number for Walk Speed.") end end) Extra_Tools:addToggle("Infinite Jump", false, function(state) InfiniteJumpEnabled = state notify("Infinite Jump", state and "Infinite Jump enabled." or "Infinite Jump disabled.") end) UserInputService.JumpRequest:Connect(function() if InfiniteJumpEnabled then if humanoid then humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end end) Extra_Tools:addToggle("Fly Mode", false, function(state) FlyEnabled = state if FlyEnabled then notify("Fly Mode", "Fly mode enabled. Press [E] to ascend, [Q] to descend.") else notify("Fly Mode", "Fly mode disabled.") end end) Extra_Tools:addTextbox("Set Fly Speed", tostring(FlySpeed), function(value) local newFlySpeed = tonumber(value) if newFlySpeed and newFlySpeed > 0 then FlySpeed = newFlySpeed notify("Fly Speed", "Fly speed set to " .. tostring(newFlySpeed)) else notify("Invalid Input", "Enter a valid positive number for Fly Speed.") end end) local flying = false UserInputService.InputBegan:Connect(function(input, gameProcessed) if gameProcessed then return end if FlyEnabled then if input.KeyCode == Enum.KeyCode.E then flying = "ascend" elseif input.KeyCode == Enum.KeyCode.Q then flying = "descend" end end end) UserInputService.InputEnded:Connect(function(input, gameProcessed) if gameProcessed then return end if FlyEnabled and (input.KeyCode == Enum.KeyCode.E or input.KeyCode == Enum.KeyCode.Q) then flying = false end end) RunService.RenderStepped:Connect(function(delta) if FlyEnabled and flying and rootPart then local newPos = rootPart.Position if flying == "ascend" then newPos = newPos + Vector3.new(0, FlySpeed * delta, 0) elseif flying == "descend" then newPos = newPos - Vector3.new(0, FlySpeed * delta, 0) end rootPart.CFrame = CFrame.new(newPos) end end) Extra_Tools:addToggle("Speed Boost", false, function(state) SpeedBoostEnabled = state if SpeedBoostEnabled then humanoid.WalkSpeed = BaseWalkSpeed * SpeedBoostMultiplier notify("Speed Boost", "Speed Boost enabled.") else humanoid.WalkSpeed = BaseWalkSpeed notify("Speed Boost", "Speed Boost disabled.") end end) Extra_Tools:addTextbox("Boost Multiplier", tostring(SpeedBoostMultiplier), function(value) local newMultiplier = tonumber(value) if newMultiplier and newMultiplier > 0 then SpeedBoostMultiplier = newMultiplier if SpeedBoostEnabled then humanoid.WalkSpeed = BaseWalkSpeed * SpeedBoostMultiplier end notify("Boost Multiplier", "Boost multiplier set to " .. tostring(newMultiplier)) else notify("Invalid Input", "Enter a valid positive number for Boost Multiplier.") end end) Extra_Tools:addToggle("God Mode", false, function(state) GodModeEnabled = state if GodModeEnabled then notify("God Mode", "God Mode enabled.") enableGodMode() else notify("God Mode", "God Mode disabled.") end end) Extra_Tools:addToggle("Invisible Mode", false, function(state) InvisibleEnabled = state setInvisible(InvisibleEnabled) notify("Invisible Mode", state and "You are now invisible." or "You are now visible.") end) -- New Feature: NoClip Extra_Tools:addToggle("NoClip", false, function(state) NoclipEnabled = state if NoclipEnabled then notify("NoClip", "NoClip enabled. You can pass through walls.") else notify("NoClip", "NoClip disabled.") end end) RunService.RenderStepped:Connect(function() if NoclipEnabled and character then for _, part in ipairs(character:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end end) ---------- [ End of Script ]---------- notify("Loaded", "JustShare Hub Advanced Pro loaded successfully. Enjoy!")