Skip to content
RoRoScripts
Hitbox Expander, Hitbox TP, Speed, Jump and Anticheat Bypass preview
TrustedPatched

Hitbox Expander, Hitbox TP, Speed, Jump and Anticheat Bypass

Script
Cold Warvaultt
Views
329K
Likes
7
Dislikes
0
Added
Script
--[[
made by .ttokenn. (thanks dotdotdot1 for the help with hookmetamethod)

READ ME VVVVVVVVVVV
this script REQUIRES hookmetamethod, nothing works without it
this means that SOLARA is NOT supported, maybe it will have support sometime in the future but thats up to quivings

THIS SCRIPT USES KEYBINDS (since im too lazy to make a ui and re-adapt all the code)

J - JumpHeight
K - Speed
L - Refill Ammo (make sure you are loaded into the most full mag you have, magazines that are currently loaded dont get refilled)
P - Tp all hitboxes above you (makes you lag hella bad)

change the below number to a larger or smaller size, it controls how large the hitboxes are
--]]

local size = 35 -- change for bigger/smaller hitboxes



local weaponRemote = game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("Weapon")
local strikeRemote = game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("Strike")
local b = game.ReplicatedStorage.Remotes:FindFirstChild("ValidatePartSize")
if b then b:Destroy() end -- destroys one of the two remotes
local ValPartSizeRemote = game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("ValidatePartSize")

local oldFireServer
oldFireServer = hookmetamethod(weaponRemote, "__namecall", function(self, ...)
    local args = {...}
    local methodName = getnamecallmethod():lower()

    if methodName == "fireserver" and self == weaponRemote then
        -- Check the first argument
        if args[1] == "ValidateSize" then
            print("blocked remote call because first argument is ValidateSize")
            return -- Block the call
        else
            --print("wow its normal!!!")
        end
    end

    return oldFireServer(self, ...)
end)

local oldStrike
oldStrike = hookmetamethod(strikeRemote, "__namecall", function(self, ...)
    local methodName = getnamecallmethod():lower()

    if methodName == "fireserver" and self == strikeRemote then
        print("blocked strike call")
        return
    end

    return oldStrike(self, ...)
end)

local oldValPartSize
oldValPartSize = hookmetamethod(ValPartSizeRemote, "__namecall", function(self, ...)
    local methodName = getnamecallmethod():lower()

    if methodName == "fireserver" and self == ValPartSizeRemote then
        print("blocked ValidatePartSize call")
        return
    end

    return oldValPartSize(self, ...)
end)


local Players = game:GetService("Players")
local localplr = Players.LocalPlayer
local chosenHitbox = "HumanoidRootPart" -- HumanoidRootPart, Head (head may or may not work)
local UIS = game:GetService("UserInputService")
local hitboxes = {}

repeat wait() until game.Players.LocalPlayer.Team.Name ~= "Neutral"

local function check(Plr, checkType) -- 1 = team, 
    if checkType == 1 then
        if Plr.Team.Name == "Neutral" then
            return "Neutral"
        end
        if Plr.Team ~= localplr.Team then
            return "Enemy"
        else
            return "Friendly"
        end
    end

    return false
end

local function boxChange(box, enlargen) --enlargen = true to expand, false to make normal
    if enlargen == true then
        box.Size = Vector3.new(size, size, size)
        box.Transparency = 0.1
        box.CanCollide = true
        box.Color = Color3.new(1.000000, 0.000000, 0.000000)
        if table.find(hitboxes, box) then table.remove(hitboxes, table.find(hitboxes, box)) end
        if check(game.Players:FindFirstChild(box.Parent.Name), 1) == "Enemy" then table.insert(hitboxes, box) end
    elseif enlargen == false then
        box.Size = Vector3.new(2, 2, 1)
        box.Transparency = 1
        box.CanCollide = false
        if table.find(hitboxes, box) then table.remove(hitboxes, table.find(hitboxes, box)) end
    end
end

local function refill()
    local crate = game.Workspace.AmmoCrates:FindFirstChild("AmmoCrateSoldier")
    if not crate then print("NO CRATES AVAILABLE TO REFILL"); return end

    crate.ProximityPrompt.MaxActivationDistance = math.huge

    local currentpos = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame
    --tp
    for i=1, 3 do -- to let the map load so you dont fall through it
        game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = crate.CFrame
        task.wait()
    end
    task.wait(1)
    crate.ProximityPrompt:InputHoldBegin()
    task.wait(0.1)
    crate.ProximityPrompt:InputHoldEnd()
    task.wait(0.1)
    game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = currentpos
end

--anti-damage

if game.Players.LocalPlayer.Character then
    local char = game.Players.LocalPlayer.Character
    local LeftArm = char:FindFirstChild("Left Arm")
    local RightArm = char:FindFirstChild("Right Arm")
    local LeftLeg = char:FindFirstChild("Left Leg")
    local RightLeg = char:FindFirstChild("Right Leg")
    local Head = char:FindFirstChild("Head")
    local Torso = char:FindFirstChild("Torso")
    if LeftArm and RightArm and LeftLeg and RightLeg and Head and Torso then
        local parts = {LeftArm, RightArm, LeftLeg, RightLeg, Torso, Head}
        for _,v in pairs(parts) do
            if v:FindFirstChild("Value") then
                v.Value:GetPropertyChangedSignal("Value"):Connect(function()
                    if v.Value.Value < 100 then
                        v.Value.Value = 100
                    end
                end)
            end
        end
    end
end

game.Players.LocalPlayer.CharacterAdded:Connect(function(char)
    wait(2)
    local LeftArm = char:FindFirstChild("Left Arm")
    local RightArm = char:FindFirstChild("Right Arm")
    local LeftLeg = char:FindFirstChild("Left Leg")
    local RightLeg = char:FindFirstChild("Right Leg")
    local Head = char:FindFirstChild("Head")
    local Torso = char:FindFirstChild("Torso")
    if LeftArm and RightArm and LeftLeg and RightLeg and Head and Torso then
        local parts = {LeftArm, RightArm, LeftLeg, RightLeg, Torso, Head}
        for _,v in pairs(parts) do
            if v:FindFirstChild("Value") then
                v.Value:GetPropertyChangedSignal("Value"):Connect(function()
                    if v.Value.Value < 100 then
                        v.Value.Value = 100
                    end
                end)
            end
        end
    end
end)

local speed = false
local jump = false
local bring = false

UIS.InputBegan:Connect(function(input, gameProcessed)
    if gameProcessed then return end
    if input.KeyCode == Enum.KeyCode.J then
        jump = not jump
        if jump then game.Players.LocalPlayer.Character.Humanoid.JumpPower = 400 end
        if not jump then game.Players.LocalPlayer.Character.Humanoid.JumpPower = 50 end
    elseif input.KeyCode == Enum.KeyCode.K then
        speed = not speed
        if speed then game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 350 end
        if not speed then game.Players.LocalPlayer.Character.Humanoid.WalkSpeed = 16 end
    elseif input.KeyCode == Enum.KeyCode.L then
        refill()
    elseif input.KeyCode == Enum.KeyCode.P then
        bring = not bring
    end
end)


local fixed = true
local runcounter = 0

while task.wait(0.05) do
    runcounter += 1
    --enlargen hitboxes
    if runcounter == 20 then
        for _,plr in pairs(game.Players:GetPlayers()) do
            if plr ~= game.Players.LocalPlayer and plr.Team ~= game.Players.LocalPlayer.Team then
                local char = plr.Character
                if char then
                    if char:FindFirstChild("isRagdolled") then 
                        local isRagdolled = char.isRagdolled
                        if isRagdolled.Value == false then
                            local part = char:FindFirstChild(chosenHitbox)
                            if part then
                                boxChange(part, true)
                            end
                        elseif isRagdolled.Value == true then
                            local part = char:FindFirstChild(chosenHitbox)
                            if part then
                                boxChange(part, false)
                            end
                        end
                    else
                        local part = char:FindFirstChild(chosenHitbox)
                        if part then
                            boxChange(part, true)
                        end
                    end
                end
            elseif plr.Team == game.Players.LocalPlayer.Team then
                local char = plr.Character
                if char then
                    local part = char:FindFirstChild(chosenHitbox)
                    if part then
                        boxChange(part, false)
                    end
                end
            end
        end
        runcounter = 0
    end

    --bring hitboxes
    if bring == true then
        for _,v in pairs(hitboxes) do
            if v then
                v.Position = game.Players.LocalPlayer.Character.HumanoidRootPart.Position + Vector3.new(0,40,0)
            end
            fixed = false
        end
    elseif bring == false and fixed == false then
        for _,v in pairs(hitboxes) do
            if v.Parent.Torso and v then
                v.CFrame = v.Parent.Torso.CFrame
            end
        end
        fixed = true
    end
end

Features

  • SCRIPT IS PATCHED, for some reason bullets go thru expanded hitboxes
  • thanks dotdotdot1 for help with new anticheat bypass)
  • THIS SCRIPT IS NOT SUPPORTED BY SOLARA
  • KEYBINDS:
  • J - JumpHeight
  • K - Speed
  • P - Tp all hitboxes above you
  • Hitbox Expander
  • Speed
  • Jump
  • Anti-Damage (repairs your limbs upon being damaged)
  • Tp all to you
  • Refill from anywhere
  • All of it bypasses anticheat!