Run it
Copy the script and paste it into your executor.
Players = :()
Debris = :()
RunService = :()
TweenService = :()
BLACK_HOLE_SIZE =
GROWTH_RATE =
ITEM_GROWTH =
PULL_FORCE =
TRAP_DISTANCE =
DARK_ZONE_SIZE =
blackHole =
darkZone =
trappedPlayers = {}
originalSpawnLocations = {}
()
blackHole = .()
blackHole.Size = .(BLACK_HOLE_SIZE, BLACK_HOLE_SIZE, BLACK_HOLE_SIZE)
blackHole.Position = .(, , )
blackHole.Anchored =
blackHole.CanCollide =
blackHole.Shape = .PartType.Ball
blackHole.BrickColor = BrickColor.()
blackHole.Material = .Material.Neon
blackHole.Parent =
tweenInfo = TweenInfo.(, .EasingStyle.Sine, .EasingDirection.InOut, -, )
swirlGoal = { = blackHole.CFrame * .(, .(), ) }
swirlTween = TweenService:(blackHole, tweenInfo, swirlGoal)
swirlTween:()
emitter = .()
emitter.Texture =
emitter.Size = NumberSequence.()
emitter.Rate =
emitter.Lifetime = NumberRange.(, )
emitter.Speed = NumberRange.()
emitter.Parent = blackHole
()
darkZone = .()
darkZone.Size = .(DARK_ZONE_SIZE, DARK_ZONE_SIZE, DARK_ZONE_SIZE)
darkZone.Position = .(, -, )
darkZone.Anchored =
darkZone.CanCollide =
darkZone.Transparency =
darkZone.BrickColor = BrickColor.()
darkZone.Parent =
darkSpawn = .()
darkSpawn.Size = .(, , )
darkSpawn.Position = darkZone.Position + .(, , )
darkSpawn.Anchored =
darkSpawn.Parent = darkZone
(player)
trappedPlayers[player] player.Character player.Character:()
trappedPlayers[player] =
character = player.Character
humanoidRootPart = character.HumanoidRootPart
humanoidRootPart.CFrame = .(darkZone.Position + .(, , ))
playerGui = player:()
playerGui
_, gui (playerGui:())
gui.Enabled =
screenGui = .()
screenGui.IgnoreGuiInset =
blackFrame = .()
blackFrame.Size = .(, , , )
blackFrame.BackgroundColor3 = .(, , )
blackFrame.BackgroundTransparency =
blackFrame.Parent = screenGui
screenGui.Parent = playerGui
player.CharacterAdded:((newCharacter)
trappedPlayers[player]
()
newCharacter:().CFrame = .(darkZone.Position + .(, , ))
)
()
_, player (Players:())
tool = .()
tool.Name =
tool.RequiresHandle =
tool.Parent = player.Backpack
tool.Activated:(()
blackHole
mouse = player:()
targetPos = mouse.Hit.Position
tweenInfo = TweenInfo.(, .EasingStyle.Sine, .EasingDirection.InOut)
moveGoal = { Position = targetPos }
moveTween = TweenService:(blackHole, tweenInfo, moveGoal)
moveTween:()
)
Players.PlayerAdded:((player)
tool = .()
tool.Name =
tool.RequiresHandle =
tool.Parent = player.Backpack
tool.Activated:(()
blackHole
mouse = player:()
targetPos = mouse.Hit.Position
tweenInfo = TweenInfo.(, .EasingStyle.Sine, .EasingDirection.InOut)
moveGoal = { Position = targetPos }
moveTween = TweenService:(blackHole, tweenInfo, moveGoal)
moveTween:()
)
)
()
blackHole
blackHole.Size = blackHole.Size + .(GROWTH_RATE, GROWTH_RATE, GROWTH_RATE) /
_, player (Players:())
player.Character player.Character:() trappedPlayers[player]
humanoidRootPart = player.Character.HumanoidRootPart
distance = (blackHole.Position - humanoidRootPart.Position).Magnitude
distance < TRAP_DISTANCE
(player)
distance < PULL_FORCE
direction = (blackHole.Position - humanoidRootPart.Position).Unit
humanoidRootPart.Velocity = direction * (PULL_FORCE - distance)
_, part (:())
part:() part ~= blackHole part ~= darkZone
distance = (blackHole.Position - part.Position).Magnitude
distance < PULL_FORCE
direction = (blackHole.Position - part.Position).Unit
part.Anchored
newPos = part.Position + direction * (PULL_FORCE - distance) *
part.CFrame = .(newPos)
part.Velocity = direction * (PULL_FORCE - distance)
distance < TRAP_DISTANCE
blackHole.Size = blackHole.Size + .(ITEM_GROWTH, ITEM_GROWTH, ITEM_GROWTH) /
Debris:(part, )
RunService.Heartbeat:()
()
()
()
.(pullObjects)()
_, (:())
:()
originalSpawnLocations[] =
Players.PlayerAdded:((player)
player.CharacterAdded:((character)
trappedPlayers[player]
()
character:().CFrame = .(darkZone.Position + .(, , ))
)
)--created for roblox studio --u can use this in roblox player but it's visible only for u --BETA! --ORIGINAL VERSION CREATED BY ME ON GITHUB + DOCUMENTATION: /ravyyxd/Blackhole/blob/main/bin/script.lua
Never paste your .ROBLOSECURITY cookie anywhere, and use an alt account with scripts.

Universal