Universal Wallhop Hub keyless
Key RequiredUniversal

Universal Wallhop Hub keyless

Universal ScriptThenicescripterThenicescripter 950 views 16.2K executesUpdated Sep 25, 2026
Unrated
00
Lua Script•144 lines (4139 chars)
-- ============================================================================
-- UNIVERSAL MULTI-GAME WALLHOP (With Speed Control + Rayfield)
-- ============================================================================

local success, Rayfield = pcall(function()
    return loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
end)

if not success or not Rayfield then
    warn("Failed to load Rayfield UI library.")
    return
end

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

local LocalPlayer = Players.LocalPlayer

-- Configuration States
local WallhopEnabled = false
local WallCheckDistance = 1.8
local FlickAngle = 90
local WallhopSpeed = 35 -- Speed boost multiplier for outward launch
local isFlicking = false

-- Universal Wall Detection Check
local function IsTouchingWall(hrp, character)
    local origin = hrp.Position
    local directions = {
        hrp.CFrame.LookVector,
        -hrp.CFrame.LookVector,
        hrp.CFrame.RightVector,
        -hrp.CFrame.RightVector
    }

    for _, dir in ipairs(directions) do
        local ray = Ray.new(origin, dir * WallCheckDistance)
        local hit, pos = Workspace:FindPartOnRayWithIgnoreList(ray, {character})
        if hit and hit.CanCollide then
            return true
        end
    end
    return false
end

-- Universal Body-Flick Execution with Adjustable Speed
local function ExecuteWallhop()
    if isFlicking then return end
    isFlicking = true

    local character = LocalPlayer.Character
    if character then
        local hrp = character:FindFirstChild("HumanoidRootPart")
        local humanoid = character:FindFirstChildOfClass("Humanoid")

        if hrp and humanoid then
            humanoid:ChangeState(Enum.HumanoidStateType.Jumping)

            local currentPos = hrp.Position
            local currentOrientation = hrp.Orientation
            
            hrp.CFrame = CFrame.new(currentPos) * CFrame.Angles(0, math.rad(currentOrientation.Y + FlickAngle), 0)
            task.wait(0.05)
            
            -- Combines outward momentum direction with your customizable WallhopSpeed
            local forwardDir = hrp.CFrame.LookVector
            hrp.AssemblyLinearVelocity = Vector3.new(forwardDir.X * WallhopSpeed, 45, forwardDir.Z * WallhopSpeed)
        end
    end

    task.wait(0.2)
    isFlicking = false
end

-- Universal Heartbeat Monitor for Mobile Air-State
RunService.Heartbeat:Connect(function()
    if not WallhopEnabled then return end

    local character = LocalPlayer.Character
    if not character then return end

    local hrp = character:FindFirstChild("HumanoidRootPart")
    local humanoid = character:FindFirstChildOfClass("Humanoid")

    if hrp and humanoid then
        if humanoid:GetState() == Enum.HumanoidStateType.Freefall or humanoid.FloorMaterial == Enum.Material.Air then
            if IsTouchingWall(hrp, character) then
                ExecuteWallhop()
            end
        end
    end
end)

-- Rayfield UI Integration
local Window = Rayfield:CreateWindow({
    Name = "Universal Wallhop Hub (Speed Edition)",
    LoadingTitle = "Loading Systems...",
    LoadingSubtitle = "by Chief",
    ConfigurationSaving = { Enabled = false },
    KeySystem = false,
})

local Tab = Window:CreateTab("Movement", 4483362458)

Tab:CreateToggle({
    Name = "Enable Universal Wallhop",
    CurrentValue = false,
    Callback = function(Value)
        WallhopEnabled = Value
    end,
})

Tab:CreateSlider({
    Name = "Wall Check Distance",
    Range = {1.0, 3.0},
    Increment = 0.1,
    CurrentValue = 1.8,
    Callback = function(Value)
        WallCheckDistance = Value
    end,
})

Tab:CreateSlider({
    Name = "Wallhop Speed",
    Range = {10, 80},
    Increment = 5,
    CurrentValue = 35,
    Callback = function(Value)
        WallhopSpeed = Value
    end,
})

Tab:CreateSlider({
    Name = "Flick Angle",
    Range = {45, 180},
    Increment = 5,
    CurrentValue = 90,
    Callback = function(Value)
        FlickAngle = Value
    end,
})

print("[Chief] Wallhop speed control successfully added.")

Features & Information

pretty basic ngl
#wallhop#basic#free

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts