
INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless)
local WindUI = loadstring(game:HttpGet("https://github.com/Footagesus/WindUI/releases/latest/download/main.lua"))()
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local SoundService = game:GetService("SoundService")
local lp = Players.LocalPlayer
local Camera = workspace.CurrentCamera
local S = {
AutoSlap = false,
SlapRange = 15,
SpamDelay = 0.6,
InfSlapTool = false,
RemoteDelay = 0.1,
SlapAll = false,
Spin = false,
SpinSpeed = 20,
InfJump = false,
SpeedHack = false,
SpeedValue = 60,
BHop = false,
TrollSomeone = false,
TrollTarget = nil,
TrollDelay = 0.6,
}
local BHopSoundId = "rbxassetid://9114890978"
local BHopMax = 150
local BHopMultiplier = 1.3
local BHopResetTime = 0.4
local slapConn = nil
local remoteConn = nil
local slapAllThread = nil
local trollFollowConn = nil
local trollSlapThread = nil
local spinConn = nil
local jumpConn = nil
local speedConn = nil
local bhopConn = nil
local spinAngle = 0
local lastSlap = 0
local bhopSpeed = 16
local lastJumpTime = 0
local jumpSound = nil
local Window = WindUI:CreateWindow({
Title = "INSANE wallhop tower",
Icon = "hand",
Author = "TG: @ventozzz",
Folder = "InsaneWallHop",
Size = UDim2.fromOffset(500, 540),
Transparent = true,
Theme = "Dark",
Resizable = true,
})
local MainTab = Window:Tab({ Title = "Main", Icon = "hand" })
local MovementTab = Window:Tab({ Title = "Movement", Icon = "wind" })
local TrollTab = Window:Tab({ Title = "Troll", Icon = "troll" })
local remote = game:GetService("ReplicatedStorage"):WaitForChild("GetSlap")
local function getGloves()
local gloves = {}
local backpack = lp:FindFirstChild("Backpack")
if backpack then
for _, item in ipairs(backpack:GetChildren()) do
if item:IsA("Tool") then table.insert(gloves, item) end
end
end
local char = lp.Character
if char then
for _, item in ipairs(char:GetChildren()) do
if item:IsA("Tool") then table.insert(gloves, item) end
end
end
return gloves
end
local function equipGlove(glove)
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum then return end
if glove and glove.Parent then
pcall(function() hum:EquipTool(glove) end)
end
end
local function slapTarget(targetChar)
if not targetChar then return end
local myChar = lp.Character
if not myChar then return end
local myRoot = myChar:FindFirstChild("HumanoidRootPart")
local tRoot = targetChar:FindFirstChild("HumanoidRootPart")
if not myRoot or not tRoot then return end
local gloves = getGloves()
if #gloves == 0 then return end
equipGlove(gloves[math.random(1, #gloves)])
RunService.Heartbeat:Wait()
RunService.Heartbeat:Wait()
local tool = lp.Character and lp.Character:FindFirstChildOfClass("Tool")
if tool then
pcall(function() tool:Activate() end)
end
pcall(function()
remote:FireServer(targetChar)
end)
end
local function getNearestPlayer()
local myRoot = lp.Character and lp.Character:FindFirstChild("HumanoidRootPart")
if not myRoot then return nil end
local best, bestDist = nil, S.SlapRange
for _, plr in ipairs(Players:GetPlayers()) do
if plr == lp then continue end
local char = plr.Character
if not char then continue end
local hum = char:FindFirstChildOfClass("Humanoid")
local root = char:FindFirstChild("HumanoidRootPart")
if not hum or not root or hum.Health <= 0 then continue end
local dist = (myRoot.Position - root.Position).Magnitude
if dist < bestDist then
best, bestDist = char, dist
end
end
return best
end
local function doSlap()
local now = tick()
if now - lastSlap < S.SpamDelay then return end
lastSlap = now
local target = getNearestPlayer()
if not target then return end
slapTarget(target)
end
local function startAutoSlap()
if slapConn then slapConn:Disconnect() end
slapConn = RunService.Heartbeat:Connect(function()
if not S.AutoSlap then return end
doSlap()
end)
end
local function stopAutoSlap()
if slapConn then slapConn:Disconnect() slapConn = nil end
end
local function startInfSlapTool()
if remoteConn then pcall(function() task.cancel(remoteConn) end) end
remoteConn = task.spawn(function()
while S.InfSlapTool do
pcall(function() remote:FireServer() end)
task.wait(S.RemoteDelay)
end
end)
end
local function stopInfSlapTool()
S.InfSlapTool = false
if remoteConn then
pcall(function() task.cancel(remoteConn) end)
remoteConn = nil
end
end
local function startSpin()
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then hum.AutoRotate = false end
spinAngle = 0
if spinConn then spinConn:Disconnect() end
spinConn = RunService.RenderStepped:Connect(function(dt)
if not S.Spin then return end
local c = lp.Character
if not c then return end
local root = c:FindFirstChild("HumanoidRootPart")
if not root then return end
spinAngle = spinAngle + dt * S.SpinSpeed
root.CFrame = CFrame.new(root.Position) * CFrame.Angles(0, spinAngle, 0)
end)
end
local function stopSpin()
if spinConn then spinConn:Disconnect() spinConn = nil end
local char = lp.Character
if char then
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then hum.AutoRotate = true end
end
end
local function startInfJump()
if jumpConn then jumpConn:Disconnect() end
jumpConn = UIS.JumpRequest:Connect(function()
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum then return end
hum:ChangeState(Enum.HumanoidStateType.Jumping)
end)
end
local function stopInfJump()
if jumpConn then jumpConn:Disconnect() jumpConn = nil end
end
local function startSpeed()
if speedConn then speedConn:Disconnect() end
speedConn = RunService.Heartbeat:Connect(function()
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
local root = char:FindFirstChild("HumanoidRootPart")
if not hum or not root then return end
local md = hum.MoveDirection
if md.Magnitude < 0.1 then return end
local dir = Vector3.new(md.X, 0, md.Z).Unit
root.AssemblyLinearVelocity = Vector3.new(dir.X * S.SpeedValue, root.AssemblyLinearVelocity.Y, dir.Z * S.SpeedValue)
end)
end
local function stopSpeed()
if speedConn then speedConn:Disconnect() speedConn = nil end
end
local function playJumpSound()
if not jumpSound then
jumpSound = Instance.new("Sound")
jumpSound.Name = "BHopSound"
jumpSound.Parent = SoundService
end
jumpSound.SoundId = BHopSoundId
jumpSound.Volume = 1
jumpSound.PlaybackSpeed = 1
jumpSound:Play()
end
local function startBHop()
if bhopConn then bhopConn:Disconnect() end
bhopSpeed = 16
lastJumpTime = 0
bhopConn = RunService.Heartbeat:Connect(function()
if not S.BHop then return end
local char = lp.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
local root = char:FindFirstChild("HumanoidRootPart")
if not hum or not root then return end
local onGround = hum.FloorMaterial ~= Enum.Material.Air
local now = tick()
if onGround then
if lastJumpTime > 0 and now - lastJumpTime > BHopResetTime then
bhopSpeed = 16
end
hum:ChangeState(Enum.HumanoidStateType.Jumping)
lastJumpTime = now
playJumpSound()
end
local md = hum.MoveDirection
if md.Magnitude > 0.1 then
local dir = Vector3.new(md.X, 0, md.Z).Unit
root.AssemblyLinearVelocity = Vector3.new(
dir.X * bhopSpeed,
root.AssemblyLinearVelocity.y,
dir.Z * bhopSpeed
)
end
if not onGround and lastJumpTime > 0 and now - lastJumpTime < BHopResetTime then
bhopSpeed = bhopSpeed * BHopMultiplier
if bhopSpeed > BHopMax then bhopSpeed = BHopMax end
lastJumpTime = 0
end
end)
end
local function stopBHop()
if bhopConn then bhopConn:Disconnect() bhopConn = nil end
bhopSpeed = 16
if jumpSound then jumpSound:Stop() end
end
local function startSlapAll()
if slapAllThread then
pcall(function() task.cancel(slapAllThread) end)
end
slapAllThread = task.spawn(function()
local endTime = tick() + 8
while S.SlapAll and tick() < endTime do
pcall(function() remote:FireServer() end)
task.wait(0.05)
end
while S.SlapAll do
for _, plr in ipairs(Players:GetPlayers()) do
if not S.SlapAll then return end
if plr == lp then continue end
local char = plr.Character
if not char then continue end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum or hum.Health <= 0 then continue end
local startFollow = tick()
while S.SlapAll and tick() - startFollow < 1 do
local myChar = lp.Character
local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart")
local tChar = plr.Character
local tRoot = tChar and tChar:FindFirstChild("HumanoidRootPart")
if myRoot and tRoot then
pcall(function() myRoot:SetNetworkOwner(lp) end)
local back = tRoot.CFrame.LookVector * -3
myRoot.CFrame = CFrame.new(tRoot.Position + back, tRoot.Position)
myRoot.AssemblyLinearVelocity = Vector3.zero
myRoot.AssemblyAngularVelocity = Vector3.zero
end
RunService.Heartbeat:Wait()
end
if not S.SlapAll then return end
local gloves = getGloves()
if #gloves > 0 then
equipGlove(gloves[math.random(1, #gloves)])
RunService.Heartbeat:Wait()
RunService.Heartbeat:Wait()
local tool = lp.Character and lp.Character:FindFirstChildOfClass("Tool")
if tool then
pcall(function() tool:Activate() end)
end
pcall(function() remote:FireServer(char) end)
end
task.wait(0.3)
end
task.wait(0.3)
end
end)
end
local function stopSlapAll()
S.SlapAll = false
if slapAllThread then
pcall(function() task.cancel(slapAllThread) end)
slapAllThread = nil
end
end
local function startTrollSomeone()
if trollFollowConn then trollFollowConn:Disconnect() end
if trollSlapThread then pcall(function() task.cancel(trollSlapThread) end) end
trollFollowConn = RunService.RenderStepped:Connect(function()
if not S.TrollSomeone then return end
local target = S.TrollTarget
if not target or not target.Parent then return end
local char = target.Character
if not char then return end
local root = char:FindFirstChild("HumanoidRootPart")
local myChar = lp.Character
local myRoot = myChar and myChar:FindFirstChild("HumanoidRootPart")
if not root or not myRoot then return end
pcall(function() myRoot:SetNetworkOwner(lp) end)
local back = root.CFrame.LookVector * -3
myRoot.CFrame = CFrame.new(root.Position + back, root.Position)
myRoot.AssemblyLinearVelocity = Vector3.zero
myRoot.AssemblyAngularVelocity = Vector3.zero
end)
trollSlapThread = task.spawn(function()
while S.TrollSomeone do
task.wait(S.TrollDelay)
if not S.TrollSomeone then return end
local target = S.TrollTarget
if not target or not target.Parent then continue end
local char = target.Character
if not char then continue end
local hum = char:FindFirstChildOfClass("Humanoid")
if not hum or hum.Health <= 0 then continue end
slapTarget(char)
end
end)
end
local function stopTrollSomeone()
S.TrollSomeone = false
if trollFollowConn then trollFollowConn:Disconnect() trollFollowConn = nil end
if trollSlapThread then
pcall(function() task.cancel(trollSlapThread) end)
trollSlapThread = nil
end
end
local selectedPlayerName = nil
local playerDropdown = TrollTab:Dropdown({
Title = "Troll Player",
Values = {},
Multi = false,
Default = "",
Callback = function(selected)
selectedPlayerName = selected
for _, plr in ipairs(Players:GetPlayers()) do
if plr.Name == selected then
S.TrollTarget = plr
break
end
end
end
})
TrollTab:Button({
Title = "Refresh Player List",
Callback = function()
local names = {}
for _, plr in ipairs(Players:GetPlayers()) do
if plr ~= lp then
table.insert(names, plr.Name)
end
end
if #names == 0 then names = { "no players" } end
pcall(function()
playerDropdown:Refresh(names)
end)
end
})
TrollTab:Toggle({
Title = "Troll Player",
Default = false,
Callback = function(v)
S.TrollSomeone = v
if v then startTrollSomeone() else stopTrollSomeone() end
end
})
TrollTab:Slider({
Title = "Troll Delay",
Min = 0.2,
Max = 3,
Default = 0.6,
Callback = function(v) S.TrollDelay = v end
})
MainTab:Toggle({
Title = "Auto Slap",
Default = false,
Callback = function(v)
S.AutoSlap = v
if v then startAutoSlap() else stopAutoSlap() end
end
})
MainTab:Slider({
Title = "Slap Range",
Min = 5,
Max = 50,
Default = 15,
Callback = function(v) S.SlapRange = v end
})
MainTab:Slider({
Title = "Slap Delay",
Min = 0.2,
Max = 3,
Default = 0.6,
Callback = function(v) S.SpamDelay = v end
})
MainTab:Toggle({
Title = "Inf Slap Tool",
Default = false,
Callback = function(v)
S.InfSlapTool = v
if v then startInfSlapTool() else stopInfSlapTool() end
end
})
MainTab:Slider({
Title = "Remote Delay",
Min = 0.05,
Max = 1,
Default = 0.1,
Callback = function(v) S.RemoteDelay = v end
})
MovementTab:Toggle({
Title = "Spin",
Default = false,
Callback = function(v)
S.Spin = v
if v then startSpin() else stopSpin() end
end
})
MovementTab:Slider({
Title = "Spin Speed",
Min = 1,
Max = 100,
Default = 20,
Callback = function(v) S.SpinSpeed = v end
})
MovementTab:Toggle({
Title = "Infinite Jump",
Default = false,
Callback = function(v)
S.InfJump = v
if v then startInfJump() else stopInfJump() end
end
})
MovementTab:Toggle({
Title = "Speed Hack",
Default = false,
Callback = function(v)
S.SpeedHack = v
if v then startSpeed() else stopSpeed() end
end
})
MovementTab:Slider({
Title = "Speed",
Min = 18,
Max = 150,
Default = 60,
Callback = function(v) S.SpeedValue = v end
})
MovementTab:Toggle({
Title = "BHop",
Default = false,
Callback = function(v)
S.BHop = v
if v then startBHop() else stopBHop() end
end
})
TrollTab:Toggle({
Title = "Slap All",
Default = false,
Callback = function(v)
S.SlapAll = v
if v then startSlapAll() else stopSlapAll() end
end
})
TrollTab:Button({
Title = "Stop Slap All",
Callback = function()
stopSlapAll()
end
})
lp.CharacterAdded:Connect(function()
task.wait(0.5)
if S.AutoSlap then startAutoSlap() end
if S.InfSlapTool then startInfSlapTool() end
if S.Spin then startSpin() end
if S.InfJump then startInfJump() end
if S.SpeedHack then startSpeed() end
if S.BHop then startBHop() end
if S.TrollSomeone then startTrollSomeone() end
end)How to Execute INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless)
Step 1: Copy Code: Click the Copy Code button in the viewer above to grab the clean Lua loadstring.
Step 2: Launch Executor: Open a compatible, unpatched executor. If you need one, check our Roblox Executors Directory.
Step 3: Join Experience: Launch Roblox and join INSANE wall hop tower😈.
Step 4: Attach & Run: Attach/inject your executor into the Roblox process, paste the code into the script tab, and press Execute.
Created By
View Author ProfileFeatures & Information
Script Changelog (1)
Community Comments (0)
No comments yet for this script.
Frequently Asked Questions
How do I execute INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless) in Roblox?
To run INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless), copy the Lua loadstring from the code viewer above, launch Roblox and join INSANE wall hop tower😈, attach a working executor (such as Potassium, Solara, or Delta from our Executors directory), paste the code into your executor console, and click Execute.
Is INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless) keyless or does it require an access key?
INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless) requires an access key. You can retrieve the official key directly using the Get Script Key link provided above.
Is INSANE wall hop tower😈 Script – HUB SLAP TROLL (Keyless) currently safe and working?
This script is active and operational. Always test scripts using a secondary (alt) Roblox account to safeguard your main profile against anti-cheat bans.
