Noli void rush controller
Key Required

Noli void rush controller

Forsaken Combatenadla2enadla2 1.5K views 17.6K executesUpdated Aug 31, 2026
Unrated
00
Lua Script•412 lines (10883 chars)
-- noli void rush control
-- made by enadla2

local RunService = game:GetService("RunService")
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")

local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")

local voidrushcontrol = false
local chamsEnabled = false

local Humanoid
local HumanoidRootPart

-- =========================================================
-- COLORS
-- =========================================================

local DARK_PURPLE = Color3.fromRGB(70, 20, 120)
local VIOLET = Color3.fromRGB(138, 43, 226)

-- =========================================================
-- GUI
-- =========================================================

local screenGui = Instance.new("ScreenGui")
screenGui.Name = "NoliVoidRushControl"
screenGui.ResetOnSpawn = false
screenGui.Parent = PlayerGui

-- Main frame
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 150, 0, 105)
mainFrame.Position = UDim2.new(0, 10, 0, 10)
mainFrame.BackgroundColor3 = DARK_PURPLE
mainFrame.BorderSizePixel = 0
mainFrame.Parent = screenGui

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

-- =========================================================
-- TITLE / DRAG AREA
-- =========================================================

local titleBar = Instance.new("TextButton")
titleBar.Name = "TitleBar"
titleBar.Size = UDim2.new(1, 0, 0, 24)
titleBar.Position = UDim2.new(0, 0, 0, 0)
titleBar.BackgroundTransparency = 1
titleBar.Text = "made by enadla2"
titleBar.TextColor3 = Color3.fromRGB(220, 190, 255)
titleBar.Font = Enum.Font.SourceSansBold
titleBar.TextSize = 14
titleBar.AutoButtonColor = false
titleBar.Parent = mainFrame

-- =========================================================
-- VOID RUSH BUTTON
-- =========================================================

local toggleButton = Instance.new("TextButton")
toggleButton.Name = "VoidRush"
toggleButton.Size = UDim2.new(1, -10, 0, 32)
toggleButton.Position = UDim2.new(0, 5, 0, 27)
toggleButton.BackgroundColor3 = DARK_PURPLE
toggleButton.TextColor3 = Color3.fromRGB(255, 255, 255)
toggleButton.Font = Enum.Font.SourceSansBold
toggleButton.TextSize = 16
toggleButton.Text = "Void Rush: OFF"
toggleButton.Parent = mainFrame

local toggleCorner = Instance.new("UICorner")
toggleCorner.CornerRadius = UDim.new(0, 6)
toggleCorner.Parent = toggleButton

-- =========================================================
-- CHAMS BUTTON
-- =========================================================

local chamsButton = Instance.new("TextButton")
chamsButton.Name = "Chams"
chamsButton.Size = UDim2.new(1, -10, 0, 32)
chamsButton.Position = UDim2.new(0, 5, 0, 66)
chamsButton.BackgroundColor3 = DARK_PURPLE
chamsButton.TextColor3 = Color3.fromRGB(255, 255, 255)
chamsButton.Font = Enum.Font.SourceSansBold
chamsButton.TextSize = 16
chamsButton.Text = "Chams: OFF"
chamsButton.Parent = mainFrame

local chamsCorner = Instance.new("UICorner")
chamsCorner.CornerRadius = UDim.new(0, 6)
chamsCorner.Parent = chamsButton

-- =========================================================
-- HIDE BUTTON
-- =========================================================

local hideButton = Instance.new("TextButton")
hideButton.Name = "HideButton"
hideButton.Size = UDim2.new(0, 28, 0, 28)
hideButton.Position = UDim2.new(0, 165, 0, 10)
hideButton.BackgroundColor3 = DARK_PURPLE
hideButton.TextColor3 = Color3.fromRGB(255, 255, 255)
hideButton.Font = Enum.Font.SourceSansBold
hideButton.TextSize = 18
hideButton.Text = "×"
hideButton.Parent = screenGui

local hideCorner = Instance.new("UICorner")
hideCorner.CornerRadius = UDim.new(1, 0)
hideCorner.Parent = hideButton

local guiHidden = false

hideButton.MouseButton1Click:Connect(function()
    guiHidden = not guiHidden
    mainFrame.Visible = not guiHidden
    hideButton.Text = guiHidden and "+" or "×"
end)

-- =========================================================
-- RELIABLE DRAGGING
-- =========================================================

local dragging = false
local dragStart
local startPosition

local function beginDrag(input)
    dragging = true
    dragStart = input.Position
    startPosition = mainFrame.Position
end

titleBar.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1
        or input.UserInputType == Enum.UserInputType.Touch then

        beginDrag(input)
    end
end)

UserInputService.InputChanged:Connect(function(input)
    if not dragging then
        return
    end

    if input.UserInputType == Enum.UserInputType.MouseMovement
        or input.UserInputType == Enum.UserInputType.Touch then

        local delta = input.Position - dragStart

        mainFrame.Position = UDim2.new(
            startPosition.X.Scale,
            startPosition.X.Offset + delta.X,
            startPosition.Y.Scale,
            startPosition.Y.Offset + delta.Y
        )

        hideButton.Position = UDim2.new(
            mainFrame.Position.X.Scale,
            mainFrame.Position.X.Offset + 155,
            mainFrame.Position.Y.Scale,
            mainFrame.Position.Y.Offset + 4
        )
    end
end)

UserInputService.InputEnded:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1
        or input.UserInputType == Enum.UserInputType.Touch then

        dragging = false
    end
end)

-- =========================================================
-- CHARACTER
-- =========================================================

local function setupCharacter(character)
    Humanoid = character:WaitForChild("Humanoid")
    HumanoidRootPart = character:WaitForChild("HumanoidRootPart")
end

if LocalPlayer.Character then
    setupCharacter(LocalPlayer.Character)
end

LocalPlayer.CharacterAdded:Connect(function(character)
    setupCharacter(character)
end)

-- =========================================================
-- VOID RUSH TOGGLE
-- =========================================================

toggleButton.MouseButton1Click:Connect(function()
    voidrushcontrol = not voidrushcontrol

    if voidrushcontrol then
        toggleButton.Text = "Void Rush: ON"
        toggleButton.BackgroundColor3 = VIOLET
    else
        toggleButton.Text = "Void Rush: OFF"
        toggleButton.BackgroundColor3 = DARK_PURPLE
    end
end)

-- =========================================================
-- CHAMS
-- =========================================================

local function removeCham(player)
    local character = player.Character

    if character then
        local highlight = character:FindFirstChild("NoliChams")

        if highlight then
            highlight:Destroy()
        end
    end
end

local function createCham(player, character)
    -- Don't highlight yourself
    if player == LocalPlayer then
        return
    end

    if not chamsEnabled then
        return
    end

    -- Remove an existing one first
    local oldHighlight = character:FindFirstChild("NoliChams")

    if oldHighlight then
        oldHighlight:Destroy()
    end

    local highlight = Instance.new("Highlight")
    highlight.Name = "NoliChams"
    highlight.Adornee = character

    highlight.FillColor = DARK_PURPLE
    highlight.OutlineColor = VIOLET

    highlight.FillTransparency = 0.45
    highlight.OutlineTransparency = 0

    -- Visible through walls
    highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop

    -- Parent directly to the character
    highlight.Parent = character
end

local function setupPlayerChams(player)
    if player == LocalPlayer then
        return
    end

    -- Handle current character
    if player.Character then
        createCham(player, player.Character)
    end

    -- IMPORTANT:
    -- Re-create the chams every time the player respawns
    player.CharacterAdded:Connect(function(character)
        if chamsEnabled then
            task.wait(0.1)
            createCham(player, character)
        end
    end)
end

-- Set up existing players
for _, player in ipairs(Players:GetPlayers()) do
    setupPlayerChams(player)
end

-- Set up players who join later
Players.PlayerAdded:Connect(function(player)
    setupPlayerChams(player)
end)

-- Chams toggle
chamsButton.MouseButton1Click:Connect(function()
    chamsEnabled = not chamsEnabled

    if chamsEnabled then
        chamsButton.Text = "Chams: ON"
        chamsButton.BackgroundColor3 = VIOLET

        for _, player in ipairs(Players:GetPlayers()) do
            if player ~= LocalPlayer and player.Character then
                createCham(player, player.Character)
            end
        end
    else
        chamsButton.Text = "Chams: OFF"
        chamsButton.BackgroundColor3 = DARK_PURPLE

        for _, player in ipairs(Players:GetPlayers()) do
            if player ~= LocalPlayer then
                removeCham(player)
            end
        end
    end
end)

-- =========================================================
-- VOID RUSH OVERRIDE
-- =========================================================

local ORIGINAL_DASH_SPEED = 60

local isOverrideActive = false
local connection

local function startOverride()
    if isOverrideActive then
        return
    end

    if not Humanoid or not HumanoidRootPart then
        return
    end

    isOverrideActive = true

    connection = RunService.RenderStepped:Connect(function()
        if not Humanoid
            or not HumanoidRootPart
            or Humanoid.Health <= 0 then

            return
        end

        Humanoid.WalkSpeed = ORIGINAL_DASH_SPEED
        Humanoid.AutoRotate = false

        local direction = HumanoidRootPart.CFrame.LookVector

        local horizontal = Vector3.new(
            direction.X,
            0,
            direction.Z
        )

        if horizontal.Magnitude > 0 then
            Humanoid:Move(horizontal.Unit)
        end
    end)
end

local function stopOverride()
    if not isOverrideActive then
        return
    end

    isOverrideActive = false

    if connection then
        connection:Disconnect()
        connection = nil
    end

    if Humanoid then
        Humanoid.WalkSpeed = 16
        Humanoid.AutoRotate = true
        Humanoid:Move(Vector3.new(0, 0, 0))
    end
end

-- =========================================================
-- VOID RUSH STATE
-- =========================================================

RunService.RenderStepped:Connect(function()
    if not voidrushcontrol then
        stopOverride()
        return
    end

    if not Humanoid then
        return
    end

    local character = Humanoid.Parent

    if not character then
        return
    end

    local voidRushState = character:GetAttribute("VoidRushState")

    if voidRushState == "Dashing" then
        startOverride()
    else
        stopOverride()
    end
end)

Features & Information

Control noli void rush better also added ESP

Community Comments (4)

SlakxowSlakxowSep 11, 2026

Ai but thx it's still good

SlakxowSlakxowSep 11, 2026

And also

SlakxowSlakxowSep 11, 2026

Pls add inf stamina

SerozzSerozzOct 11, 2026

doesnt work