Run it
Copy the script and paste it into your executor.
Players = :()
UserInputService = :()
TweenService = :()
player = Players.LocalPlayer
playerGui = player:()
character = player.Character player.CharacterAdded:()
rootPart = character:()
checkpoints = {}
idCounter =
MAX_CHECKPOINTS =
MAX_SPEED =
DEFAULT_SPEED =
isCollapsed =
BILLBOARD_WORLD_WIDTH =
BILLBOARD_WORLD_HEIGHT =
BILLBOARD_MAX_DISTANCE =
checkpointFolder = :()
checkpointFolder
checkpointFolder = .()
checkpointFolder.Name =
checkpointFolder.Parent =
screenGui = .()
screenGui.Name =
screenGui.ResetOnSpawn =
screenGui.ZIndexBehavior = .ZIndexBehavior.Sibling
screenGui.Parent = playerGui
mainFrame = .()
mainFrame.Name =
mainFrame.Size = .(, , , )
mainFrame.Position = .(, , , -)
mainFrame.BackgroundColor3 = .(, , )
mainFrame.BorderSizePixel =
mainFrame.ClipsDescendants =
mainFrame.Parent = screenGui
mainCorner = .()
mainCorner.CornerRadius = .(, )
mainCorner.Parent = mainFrame
mainStroke = .()
mainStroke.Color = .(, , )
mainStroke.Thickness =
mainStroke.Transparency =
mainStroke.Parent = mainFrame
header = .()
header.Name =
header.Size = .(, , , )
header.BackgroundColor3 = .(, , )
header.BorderSizePixel =
header.Parent = mainFrame
headerCorner = .()
headerCorner.CornerRadius = .(, )
headerCorner.Parent = header
headerFix = .()
headerFix.Size = .(, , , )
headerFix.Position = .(, , , -)
headerFix.BackgroundColor3 = .(, , )
headerFix.BorderSizePixel =
headerFix.Parent = header
accentLine = .()
accentLine.Size = .(, , , )
accentLine.Position = .(, , , -)
accentLine.BackgroundColor3 = .(, , )
accentLine.BorderSizePixel =
accentLine.Parent = header
accentCorner2 = .()
accentCorner2.CornerRadius = .(, )
accentCorner2.Parent = accentLine
titleLabel = .()
titleLabel.Size = .(, -, , )
titleLabel.Position = .(, , , )
titleLabel.BackgroundTransparency =
titleLabel.Text =
titleLabel.TextColor3 = .(, , )
titleLabel.TextSize =
titleLabel.Font = .Font.GothamBold
titleLabel.TextXAlignment = .TextXAlignment.Left
titleLabel.Parent = header
countLabel = .()
countLabel.Name =
countLabel.Size = .(, , , )
countLabel.Position = .(, -, , )
countLabel.BackgroundTransparency =
countLabel.Text =
countLabel.TextColor3 = .(, , )
countLabel.TextSize =
countLabel.Font = .Font.GothamMedium
countLabel.TextXAlignment = .TextXAlignment.Right
countLabel.Parent = header
toggleBtn = .()
toggleBtn.Name =
toggleBtn.Size = .(, , , )
toggleBtn.Position = .(, -, , -)
toggleBtn.BackgroundColor3 = .(, , )
toggleBtn.BorderSizePixel =
toggleBtn.Text =
toggleBtn.TextColor3 = .(, , )
toggleBtn.TextSize =
toggleBtn.Font = .Font.GothamBold
toggleBtn.Parent = header
toggleCorner = .()
toggleCorner.CornerRadius = .(, )
toggleCorner.Parent = toggleBtn
closeBtn = .()
closeBtn.Name =
closeBtn.Size = .(, , , )
closeBtn.Position = .(, -, , -)
closeBtn.BackgroundColor3 = .(, , )
closeBtn.BorderSizePixel =
closeBtn.Text =
closeBtn.TextColor3 = .(, , )
closeBtn.TextSize =
closeBtn.Font = .Font.GothamBold
closeBtn.Parent = header
closeCorner = .()
closeCorner.CornerRadius = .(, )
closeCorner.Parent = closeBtn
contentFrame = .()
contentFrame.Name =
contentFrame.Size = .(, , , -)
contentFrame.Position = .(, , , )
contentFrame.BackgroundTransparency =
contentFrame.Parent = mainFrame
speedSection = .()
speedSection.Size = .(, -, , )
speedSection.Position = .(, , , )
speedSection.BackgroundColor3 = .(, , )
speedSection.BorderSizePixel =
speedSection.Parent = contentFrame
speedSectionCorner = .()
speedSectionCorner.CornerRadius = .(, )
speedSectionCorner.Parent = speedSection
speedSectionStroke = .()
speedSectionStroke.Color = .(, , )
speedSectionStroke.Thickness =
speedSectionStroke.Transparency =
speedSectionStroke.Parent = speedSection
speedTitleLabel = .()
speedTitleLabel.Size = .(, -, , )
speedTitleLabel.Position = .(, , , )
speedTitleLabel.BackgroundTransparency =
speedTitleLabel.Text =
speedTitleLabel.TextColor3 = .(, , )
speedTitleLabel.TextSize =
speedTitleLabel.Font = .Font.GothamBold
speedTitleLabel.TextXAlignment = .TextXAlignment.Left
speedTitleLabel.Parent = speedSection
speedInputBox = .()
speedInputBox.Name =
speedInputBox.Size = .(, -, , )
speedInputBox.Position = .(, , , )
speedInputBox.BackgroundColor3 = .(, , )
speedInputBox.BorderSizePixel =
speedInputBox.PlaceholderText =
speedInputBox.PlaceholderColor3 = .(, , )
speedInputBox.Text = (DEFAULT_SPEED)
speedInputBox.TextColor3 = .(, , )
speedInputBox.TextSize =
speedInputBox.Font = .Font.GothamBold
speedInputBox.TextXAlignment = .TextXAlignment.Center
speedInputBox.ClearTextOnFocus =
speedInputBox.Parent = speedSection
speedInputCorner = .()
speedInputCorner.CornerRadius = .(, )
speedInputCorner.Parent = speedInputBox
speedInputStroke = .()
speedInputStroke.Color = .(, , )
speedInputStroke.Thickness =
speedInputStroke.Transparency =
speedInputStroke.Parent = speedInputBox
applySpeedBtn = .()
applySpeedBtn.Name =
applySpeedBtn.Size = .(, , , )
applySpeedBtn.Position = .(, -, , )
applySpeedBtn.BackgroundColor3 = .(, , )
applySpeedBtn.BorderSizePixel =
applySpeedBtn.Text =
applySpeedBtn.TextColor3 = .(, , )
applySpeedBtn.TextSize =
applySpeedBtn.Font = .Font.GothamBold
applySpeedBtn.Parent = speedSection
applySpeedCorner = .()
applySpeedCorner.CornerRadius = .(, )
applySpeedCorner.Parent = applySpeedBtn
sep1 = .()
sep1.Size = .(, -, , )
sep1.Position = .(, , , )
sep1.BackgroundColor3 = .(, , )
sep1.BorderSizePixel =
sep1.Parent = contentFrame
inputSection = .()
inputSection.Size = .(, -, , )
inputSection.Position = .(, , , )
inputSection.BackgroundColor3 = .(, , )
inputSection.BorderSizePixel =
inputSection.Parent = contentFrame
inputCorner = .()
inputCorner.CornerRadius = .(, )
inputCorner.Parent = inputSection
inputStroke = .()
inputStroke.Color = .(, , )
inputStroke.Thickness =
inputStroke.Parent = inputSection
nameInput = .()
nameInput.Name =
nameInput.Size = .(, -, , )
nameInput.Position = .(, , , )
nameInput.BackgroundTransparency =
nameInput.PlaceholderText =
nameInput.PlaceholderColor3 = .(, , )
nameInput.Text =
nameInput.TextColor3 = .(, , )
nameInput.TextSize =
nameInput.Font = .Font.Gotham
nameInput.TextXAlignment = .TextXAlignment.Left
nameInput.ClearTextOnFocus =
nameInput.Parent = inputSection
createBtn = .()
createBtn.Name =
createBtn.Size = .(, -, , )
createBtn.Position = .(, , , )
createBtn.BackgroundColor3 = .(, , )
createBtn.BorderSizePixel =
createBtn.Text =
createBtn.TextColor3 = .(, , )
createBtn.TextSize =
createBtn.Font = .Font.GothamBold
createBtn.Parent = contentFrame
createCorner = .()
createCorner.CornerRadius = .(, )
createCorner.Parent = createBtn
sep2 = .()
sep2.Size = .(, -, , )
sep2.Position = .(, , , )
sep2.BackgroundColor3 = .(, , )
sep2.BorderSizePixel =
sep2.Parent = contentFrame
listTitle = .()
listTitle.Size = .(, -, , )
listTitle.Position = .(, , , )
listTitle.BackgroundTransparency =
listTitle.Text =
listTitle.TextColor3 = .(, , )
listTitle.TextSize =
listTitle.Font = .Font.GothamBold
listTitle.TextXAlignment = .TextXAlignment.Left
listTitle.Parent = contentFrame
scrollFrame = .()
scrollFrame.Name =
scrollFrame.Size = .(, -, , -)
scrollFrame.Position = .(, , , )
scrollFrame.BackgroundTransparency =
scrollFrame.BorderSizePixel =
scrollFrame.ScrollBarThickness =
scrollFrame.ScrollBarImageColor3 = .(, , )
scrollFrame.CanvasSize = .(, , , )
scrollFrame.Parent = contentFrame
listLayout = .()
listLayout.FillDirection = .FillDirection.Vertical
listLayout.HorizontalAlignment = .HorizontalAlignment.Center
listLayout.SortOrder = .SortOrder.LayoutOrder
listLayout.Padding = .(, )
listLayout.Parent = scrollFrame
dragging =
dragStartPos =
frameStartPos =
header.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1
dragging =
dragStartPos = input.Position
frameStartPos = mainFrame.Position
input.Changed:(()
input.UserInputState == .UserInputState.End
dragging =
)
)
UserInputService.InputChanged:((input)
dragging input.UserInputType == .UserInputType.MouseMovement
delta = input.Position - dragStartPos
mainFrame.Position = .(
frameStartPos.X.Scale,
frameStartPos.X.Offset + delta.X,
frameStartPos.Y.Scale,
frameStartPos.Y.Offset + delta.Y
)
)
UserInputService.InputEnded:((input)
input.UserInputType == .UserInputType.MouseButton1
dragging =
)
()
countLabel.Text = #checkpoints ..
()
scrollFrame.CanvasSize = .(, , , listLayout.AbsoluteContentSize.Y + )
(id, name, position)
entry = .()
entry.Name = .. id
entry.Size = .(, -, , )
entry.BackgroundColor3 = .(, , )
entry.BorderSizePixel =
entry.LayoutOrder = id
entry.Parent = scrollFrame
entryCorner = .()
entryCorner.CornerRadius = .(, )
entryCorner.Parent = entry
entryStroke = .()
entryStroke.Color = .(, , )
entryStroke.Thickness =
entryStroke.Parent = entry
dot = .()
dot.Size = .(, , , )
dot.Position = .(, , , -)
dot.BackgroundColor3 = .(, , )
dot.BorderSizePixel =
dot.Parent = entry
dotCorner = .()
dotCorner.CornerRadius = .(, )
dotCorner.Parent = dot
nameLabel = .()
nameLabel.Size = .(, -, , )
nameLabel.Position = .(, , , )
nameLabel.BackgroundTransparency =
nameLabel.Text = name
nameLabel.TextColor3 = .(, , )
nameLabel.TextSize =
nameLabel.Font = .Font.GothamMedium
nameLabel.TextXAlignment = .TextXAlignment.Left
nameLabel.TextTruncate = .TextTruncate.AtEnd
nameLabel.Parent = entry
posLabel = .()
posLabel.Size = .(, -, , )
posLabel.Position = .(, , , )
posLabel.BackgroundTransparency =
posLabel.Text = .(, position.X, position.Y, position.Z)
posLabel.TextColor3 = .(, , )
posLabel.TextSize =
posLabel.Font = .Font.Gotham
posLabel.TextXAlignment = .TextXAlignment.Left
posLabel.Parent = entry
tpBtn = .()
tpBtn.Size = .(, , , )
tpBtn.Position = .(, -, , -)
tpBtn.BackgroundColor3 = .(, , )
tpBtn.BorderSizePixel =
tpBtn.Text =
tpBtn.TextColor3 = .(, , )
tpBtn.TextSize =
tpBtn.Font = .Font.GothamBold
tpBtn.Parent = entry
tpCorner = .()
tpCorner.CornerRadius = .(, )
tpCorner.Parent = tpBtn
delBtn = .()
delBtn.Size = .(, , , )
delBtn.Position = .(, -, , -)
delBtn.BackgroundColor3 = .(, , )
delBtn.BorderSizePixel =
delBtn.Text =
delBtn.TextColor3 = .(, , )
delBtn.TextSize =
delBtn.Font = .Font.GothamBold
delBtn.Parent = entry
delCorner = .()
delCorner.CornerRadius = .(, )
delCorner.Parent = delBtn
tpBtn.MouseButton1Click:(()
char = player.Character
char
root = char:()
root
root.CFrame = .(position + .(, , ))
)
tpBtn.MouseEnter:(() tpBtn.BackgroundColor3 = .(, , ) )
tpBtn.MouseLeave:(() tpBtn.BackgroundColor3 = .(, , ) )
delBtn.MouseEnter:(() delBtn.BackgroundColor3 = .(, , ) )
delBtn.MouseLeave:(() delBtn.BackgroundColor3 = .(, , ) )
delBtn.MouseButton1Click:(()
i, cp (checkpoints)
cp.id == id
cp.sphere cp.sphere.Parent
cp.sphere:()
.(checkpoints, i)
entry:()
()
()
)
()
(name, position)
sphere = .()
sphere.Name = .. name
sphere.Shape = .PartType.Ball
sphere.Size = .(, , )
sphere.Position = position
sphere.Anchored =
sphere.CanCollide =
sphere.CastShadow =
sphere.Material = .Material.Neon
sphere.Color = .(, , )
sphere.Transparency =
billboard = .()
billboard.Size = .(BILLBOARD_WORLD_WIDTH, , BILLBOARD_WORLD_HEIGHT, )
billboard.StudsOffset = .(, , )
billboard.AlwaysOnTop =
billboard.MaxDistance = BILLBOARD_MAX_DISTANCE
billboard.LightInfluence =
billboard.Parent = sphere
billboardLabel = .()
billboardLabel.Size = .(, , , )
billboardLabel.BackgroundColor3 = .(, , )
billboardLabel.BackgroundTransparency =
billboardLabel.Text = name
billboardLabel.TextColor3 = .(, , )
billboardLabel.TextScaled =
billboardLabel.Font = .Font.GothamBold
billboardLabel.Parent = billboard
textConstraint = .()
textConstraint.MaxTextSize =
textConstraint.MinTextSize =
textConstraint.Parent = billboardLabel
bbCorner = .()
bbCorner.CornerRadius = .(, )
bbCorner.Parent = billboardLabel
sphere.Parent = checkpointFolder
sphere
(name, position)
#checkpoints >= MAX_CHECKPOINTS
countLabel.TextColor3 = .(, , )
.(, ()
countLabel.TextColor3 = .(, , )
)
idCounter = idCounter +
id = idCounter
sphere = (name, position)
.(checkpoints, { id = id, name = name, position = position, sphere = sphere })
(id, name, position)
()
()
char = player.Character
char
humanoid = char:()
humanoid
raw = (speedInputBox.Text)
raw
speedInputBox.Text = (humanoid.WalkSpeed)
clamped = .(.(raw), , MAX_SPEED)
humanoid.WalkSpeed = clamped
speedInputBox.Text = (clamped)
TweenService:(speedSectionStroke, TweenInfo.(), {
Color = .(, , ), Transparency = ,
}):()
.(, ()
TweenService:(speedSectionStroke, TweenInfo.(), {
Color = .(, , ), Transparency = ,
}):()
)
applySpeedBtn.MouseButton1Click:(applySpeed)
speedInputBox.FocusLost:((enterPressed)
enterPressed ()
)
applySpeedBtn.MouseEnter:(() applySpeedBtn.BackgroundColor3 = .(, , ) )
applySpeedBtn.MouseLeave:(() applySpeedBtn.BackgroundColor3 = .(, , ) )
player.CharacterAdded:((newChar)
character = newChar
rootPart = newChar:()
humanoid = newChar:()
humanoid.WalkSpeed = .((speedInputBox.Text) DEFAULT_SPEED, , MAX_SPEED)
)
createBtn.MouseButton1Click:(()
char = player.Character
char
root = char:()
root
rawName = nameInput.Text
cpName = (rawName ~= rawName) ( .. (idCounter + ))
(cpName, root.Position)
nameInput.Text =
)
createBtn.MouseEnter:(() createBtn.BackgroundColor3 = .(, , ) )
createBtn.MouseLeave:(() createBtn.BackgroundColor3 = .(, , ) )
collapsedHeight =
expandedHeight =
toggleBtn.MouseButton1Click:(()
isCollapsed = isCollapsed
isCollapsed
mainFrame:(.(, , , collapsedHeight), .EasingDirection.Out, .EasingStyle.Quad, , )
toggleBtn.Text =
contentFrame.Visible =
contentFrame.Visible =
mainFrame:(.(, , , expandedHeight), .EasingDirection.Out, .EasingStyle.Quad, , )
toggleBtn.Text =
)
closeBtn.MouseButton1Click:(()
_, cp (checkpoints)
cp.sphere cp.sphere.Parent
cp.sphere:()
checkpoints = {}
checkpointFolder checkpointFolder.Parent
checkpointFolder:()
TweenService:(mainFrame, TweenInfo.(, .EasingStyle.Quad), {
BackgroundTransparency = ,
Size = .(, , , ),
}):()
.(, ()
screenGui:()
)
)
closeBtn.MouseEnter:(() closeBtn.BackgroundColor3 = .(, , ) )
closeBtn.MouseLeave:(() closeBtn.BackgroundColor3 = .(, , ) )
UserInputService.InputBegan:((input, gameProcessed)
gameProcessed
input.KeyCode == .KeyCode.F5
char = player.Character
char
root = char:()
root
rawName = nameInput.Text
cpName = (rawName ~= rawName) ( .. (idCounter + ))
(cpName, root.Position)
nameInput.Text =
)
listLayout:():(updateScrollCanvas)
()
Never paste your .ROBLOSECURITY cookie anywhere, and use an alt account with scripts.

Universal