Dark Spawner Script
HomeGamesTrendingExecutors
Dark Spawner Script

The best community driven platform for finding the latest Roblox scripts. Create, share, and discover amazing scripts.

Scripts
568+
Games
389+
Votes cast
7,886+

Quick Links

  • How to Use
  • Games
  • Trending Scripts
  • Executors
  • FAQs

Community

Links coming soon.

Contact

  • [email protected]
  • Report a script

© 2026 Dark Spawner Script. All rights reserved.

About UsPrivacy PolicyDisclaimer
Home›Games›Fust Survival

Fust Survival Script MunkeHub: Player ESP, Resource ESP

Fust Survival•3 hours ago
0 views
Fust Survival Script MunkeHub: Player ESP, Resource ESP
No Key
  • Working
  • updated 3 hours ago
  • No key
  • tested on Delta, Xeno
T

Team Darkspawner

Hub: MunkeHub

Play Game Game Link

Description

Use this MunkeHub for Fust Survival Roblox!! Now you can get features like Sleeper ESP, Loot ESP, Fullbright, Vehicle ESP and No Fog, and More!! The Resources page has a master switch for Resource ESP, with Max Distance at 450m and Font Size at 9. The Nodes and Pickups boxes cover sulfur, stone, trees, hemp, mushrooms and wood or stone piles, while the Loot box handles crates, barrels, military crates and airdrops. The left menu also has pages for Players, Vehicles, AI / Enemies, Deployables, World and Combat. No key on this one, so paste the loadstring and go!!

Features

  • +Resource ESP
  • +Player ESP
  • +Fullbright
  • +Sleeper ESP
  • +Chams
  • +No Fog
  • +Vehicle ESP
  • +Box ESP
  • +Remove Foliage
  • +AI and Enemy ESP
  • +Loot ESP
  • +Health Bar ESP
  • +Clear Water
  • +Deployable ESP
  • +No Shadows
  • +Airdrop ESP
  • +Name and Distance ESP
  • +Disable Post FX
Fust Survival

Fust Survival

Explore more scripts for this game (1)

Script

Raw Download
--[[rscripts:analytics:start]]
-- Script analytics (enabled by the creator on rscripts.net).
-- Runs in its own thread and cannot affect the script below.
task.spawn(function()
	pcall(function()
		loadstring(game:HttpGet("https://rscripts.net/api/telemetry/v2/client.lua?s=6af2686daeb273fbec883fd7"))()
	end)
end)
--[[rscripts:analytics:end]]

local AIRFLOW_URL = "https://raw.githubusercontent.com/kni-fe/free-products/main/AirFlowLibrary.luau"
local Players = game:GetService("Players")
local CoreGui = game:GetService("CoreGui")
local LocalPlayer = Players.LocalPlayer


local popup = Instance.new("ScreenGui")
popup.Name = "MunkeHubDiscordGate"
popup.IgnoreGuiInset = true
popup.DisplayOrder = 999
popup.Parent = (gethui and gethui()) or CoreGui

local bg = Instance.new("Frame")
bg.Size = UDim2.new(1, 0, 1, 0)
bg.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
bg.BackgroundTransparency = 0.4
bg.BorderSizePixel = 0
bg.Parent = popup

local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 400, 0, 260)
frame.Position = UDim2.new(0.5, -200, 0.5, -130)
frame.BackgroundColor3 = Color3.fromRGB(15, 18, 20)
frame.BorderSizePixel = 0
frame.Parent = popup

local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 8)
frameCorner.Parent = frame

local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(0, 210, 210) -- Cyan theme match
stroke.Thickness = 2
stroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border
stroke.Parent = frame

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 40)
title.BackgroundTransparency = 1
title.Text = "KEYLESS MUNKEHUB v1.0.1"
title.TextColor3 = Color3.fromRGB(0, 210, 210)
title.Font = Enum.Font.GothamBold
title.TextSize = 18
title.Parent = frame

local msg = Instance.new("TextLabel")
msg.Size = UDim2.new(1, -40, 0, 120)
msg.Position = UDim2.new(0, 20, 0, 45)
msg.BackgroundTransparency = 1
msg.Text = "This script is currently in BETA.\n\nA fully optimized script featuring advanced Combat and No-Clip is being made and will be released KEYLESS to Discord members early!\n\nPressing continue will copy a Discord invite."
msg.TextColor3 = Color3.fromRGB(240, 245, 250)
msg.Font = Enum.Font.Gotham
msg.TextSize = 13
msg.TextWrapped = true
msg.TextYAlignment = Enum.TextYAlignment.Top
msg.Parent = frame

local continueBtn = Instance.new("TextButton")
continueBtn.Size = UDim2.new(0, 360, 0, 40)
continueBtn.Position = UDim2.new(0, 20, 0, 195)
continueBtn.BackgroundColor3 = Color3.fromRGB(0, 210, 210)
continueBtn.BorderSizePixel = 0
continueBtn.Text = "CONTINUE"
continueBtn.TextColor3 = Color3.fromRGB(0, 0, 0)
continueBtn.Font = Enum.Font.GothamBold
continueBtn.TextSize = 15
continueBtn.Parent = frame

local contCorner = Instance.new("UICorner")
contCorner.CornerRadius = UDim.new(0, 4)
contCorner.Parent = continueBtn

continueBtn.MouseButton1Click:Connect(function()
    -- Copy to clipboard
    if setclipboard then
        pcall(function() setclipboard("https://discord.gg/Kb3GEdsVFV") end)
    end
    
    -- Visual feedback
    continueBtn.Text = "Copied! Loading script..."
    continueBtn.TextColor3 = Color3.fromRGB(0, 100, 0)
    continueBtn.BackgroundColor3 = Color3.fromRGB(200, 255, 200)
    
    task.wait(1) -- Wait 1 second before loading
    popup:Destroy()
    
   
    local ok, Library = pcall(function() return loadstring(game:HttpGet(AIRFLOW_URL, true))() end)
    if not ok or type(Library) ~= "table" then 
        local err = Instance.new("ScreenGui", CoreGui)
        local lbl = Instance.new("TextLabel", err)
        lbl.Size = UDim2.new(1,0,0,50)
        lbl.Text = "[Visuals] Failed to load AirFlow UI: " .. tostring(Library)
        lbl.TextColor3 = Color3.new(1,0,0)
        lbl.BackgroundTransparency = 1
        lbl.Font = Enum.Font.GothamBold
        lbl.TextSize = 20
        return 
    end

    local RunService = game:GetService("RunService")
    local Lighting = game:GetService("Lighting")
    local Camera = workspace.CurrentCamera
    local Drawingnew = Drawing.new
    local Color3fromRGB = Color3.fromRGB
    local Vector3new = Vector3.new
    local Vector2new = Vector2.new
    local mathfloor = math.floor

    local Connections = {}
    local function Track(c) table.insert(Connections, c); return c end

    local Env = { Fullbright=false, NoFog=false, NoShadows=false, NoPostFX=false, ClearWater=false, NoLeaves=false, ForcedTime=-1 }
    local Original = {
        Brightness=Lighting.Brightness, Ambient=Lighting.Ambient, OutdoorAmbient=Lighting.OutdoorAmbient,
        FogEnd=Lighting.FogEnd, GlobalShadows=Lighting.GlobalShadows, ClockTime=Lighting.ClockTime,
        AtmosphereDensity=(Lighting:FindFirstChildOfClass("Atmosphere") and Lighting.Atmosphere.Density) or 0.3,
        WaterColor=workspace.Terrain and workspace.Terrain.WaterColor or Color3.new(),
        WaterTransparency=workspace.Terrain and workspace.Terrain.WaterTransparency or 0.5,
    }

    Track(RunService.RenderStepped:Connect(function()
        pcall(function()
            Lighting.Brightness = Env.Fullbright and 2 or Original.Brightness
            Lighting.Ambient = Env.Fullbright and Color3fromRGB(255,255,255) or Original.Ambient
            Lighting.OutdoorAmbient = Env.Fullbright and Color3fromRGB(255,255,255) or Original.OutdoorAmbient
            local atm = Lighting:FindFirstChildOfClass("Atmosphere")
            if atm then atm.Density = Env.NoFog and 0 or Original.AtmosphereDensity end
            Lighting.FogEnd = Env.NoFog and 1000000 or Original.FogEnd
            Lighting.GlobalShadows = Env.NoShadows and false or Original.GlobalShadows
            Lighting.ClockTime = Env.ForcedTime > -1 and Env.ForcedTime or Original.ClockTime
            if workspace.Terrain then
                workspace.Terrain.WaterColor = Env.ClearWater and Color3fromRGB(255,255,255) or Original.WaterColor
                workspace.Terrain.WaterTransparency = Env.ClearWater and 1 or Original.WaterTransparency
            end
            for _, c in ipairs(Lighting:GetChildren()) do
                if c:IsA("BloomEffect") or c:IsA("BlurEffect") or c:IsA("SunRaysEffect") or c:IsA("ColorCorrectionEffect") then
                    c.Enabled = not Env.NoPostFX
                end
            end
        end)
    end))

    local function ToggleLeaves(state)
        for _, obj in ipairs(workspace:GetDescendants()) do
            if obj.Name == "Leaves" or obj.Name == "Fern" then
                if obj:IsA("MeshPart") or obj:IsA("Model") then pcall(function() obj.Transparency = state and 1 or 0 end) end
            end
        end
    end

    local PosCache, PosCacheTimes = {}, {}
    local function FastPos(model)
        if not model then return nil end
        local now = tick()
        local c = PosCache[model]
        if c and (now - (PosCacheTimes[model] or 0)) < 2 and c.Parent == model.Parent then return c.Position end
        local pos
        local ok, pivot = pcall(function() return model:GetPivot().Position end)
        if ok and pivot then pos = pivot
        elseif model.PrimaryPart then pos = model.PrimaryPart.Position
        else local part = model:FindFirstChildWhichIsA("BasePart"); pos = part and part.Position end
        if pos then PosCache[model] = { Position = pos, Parent = model.Parent }; PosCacheTimes[model] = now end
        return pos
    end

    local function CharPos(char)
        if not char then return nil end
        for _, n in ipairs({"HumanoidRootPart","UpperTorso","LowerTorso","Head","FustBodyCollider"}) do
            local p = char:FindFirstChild(n)
            if p and p:IsA("BasePart") then return p.Position end
        end
        return nil
    end

    local ChamsFolder = Instance.new("Folder", (gethui and gethui()) or CoreGui)

    local function UpdateHighlight(hl, enabled, color, outline)
        if not hl then return end
        hl.Enabled = enabled
        if enabled then
            hl.FillColor = color
            hl.OutlineColor = outline and Color3fromRGB(0,0,0) or color
            hl.OutlineTransparency = outline and 0 or 1
            hl.FillTransparency = 0.5
        end
    end

    local function CreateDraw()
        local d = {
            box = Drawingnew("Square"), name = Drawingnew("Text"), dist = Drawingnew("Text"),
            weapon = Drawingnew("Text"), healthBar = Drawingnew("Line"), healthBarOutline = Drawingnew("Line"),
            cham = Instance.new("Highlight", ChamsFolder)
        }
        d.box.Thickness = 1; d.box.Outline = true; d.box.Filled = false
        d.name.Center = true; d.name.Outline = true; d.name.Font = 2
        d.dist.Center = true; d.dist.Outline = true; d.dist.Font = 2
        d.weapon.Center = true; d.weapon.Outline = true; d.weapon.Font = 2
        d.healthBar.Thickness = 1; d.healthBarOutline.Thickness = 3
        return d
    end

    local function HideDraw(d)
        if not d then return end
        d.box.Visible = false; d.name.Visible = false; d.dist.Visible = false
        d.weapon.Visible = false; d.healthBar.Visible = false; d.healthBarOutline.Visible = false
        d.cham.Enabled = false
    end

    local function DestroyDraw(d)
        if not d then return end
        pcall(function() d.box:Remove() end); pcall(function() d.name:Remove() end)
        pcall(function() d.dist:Remove() end); pcall(function() d.weapon:Remove() end)
        pcall(function() d.healthBar:Remove() end); pcall(function() d.healthBarOutline:Remove() end)
        pcall(function() d.cham:Destroy() end)
    end

    local function ComputeBox(pos, heightStuds)
        local h = heightStuds or 3
        local top = Camera:WorldToViewportPoint(pos + Vector3new(0, h/2, 0))
        local bottom = Camera:WorldToViewportPoint(pos - Vector3new(0, h/2, 0))
        if top.Z <= 0 or bottom.Z <= 0 then return nil end
        local height = math.abs(bottom.Y - top.Y)
        if height < 1 then height = 30 end
        local width = height / 2
        if width < 1 then width = 15 end
        return Vector2new(top.X - width/2, top.Y), Vector2new(width, height)
    end

    local ESP = { Master=true, MaxDistance=600, FontSize=13, DrawBox=false, DrawName=true, DrawDistance=true, DrawChams=false,
        ShowSulfurNode=false, ShowMetalNode=false, ShowStoneNode=false, ShowTree=false,
        ShowHemp=false, ShowMushroom=false, ShowWoodPile=false, ShowStonePile=false,
        ShowSulfurOrePile=false, ShowMetalOrePile=false, ShowBerryBush=false, ShowCarrotPlant=false, ShowPotatoPlant=false,
        ShowLootCrate=false, ShowLootBarrel=false, ShowMilitaryCrate=false, ShowAirdrops=false }

    local Colors = { Sulfur=Color3fromRGB(255,255,100), Metal=Color3fromRGB(180,180,200), Stone=Color3fromRGB(200,140,90),
        Wood=Color3fromRGB(120,220,130), Hemp=Color3fromRGB(200,255,120), Mushroom=Color3fromRGB(255,170,220),
        Berry=Color3fromRGB(255,100,160), Carrot=Color3fromRGB(255,150,60), Potato=Color3fromRGB(230,200,120),
        Loot=Color3fromRGB(255,90,255), Military=Color3fromRGB(255,60,60), Airdrop=Color3fromRGB(255,240,100) }

    local P = { Enabled=false, MaxDistance=0, FontSize=13, Box=true, BoxColor=Color3fromRGB(255,60,60),
        Name=true, NameColor=Color3fromRGB(255,255,255), Distance=true, DistanceColor=Color3fromRGB(255,255,255),
        HealthBar=true, HealthBarSize=3, Chams=false, ChamColor=Color3fromRGB(255,60,60),
        SleeperEnabled=false, SleeperMaxDistance=0, SleeperFontSize=13, SleeperBox=true, SleeperName=true,
        SleeperDistance=true, SleeperChams=false, SleeperColor=Color3fromRGB(160,160,255) }

    local T = { Vehicles=false, VehMaxDist=0, VehFontSize=13, VehBox=true, VehName=true, VehDist=true, VehChams=false, VehColor=Color3fromRGB(0,200,255),
        AI=false, AIMaxDist=0, AIFontSize=13, AIBox=true, AIName=true, AIDist=true, AIChams=false, AIColor=Color3fromRGB(255,60,60),
        AIFilterGuards=true, AIFilterScavengers=true, AIFilterAnimals=true }

    local D = { Enabled=false, MaxDistance=1000, FontSize=13, Box=true, Name=true, Chams=true,
        ShowTC=true, ShowBoxes=true, ShowFurnaces=true, ShowWorkbenches=true, ShowTraps=true, ShowOther=false,
        ColorEnemy=Color3fromRGB(255,60,60), ColorOwn=Color3fromRGB(60,255,60) }

    local ResourceDraws = {}
    local ResourceFilters = {
        Nodes = {
            { match="SulfurNode", tag="Sulfur", color=Colors.Sulfur, key="ShowSulfurNode" },
            { match="MetalNode", tag="Metal", color=Colors.Metal, key="ShowMetalNode" },
            { match="StoneNode", tag="Stone", color=Colors.Stone, key="ShowStoneNode" },
            { match="Tree", tag="Wood", color=Colors.Wood, key="ShowTree" },
        },
        Pickups = {
            { match="Hemp", tag="Hemp", color=Colors.Hemp, key="ShowHemp" },
            { match="Mushroom", tag="Mushroom", color=Colors.Mushroom, key="ShowMushroom" },
            { match="WoodPile", tag="Wood", color=Colors.Wood, key="ShowWoodPile" },
            { match="StonePile", tag="Stone", color=Colors.Stone, key="ShowStonePile" },
            { match="SulfurOrePile", tag="Sulfur", color=Colors.Sulfur, key="ShowSulfurOrePile" },
            { match="MetalOrePile", tag="Metal", color=Colors.Metal, key="ShowMetalOrePile" },
            { match="BerryBush", tag="Berry", color=Colors.Berry, key="ShowBerryBush" },
            { match="CarrotPlant", tag="Carrot", color=Colors.Carrot, key="ShowCarrotPlant" },
            { match="PotatoPlant", tag="Potato", color=Colors.Potato, key="ShowPotatoPlant" },
        },
        Loot = {
            { match="LootCrate", tag="Crate", color=Colors.Loot, key="ShowLootCrate" },
            { match="LootBarrel", tag="Barrel", color=Colors.Loot, key="ShowLootBarrel" },
            { match="MilitaryCrate", tag="Military", color=Colors.Military, key="ShowMilitaryCrate" },
        },
        Airdrops = { { match="", tag="Airdrop", color=Colors.Airdrop, key="ShowAirdrops" } },
    }

    local resourceAccum = 0
    Track(RunService.RenderStepped:Connect(function(dt)
        resourceAccum = resourceAccum + dt
        if resourceAccum < 0.066 then return end
        resourceAccum = 0
        local char = LocalPlayer.Character
        if not ESP.Master or not char or not char:FindFirstChild("HumanoidRootPart") then
            for _, d in pairs(ResourceDraws) do HideDraw(d) end
            return
        end
        local myPos = char.HumanoidRootPart.Position
        local seen = {}
        local function Process(path, list)
            local folder = workspace
            for _, n in ipairs(path) do folder = folder and folder:FindFirstChild(n) end
            if not folder then return end
            for _, obj in ipairs(folder:GetChildren()) do
                for _, rule in ipairs(list) do
                    if ESP[rule.key] and (rule.match == "" or obj.Name:find(rule.match)) then
                        local pos = FastPos(obj)
                        if pos and (myPos - pos).Magnitude <= ESP.MaxDistance then
                            seen[obj] = true
                            if not ResourceDraws[obj] then ResourceDraws[obj] = CreateDraw() end
                            local d = ResourceDraws[obj]
                            local sp, onScreen = Camera:WorldToViewportPoint(pos)
                            if onScreen then
                                local boxPos, boxSize = ComputeBox(pos, 3)
                                if boxPos then
                                    d.box.Size = boxSize; d.box.Position = boxPos
                                    d.box.Color = rule.color; d.box.Visible = ESP.DrawBox
                                    d.name.Text = rule.tag; d.name.Size = ESP.FontSize
                                    d.name.Position = Vector2new(sp.X, boxPos.Y - 18)
                                    d.name.Color = rule.color; d.name.Visible = ESP.DrawName
                                    d.dist.Text = "[" .. mathfloor((myPos-pos).Magnitude) .. "m]"
                                    d.dist.Size = ESP.FontSize - 1
                                    d.dist.Position = Vector2new(sp.X, boxPos.Y + boxSize.Y + 2)
                                    d.dist.Color = rule.color; d.dist.Visible = ESP.DrawDistance
                                    d.weapon.Visible = false
                                    d.healthBar.Visible = false; d.healthBarOutline.Visible = false
                                    d.cham.Adornee = obj
                                    UpdateHighlight(d.cham, ESP.DrawChams, rule.color, true)
                                end
                            else HideDraw(d) end
                        end
                        break
                    end
                end
            end
        end
        Process({"Nodes"}, ResourceFilters.Nodes); Process({"Pickups"}, ResourceFilters.Pickups)
        Process({"Loot"}, ResourceFilters.Loot); Process({"Airdrops"}, ResourceFilters.Airdrops)
        for obj, d in pairs(ResourceDraws) do
            if not seen[obj] then HideDraw(d); if not obj.Parent then DestroyDraw(d); ResourceDraws[obj] = nil end end
        end
    end))

    local PlayerDraws, SleeperDraws = {}, {}
    for _, plr in ipairs(Players:GetPlayers()) do
        if plr ~= LocalPlayer then PlayerDraws[plr] = CreateDraw() end
    end
    Track(Players.PlayerAdded:Connect(function(plr) if plr ~= LocalPlayer then PlayerDraws[plr] = CreateDraw() end end))
    Track(Players.PlayerRemoving:Connect(function(plr)
        if PlayerDraws[plr] then DestroyDraw(PlayerDraws[plr]); PlayerDraws[plr] = nil end
    end))

    Track(RunService.RenderStepped:Connect(function()
        local char = LocalPlayer.Character
        if not char or not char:FindFirstChild("HumanoidRootPart") then
            for _, d in pairs(PlayerDraws) do HideDraw(d) end
            for _, d in pairs(SleeperDraws) do HideDraw(d) end
            return
        end
        local localRoot = char.HumanoidRootPart
        if not P.Enabled then
            for _, d in pairs(PlayerDraws) do HideDraw(d) end
        else
            for player, d in pairs(PlayerDraws) do
                local eChar = player.Character
                local visible = false
                if eChar and player:GetAttribute("Alive") == true and player:GetAttribute("Dead") ~= true then
                    local pos = CharPos(eChar)
                    if pos then
                        local dist = (localRoot.Position - pos).Magnitude
                        if P.MaxDistance == 0 or dist <= P.MaxDistance then
                            local sp, onScreen = Camera:WorldToViewportPoint(pos)
                            if onScreen then
                                local boxPos, boxSize = ComputeBox(pos, 5.5)
                                if boxPos then
                                    visible = true
                                    d.box.Size = boxSize; d.box.Position = boxPos
                                    d.box.Color = P.BoxColor; d.box.Visible = P.Box
                                    d.name.Text = player.Name; d.name.Size = P.FontSize
                                    d.name.Position = Vector2new(sp.X, boxPos.Y - 18)
                                    d.name.Color = P.NameColor; d.name.Visible = P.Name
                                    d.dist.Text = "[" .. mathfloor(dist) .. "m]"; d.dist.Size = P.FontSize - 1
                                    d.dist.Position = Vector2new(sp.X, boxPos.Y + boxSize.Y + 2)
                                    d.dist.Color = P.DistanceColor; d.dist.Visible = P.Distance
                                    local hum = eChar:FindFirstChildOfClass("Humanoid")
                                    if hum and P.HealthBar then
                                        local hp = math.clamp(hum.Health/hum.MaxHealth, 0, 1)
                                        d.healthBar.From = Vector2new(boxPos.X - 5, boxPos.Y + boxSize.Y*(1-hp))
                                        d.healthBar.To = Vector2new(boxPos.X - 5, boxPos.Y + boxSize.Y)
                                        d.healthBar.Color = Color3fromRGB(mathfloor(255*(1-hp)), mathfloor(255*hp), 0)
                                        d.healthBar.Thickness = P.HealthBarSize
                                        d.healthBar.Visible = true
                                        d.healthBarOutline.From = Vector2new(boxPos.X - 5, boxPos.Y - 1)
                                        d.healthBarOutline.To = Vector2new(boxPos.X - 5, boxPos.Y + boxSize.Y + 1)
                                        d.healthBarOutline.Visible = true
                                    else
                                        d.healthBar.Visible = false; d.healthBarOutline.Visible = false
                                    end
                                    d.weapon.Visible = false
                                    d.cham.Adornee = eChar
                                    UpdateHighlight(d.cham, P.Chams, P.ChamColor, true)
                                end
                            end
                        end
                    end
                end
                if not visible then HideDraw(d) end
            end
        end

        if not P.SleeperEnabled then
            for _, d in pairs(SleeperDraws) do HideDraw(d) end
        else
            local sf = workspace:FindFirstChild("Sleepers")
            local seen = {}
            if sf then
                for _, sleeper in ipairs(sf:GetChildren()) do
                    local pos = CharPos(sleeper)
                    if pos and (P.SleeperMaxDistance == 0 or (localRoot.Position - pos).Magnitude <= P.SleeperMaxDistance) then
                        seen[sleeper] = true
                        if not SleeperDraws[sleeper] then SleeperDraws[sleeper] = CreateDraw() end
                        local d = SleeperDraws[sleeper]
                        local sp, onScreen = Camera:WorldToViewportPoint(pos)
                        if onScreen then
                            local boxPos, boxSize = ComputeBox(pos, 5.5)
                            if boxPos then
                                d.box.Size = boxSize; d.box.Position = boxPos
                                d.box.Color = P.SleeperColor; d.box.Visible = P.SleeperBox
                                d.name.Text = sleeper.Name; d.name.Size = P.SleeperFontSize
                                d.name.Position = Vector2new(sp.X, boxPos.Y - 18)
                                d.name.Color = P.SleeperColor; d.name.Visible = P.SleeperName
                                d.dist.Text = "[" .. mathfloor((localRoot.Position-pos).Magnitude) .. "m]"
                                d.dist.Size = P.SleeperFontSize - 1
                                d.dist.Position = Vector2new(sp.X, boxPos.Y + boxSize.Y + 2)
                                d.dist.Color = P.SleeperColor; d.dist.Visible = P.SleeperDistance
                                d.weapon.Visible = false
                                d.healthBar.Visible = false; d.healthBarOutline.Visible = false
                                d.cham.Adornee = sleeper
                                UpdateHighlight(d.cham, P.SleeperChams, P.SleeperColor, true)
                            end
                        else HideDraw(d) end
                    end
                end
            end
            for s, d in pairs(SleeperDraws) do
                if not seen[s] then HideDraw(d); if not s.Parent then DestroyDraw(d); SleeperDraws[s] = nil end end
            end
        end
    end))

    local VehicleDraws = {}
    local vehAccum = 0
    Track(RunService.RenderStepped:Connect(function(dt)
        if not T.Vehicles then
            for _, d in pairs(VehicleDraws) do HideDraw(d) end
            return
        end
        vehAccum = vehAccum + dt
        if vehAccum < 0.05 then return end
        vehAccum = 0
        local char = LocalPlayer.Character
        if not char or not char:FindFirstChild("HumanoidRootPart") then return end
        local myPos = char.HumanoidRootPart.Position
        local seen = {}
        for _, obj in ipairs(workspace:GetDescendants()) do
            if obj:IsA("VehicleSeat") and obj.Parent and obj.Parent:IsA("Model") then
                local model = obj.Parent
                local pos = FastPos(model)
                if pos and (T.VehMaxDist == 0 or (myPos - pos).Magnitude <= T.VehMaxDist) then
                    seen[model] = true
                    if not VehicleDraws[model] then VehicleDraws[model] = CreateDraw() end
                    local d = VehicleDraws[model]
                    local sp, onScreen = Camera:WorldToViewportPoint(pos)
                    if onScreen then
                        local boxPos, boxSize = ComputeBox(pos, 4)
                        if boxPos then
                            d.box.Size = boxSize; d.box.Position = boxPos
                            d.box.Color = T.VehColor; d.box.Visible = T.VehBox
                            d.name.Text = model.Name; d.name.Size = T.VehFontSize
                            d.name.Position = Vector2new(sp.X, boxPos.Y - 18)
                            d.name.Color = T.VehColor; d.name.Visible = T.VehName
                            d.dist.Text = "[" .. mathfloor((myPos-pos).Magnitude) .. "m]"
                            d.dist.Size = T.VehFontSize - 1
                            d.dist.Position = Vector2new(sp.X, boxPos.Y + boxSize.Y + 2)
                            d.dist.Color = T.VehColor; d.dist.Visible = T.VehDist
                            d.weapon.Visible = false
                            d.healthBar.Visible = false; d.healthBarOutline.Visible = false
                            d.cham.Adornee = model
                            UpdateHighlight(d.cham, T.VehChams, T.VehColor, true)
                        end
                    else HideDraw(d) end
                end
            end
        end
        for model, d in pairs(VehicleDraws) do
            if not seen[model] then HideDraw(d); if not model.Parent then DestroyDraw(d); VehicleDraws[model] = nil end end
        end
    end))

    local AIDraws = {}
    local aiAccum = 0
    Track(RunService.RenderStepped:Connect(function(dt)
        if not T.AI then
            for _, d in pairs(AIDraws) do HideDraw(d) end
            return
        end
        aiAccum = aiAccum + dt
        if aiAccum < 0.05 then return end
        aiAccum = 0
        local char = LocalPlayer.Character
        if not char or not char:FindFirstChild("HumanoidRootPart") then return end
        local myPos = char.HumanoidRootPart.Position
        local seen = {}
        local folders = {workspace:FindFirstChild("Npcs"), workspace:FindFirstChild("Animals")}
        for _, folder in ipairs(folders) do
            if folder then
                for _, model in ipairs(folder:GetChildren()) do
                    local hum = model:FindFirstChildOfClass("Humanoid")
                    if hum and hum.Health > 0 and model:GetAttribute("Dead") ~= true then
                        local kind = model:GetAttribute("NpcKind") or "Animal"
                        local species = model:GetAttribute("Species")
                        local isScav = model:GetAttribute("Scavenger") == true
                        local shouldShow = false
                        local dName = model.Name
                        if species and T.AIFilterAnimals then shouldShow = true; dName = species
                        elseif kind == "guard" and isScav and T.AIFilterScavengers then shouldShow = true; dName = "Scavenger"
                        elseif kind == "guard" and not isScav and T.AIFilterGuards then shouldShow = true; dName = "Guard" end
                        if shouldShow then
                            local pos = CharPos(model) or FastPos(model)
                            if pos and (T.AIMaxDist == 0 or (myPos - pos).Magnitude <= T.AIMaxDist) then
                                seen[model] = true
                                if not AIDraws[model] then AIDraws[model] = CreateDraw() end
                                local d = AIDraws[model]
                                local sp, onScreen = Camera:WorldToViewportPoint(pos)
                                if onScreen then
                                    local boxPos, boxSize = ComputeBox(pos, 5.5)
                                    if boxPos then
                                        d.box.Size = boxSize; d.box.Position = boxPos
                                        d.box.Color = T.AIColor; d.box.Visible = T.AIBox
                                        d.name.Text = dName .. " [" .. (model:GetAttribute("State") or "") .. "]"
                                        d.name.Size = T.AIFontSize
                                        d.name.Position = Vector2new(sp.X, boxPos.Y - 18)
                                        d.name.Color = T.AIColor; d.name.Visible = T.AIName
                                        d.dist.Text = "[" .. mathfloor((myPos-pos).Magnitude) .. "m]"
                                        d.dist.Size = T.AIFontSize - 1
                                        d.dist.Position = Vector2new(sp.X, boxPos.Y + boxSize.Y + 2)
                                        d.dist.Color = Color3fromRGB(255,255,255); d.dist.Visible = T.AIDist
                                        d.weapon.Visible = false
                                        d.healthBar.Visible = false; d.healthBarOutline.Visible = false
                                        d.cham.Adornee = model
                                        UpdateHighlight(d.cham, T.AIChams, T.AIColor, true)
                                    end
                                else HideDraw(d) end
                            end
                        end
                    end
                end
            end
        end
        for model, d in pairs(AIDraws) do
            if not seen[model] then HideDraw(d); if not model.Parent then DestroyDraw(d); AIDraws[model] = nil end end
        end
    end))

    local DeployDraws = {}
    local deployAccum = 0
    Track(RunService.RenderStepped:Connect(function(dt)
        if not D.Enabled then
            for _, d in pairs(DeployDraws) do HideDraw(d) end
            return
        end
        deployAccum = deployAccum + dt
        if deployAccum < 0.1 then return end
        deployAccum = 0
        local char = LocalPlayer.Character
        if not char or not char:FindFirstChild("HumanoidRootPart") then return end
        local myPos = char.HumanoidRootPart.Position
        local myOwnerTag = LocalPlayer:GetAttribute("OwnerTag")
        local seen = {}
        local dFolder = workspace:FindFirstChild("Deployables")
        if dFolder then
            for _, model in ipairs(dFolder:GetChildren()) do
                local kind = model:GetAttribute("Kind")
                if kind then
                    local show = false
                    if kind == "tool_cupboard" and D.ShowTC then show = true
                    elseif (kind == "large_box" or kind == "wooden_box" or kind == "shelves" or kind == "bamboo_rack" or kind == "locker") and D.ShowBoxes then show = true
                    elseif (kind == "furnace" or kind == "large_furnace") and D.ShowFurnaces then show = true
                    elseif (kind == "workbench_t1" or kind == "workbench_t2" or kind == "workbench_t3" or kind == "repair_bench" or kind == "skin_bench") and D.ShowWorkbenches then show = true
                    elseif (kind == "wooden_spikes" or kind == "high_stone_wall" or kind == "high_stone_gate" or kind == "wood_barricade") and D.ShowTraps then show = true
                    elseif D.ShowOther then show = true end
                    if show then
                        local pos = FastPos(model)
                        if pos then
                            local dist = (myPos - pos).Magnitude
                            if dist <= D.MaxDistance then
                                seen[model] = true
                                if not DeployDraws[model] then DeployDraws[model] = CreateDraw() end
                                local d = DeployDraws[model]
                                local sp, onScreen = Camera:WorldToViewportPoint(pos)
                                if onScreen then
                                    local ownerTag = model:GetAttribute("OwnerTag")
                                    local isMine = (ownerTag == myOwnerTag)
                                    local color = isMine and D.ColorOwn or D.ColorEnemy
                                    local boxPos, boxSize = ComputeBox(pos, 3)
                                    if boxPos then
                                        d.box.Size = boxSize; d.box.Position = boxPos
                                        d.box.Color = color; d.box.Visible = D.Box
                                        local displayName = kind:gsub("_", " "):upper()
                                        if kind == "tool_cupboard" then displayName = "TC" end
                                        d.name.Text = displayName
                                        d.name.Size = D.FontSize
                                        d.name.Position = Vector2new(sp.X, boxPos.Y - 18)
                                        d.name.Color = color; d.name.Visible = D.Name
                                        d.dist.Visible = false
                                        d.weapon.Visible = false
                                        d.healthBar.Visible = false; d.healthBarOutline.Visible = false
                                        d.cham.Adornee = model
                                        UpdateHighlight(d.cham, D.Chams, color, true)
                                    end
                                else HideDraw(d) end
                            end
                        end
                    end
                end
            end
        end
        for model, d in pairs(DeployDraws) do
            if not seen[model] then HideDraw(d); if not model.Parent then DestroyDraw(d); DeployDraws[model] = nil end end
        end
    end))

    Library:SetTheme({
        Accent=Color3fromRGB(0,210,210), AccentDark=Color3fromRGB(0,50,50), Background=Color3fromRGB(8,9,10),
        Surface=Color3fromRGB(15,18,20), Surface2=Color3fromRGB(22,26,30), Surface3=Color3fromRGB(37,42,50),
        Stroke=Color3fromRGB(45,52,60), StrokeHover=Color3fromRGB(0,210,210), Text=Color3fromRGB(240,245,250),
        Muted=Color3fromRGB(140,150,160), Warning=Color3fromRGB(240,176,108), Success=Color3fromRGB(120,220,160), Error=Color3fromRGB(240,100,100),
    }, true)

    local Window = Library:Window({
        Name="MunkeHub", Title="MunkeHub Keyless", Subtitle="v1.0.1", Keybind="RightShift", Size=UDim2.fromOffset(800,680),
        Home={ Tier="Free", TierIcon="unlock", Welcome="Visuals", Features={ Title="MunkeHub v1.0.1" } },
    })

    local VisTab = Window:Tab({ Name="Resources", Icon="eye" })
    local PlrTab = Window:Tab({ Name="Players", Icon="user" })
    local VehTab = Window:Tab({ Name="Vehicles", Icon="car" })
    local AITab = Window:Tab({ Name="AI / Enemies", Icon="skull" })
    local DepTab = Window:Tab({ Name="Deployables", Icon="box" })
    local WldTab = Window:Tab({ Name="World", Icon="globe" })

    local function AddElements(group, settings, keys)
        local g1 = group:Groupbox({ Name="Visuals", Icon="layout" })
        for _, k in ipairs(keys) do g1:Toggle({ Name=k, Default=settings[k], Callback=function(v) settings[k]=v end }) end
    end

    local RMaster = VisTab:Groupbox({ Name="Master Settings", Icon="power" })
    RMaster:Toggle({ Name="Enable Resource ESP", Default=true, Callback=function(v) ESP.Master=v end })
    RMaster:Slider({ Name="Max Distance", Min=100, Max=3000, Default=600, Suffix="m", Callback=function(v) ESP.MaxDistance=v end })
    RMaster:Slider({ Name="Font Size", Min=8, Max=24, Default=13, Callback=function(v) ESP.FontSize=v end })
    AddElements(RMaster, ESP, {"DrawBox","DrawName","DrawDistance","DrawChams"})

    local RNodes = VisTab:Groupbox({ Name="Nodes", Icon="mountain", Side="Left" })
    RNodes:Toggle({ Name="Sulfur Node", Default=false, Callback=function(v) ESP.ShowSulfurNode=v end })
    RNodes:Toggle({ Name="Metal Node", Default=false, Callback=function(v) ESP.ShowMetalNode=v end })
    RNodes:Toggle({ Name="Stone Node", Default=false, Callback=function(v) ESP.ShowStoneNode=v end })
    RNodes:Toggle({ Name="Tree (Wood)", Default=false, Callback=function(v) ESP.ShowTree=v end })

    local RPickups = VisTab:Groupbox({ Name="Pickups", Icon="package", Side="Left" })
    RPickups:Toggle({ Name="Hemp", Default=false, Callback=function(v) ESP.ShowHemp=v end })
    RPickups:Toggle({ Name="Mushroom", Default=false, Callback=function(v) ESP.ShowMushroom=v end })
    RPickups:Toggle({ Name="Wood Pile", Default=false, Callback=function(v) ESP.ShowWoodPile=v end })
    RPickups:Toggle({ Name="Stone Pile", Default=false, Callback=function(v) ESP.ShowStonePile=v end })
    RPickups:Toggle({ Name="Sulfur Ore", Default=false, Callback=function(v) ESP.ShowSulfurOrePile=v end })
    RPickups:Toggle({ Name="Metal Ore", Default=false, Callback=function(v) ESP.ShowMetalOrePile=v end })
    RPickups:Toggle({ Name="Berry Bush", Default=false, Callback=function(v) ESP.ShowBerryBush=v end })
    RPickups:Toggle({ Name="Carrot Plant", Default=false, Callback=function(v) ESP.ShowCarrotPlant=v end })
    RPickups:Toggle({ Name="Potato Plant", Default=false, Callback=function(v) ESP.ShowPotatoPlant=v end })

    local RLoot = VisTab:Groupbox({ Name="Loot", Icon="box", Side="Right" })
    RLoot:Toggle({ Name="Loot Crate", Default=false, Callback=function(v) ESP.ShowLootCrate=v end })
    RLoot:Toggle({ Name="Loot Barrel", Default=false, Callback=function(v) ESP.ShowLootBarrel=v end })
    RLoot:Toggle({ Name="Military Crate", Default=false, Callback=function(v) ESP.ShowMilitaryCrate=v end })
    RLoot:Toggle({ Name="Airdrops", Default=false, Callback=function(v) ESP.ShowAirdrops=v end })

    local PMaster = PlrTab:Groupbox({ Name="Master Settings", Icon="user" })
    PMaster:Toggle({ Name="Enable Player ESP", Default=false, Callback=function(v) P.Enabled=v end })
    PMaster:Slider({ Name="Max Distance (0 = inf)", Min=0, Max=3000, Default=0, Suffix="m", Callback=function(v) P.MaxDistance=v end })
    PMaster:Slider({ Name="Font Size", Min=8, Max=24, Default=13, Callback=function(v) P.FontSize=v end })
    AddElements(PMaster, P, {"Box","Name","Distance","HealthBar","Chams"})
    PMaster:ColorPicker({ Name="Cham Color", Default=P.ChamColor, Callback=function(v) P.ChamColor=v end })

    local PInfo = PlrTab:Groupbox({ Name="Colors", Icon="palette", Side="Left" })
    PInfo:ColorPicker({ Name="Box Color", Default=P.BoxColor, Callback=function(v) P.BoxColor=v end })
    PInfo:ColorPicker({ Name="Name Color", Default=P.NameColor, Callback=function(v) P.NameColor=v end })
    PInfo:ColorPicker({ Name="Distance Color", Default=P.DistanceColor, Callback=function(v) P.DistanceColor=v end })

    local SMaster = PlrTab:Groupbox({ Name="Sleeper Settings", Icon="moon" })
    SMaster:Toggle({ Name="Enable Sleeper ESP", Default=false, Callback=function(v) P.SleeperEnabled=v end })
    SMaster:Slider({ Name="Max Distance (0 = inf)", Min=0, Max=3000, Default=0, Suffix="m", Callback=function(v) P.SleeperMaxDistance=v end })
    SMaster:Slider({ Name="Font Size", Min=8, Max=24, Default=13, Callback=function(v) P.SleeperFontSize=v end })
    AddElements(SMaster, P, {"SleeperBox","SleeperName","SleeperDistance","SleeperChams"})
    SMaster:ColorPicker({ Name="Sleeper Color", Default=P.SleeperColor, Callback=function(v) P.SleeperColor=v end })

    local VMaster = VehTab:Groupbox({ Name="Master Settings", Icon="car" })
    VMaster:Toggle({ Name="Enable Vehicle ESP", Default=false, Callback=function(v) T.Vehicles=v end })
    VMaster:Slider({ Name="Max Distance (0 = inf)", Min=0, Max=3000, Default=0, Suffix="m", Callback=function(v) T.VehMaxDist=v end })
    VMaster:Slider({ Name="Font Size", Min=8, Max=24, Default=13, Callback=function(v) T.VehFontSize=v end })
    AddElements(VMaster, T, {"VehBox","VehName","VehDist","VehChams"})
    VMaster:ColorPicker({ Name="Vehicle Color", Default=T.VehColor, Callback=function(v) T.VehColor=v end })

    local AMaster = AITab:Groupbox({ Name="Master Settings", Icon="skull" })
    AMaster:Toggle({ Name="Enable AI ESP", Default=false, Callback=function(v) T.AI=v end })
    AMaster:Slider({ Name="Max Distance (0 = inf)", Min=0, Max=3000, Default=0, Suffix="m", Callback=function(v) T.AIMaxDist=v end })
    AMaster:Slider({ Name="Font Size", Min=8, Max=24, Default=13, Callback=function(v) T.AIFontSize=v end })
    AddElements(AMaster, T, {"AIBox","AIName","AIDist","AIChams"})
    AMaster:ColorPicker({ Name="AI Color", Default=T.AIColor, Callback=function(v) T.AIColor=v end })

    local AFilters = AITab:Groupbox({ Name="Filters", Icon="filter", Side="Left" })
    AFilters:Toggle({ Name="Guards", Default=true, Callback=function(v) T.AIFilterGuards=v end })
    AFilters:Toggle({ Name="Scavengers", Default=true, Callback=function(v) T.AIFilterScavengers=v end })
    AFilters:Toggle({ Name="Animals", Default=true, Callback=function(v) T.AIFilterAnimals=v end })

    local DMaster = DepTab:Groupbox({ Name="Master Settings", Icon="box" })
    DMaster:Toggle({ Name="Enable Deployable ESP", Default=false, Callback=function(v) D.Enabled=v end })
    DMaster:Slider({ Name="Max Distance", Min=100, Max=3000, Default=1000, Suffix="m", Callback=function(v) D.MaxDistance=v end })
    DMaster:Slider({ Name="Font Size", Min=8, Max=24, Default=13, Callback=function(v) D.FontSize=v end })
    AddElements(DMaster, D, {"Box","Name","Chams"})

    local DFilters = DepTab:Groupbox({ Name="Filters", Icon="filter", Side="Left" })
    DFilters:Toggle({ Name="Tool Cupboards", Default=true, Callback=function(v) D.ShowTC=v end })
    DFilters:Toggle({ Name="Loot Boxes / Shelves", Default=true, Callback=function(v) D.ShowBoxes=v end })
    DFilters:Toggle({ Name="Furnaces", Default=true, Callback=function(v) D.ShowFurnaces=v end })
    DFilters:Toggle({ Name="Workbenches / Repair", Default=true, Callback=function(v) D.ShowWorkbenches=v end })
    DFilters:Toggle({ Name="Walls / Traps / Gates", Default=true, Callback=function(v) D.ShowTraps=v end })
    DFilters:Toggle({ Name="Other (Beds, Lights)", Default=false, Callback=function(v) D.ShowOther=v end })

    local DColors = DepTab:Groupbox({ Name="Colors", Icon="palette", Side="Right" })
    DColors:ColorPicker({ Name="Enemy Color", Default=D.ColorEnemy, Callback=function(v) D.ColorEnemy=v end })
    DColors:ColorPicker({ Name="Your Base Color", Default=D.ColorOwn, Callback=function(v) D.ColorOwn=v end })

    local WMaster = WldTab:Groupbox({ Name="World Modifiers", Icon="sun" })
    WMaster:Toggle({ Name="Fullbright", Default=false, Callback=function(v) Env.Fullbright=v end })
    WMaster:Toggle({ Name="No Fog", Default=false, Callback=function(v) Env.NoFog=v end })
    WMaster:Toggle({ Name="No Shadows", Default=false, Callback=function(v) Env.NoShadows=v end })
    WMaster:Toggle({ Name="Disable Post-FX", Default=false, Callback=function(v) Env.NoPostFX=v end })
    WMaster:Toggle({ Name="Clear Water", Default=false, Callback=function(v) Env.ClearWater=v end })
    WMaster:Toggle({ Name="Remove Foliage", Default=false, Callback=function(v) Env.NoLeaves=v; ToggleLeaves(v) end })
    WMaster:Slider({ Name="Force Time (0-24, 12=off)", Min=0, Max=24, Default=12, Callback=function(v) Env.ForcedTime=(v==12) and -1 or v end })

    local UGroup = WldTab:Groupbox({ Name="Unload", Icon="log-out" })
    UGroup:Button({
        Name = "UNLOAD SCRIPT",
        Callback = function()
            for _, c in ipairs(Connections) do pcall(function() c:Disconnect() end) end
            Connections = {}
            for _, d in pairs(ResourceDraws) do DestroyDraw(d) end
            for _, d in pairs(PlayerDraws) do DestroyDraw(d) end
            for _, d in pairs(SleeperDraws) do DestroyDraw(d) end
            for _, d in pairs(VehicleDraws) do DestroyDraw(d) end
            for _, d in pairs(AIDraws) do DestroyDraw(d) end
            for _, d in pairs(DeployDraws) do DestroyDraw(d) end
            pcall(function()
                Lighting.Brightness = Original.Brightness
                Lighting.Ambient = Original.Ambient
                Lighting.OutdoorAmbient = Original.OutdoorAmbient
                Lighting.FogEnd = Original.FogEnd
                Lighting.GlobalShadows = Original.GlobalShadows
                Lighting.ClockTime = Original.ClockTime
                local atm = Lighting:FindFirstChildOfClass("Atmosphere")
                if atm then atm.Density = Original.AtmosphereDensity end
                if workspace.Terrain then
                    workspace.Terrain.WaterColor = Original.WaterColor
                    workspace.Terrain.WaterTransparency = Original.WaterTransparency
                end
            end)
            pcall(function() Library:Unload() end)
        end,
    })

    print("[MunkeHub v1.0.1] Loaded.")
end)

Similar Scripts

Anime Adventures Script AJ Hub: Auto Play, Event Farm

No Key • 3 hours ago

Anime Dice Script Senior Hub: Auto Roll, Auto Redeem Codes

No Key • 3 hours ago

REALISTIC HOME DEFENSE Script Sportsclub: Silent Aim, ESP

Key System • 3 hours ago

99 Nights in the Forest Script Rivo Hub: Kill Aura, Speed

Key System • 3 hours ago

+1 Venom Evolution Script GoldHub: Auto Farm, Kill Aura

Key System • 3 hours ago