
Keyless

--════════════════════════════════════════════════════════════════
-- 🔴 GLOW THROW v12
--════════════════════════════════════════════════════════════════
repeat task.wait() until game:IsLoaded()
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
repeat task.wait() until Players.LocalPlayer
local LocalPlayer = Players.LocalPlayer
local playerGui = LocalPlayer:WaitForChild("PlayerGui")
local camera = workspace.CurrentCamera
local CONFIG = {
throwSpeed = 90,
throwUpward = 12,
size = 1.2,
colorRed = Color3.fromRGB(255, 40, 40),
colorWhite = Color3.fromRGB(255, 255, 255),
lightColorRed = Color3.fromRGB(255, 80, 80),
lightColorWhite = Color3.fromRGB(255, 255, 255),
lightRange = 30,
lightBrightness = 3,
cooldown = 0.8,
glowTime = 8,
fadeTime = 1.5,
beamThickness = 0.25,
fakeParent = true,
-- 🔥 effect
flingForward = 40,
flingUp = 25,
burnTime = 4,
ragdollTime = 0.5,
}
local canThrow = true
local oldGui = playerGui:FindFirstChild("GlowThrowGui")
if oldGui then oldGui:Destroy() end
local throwSound = Instance.new("Sound")
throwSound.SoundId = "rbxassetid://6042053626"
throwSound.Volume = 2
throwSound.PlaybackSpeed = 1.3
throwSound.Parent = playerGui
-- ═════════ GUI ═════════
local gui = Instance.new("ScreenGui")
gui.Name = "GlowThrowGui"
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
gui.DisplayOrder = 150
gui.Parent = playerGui
local throwBtn = Instance.new("TextButton")
throwBtn.Size = UDim2.new(0, 80, 0, 80)
throwBtn.Position = UDim2.new(1, -100, 1, -320)
throwBtn.AnchorPoint = Vector2.new(1, 1)
throwBtn.BackgroundColor3 = Color3.fromRGB(180, 30, 30)
throwBtn.BackgroundTransparency = 0.15
throwBtn.Text = "🔴"
throwBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
throwBtn.TextSize = 36
throwBtn.Font = Enum.Font.GothamBold
throwBtn.BorderSizePixel = 0
throwBtn.AutoButtonColor = false
throwBtn.Parent = gui
Instance.new("UICorner", throwBtn).CornerRadius = UDim.new(1, 0)
local throwStroke = Instance.new("UIStroke")
throwStroke.Color = Color3.fromRGB(255, 100, 100)
throwStroke.Thickness = 3
throwStroke.Transparency = 0.3
throwStroke.Parent = throwBtn
task.spawn(function()
while gui.Parent do
if canThrow then
throwStroke.Transparency = 0.1 + math.abs(math.sin(tick() * 3)) * 0.4
throwBtn.BackgroundTransparency = 0.05 + math.abs(math.sin(tick() * 3)) * 0.15
end
task.wait(0.05)
end
end)
--════════════════════════════════════════════════════════════════
-- 🎯 MONSTER
--════════════════════════════════════════════════════════════════
local function findMonster()
for _, obj in ipairs(workspace:GetDescendants()) do
if (obj:IsA("BasePart") or obj:IsA("Model"))
and obj.Name:lower() == "monster" then
return obj
end
end
return nil
end
local function getMonsterPart(monster)
if not monster or not monster.Parent then return nil end
if monster:IsA("BasePart") then return monster end
if monster:IsA("Model") then
if monster.PrimaryPart then return monster.PrimaryPart end
return monster:FindFirstChildWhichIsA("BasePart", true)
end
return nil
end
--════════════════════════════════════════════════════════════════
-- 📏 BEAM LINE
--════════════════════════════════════════════════════════════════
local function createBeamLine(ball, monster)
local ballAtt = Instance.new("Attachment")
ballAtt.Position = Vector3.zero
ballAtt.Parent = ball
local beam = Instance.new("Beam")
beam.Attachment0 = ballAtt
beam.Attachment1 = nil
beam.Width0 = CONFIG.beamThickness
beam.Width1 = CONFIG.beamThickness
beam.Color = ColorSequence.new(Color3.fromRGB(255, 255, 255))
beam.Transparency = NumberSequence.new(0)
beam.FaceCamera = true
beam.LightEmission = 1
beam.Segments = 2
beam.Parent = ball
local monsterAtt = nil
local conn
conn = RunService.Heartbeat:Connect(function()
if not ball or not ball.Parent then
if conn then conn:Disconnect() end
if monsterAtt then monsterAtt:Destroy() end
return
end
local currentMonster = monster
if not currentMonster or not currentMonster.Parent then
currentMonster = findMonster()
end
if not currentMonster then
if monsterAtt then pcall(function() monsterAtt:Destroy() end) monsterAtt = nil end
beam.Enabled = false
return
end
local monsterPart = getMonsterPart(currentMonster)
if not monsterPart then beam.Enabled = false return end
if not monsterAtt or monsterAtt.Parent ~= monsterPart then
if monsterAtt then monsterAtt:Destroy() end
monsterAtt = Instance.new("Attachment")
monsterAtt.Position = Vector3.zero
monsterAtt.Parent = monsterPart
beam.Attachment1 = monsterAtt
end
beam.Enabled = true
end)
return beam, conn
end
--════════════════════════════════════════════════════════════════
-- effects
--════════════════════════════════════════════════════════════════
local function applyHitEffect(plr, hitPart)
local char = plr.Character
if not char then return end
local hrp = char:FindFirstChild("HumanoidRootPart")
local hum = char:FindFirstChildOfClass("Humanoid")
if not hrp or not hum then return end
--
local originalCFrame = hrp.CFrame
--
local direction = camera.CFrame.LookVector
hrp.AssemblyLinearVelocity = direction * CONFIG.flingForward + Vector3.new(0, CONFIG.flingUp, 0)
hrp.AssemblyAngularVelocity = Vector3.new(
(math.random() - 0.5) * 20,
(math.random() - 0.5) * 20,
(math.random() - 0.5) * 20
)
--
hum.PlatformStand = true
task.delay(CONFIG.ragdollTime, function()
if hum and hum.Parent then
hum.PlatformStand = false
end
end)
--
local fireObjects = {}
for _, part in ipairs(char:GetDescendants()) do
if part:IsA("BasePart") then
local fire = Instance.new("Fire")
fire.Name = "HitFire"
fire.Heat = 20
fire.Size = 5
fire.Color = Color3.fromRGB(255, 180, 60)
fire.SecondaryColor = Color3.fromRGB(255, 80, 20)
fire.Parent = part
table.insert(fireObjects, fire)
local light = Instance.new("PointLight")
light.Name = "HitFireLight"
light.Color = Color3.fromRGB(255, 120, 40)
light.Range = 12
light.Brightness = 4
light.Shadows = false
light.Parent = part
table.insert(fireObjects, light)
end
end
-- 🔊 Звук огня
local fireSound = Instance.new("Sound")
fireSound.SoundId = "rbxassetid://6042053626"
fireSound.Volume = 1.5
fireSound.PlaybackSpeed = 0.8
fireSound.Looped = true
fireSound.Parent = hrp
fireSound:Play()
table.insert(fireObjects, fireSound)
-- thing
local fireEmitter = Instance.new("ParticleEmitter")
fireEmitter.Texture = "rbxasset://textures/particles/fire_main.dds"
fireEmitter.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 220, 100)),
ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255, 120, 30)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(200, 40, 10))
})
fireEmitter.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 1),
NumberSequenceKeypoint.new(1, 0)
})
fireEmitter.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.3),
NumberSequenceKeypoint.new(1, 1)
})
fireEmitter.Lifetime = NumberRange.new(0.5, 1)
fireEmitter.Speed = NumberRange.new(3, 8)
fireEmitter.SpreadAngle = Vector2.new(180, 180)
fireEmitter.Rate = 50
fireEmitter.LightEmission = 1
fireEmitter.Parent = hrp
table.insert(fireObjects, fireEmitter)
task.delay(CONFIG.burnTime, function()
if not char or not char.Parent then return end
if not hrp or not hrp.Parent then return end
hrp.Anchored = true
hrp.AssemblyLinearVelocity = Vector3.zero
hrp.AssemblyAngularVelocity = Vector3.zero
hrp.CFrame = originalCFrame
task.wait(0.05)
hrp.Anchored = false
for _, obj in ipairs(fireObjects) do
if obj and obj.Parent then
if obj:IsA("Fire") then
TweenService:Create(obj, TweenInfo.new(0.5), {Size = 0}):Play()
task.delay(0.5, function() if obj.Parent then obj:Destroy() end end)
elseif obj:IsA("PointLight") then
TweenService:Create(obj, TweenInfo.new(0.5), {Brightness = 0}):Play()
task.delay(0.5, function() if obj.Parent then obj:Destroy() end end)
elseif obj:IsA("ParticleEmitter") then
obj.Enabled = false
task.delay(1, function() if obj.Parent then obj:Destroy() end end)
elseif obj:IsA("Sound") then
obj:Stop()
task.delay(0.5, function() if obj.Parent then obj:Destroy() end end)
end
end
end
end)
end
--════════════════════════════════════════════════════════════════
-- ball create
--════════════════════════════════════════════════════════════════
local function createGlowBall()
local char = LocalPlayer.Character
if not char then return end
local hrp = char:FindFirstChild("HumanoidRootPart")
if not hrp then return end
local monster = findMonster()
local hasMonster = monster ~= nil
local ballColor = hasMonster and CONFIG.colorWhite or CONFIG.colorRed
local lightColor = hasMonster and CONFIG.lightColorWhite or CONFIG.lightColorRed
local direction = camera.CFrame.LookVector
local startPos = hrp.Position + direction * 2 + Vector3.new(0, 1.5, 0)
local container = Instance.new("Folder")
container.Name = CONFIG.fakeParent and ("Effect" .. math.random(1000, 9999)) or "GlowBall"
container.Parent = workspace
local ball = Instance.new("Part")
ball.Name = "Ball"
ball.Shape = Enum.PartType.Ball
ball.Size = Vector3.new(CONFIG.size, CONFIG.size, CONFIG.size)
ball.Material = Enum.Material.Neon
ball.Color = ballColor
ball.CanCollide = true
ball.Anchored = false
ball.CFrame = CFrame.new(startPos)
ball.Parent = container
local core = Instance.new("Part")
core.Name = "Core"
core.Shape = Enum.PartType.Ball
core.Size = Vector3.new(CONFIG.size * 1.2, CONFIG.size * 1.2, CONFIG.size * 1.2)
core.Material = Enum.Material.Neon
core.Color = hasMonster and Color3.fromRGB(255, 255, 255) or Color3.fromRGB(255, 200, 200)
core.CanCollide = false
core.CanQuery = false
core.CanTouch = false
core.Anchored = false
core.Massless = true
core.Transparency = 0.4
core.CFrame = ball.CFrame
core.Parent = container
local cw = Instance.new("WeldConstraint")
cw.Part0 = core; cw.Part1 = ball; cw.Parent = core
local light = Instance.new("PointLight")
light.Color = lightColor
light.Range = CONFIG.lightRange
light.Brightness = CONFIG.lightBrightness
light.Shadows = true
light.Parent = ball
local smoke = Instance.new("ParticleEmitter")
smoke.Texture = "rbxasset://textures/particles/smoke_main.dds"
smoke.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, Color3.fromRGB(80, 80, 80)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(180, 180, 180))
})
smoke.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.8),
NumberSequenceKeypoint.new(1, 2)
})
smoke.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.5),
NumberSequenceKeypoint.new(1, 1)
})
smoke.Lifetime = NumberRange.new(1.2, 2)
smoke.Speed = NumberRange.new(2, 5)
smoke.SpreadAngle = Vector2.new(180, 180)
smoke.Rate = 8
smoke.LightEmission = 0.3
smoke.Parent = ball
local sparks = Instance.new("ParticleEmitter")
sparks.Texture = "rbxassetid://287090261"
sparks.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 220, 120)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 80, 40))
})
sparks.Size = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.4),
NumberSequenceKeypoint.new(1, 0)
})
sparks.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0),
NumberSequenceKeypoint.new(1, 1)
})
sparks.Lifetime = NumberRange.new(0.5, 1)
sparks.Speed = NumberRange.new(6, 15)
sparks.SpreadAngle = Vector2.new(180, 180)
sparks.Rate = 10
sparks.LightEmission = 1
sparks.Acceleration = Vector3.new(0, -20, 0)
sparks.Parent = ball
local att0 = Instance.new("Attachment")
att0.Position = Vector3.new(0, 0.5, 0)
att0.Parent = ball
local att1 = Instance.new("Attachment")
att1.Position = Vector3.new(0, -0.5, 0)
att1.Parent = ball
local trail = Instance.new("Trail")
trail.Attachment0 = att0
trail.Attachment1 = att1
trail.Lifetime = 0.5
trail.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, ballColor),
ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 220, 220))
})
trail.Transparency = NumberSequence.new({
NumberSequenceKeypoint.new(0, 0.2),
NumberSequenceKeypoint.new(1, 1)
})
trail.WidthScale = NumberSequence.new(2)
trail.LightEmission = 1
trail.Parent = ball
ball.AssemblyLinearVelocity = direction * CONFIG.throwSpeed + Vector3.new(0, CONFIG.throwUpward, 0)
ball.AssemblyAngularVelocity = Vector3.new(
(math.random() - 0.5) * 10,
(math.random() - 0.5) * 10,
(math.random() - 0.5) * 10
)
local line, lineConn = nil, nil
if hasMonster then
line, lineConn = createBeamLine(ball, monster)
end
return container, ball, light, core, line, lineConn
end
--════════════════════════════════════════════════════════════════
-- stop
--════════════════════════════════════════════════════════════════
local function startGlowing(container, ball, light, core, line, lineConn)
if not container or not container.Parent then return end
ball.Anchored = true
ball.AssemblyLinearVelocity = Vector3.zero
ball.AssemblyAngularVelocity = Vector3.zero
local pulseConn
pulseConn = RunService.Heartbeat:Connect(function()
if not container or not container.Parent then
if pulseConn then pulseConn:Disconnect() end
return
end
if light and light.Parent then
light.Brightness = CONFIG.lightBrightness + math.sin(tick() * 4) * 1.5
end
end)
task.delay(CONFIG.glowTime, function()
if not container or not container.Parent then return end
if pulseConn then pulseConn:Disconnect() end
if lineConn then lineConn:Disconnect() end
local fadeInfo = TweenInfo.new(CONFIG.fadeTime, Enum.EasingStyle.Quad, Enum.EasingDirection.In)
TweenService:Create(ball, fadeInfo, {Transparency = 1}):Play()
TweenService:Create(core, fadeInfo, {Transparency = 1}):Play()
TweenService:Create(light, fadeInfo, {Brightness = 0}):Play()
for _, obj in ipairs(container:GetDescendants()) do
if obj:IsA("ParticleEmitter") then obj.Enabled = false end
end
task.wait(CONFIG.fadeTime + 0.2)
if container then container:Destroy() end
end)
end
--════════════════════════════════════════════════════════════════
-- throw
--════════════════════════════════════════════════════════════════
local function doThrow()
if not canThrow then return end
canThrow = false
local s = throwSound:Clone()
s.Parent = playerGui
s:Play()
task.delay(2, function() s:Destroy() end)
local origG = workspace.Gravity
workspace.Gravity = origG * 0.5
task.delay(0.15, function() workspace.Gravity = origG end)
local container, ball, light, core, line, lineConn = createGlowBall()
if not container then
canThrow = true
return
end
local stopped = false
local hitPlayers = {}
ball.Touched:Connect(function(hit)
if stopped then return end
if hit:IsDescendantOf(LocalPlayer.Character) then return end
if hit:IsDescendantOf(container) then return end
-- player check
local hitChar = hit:FindFirstAncestorOfClass("Model")
local hitPlayer = hitChar and Players:GetPlayerFromCharacter(hitChar)
if hitPlayer and not hitPlayers[hitPlayer] then
hitPlayers[hitPlayer] = true
applyHitEffect(hitPlayer, hit)
end
stopped = true
task.wait(0.05)
startGlowing(container, ball, light, core, line, lineConn)
end)
task.delay(6, function()
if not stopped and container and container.Parent then
stopped = true
startGlowing(container, ball, light, core, line, lineConn)
end
end)
task.delay(CONFIG.cooldown, function()
canThrow = true
end)
end
--════════════════════════════════════════════════════════════════
-- ow
--════════════════════════════════════════════════════════════════
throwBtn.MouseButton1Click:Connect(doThrow)
throwBtn.TouchTap:Connect(doThrow)
UserInputService.InputBegan:Connect(function(input, gp)
if gp then return end
if input.KeyCode == Enum.KeyCode.E then
doThrow()
end
end)
print("[Glow Throw v12]")
so because i couldnt contact you in private, i need to warn people using this, this script has a serious memory leak problem that can make you lag when u play a while (30 min-1 hour which is normal for r&d) and after that period of time it can take up to six or even NINE gigs of ram
Hello! Please remove the game name in the title. Thankyou!