
Key Required Verified
Auto Stairs NO GUI
Lua Script•96 lines (3215 chars)
local Config = {
["FastWin"] = false, -- Win Faster but slower stairs?
--["AutoLoop"] = false, -- DOES NOT WORK
}
local RunService = game:GetService("RunService")
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local Functional = workspace.FunctionalFolder
local function getRandAngles()
local x = math.rad(math.random(-180, 180))
local y = math.rad(math.random(-180, 180))
local z = math.rad(math.random(-180, 180))
return CFrame.Angles(x, y, z)
end
local function getCharacter()
return LocalPlayer.Character or (LocalPlayer.CharacterAdded:wait() and LocalPlayer.Character)
end
local function getTeam()
return getCharacter().Parent.Name:gsub(" Team", '')
end
local function getBase()
local baseName = getTeam() .. "Base"
return Functional:FindFirstChild(baseName)
end
local function getBlockGiver()
local Base = getBase()
local BlockGivers = Functional:WaitForChild("BlockGivers"):GetChildren()
local StartStairPos = Base.StartStair.Position
local Closest = math.huge
local Best = nil
for i, BlockGiver in pairs(BlockGivers) do
local DistanceFromStair = (BlockGiver.Position - StartStairPos).Magnitude
if DistanceFromStair < Closest then
Closest = DistanceFromStair
Best = BlockGiver
end
end
return Best
end
while task.wait() do
if Config.AutoLoop == true then
print("Started with Auto Loop")
end
repeat task.wait()
until getBase()
print("AUTO WIN | MATCH STARTED", getTeam())
local PlacePreview = Functional.PlacePreview
local Character = getCharacter()
local RootPart = Character.HumanoidRootPart
local Humanoid = Character.Humanoid
Humanoid.EvaluateStateMachine = false
while task.wait() and getBase() and RootPart do
print("Looping..")
local BlockGiver = getBlockGiver()
if BlockGiver then
-- Teleport to the block giver (upside down)
repeat
RootPart.CFrame = CFrame.new(BlockGiver.Position) * getRandAngles()
task.wait()
RootPart.CFrame = CFrame.new(BlockGiver.Position + Vector3.new(0, 500, 0)) * getRandAngles()
task.wait()
until Character:FindFirstChild("BlocksTool")
local BestBlock = PlacePreview:FindFirstChildOfClass("Part")
repeat
if not BestBlock then
BestBlock = PlacePreview:FindFirstChildOfClass("Part")
continue
end
RootPart.CFrame = CFrame.new(BestBlock.Position) * getRandAngles()
task.wait()
until Character:FindFirstChild("BlocksTool")
end
if Config.FastWin == true then
local WinTouchPart = Functional:FindFirstChild("WinTouchPart", true)
task.wait()
if RootPart and getBase() then
getCharacter():WaitForChild("HumanoidRootPart").CFrame = WinTouchPart.CFrame * getRandAngles()
task.wait()
end
end
end
print("AUTO WIN | MATCH COMPLETE")
if Config.AutoLoop == false then
break
end
endFeatures & Information
Automatically builds the stairs for ONE ROUND.
Recommended to execute during a round not before but it will still work.

Thanks but is buggy sometimes it doesn't works when a part of the stairs is gone
one more script from the goat
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
I love this script SO MUCH!
doesn't work for me idk why