Run it
Copy the script and paste it into your executor.
local players = game:GetService("Players")
local userInputService = game:GetService("UserInputService")
local runService = :()
targetPlayer =
orbitDistance =
orbitSpeed =
orbitToggleKey = .KeyCode.V
isOrbiting =
()
nearestDistance = .huge
nearestPlayer =
localCharacter = players.LocalPlayer.Character
localCharacter
localRootPart = localCharacter:()
localRootPart
_, player (players:())
player ~= players.LocalPlayer
character = player.Character
character character:()
distance = (character.HumanoidRootPart.Position - localRootPart.Position).Magnitude
distance < nearestDistance
nearestDistance = distance
nearestPlayer = player
nearestPlayer
()
targetPlayer = ()
isOrbiting =
()
targetPlayer =
isOrbiting =
userInputService.InputBegan:((input, gameProcessedEvent)
gameProcessedEvent input.KeyCode == orbitToggleKey
isOrbiting
()
()
)
lastTime = ()
currentAngle =
runService.Heartbeat:((deltaTime)
isOrbiting targetPlayer
character = players.LocalPlayer.Character
targetCharacter = targetPlayer.Character
character character:() targetCharacter
currentAngle = currentAngle + orbitSpeed * deltaTime
xOffset = .(currentAngle) * orbitDistance
zOffset = .(currentAngle) * orbitDistance
targetPosition = targetCharacter.HumanoidRootPart.Position
orbitPosition = .(targetPosition.X + xOffset, targetPosition.Y, targetPosition.Z + zOffset)
humanoidRootPart = character:()
humanoidRootPart.CFrame = .(orbitPosition, targetPosition)
)
Literally, Orbit anyone you want when you press V