Jujutsu shenagins keyless
Key Required Patched

Jujutsu shenagins keyless

[SKY ASSASSIN] Jujutsu ShenanigansSplinSplin 2.5K views 2.8K executesUpdated Sep 10, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•229 lines (8853 chars)
-- Create Main GUI
local ScreenGui = Instance.new("ScreenGui")
local Frame = Instance.new("Frame")
local Title = Instance.new("TextLabel")
local AutoKillBtn = Instance.new("TextButton")
local AutoAbilitiesBtn = Instance.new("TextButton")
local AutoUltimateBtn = Instance.new("TextButton")
local AutoAIBtn = Instance.new("TextButton")
local OrbitBtn = Instance.new("TextButton")
local DistanceInput = Instance.new("TextBox")
local HeightInput = Instance.new("TextBox")
local SpeedInput = Instance.new("TextBox")
local TargetInput = Instance.new("TextBox")

-- Properties
ScreenGui.Parent = game:GetService("CoreGui") or game:GetService("Players").LocalPlayer:WaitForChild("PlayerGui")

Frame.Name = "DeltaJJSAIPanel"
Frame.Parent = ScreenGui
Frame.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
Frame.Position = UDim2.new(0.3, 0, 0.2, 0)
Frame.Size = UDim2.new(0, 270, 0, 500)
Frame.Active = true
Frame.Draggable = true

Title.Parent = Frame
Title.Size = UDim2.new(1, 0, 0, 40)
Title.BackgroundColor3 = Color3.fromRGB(30, 30, 40)
Title.Text = "JJS Delta AI & Orbit Panel"
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.TextSize = 16
Title.Font = Enum.Font.SourceSansBold

-- Input Boxes Customization Helper
local function styleInput(input, placeholder, yPos)
    input.Parent = Frame
    input.Position = UDim2.new(0.05, 0, 0, yPos)
    input.Size = UDim2.new(0.9, 0, 0, 32)
    input.BackgroundColor3 = Color3.fromRGB(40, 40, 45)
    input.PlaceholderText = placeholder
    input.Text = ""
    input.TextColor3 = Color3.fromRGB(255, 255, 255)
    input.TextSize = 13
end

styleInput(TargetInput, "Target Player Name (AI Focus/Orbit)", 50)
styleInput(DistanceInput, "Orbit Distance (Default: 4)", 90)
styleInput(HeightInput, "Orbit Height (Default: 0)", 130)
styleInput(SpeedInput, "Orbit Speed Multiplier (Default: 4.5)", 170)

-- Buttons Customization Helper
local function styleButton(btn, text, yPos, color)
    btn.Parent = Frame
    btn.Position = UDim2.new(0.05, 0, 0, yPos)
    btn.Size = UDim2.new(0.9, 0, 0, 35)
    btn.BackgroundColor3 = color
    btn.Text = text
    btn.TextColor3 = Color3.fromRGB(255, 255, 255)
    btn.TextSize = 14
    btn.Font = Enum.Font.SourceSansBold
end

styleButton(OrbitBtn, "Toggle Orbit: OFF", 215, Color3.fromRGB(55, 55, 60))
styleButton(AutoKillBtn, "Auto M1 Attacks: OFF", 255, Color3.fromRGB(55, 55, 60))
styleButton(AutoAbilitiesBtn, "Auto Use Abilities: OFF", 295, Color3.fromRGB(55, 55, 60))
styleButton(AutoUltimateBtn, "Auto Awakening (G): OFF", 335, Color3.fromRGB(55, 55, 60))
styleButton(AutoAIBtn, "Auto Play AI Mode: OFF", 385, Color3.fromRGB(75, 40, 110))

-- Variables & Services
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local VIM = game:GetService("VirtualInputManager")
local LocalPlayer = Players.LocalPlayer

local orbiting = false
local autoKilling = false
local autoAbilities = false
local autoUltimate = false
local autoAI = false
local angle = 0
local aiTarget = nil

-- Smart Target Finder Function
local function getTarget()
    -- If AI mode is on and we don't have a valid manually typed target, find the closest active player
    if autoAI and (not TargetInput.Text or TargetInput.Text == "") then
        if aiTarget and aiTarget.Parent and aiTarget:FindFirstChild("HumanoidRootPart") and aiTarget:FindFirstChild("Humanoid") and aiTarget.Humanoid.Health > 0 then
            return Players:GetPlayerFromCharacter(aiTarget)
        end
        
        local closestPlayer = nil
        local shortestDistance = math.huge
        
        for _, p in pairs(Players:GetPlayers()) do
            if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("HumanoidRootPart") and p.Character:FindFirstChild("Humanoid") and p.Character.Humanoid.Health > 0 then
                local dist = (LocalPlayer.Character.HumanoidRootPart.Position - p.Character.HumanoidRootPart.Position).Magnitude
                if dist < shortestDistance then
                    shortestDistance = dist
                    closestPlayer = p
                end
            end
        end
        if closestPlayer then aiTarget = closestPlayer.Character end
        return closestPlayer
    end

    -- Standard manual target parsing
    local text = TargetInput.Text:lower()
    if text == "" then return nil end
    for _, p in pairs(Players:GetPlayers()) do
        if p ~= LocalPlayer and (p.Name:lower():sub(1, #text) == text or (p.DisplayName and p.DisplayName:lower():sub(1, #text) == text)) then
            return p
        end
    end
    return nil
end

-- Fast Key-Press Emulator
local function pressKey(key)
    VIM:SendKeyEvent(true, key, false, game)
    task.wait(0.02)
    VIM:SendKeyEvent(false, key, false, game)
end

-- Orbit & Movement Logic Loop
RunService.RenderStepped:Connect(function(dt)
    if not orbiting and not autoAI then return end
    
    local target = getTarget()
    if not target or not target.Character or not target.Character:FindFirstChild("HumanoidRootPart") then return end
    if not LocalPlayer.Character or not LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then return end
    
    local dist = tonumber(DistanceInput.Text) or 4
    local height = tonumber(HeightInput.Text) or 0
    local speedMult = tonumber(SpeedInput.Text) or 4.5
    
    angle = angle + dt * speedMult
    
    local targetPos = target.Character.HumanoidRootPart.Position
    local offsetX = math.cos(angle) * dist
    local offsetZ = math.sin(angle) * dist
    
    LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.new(targetPos + Vector3.new(offsetX, height, offsetZ), targetPos)
end)

-- Combat Loops (M1 Auto Clicker)
task.spawn(function()
    while task.wait(0.08) do
        if autoKilling or autoAI then
            local target = getTarget()
            if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
                VIM:SendMouseButtonEvent(0, 0, 0, true, game, 1)
                task.wait(0.03)
                VIM:SendMouseButtonEvent(0, 0, 0, false, game, 1)
            end
        end
    end
end)

-- Abilities Cycle Loop (1 -> 2 -> 3 -> 4)
task.spawn(function()
    local moveKeys = {Enum.KeyCode.One, Enum.KeyCode.Two, Enum.KeyCode.Three, Enum.KeyCode.Four}
    local currentMove = 1
    
    while task.wait(0.35) do
        if (autoAbilities or autoAI) then
            local target = getTarget()
            if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
                pressKey(moveKeys[currentMove])
                currentMove = currentMove + 1
                if currentMove > 4 then currentMove = 1 end
            end
        end
    end
end)

-- Ultimate Auto-Trigger
task.spawn(function()
    while task.wait(0.5) do
        if autoUltimate or autoAI then
            local playerGui = LocalPlayer:FindFirstChild("PlayerGui")
            if playerGui then
                local screenGui = playerGui:FindFirstChild("ScreenGui")
                local magicFrame = screenGui and screenGui:FindFirstChild("MagicFrame")
                
                if magicFrame and magicFrame.Visible == true then
                    pressKey(Enum.KeyCode.G)
                end
            end
        end
    end
end)

-- Button Functionality
OrbitBtn.MouseButton1Click:Connect(function()
    orbiting = not orbiting
    OrbitBtn.Text = orbiting and "Toggle Orbit: ON" or "Toggle Orbit: OFF"
    OrbitBtn.BackgroundColor3 = orbiting and Color3.fromRGB(0, 140, 60) or Color3.fromRGB(55, 55, 60)
end)

AutoKillBtn.MouseButton1Click:Connect(function()
    autoKilling = not autoKilling
    AutoKillBtn.Text = autoKilling and "Auto M1 Attacks: ON" or "Auto M1 Attacks: OFF"
    AutoKillBtn.BackgroundColor3 = autoKilling and Color3.fromRGB(0, 140, 60) or Color3.fromRGB(55, 55, 60)
end)

AutoAbilitiesBtn.MouseButton1Click:Connect(function()
    autoAbilities = not autoAbilities
    AutoAbilitiesBtn.Text = autoAbilities and "Auto Use Abilities: ON" or "Auto Use Abilities: OFF"
    AutoAbilitiesBtn.BackgroundColor3 = autoAbilities and Color3.fromRGB(0, 140, 60) or Color3.fromRGB(55, 55, 60)
end)

AutoUltimateBtn.MouseButton1Click:Connect(function()
    autoUltimate = not autoUltimate
    AutoUltimateBtn.Text = autoUltimate and "Auto Awakening (G): ON" or "Auto Awakening (G): OFF"
    AutoUltimateBtn.BackgroundColor3 = autoUltimate and Color3.fromRGB(160, 30, 30) or Color3.fromRGB(55, 55, 60)
end)

AutoAIBtn.MouseButton1Click:Connect(function()
    autoAI = not autoAI
    if autoAI then
        AutoAIBtn.Text = "Auto Play AI Mode: ACTIVE"
        AutoAIBtn.BackgroundColor3 = Color3.fromRGB(130, 40, 200)
        aiTarget = nil -- Reset AI focus memory
    else
        AutoAIBtn.Text = "Auto Play AI Mode: OFF"
        AutoAIBtn.BackgroundColor3 = Color3.fromRGB(75, 40, 110)
    end
end)

Features & Information

Orbit taget Orbit distance Orbit height Orbit radius Kill target Auto jjs combos Auto play ai And more

Community Comments (0)

No comments yet for this script.

More Scripts for [SKY ASSASSIN] Jujutsu Shenanigans