
Key RequiredUniversal

-- skidded from vibe cafe
local v_u_1 = {}
local v_u_2 = nil
local v_u_3 = nil
local v_u_4 = nil
local v_u_5 = nil
local v_u_6 = nil
local v_u_7 = nil
local v_u_8 = nil
local v_u_9 = nil
local v_u_10 = nil
local v_u_11 = nil
local v_u_12 = nil
local v_u_13 = nil
local v_u_14 = nil
local v_u_15 = nil
local v_u_16 = nil
local v_u_17 = nil
local v_u_18 = nil
local v_u_19 = nil
local v_u_20 = nil
local v_u_21 = nil
local v_u_22 = nil
local v_u_23 = nil
local v_u_24 = nil
local v_u_25 = nil
local v_u_26 = 0.016666666666666666
local v_u_27 = nil
local v_u_28 = nil
local v_u_29 = nil
local v_u_30 = nil
local v_u_31 = nil
local v_u_32 = nil
local v_u_33 = nil
local v_u_34 = nil
-- Sound effects for jumping
for _, v35 in ipairs({
"rbxassetid://7338942417",
"rbxassetid://7338942345",
"rbxassetid://7338942259",
"rbxassetid://7338942180",
"rbxassetid://7338942417"
}) do
local v36 = Instance.new("Sound")
v36.SoundId = v35
v36.Volume = 2
v36.Parent = game.Workspace
table.insert(v_u_1, v36)
end
function init(p37, p38, p39)
v_u_4 = p37
v_u_31 = v_u_4.Character
v_u_5 = v_u_31.HumanoidRootPart
v_u_16 = p38
v_u_21 = p39
v_u_17 = 0
v_u_6 = false
v_u_32 = {
["forward"] = 0,
["side"] = 0
}
v_u_19 = 10000
v_u_20 = 3
v_u_14 = 250
v_u_3 = 20
v_u_15 = 10
v_u_30 = 3
v_u_22 = 0.5
v_u_33 = 53.5
v_u_11 = 400000
v_u_23 = 300000
v_u_24 = 0.6
v_u_25 = v_u_30 + v_u_22
v_u_7 = 125
v_u_27 = 14000
v_u_12 = 1500
v_u_13 = 0.4
externalVelocityImpulse = Vector3.new(0, 0, 0)
end
function initBodyMovers()
v_u_8 = Instance.new("BodyPosition", v_u_5)
v_u_8.Name = "movementPosition"
v_u_8.D = v_u_7
v_u_8.P = v_u_27
v_u_8.maxForce = Vector3.new()
v_u_8.position = Vector3.new()
v_u_28 = Instance.new("BodyVelocity", v_u_5)
v_u_28.Name = "movementVelocity"
v_u_28.P = v_u_12
v_u_28.maxForce = Vector3.new()
v_u_28.velocity = Vector3.new()
v_u_29 = Instance.new("BodyForce", v_u_5)
v_u_29.Name = "gravityForce"
local v40 = v_u_29
local v41 = (1 - v_u_13) * 196.2
v40.force = Vector3.new(0, v41, 0) * getCharacterMass()
end
function update(p42)
v_u_26 = p42
updateMoveInputSum()
v_u_18 = getYaw()
v_u_9 = v_u_18.lookVector
if v_u_9 ~= nil then
local v43, v44, v45, v46, v47 = findCollisionRay()
v_u_34 = v46
v_u_10 = v47
v_u_6 = v43 ~= nil
local v48 = v_u_5.Velocity
local v49 = v_u_5.Velocity.y
v_u_17 = v48 - Vector3.new(0, v49, 0)
if v_u_6 and (v_u_21.Space or v_u_2) then
v_u_2 = true
else
v_u_2 = false
end
setCharacterRotation()
if v_u_2 then
jump()
elseif v_u_6 then
run(v44, v45)
else
air()
end
applyVelocityCap()
end
end
function updateMoveInputSum()
v_u_32.forward = v_u_21.W == true and 1 or 0
v_u_32.forward = v_u_21.S == true and v_u_32.forward - 1 or v_u_32.forward
v_u_32.side = v_u_21.A == true and 1 or 0
v_u_32.side = v_u_21.D == true and v_u_32.side - 1 or v_u_32.side
end
local v_u_50 = 100 -- Velocity cap (hardcoded)
function applyVelocityCap()
if v_u_6 then
if v_u_28 and v_u_28.velocity then
local v51 = v_u_28.velocity
local v52 = v51.X
local v53 = v51.Z
local v54 = Vector3.new(v52, 0, v53)
local v55 = v54.Magnitude
if v_u_50 < v55 then
local v56 = v_u_50
local v57 = v55 - 25
local v58 = math.max(v57, v56)
v54 = v54.Unit * v58
end
local v59 = v_u_28
local v60 = v54.X
local v61 = v51.Y
local v62 = v54.Z
v59.velocity = Vector3.new(v60, v61, v62)
end
end
end
local v_u_63 = {}
local v_u_64 = 0
function updateIgnoreList()
table.clear(v_u_63)
local v65 = v_u_63
local v66 = v_u_31
table.insert(v65, v66)
local v67 = v_u_63
local v68 = v_u_16
table.insert(v67, v68)
end
local v_u_69 = nil
function findCollisionRay()
v_u_64 = v_u_64 + v_u_26
if v_u_64 >= 1 or #v_u_63 == 0 then
updateIgnoreList()
v_u_64 = 0
end
if not v_u_69 then
v_u_69 = RaycastParams.new()
v_u_69.RespectCanCollide = true
v_u_69.FilterType = Enum.RaycastFilterType.Exclude
end
v_u_69.FilterDescendantsInstances = v_u_63
local v70 = v_u_31.HumanoidRootPart.CFrame
local v71 = {
v_u_31.HumanoidRootPart.Position,
(v70 * CFrame.new(-0.8, 0, 0)).p,
(v70 * CFrame.new(0.8, 0, 0)).p,
(v70 * CFrame.new(0, 0, 0.8)).p,
(v70 * CFrame.new(0, 0, -0.8)).p
}
local v72 = -v_u_25
local v73 = Vector3.new(0, v72, 0)
local v74 = {}
for _, v75 in ipairs(v71) do
local v76 = game.Workspace:Raycast(v75, v73, v_u_69)
if v76 then
local v77 = { v76.Instance, v76.Position, v76.Normal }
table.insert(v74, v77)
end
end
if #v74 > 0 then
return v74[1][1], v74[1][2], v74[1][3], 0, 0
else
return nil, nil, nil, 0, 0
end
end
function setCharacterRotation()
local v78 = v_u_5.Position + v_u_16.CoordinateFrame.lookVector
local v79 = v_u_5
local v80 = CFrame.new
local v81 = v_u_5.Position
local v82 = v78.x
local v83 = v_u_5.Position.y
local v84 = v78.z
v79.CFrame = v80(v81, (Vector3.new(v82, v83, v84)))
v_u_5.RotVelocity = Vector3.new()
end
function jump()
v_u_1[math.random(1, #v_u_1)]:Play()
local v85 = v_u_5
local v86 = v_u_5.Velocity.x
local v87 = v_u_33
local v88 = v_u_5.Velocity.z
v85.Velocity = Vector3.new(v86, v87, v88)
air()
end
function air()
v_u_8.maxForce = Vector3.new()
v_u_28.velocity = getMovementVelocity(v_u_5.Velocity, v_u_19, v_u_20)
v_u_28.velocity = v_u_28.velocity + externalVelocityImpulse
externalVelocityImpulse = Vector3.new(0, 0, 0)
v_u_28.maxForce = getMovementVelocityAirForce()
end
function run(p89, _)
if p89 then
local v90 = v_u_5.Velocity.magnitude
local v91 = v_u_5.Velocity
if v90 ~= 0 then
local v92 = v90 - v90 * v_u_15 * v_u_26
v91 = v91 * math.max(v92, 0) / v90
end
local v93 = v_u_30
v_u_8.position = p89 + Vector3.new(0, v93, 0)
local v94 = v_u_11
v_u_8.maxForce = Vector3.new(0, v94, 0)
v_u_28.velocity = getMovementVelocity(v91, v_u_14, v_u_3)
v_u_28.velocity = v_u_28.velocity + externalVelocityImpulse
externalVelocityImpulse = Vector3.new(0, 0, 0)
v_u_28.maxForce = getMovementVelocityForce()
v_u_28.P = v_u_12
end
end
function getMovementVelocity(p95, p96, p97)
local v98 = (v_u_9 * v_u_32.forward + (v_u_18 * CFrame.Angles(0, 1.5707963267948966, 0)).lookVector * v_u_32.side).unit
local v99 = v_u_32.forward == 0 and v_u_32.side == 0 and Vector3.new(0, 0, 0) or v98
local v100 = p95:Dot(v99)
local v101 = p96 * v_u_26
if p97 < v100 + v101 then
local v102 = p97 - v100
v101 = math.max(v102, 0)
end
return p95 + v99 * v101
end
function getMovementVelocityForce()
local v103 = v_u_23
local v104 = v_u_23
return Vector3.new(v103, 0, v104)
end
function getMovementVelocityAirForce()
local v105 = (v_u_9 * v_u_32.forward + (v_u_18 * CFrame.Angles(0, 1.5707963267948966, 0)).lookVector * v_u_32.side).unit
local v106 = v_u_32.forward == 0 and v_u_32.side == 0 and Vector3.new(0, 0, 0) or v105
local v107 = v106.x
local v108 = math.abs(v107)
local v109 = v106.z
local v110 = math.abs(v109)
local v111 = v_u_23 * v108
local v112 = v_u_23 * v110
return Vector3.new(v111, 0, v112)
end
function getPartYRatio(p113)
local v114 = -p113.x
local v115 = -p113.z
local v116 = Vector3.new(v114, 0, v115)
if v116.magnitude == 0 then
return 0, 0
end
local v117 = v116.magnitude
local v118 = p113.y
local v119 = math.atan2(v117, v118) / 1.5707963267948966
local v120 = v_u_9.x
local v121 = v_u_9.z
local v122 = Vector3.new(v120, 0, v121) * v119
return v122:Dot(v116), -v116:Cross(v122).y
end
function getYaw()
return v_u_16.CoordinateFrame * CFrame.Angles(-getPitch(), 0, 0)
end
function getPitch()
local v123 = v_u_16.CoordinateFrame.lookVector:Dot(Vector3.new(0, 1, 0))
return 1.5707963267948966 - math.acos(v123)
end
function getCharacterMass()
return v_u_31.HumanoidRootPart:GetMass() + v_u_31.Head:GetMass()
end
function magnitude2D(p124, p125)
local v126 = p124 * p124 + p125 * p125
return math.sqrt(v126)
end
local v_u_127 = {
["W"] = false,
["S"] = false,
["A"] = false,
["D"] = false,
["Space"] = false
}
local v_u_128 = false
local v_u_129 = nil
local v_u_130 = nil
local v_u_131 = game:GetService("Players").LocalPlayer
local v_u_132 = workspace.CurrentCamera
local v_u_133 = game:GetService("UserInputService")
-- Set camera FOV to 70 (hardcoded)
v_u_132.FieldOfView = 70
function onInput(p134, _)
local v135
if p134.UserInputState == Enum.UserInputState.Begin then
v135 = true
else
if p134.UserInputState ~= Enum.UserInputState.End then
return
end
v135 = false
end
if p134.UserInputType == Enum.UserInputType.Keyboard then
local v136 = p134.KeyCode.Name
if v_u_127[v136] ~= nil then
v_u_127[v136] = v135
end
end
end
-- Key toggle system (no GUI)
local toggleKey = Enum.KeyCode.F -- You can change this key
_G.bhopEnabled = false
function setupKeyToggle()
v_u_133.InputBegan:Connect(function(input)
if input.KeyCode == toggleKey then
toggleBhop()
end
end)
-- Also listen for regular movement keys
v_u_133.InputBegan:connect(onInput)
v_u_133.InputEnded:connect(onInput)
end
function toggleBhop()
if v_u_131.Character and v_u_131.Character:FindFirstChild("HumanoidRootPart") then
v_u_128 = not v_u_128
_G.bhopEnabled = v_u_128
if v_u_128 then
print("BHOP Enabled (Toggle with F)")
local humanoid = v_u_131.Character:FindFirstChildOfClass("Humanoid") or v_u_131.Character:WaitForChild("Humanoid")
humanoid.PlatformStand = true
init(v_u_131, v_u_132, v_u_127)
initBodyMovers()
updateIgnoreList()
v_u_64 = 0
-- Seat prevention
if v_u_130 then
v_u_130:Disconnect()
end
v_u_130 = game.Workspace.DescendantAdded:Connect(function(p147)
if v_u_128 and (p147:IsA("Seat") or p147:IsA("VehicleSeat")) then
p147.Disabled = true
end
end)
for _, v148 in pairs(game.Workspace:GetDescendants()) do
if v148:IsA("Seat") or v148:IsA("VehicleSeat") then
v148.Disabled = true
end
end
print("Seat prevention enabled - all seats disabled")
game:GetService("RunService"):BindToRenderStep("updateLoop", 1, updateLoop)
else
print("BHOP Disabled (Toggle with F)")
local humanoid = v_u_131.Character:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.PlatformStand = false
end
if v_u_130 then
v_u_130:Disconnect()
v_u_130 = nil
end
for _, v152 in pairs(game.Workspace:GetDescendants()) do
if v152:IsA("Seat") or v152:IsA("VehicleSeat") then
v152.Disabled = false
end
end
print("Seat prevention disabled - all seats re-enabled")
game:GetService("RunService"):UnbindFromRenderStep("updateLoop")
if v_u_8 then
v_u_8:Destroy()
end
if v_u_28 then
v_u_28:Destroy()
end
if v_u_29 then
v_u_29:Destroy()
end
end
else
warn("Cannot toggle BHOP - character not ready")
end
end
function main()
setupKeyToggle()
v_u_131.CharacterAdded:Connect(function(_)
print("Character respawned - re-initializing BHOP")
v_u_128 = false
task.wait(0.5)
end)
print("BHOP Script Loaded")
print("Toggle with: F key")
print("Velocity Cap: 100")
print("FOV: 70")
print("Crosshair: Disabled")
end
local v_u_162 = nil
local v_u_163 = 0.016666666666666666
function setDeltaTime()
local v164 = tick()
if v_u_162 == nil then
v_u_163 = 0.016666666666666666
else
v_u_163 = v164 - v_u_162
end
v_u_162 = v164
end
function updateLoop()
setDeltaTime()
update(v_u_163)
end
-- Start the script
main()



What's this
@heeroomyth4 its a bhop script the reason it looks weird is its decompiled from vibe cafe