Run it
Copy the script and paste it into your executor.
ORBIT_RADIUS =
ORBIT_HEIGHT =
ORBIT_SPEED =
Players = :()
RunService = :()
Workspace = :()
LocalPlayer = Players.LocalPlayer
ORBIT_START_POS =
.() LocalPlayer.Character LocalPlayer.Character:()
ORBIT_START_POS = LocalPlayer.Character.HumanoidRootPart.CFrame
gui = .(, .CoreGui)
gui.Name =
gui.ResetOnSpawn =
frame = .(, gui)
frame.Size = .(, , , )
frame.Position = .(, , , -)
frame.BackgroundColor3 = .(, , )
frame.BackgroundTransparency =
frame.Draggable =
frame.Active =
radiusLabel = .(, frame)
radiusLabel.Size = .(, , , )
radiusLabel.Text =
radiusLabel.TextColor3 = .(, , )
radiusLabel.BackgroundTransparency =
radiusBox = .(, frame)
radiusBox.Position = .(, , , )
radiusBox.Size = .(, , , )
radiusBox.Text = (ORBIT_RADIUS)
speedLabel = .(, frame)
speedLabel.Position = .(, , , )
speedLabel.Size = .(, , , )
speedLabel.Text =
speedLabel.TextColor3 = .(, , )
speedLabel.BackgroundTransparency =
speedBox = .(, frame)
speedBox.Position = .(, , , )
speedBox.Size = .(, , , )
speedBox.Text = (ORBIT_SPEED)
radiusBox.FocusLost:(()
val = (radiusBox.Text)
val ORBIT_RADIUS = val
)
speedBox.FocusLost:(()
val = (speedBox.Text)
val ORBIT_SPEED = val
)
blocks = {}
orbitTick =
torso =
character =
()
character = LocalPlayer.Character LocalPlayer.CharacterAdded:()
torso = character:() character:() character:()
(pos)
part = .()
part.Size = .(, , )
part.Anchored =
part.CanCollide =
part.Transparency =
part.BrickColor = BrickColor.()
part.Position = pos
part.Material = .Material.Neon
part:(, )
part.CustomPhysicalProperties = PhysicalProperties.(, , )
part.Parent = Workspace
part
(block, hatHandle)
_, v (hatHandle:())
v:() v:() v:()
v:()
_, v (block:())
v:()
v:()
att1 = .(, block)
att2 = .(, hatHandle)
alignPos = .(, hatHandle)
alignPos.Attachment0 = att2
alignPos.Attachment1 = att1
alignPos.MaxForce =
alignPos.Responsiveness = .huge
alignPos.RigidityEnabled =
alignOri = .(, hatHandle)
alignOri.Attachment0 = att2
alignOri.Attachment1 = att1
alignOri.MaxTorque =
alignOri.Responsiveness = .huge
alignOri.RigidityEnabled =
bv = .(, block)
bv.MaxForce = .(, , )
bv.Velocity = .zero
()
_, b (blocks)
b.block b.block:()
blocks = {}
()
accessories = {}
_, v (character:())
v:() v:()
.(accessories, v)
i, acc (accessories)
handle = acc:()
block = (handle.Position)
(block, handle)
blocks[i] = {block = block, handle = handle, index = i, total = #accessories}
()
()
hum = character:()
hum hum.Health =
playerDropdown.Text = LocalPlayer.Name
dropdownFrame = .(, frame)
dropdownFrame.Position = .(, , , )
dropdownFrame.Size = .(, , , )
dropdownFrame.CanvasSize = .(, , , )
dropdownFrame.ScrollBarThickness =
dropdownFrame.BackgroundTransparency =
dropdownFrame.BackgroundColor3 = .(, , )
dropdownFrame.Visible =
()
dropdownFrame:()
count =
_, plr (Players:())
count +=
btn = .(, dropdownFrame)
btn.Size = .(, , , )
btn.Position = .(, , , (count - ) * )
btn.Text = plr.Name
btn.BackgroundTransparency =
btn.BackgroundColor3 = .(, , )
btn.MouseButton1Click:(()
selectedPlayer = plr
playerDropdown.Text = plr.Name
dropdownFrame.Visible =
)
dropdownFrame.CanvasSize = .(, , , count * )
playerDropdown.MouseButton1Click:(()
dropdownFrame.Visible = dropdownFrame.Visible
()
)
RunService.Heartbeat:((dt)
selectedPlayer.Character
root = selectedPlayer.Character:()
root
orbitTick += dt
_, b (blocks)
i, total = b.index, b.total
angle = ( * .pi / total) * i + orbitTick * ORBIT_SPEED
offset = .(.(angle) * ORBIT_RADIUS, ORBIT_HEIGHT, .(angle) * ORBIT_RADIUS)
goalPos = root.Position + offset
block = b.block
bv = block:()
bv
dir = (goalPos - block.Position)
dir.Magnitude >
bv.Velocity = dir.Unit *
bv.Velocity = .zero
)
.(()
_, b (blocks)
block = b.block
handle = b.handle
block handle
_, v (handle:())
v:() v:() v:()
_, v (block:())
v:() v:()
att1 = .(, block)
att2 = .(, handle)
alignPos = .(, handle)
alignPos.Attachment0 = att2
alignPos.Attachment1 = att1
alignPos.MaxForce =
alignPos.Responsiveness = .huge
alignPos.RigidityEnabled =
alignOri = .(, handle)
alignOri.Attachment0 = att2
alignOri.Attachment1 = att1
alignOri.MaxTorque =
alignOri.Responsiveness = .huge
alignOri.RigidityEnabled =
.()
)
LocalPlayer.CharacterAdded:((char)
character = char
hum = char:(, )
hrp =
.()
hrp = char:() char:() char:()
hum hrp hum.Health >
.()
ORBIT_START_POS
hrp.CFrame = ORBIT_START_POS
.()
hum.Health =
.()
()
)
camPart = .(, Workspace)
camPart.Anchored =
camPart.CanCollide =
camPart.Size = .(, , )
camPart.CFrame = ORBIT_START_POS
camPart.Transparency =
camPart.BrickColor = BrickColor.()
Workspace.CurrentCamera.CameraSubject = camPart
Workspace.CurrentCamera.CameraType = .CameraType.Attach
Universal