hollow purple
Key Required

hollow purple

[SKY ASSASSIN] Jujutsu ShenanigansFeeyyyFeeyyy 3.1K views 10.7K executesUpdated Mar 9, 2026
2.5/ 5(2 votes)
1150% Positive
Lua Script•329 lines (14290 chars)
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local Debris = game:GetService("Debris")
local Lighting = game:GetService("Lighting")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer
local character = player.Character or player.CharacterAdded:Wait()
local rootPart = character:WaitForChild("HumanoidRootPart")
local camera = workspace.CurrentCamera

local vfxFolder = Instance.new("Folder")
vfxFolder.Name = "AbsoluteHollowPurple"
vfxFolder.Parent = workspace

local cc = Instance.new("ColorCorrectionEffect", Lighting)
TweenService:Create(cc, TweenInfo.new(1), {Brightness = -0.25, Contrast = 1.6, TintColor = Color3.fromRGB(130, 60, 255)}):Play()

local startCFrame = rootPart.CFrame * CFrame.new(0, 10, -25)
local endCFrame = rootPart.CFrame * CFrame.new(0, 10, -450)

local auraShell = Instance.new("Part")
auraShell.Shape = Enum.PartType.Ball
auraShell.Size = Vector3.new(0, 0, 0)
auraShell.CFrame = startCFrame
auraShell.Anchored = true
auraShell.CanCollide = false
auraShell.Material = Enum.Material.ForceField
auraShell.Color = Color3.fromRGB(120, 0, 255)
auraShell.Parent = vfxFolder

local purpleOrb = Instance.new("Part")
purpleOrb.Shape = Enum.PartType.Ball
purpleOrb.Size = Vector3.new(0, 0, 0)
purpleOrb.CFrame = startCFrame
purpleOrb.Anchored = true
purpleOrb.CanCollide = false
purpleOrb.Material = Enum.Material.Neon
purpleOrb.Color = Color3.fromRGB(150, 0, 255)
purpleOrb.Parent = vfxFolder

local whiteCore = Instance.new("Part")
whiteCore.Shape = Enum.PartType.Ball
whiteCore.Size = Vector3.new(0, 0, 0)
whiteCore.CFrame = startCFrame
whiteCore.Anchored = true
whiteCore.CanCollide = false
whiteCore.Material = Enum.Material.Neon
whiteCore.Color = Color3.fromRGB(255, 255, 255)
whiteCore.Parent = vfxFolder

local coreAtt = Instance.new("Attachment", whiteCore)
local energyParticles = Instance.new("ParticleEmitter")
energyParticles.Texture = "rbxassetid://284205403"
energyParticles.Color = ColorSequence.new({
    ColorSequenceKeypoint.new(0, Color3.fromRGB(255, 255, 255)),
    ColorSequenceKeypoint.new(1, Color3.fromRGB(150, 0, 255))
})
energyParticles.Size = NumberSequence.new({NumberSequenceKeypoint.new(0, 5), NumberSequenceKeypoint.new(1, 15)})
energyParticles.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0, 0), NumberSequenceKeypoint.new(1, 1)})
energyParticles.Speed = NumberRange.new(50, 100)
energyParticles.Lifetime = NumberRange.new(0.2, 0.4)
energyParticles.Rate = 300
energyParticles.SpreadAngle = Vector2.new(180, 180)
energyParticles.Parent = coreAtt

local helix1 = Instance.new("Part")
helix1.Shape = Enum.PartType.Ball
helix1.Size = Vector3.new(8, 8, 8)
helix1.Material = Enum.Material.Neon
helix1.Color = Color3.fromRGB(255, 255, 255)
helix1.Anchored = true
helix1.CanCollide = false
helix1.Parent = vfxFolder

local helix2 = helix1:Clone()
helix2.Color = Color3.fromRGB(100, 0, 255)
helix2.Parent = vfxFolder

local light = Instance.new("PointLight", purpleOrb)
light.Color = Color3.fromRGB(180, 100, 255)
light.Range = 0
light.Brightness = 0
light.Shadows = false

TweenService:Create(auraShell, TweenInfo.new(2, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = Vector3.new(65, 65, 65)}):Play()
TweenService:Create(purpleOrb, TweenInfo.new(2, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = Vector3.new(45, 45, 45)}):Play()
TweenService:Create(whiteCore, TweenInfo.new(2, Enum.EasingStyle.Back, Enum.EasingDirection.Out), {Size = Vector3.new(30, 30, 30)}):Play()
TweenService:Create(light, TweenInfo.new(2), {Range = 150, Brightness = 12}):Play()

local originalFOV = camera.FieldOfView
TweenService:Create(camera, TweenInfo.new(2), {FieldOfView = 55}):Play()

for i = 1, 50 do
    local chargeOrb = Instance.new("Part")
    chargeOrb.Shape = Enum.PartType.Ball
    chargeOrb.Size = Vector3.new(math.random(2, 6), math.random(2, 6), math.random(2, 6))
    chargeOrb.Material = Enum.Material.Neon
    chargeOrb.Color = math.random(1, 2) == 1 and Color3.fromRGB(255, 255, 255) or Color3.fromRGB(130, 0, 255)
    chargeOrb.Anchored = true
    chargeOrb.CanCollide = false
    
    local offset = CFrame.Angles(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)) * CFrame.new(0, 0, math.random(80, 180))
    chargeOrb.Position = startCFrame.Position + offset.Position
    chargeOrb.Parent = vfxFolder
    
    TweenService:Create(chargeOrb, TweenInfo.new(1.5, Enum.EasingStyle.Exponential, Enum.EasingDirection.In), {Position = startCFrame.Position, Size = Vector3.new(0, 0, 0)}):Play()
    Debris:AddItem(chargeOrb, 1.5)
end

task.wait(1.8)

local shock1 = Instance.new("Part")
shock1.Shape = Enum.PartType.Cylinder
shock1.Size = Vector3.new(1, 0, 0)
shock1.CFrame = purpleOrb.CFrame * CFrame.Angles(0, 0, math.rad(90))
shock1.Anchored = true
shock1.CanCollide = false
shock1.Material = Enum.Material.Neon
shock1.Color = Color3.fromRGB(200, 150, 255)
shock1.Parent = vfxFolder

local shock2 = shock1:Clone()
shock2.CFrame = purpleOrb.CFrame * CFrame.Angles(math.rad(90), 0, 0)
shock2.Parent = vfxFolder

TweenService:Create(shock1, TweenInfo.new(0.8, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {Size = Vector3.new(0.2, 180, 180), Transparency = 1}):Play()
TweenService:Create(shock2, TweenInfo.new(0.8, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {Size = Vector3.new(0.2, 180, 180), Transparency = 1}):Play()
Debris:AddItem(shock1, 0.8)
Debris:AddItem(shock2, 0.8)

local isMoving = true
TweenService:Create(purpleOrb, TweenInfo.new(2.5, Enum.EasingStyle.Exponential, Enum.EasingDirection.In), {CFrame = endCFrame}):Play()
TweenService:Create(camera, TweenInfo.new(0.5), {FieldOfView = 120}):Play()

task.spawn(function()
    local angle = 0
    while isMoving do
        RunService.RenderStepped:Wait()
        whiteCore.CFrame = purpleOrb.CFrame
        auraShell.CFrame = purpleOrb.CFrame
        
        angle = angle + 25
        local offset1 = CFrame.Angles(0, 0, math.rad(angle)) * CFrame.new(0, 40, 0)
        local offset2 = CFrame.Angles(0, 0, math.rad(angle + 180)) * CFrame.new(0, 40, 0)
        
        helix1.CFrame = purpleOrb.CFrame * offset1
        helix2.CFrame = purpleOrb.CFrame * offset2
        
        local hTrail1 = helix1:Clone()
        hTrail1.Parent = vfxFolder
        TweenService:Create(hTrail1, TweenInfo.new(0.3), {Size = Vector3.new(0,0,0), Transparency = 1}):Play()
        Debris:AddItem(hTrail1, 0.3)

        local hTrail2 = helix2:Clone()
        hTrail2.Parent = vfxFolder
        TweenService:Create(hTrail2, TweenInfo.new(0.3), {Size = Vector3.new(0,0,0), Transparency = 1}):Play()
        Debris:AddItem(hTrail2, 0.3)
        
        local shake = math.random(-20, 20) * 0.08
        camera.CFrame = camera.CFrame * CFrame.new(shake, shake, shake)
    end
end)

task.spawn(function()
    while isMoving do
        task.wait(0.01)
        local bolt = Instance.new("Part")
        bolt.Size = Vector3.new(math.random(2, 4), math.random(40, 90), math.random(2, 4))
        bolt.Material = Enum.Material.Neon
        bolt.Color = math.random(1, 2) == 1 and Color3.fromRGB(255, 255, 255) or Color3.fromRGB(140, 0, 255)
        bolt.Anchored = true
        bolt.CanCollide = false
        
        local offset = CFrame.Angles(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)) * CFrame.new(0, 0, math.random(20, 50))
        bolt.CFrame = purpleOrb.CFrame * offset
        bolt.Parent = vfxFolder
        
        TweenService:Create(bolt, TweenInfo.new(0.1, Enum.EasingStyle.Linear), {Size = Vector3.new(0, 0, 0), Transparency = 1}):Play()
        Debris:AddItem(bolt, 0.1)
    end
end)

task.spawn(function()
    while isMoving do
        task.wait(0.06)
        local pulse = Instance.new("Part")
        pulse.Shape = Enum.PartType.Cylinder
        pulse.Size = Vector3.new(2, 50, 50)
        pulse.CFrame = purpleOrb.CFrame * CFrame.Angles(0, 0, math.rad(90))
        pulse.Anchored = true
        pulse.CanCollide = false
        pulse.Material = Enum.Material.Neon
        pulse.Color = Color3.fromRGB(200, 100, 255)
        pulse.Parent = vfxFolder
        
        TweenService:Create(pulse, TweenInfo.new(0.3, Enum.EasingStyle.Sine, Enum.EasingDirection.Out), {Size = Vector3.new(0.1, 100, 100), Transparency = 1}):Play()
        Debris:AddItem(pulse, 0.3)
    end
end)

task.spawn(function()
    while isMoving do
        task.wait(0.02)
        local scorch = Instance.new("Part")
        scorch.Size = Vector3.new(math.random(15, 35), 2, math.random(15, 35))
        scorch.Material = Enum.Material.Neon
        scorch.Color = math.random(1,2) == 1 and Color3.fromRGB(0, 0, 0) or Color3.fromRGB(80, 0, 150)
        scorch.Anchored = true
        scorch.CanCollide = false
        scorch.Position = purpleOrb.Position - Vector3.new(0, 25, 0)
        scorch.Orientation = Vector3.new(0, math.random(0, 360), 0)
        scorch.Parent = vfxFolder
        
        TweenService:Create(scorch, TweenInfo.new(2), {Size = Vector3.new(0, 0, 0), Transparency = 1}):Play()
        Debris:AddItem(scorch, 2)
        
        for i = 1, 3 do
            local rock = Instance.new("Part")
            rock.Size = Vector3.new(math.random(5, 12), math.random(5, 12), math.random(5, 12))
            rock.Material = Enum.Material.Slate
            rock.Color = Color3.fromRGB(30, 30, 30)
            rock.Anchored = true
            rock.CanCollide = false
            rock.Position = scorch.Position + Vector3.new(math.random(-20, 20), 0, math.random(-20, 20))
            rock.Parent = vfxFolder
            
            local throwDir = Vector3.new(math.random(-60, 60), math.random(50, 120), math.random(-60, 60))
            TweenService:Create(rock, TweenInfo.new(1.2, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {Position = rock.Position + throwDir, Transparency = 1, Orientation = Vector3.new(math.random(-360,360), math.random(-360,360), math.random(-360,360))}):Play()
            Debris:AddItem(rock, 1.2)
        end
    end
end)

task.delay(2.5, function()
    isMoving = false
    local blastCFrame = purpleOrb.CFrame
    
    TweenService:Create(cc, TweenInfo.new(0.05), {Brightness = -1, Contrast = 2, TintColor = Color3.fromRGB(0, 0, 0)}):Play()
    task.wait(0.05)
    TweenService:Create(cc, TweenInfo.new(0.05), {Brightness = 1, Contrast = 2, TintColor = Color3.fromRGB(255, 255, 255)}):Play()
    task.wait(0.05)
    
    auraShell:Destroy()
    purpleOrb:Destroy()
    whiteCore:Destroy()
    helix1:Destroy()
    helix2:Destroy()
    light:Destroy()

    task.spawn(function()
        for i = 1, 40 do
            RunService.RenderStepped:Wait()
            local shake = math.random(-40, 40) * 0.1
            camera.CFrame = camera.CFrame * CFrame.new(shake, shake, shake)
        end
    end)
    
    local pillar = Instance.new("Part")
    pillar.Shape = Enum.PartType.Cylinder
    pillar.Size = Vector3.new(0, 0, 0)
    pillar.CFrame = blastCFrame * CFrame.Angles(0, 0, math.rad(90))
    pillar.Anchored = true
    pillar.CanCollide = false
    pillar.Material = Enum.Material.Neon
    pillar.Color = Color3.fromRGB(255, 255, 255)
    pillar.Parent = vfxFolder
    
    TweenService:Create(pillar, TweenInfo.new(0.4, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out), {Size = Vector3.new(2000, 300, 300)}):Play()

    local nuke = Instance.new("Part")
    nuke.Shape = Enum.PartType.Ball
    nuke.Size = Vector3.new(10, 10, 10)
    nuke.CFrame = blastCFrame
    nuke.Anchored = true
    nuke.CanCollide = false
    nuke.Material = Enum.Material.Neon
    nuke.Color = Color3.fromRGB(140, 0, 255)
    nuke.Parent = vfxFolder

    local innerNuke = nuke:Clone()
    innerNuke.Color = Color3.fromRGB(255, 255, 255)
    innerNuke.Parent = vfxFolder
    
    TweenService:Create(nuke, TweenInfo.new(0.7, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out), {Size = Vector3.new(650, 650, 650)}):Play()
    TweenService:Create(innerNuke, TweenInfo.new(0.5, Enum.EasingStyle.Exponential, Enum.EasingDirection.Out), {Size = Vector3.new(550, 550, 550)}):Play()
    
    for i = 1, 4 do
        local wave = Instance.new("Part")
        wave.Shape = Enum.PartType.Cylinder
        wave.Size = Vector3.new(1, 50, 50)
        wave.CFrame = blastCFrame * CFrame.Angles(math.rad(90), 0, 0) * CFrame.Angles(math.random(-40,40)/10, math.random(-40,40)/10, 0)
        wave.Anchored = true
        wave.CanCollide = false
        wave.Material = Enum.Material.Neon
        wave.Color = Color3.fromRGB(180, 80, 255)
        wave.Parent = vfxFolder
        
        TweenService:Create(wave, TweenInfo.new(1 + (i*0.3), Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {Size = Vector3.new(0.1, 800 + (i*150), 800 + (i*150)), Transparency = 1}):Play()
        Debris:AddItem(wave, 2.5)
    end
    
    for i = 1, 40 do
        local rock = Instance.new("Part")
        rock.Size = Vector3.new(math.random(20, 50), math.random(20, 50), math.random(20, 50))
        rock.Material = Enum.Material.Slate
        rock.Color = Color3.fromRGB(25, 25, 25)
        rock.Anchored = true
        rock.CanCollide = false
        rock.Position = blastCFrame.Position
        rock.Parent = vfxFolder
        
        local targetPos = rock.Position + Vector3.new(math.random(-500, 500), math.random(100, 400), math.random(-500, 500))
        TweenService:Create(rock, TweenInfo.new(2, Enum.EasingStyle.Cubic, Enum.EasingDirection.Out), {Position = targetPos, Orientation = Vector3.new(math.random(-360, 360), math.random(-360, 360), math.random(-360, 360)), Transparency = 1}):Play()
        Debris:AddItem(rock, 2)
    end

    task.wait(0.6)
    TweenService:Create(pillar, TweenInfo.new(1), {Size = Vector3.new(2000, 0, 0), Transparency = 1}):Play()
    TweenService:Create(nuke, TweenInfo.new(1.5), {Size = Vector3.new(700, 700, 700), Transparency = 1}):Play()
    TweenService:Create(innerNuke, TweenInfo.new(1), {Size = Vector3.new(600, 600, 600), Transparency = 1}):Play()
    
    TweenService:Create(cc, TweenInfo.new(2.5, Enum.EasingStyle.Sine), {Brightness = 0, Contrast = 0, TintColor = Color3.fromRGB(255, 255, 255)}):Play()
    TweenService:Create(camera, TweenInfo.new(2, Enum.EasingStyle.Sine), {FieldOfView = originalFOV}):Play()
    
    task.wait(2.5)
    vfxFolder:Destroy()
    cc:Destroy()
end)

Features & Information

when you excute the script, it will give you hollow purple instantly!. but it doesn't deal damge, just for fun.
#jujutsu shenanigans gojo hollow purple#jujutsu kaisen sukuna gojo pp

Community Comments (5)

i don't think it's fe, none of the players in the server i joined messaged

Pepecolita887Pepecolita887Mar 12, 2026

It doesn't hurt

Replying to @Pepecolita887
FeeyyyFeeyyyMar 12, 2026(edited)

@Pepecolita887 have you read the description brat

Replying to @Feeyyy
Pepecolita887Pepecolita887Mar 13, 2026

@Feeyyy First of all I haven't seen it secondly Get him out of * idiot Learn to respect I just asked you a *ing question and you answer that way

Replying to @Pepecolita887
FeeyyyFeeyyyMar 13, 2026(edited)

@Pepecolita887 not all people nice, not all people teach you to read desc

More Scripts for [SKY ASSASSIN] Jujutsu Shenanigans