NebulaHub
Key RequiredUniversal

NebulaHub

Universal Scriptoluwatoyinowolabi09oluwatoyinowolabi09 5.5K views 244 executesUpdated Sep 2, 2025
Unrated
00
Lua Script•201 lines (6910 chars)
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local TeleportService = game:GetService("TeleportService")

-- Create ScreenGui
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "NebulaHub"
ScreenGui.Parent = PlayerGui
ScreenGui.ResetOnSpawn = false -- stays after reset

-- Main Frame
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 500, 0, 400)
MainFrame.Position = UDim2.new(0.5, -250, 0.5, -200)
MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
MainFrame.BorderSizePixel = 0
MainFrame.Parent = ScreenGui
MainFrame.Active = true
MainFrame.Draggable = true

-- Title
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, 0, 0, 50)
Title.Position = UDim2.new(0, 0, 0, 0)
Title.BackgroundColor3 = Color3.fromRGB(50,50,50)
Title.Text = "NebulaHub"
Title.TextColor3 = Color3.fromRGB(255,255,255)
Title.Font = Enum.Font.SourceSansBold
Title.TextSize = 28
Title.Parent = MainFrame

-- Utility function to create buttons
local function CreateButton(parent, text, pos, callback)
    local btn = Instance.new("TextButton")
    btn.Size = UDim2.new(0, 200, 0, 40)
    btn.Position = pos
    btn.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
    btn.Text = text
    btn.TextColor3 = Color3.fromRGB(255,255,255)
    btn.Font = Enum.Font.SourceSans
    btn.TextSize = 18
    btn.Parent = parent
    btn.MouseButton1Click:Connect(callback)
    return btn
end

-- Utility function to create sliders
local function CreateSlider(parent, text, pos, min, max, default, callback)
    local slider = Instance.new("TextButton")
    slider.Size = UDim2.new(0, 200, 0, 40)
    slider.Position = pos
    slider.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
    slider.Text = text .. ": " .. tostring(default)
    slider.TextColor3 = Color3.fromRGB(255,255,255)
    slider.Font = Enum.Font.SourceSans
    slider.TextSize = 18
    slider.Parent = parent

    local value = default
    slider.MouseButton1Click:Connect(function()
        value = value + 5
        if value > max then value = min end
        slider.Text = text .. ": " .. tostring(value)
        callback(value)
    end)
end

-- --- MAIN TAB BUTTONS ---

-- Reset Character
CreateButton(MainFrame, "Reset Character", UDim2.new(0, 20, 0, 70), function()
    if LocalPlayer.Character then
        LocalPlayer.Character:BreakJoints()
    end
end)

-- AFK Kill Farm
local AFKFarm = false
CreateButton(MainFrame, "Toggle AFK Kill Farm", UDim2.new(0, 20, 0, 130), function()
    AFKFarm = not AFKFarm
    if AFKFarm then
        spawn(function()
            while AFKFarm do
                task.wait(0.2)
                local char = LocalPlayer.Character
                if char and char:FindFirstChild("HumanoidRootPart") then
                    local HRP = char.HumanoidRootPart
                    HRP.CFrame = CFrame.new(371, 440, 443)
                    HRP.Anchored = true
                end
                -- Fire punch
                local success, punchRemote = pcall(function()
                    return ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("punch")
                end)
                if success and punchRemote then
                    pcall(function() punchRemote:FireServer() end)
                end
            end
        end)
    else
        local char = LocalPlayer.Character
        if char and char:FindFirstChild("HumanoidRootPart") then
            char.HumanoidRootPart.Anchored = false
        end
    end
end)

-- Optimization toggle
local Optimization = false
CreateButton(MainFrame, "Toggle Optimization", UDim2.new(0, 20, 0, 190), function()
    Optimization = not Optimization
    if Optimization then
        for _, obj in pairs(workspace:GetDescendants()) do
            if obj:IsA("Part") or obj:IsA("MeshPart") or obj:IsA("UnionOperation") then
                local name = string.lower(obj.Name)
                if name:find("tree") or name:find("wall") or name:find("rock") or name:find("mountain") then
                    pcall(function() obj:Destroy() end)
                end
            end
        end
    else
        local notif = Instance.new("TextLabel")
        notif.Size = UDim2.new(0, 300, 0, 50)
        notif.Position = UDim2.new(0.5, -150, 0.1, 0)
        notif.BackgroundColor3 = Color3.fromRGB(40,40,40)
        notif.TextColor3 = Color3.fromRGB(255,255,255)
        notif.Text = "Rejoin to restore removed objects."
        notif.Font = Enum.Font.SourceSansBold
        notif.TextSize = 20
        notif.Parent = ScreenGui
        task.delay(3,function() notif:Destroy() end)
    end
end)

-- Set Respawn Point
local RespawnPoint = nil
CreateButton(MainFrame, "Set Respawn Point", UDim2.new(0, 20, 0, 250), function()
    local char = LocalPlayer.Character
    if char and char:FindFirstChild("HumanoidRootPart") then
        RespawnPoint = char.HumanoidRootPart.CFrame
    end
end)

-- Auto teleport to respawn
LocalPlayer.CharacterAdded:Connect(function(char)
    task.wait(1)
    if RespawnPoint then
        pcall(function()
            char:WaitForChild("HumanoidRootPart").CFrame = RespawnPoint
        end)
    end
    -- Re-apply AFKFarm anchor
    if AFKFarm and char:FindFirstChild("HumanoidRootPart") then
        char.HumanoidRootPart.CFrame = CFrame.new(371,440,443)
        char.HumanoidRootPart.Anchored = true
    end
end)

-- WalkSpeed slider
CreateSlider(MainFrame, "WalkSpeed", UDim2.new(0, 240, 0, 70), 16, 100, 16, function(val)
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.WalkSpeed = val
    end
end)

-- JumpPower slider
CreateSlider(MainFrame, "JumpPower", UDim2.new(0, 240, 0, 130), 50, 300, 50, function(val)
    if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
        LocalPlayer.Character.Humanoid.JumpPower = val
    end
end)

-- Utilities Buttons
CreateButton(MainFrame, "Load Infinite Yield", UDim2.new(0, 240, 0, 190), function()
    pcall(function()
        loadstring(game:HttpGet("https://raw.githubusercontent.com/EdgeIY/infiniteyield/master/source"))()
    end)
end)

CreateButton(MainFrame, "Load CMD-X", UDim2.new(0, 240, 0, 250), function()
    pcall(function()
        loadstring(game:HttpGet("https://raw.githubusercontent.com/CMD-X/CMD-X/master/Source"))()
    end)
end)

-- Auto Leave if S-Class
spawn(function()
    while true do
        task.wait(5)
        local leaderstats = LocalPlayer:FindFirstChild("leaderstats")
        if leaderstats then
            local rank = leaderstats:FindFirstChild("Rank") -- change if different path
            if rank and tostring(rank.Value) == "S" then
                TeleportService:Teleport(game.PlaceId, LocalPlayer)
                break
            end
        end
    end
end)

Features & Information

AFK Kill Farm – Teleports to the farming area with position lock and auto attacks all characters Optimization – Removes trees, walls, rocks, and mountains to boost game performance Set Respawn Point – Choose a custom spawn location; auto-teleports there on respawn WalkSpeed & JumpPower Sliders – Adjust movement speed and jump power dynamically. Utilities – Load Infinite Yield and CMD-X directly from the hub. Auto Leave if S-Class – Automatically leaves the game if your rank is S-Class to protect alt farms. Draggable GUI – Move the hub anywhere on your screen. Persistent GUI – Stays after respawns; never disappears unless manually closed. Safe & Universal – Works with any executor and any Roblox game with minimal risk.

Community Comments (2)

Ensure you have access to the required remotes in ReplicatedStorage for AFK Farm. - Optimization will permanently remove objects until rejoining the game. - Auto Leave triggers when the leaderboard rank reaches "S". - GUI works with any Roblox executor supporting loadstring

F3DDHubF3DDHubSep 28, 2025

Oh that kinda sucks, did 5 hours of research and didnt fin anybody who had a hub called NebulaHub so i used it an di just found this script..

More Scripts for Universal Scripts