CCCPaste

Blade Ball Script (My Version)

-- Blade Ball Script by JayRBLX Scripts
-- For Entertainment Purposes ONLY!

local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))()

-- Key System
local KeySystem = Rayfield:CreateKeySystem({
    Name = "Blade Ball Script",
    Info = "Join our discord to get the key! https://discord.gg/KPUPp4m9pJ",
    Key = "Jcheeks130",
    KeySave = false,
    DiscordLink = "https://discord.gg/KPUPp4m9pJ"
})

-- Services
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Workspace = game:GetService("Workspace")

local Player = Players.LocalPlayer
local Character = Player.Character or Player.CharacterAdded:Wait()
local Humanoid = Character:WaitForChild("Humanoid")
local HumanoidRootPart = Character:WaitForChild("HumanoidRootPart")

-- Variables
local autoCollectRewards = false
local autoJump = false
local autoDoubleJump = false
local autoPlay = false
local autoParry = false
local autoSpam = false
local parryAccuracy = 100
local manualSpam = false
local triggerBot = false
local detectInfinity = false
local detectDeathSlash = false
local detectTimeHole = false
local detectSlashesFury = false
local antiPhantom = false
local useAbilityBlock = false
local autoUseAbility = false
local autoParryLobby = false
local lobbyParryAccuracy = 100
local speedBoost = 16
local jumpBoost = 50
local noClip = false
local fly = false
local abilityESP = false
local enableESP = false
local espTracers = false
local espNames = false
local espBoxes = false
local espColor = Color3.fromRGB(255, 255, 255)

-- Create Window
local Window = Rayfield:CreateWindow({
    Name = "Blade Ball Script | JayRBLX",
    LoadingTitle = "Loading Blade Ball Script",
    LoadingSubtitle = "by JayRBLX Scripts",
    ConfigurationSaving = {
        Enabled = true,
        FolderName = "BladeBallScript",
        FileName = "Config"
    }
})

-- Main Tab
local MainTab = Window:CreateTab("Main", 4483362458)

local SwordSection = MainTab:CreateSection("Sword Settings")

local SwordInput = MainTab:CreateInput({
    Name = "Sword Changer",
    PlaceholderText = "Enter sword name",
    RemoveTextAfterFocusLost = false,
    Callback = function(Text)
        -- Sword changer logic
        local sword = Player.Character:FindFirstChild("Sword") or Player.Backpack:FindFirstChild("Sword")
        if sword then
            -- Change sword appearance based on input
            pcall(function()
                sword.Handle.Mesh.MeshId = "rbxassetid://" .. Text
            end)
        end
    end,
})

local AutoSection = MainTab:CreateSection("Auto Features")

local AutoCollectToggle = MainTab:CreateToggle({
    Name = "Auto Collect Rewards",
    CurrentValue = false,
    Callback = function(Value)
        autoCollectRewards = Value
        while autoCollectRewards do
            task.wait(1)
            -- Auto collect logic
            for _, v in pairs(Workspace:GetDescendants()) do
                if v.Name == "Reward" or v.Name == "Coin" then
                    pcall(function()
                        v.CFrame = HumanoidRootPart.CFrame
                    end)
                end
            end
        end
    end,
})

local AutoJumpToggle = MainTab:CreateToggle({
    Name = "Auto Jump",
    CurrentValue = false,
    Callback = function(Value)
        autoJump = Value
    end,
})

local AutoDoubleJumpToggle = MainTab:CreateToggle({
    Name = "Auto Double Jump",
    CurrentValue = false,
    Callback = function(Value)
        autoDoubleJump = Value
    end,
})

local AutoPlayToggle = MainTab:CreateToggle({
    Name = "Auto Play",
    CurrentValue = false,
    Callback = function(Value)
        autoPlay = Value
        while autoPlay do
            task.wait(0.5)
            -- Auto play logic (joins games automatically)
            local playButton = Player.PlayerGui:FindFirstChild("PlayButton")
            if playButton then
                pcall(function()
                    firesignal(playButton.MouseButton1Click)
                end)
            end
        end
    end,
})

local DiscordButton = MainTab:CreateButton({
    Name = "Copy Discord Link",
    Callback = function()
        setclipboard("https://discord.gg/KPUPp4m9pJ")
        Rayfield:Notify({
            Title = "Copied!",
            Content = "Discord link copied to clipboard",
            Duration = 3,
            Image = 4483362458
        })
    end,
})

-- Blatant Tab
local BlatantTab = Window:CreateTab("Blatant", 4483362458)

local ParrySection = BlatantTab:CreateSection("Parry Settings")

local AutoParryToggle = BlatantTab:CreateToggle({
    Name = "Auto Parry",
    CurrentValue = false,
    Callback = function(Value)
        autoParry = Value
    end,
})

local AutoSpamToggle = BlatantTab:CreateToggle({
    Name = "Auto Spam",
    CurrentValue = false,
    Callback = function(Value)
        autoSpam = Value
        while autoSpam do
            task.wait(0.01)
            -- Spam parry logic
            local parryEvent = game:GetService("ReplicatedStorage"):FindFirstChild("ParryEvent")
            if parryEvent then
                pcall(function()
                    parryEvent:FireServer()
                end)
            end
        end
    end,
})

local ParryAccuracySlider = BlatantTab:CreateSlider({
    Name = "Parry Accuracy",
    Range = {0, 100},
    Increment = 1,
    Suffix = "%",
    CurrentValue = 100,
    Callback = function(Value)
        parryAccuracy = Value
    end,
})

local ManualSpamToggle = BlatantTab:CreateToggle({
    Name = "Manual Spam",
    CurrentValue = false,
    Callback = function(Value)
        manualSpam = Value
    end,
})

local TriggerBotToggle = BlatantTab:CreateToggle({
    Name = "Trigger Bot",
    CurrentValue = false,
    Callback = function(Value)
        triggerBot = Value
    end,
})

local DetectionSection = BlatantTab:CreateSection("Ability Detection")

local DetectInfinityToggle = BlatantTab:CreateToggle({
    Name = "Detect Infinity Ability",
    CurrentValue = false,
    Callback = function(Value)
        detectInfinity = Value
    end,
})

local DetectDeathSlashToggle = BlatantTab:CreateToggle({
    Name = "Detect Death Slash Ability",
    CurrentValue = false,
    Callback = function(Value)
        detectDeathSlash = Value
    end,
})

local DetectTimeHoleToggle = BlatantTab:CreateToggle({
    Name = "Detect Time Hole Ability",
    CurrentValue = false,
    Callback = function(Value)
        detectTimeHole = Value
    end,
})

local DetectSlashesFuryToggle = BlatantTab:CreateToggle({
    Name = "Detect Slashes of Fury Ability",
    CurrentValue = false,
    Callback = function(Value)
        detectSlashesFury = Value
    end,
})

local AbilitySection = BlatantTab:CreateSection("Ability Settings")

local AntiPhantomToggle = BlatantTab:CreateToggle({
    Name = "Anti Phantom Attack",
    CurrentValue = false,
    Callback = function(Value)
        antiPhantom = Value
    end,
})

local UseAbilityBlockToggle = BlatantTab:CreateToggle({
    Name = "Use Ability for Accidental Block",
    CurrentValue = false,
    Callback = function(Value)
        useAbilityBlock = Value
    end,
})

local AutoUseAbilityToggle = BlatantTab:CreateToggle({
    Name = "Auto Use Ability",
    CurrentValue = false,
    Callback = function(Value)
        autoUseAbility = Value
    end,
})

local LobbySection = BlatantTab:CreateSection("Lobby Settings")

local AutoParryLobbyToggle = BlatantTab:CreateToggle({
    Name = "Auto Parry Lobby Ball",
    CurrentValue = false,
    Callback = function(Value)
        autoParryLobby = Value
    end,
})

local LobbyParryAccuracySlider = BlatantTab:CreateSlider({
    Name = "Lobby Ball Parry Accuracy",
    Range = {0, 100},
    Increment = 1,
    Suffix = "%",
    CurrentValue = 100,
    Callback = function(Value)
        lobbyParryAccuracy = Value
    end,
})

-- Other Tab
local OtherTab = Window:CreateTab("Other", 4483362458)

local MovementSection = OtherTab:CreateSection("Movement")

local SpeedBoostSlider = OtherTab:CreateSlider({
    Name = "Speed Boost",
    Range = {16, 200},
    Increment = 1,
    Suffix = " Speed",
    CurrentValue = 16,
    Callback = function(Value)
        speedBoost = Value
        Humanoid.WalkSpeed = Value
    end,
})

local JumpBoostSlider = OtherTab:CreateSlider({
    Name = "Jump Boost",
    Range = {50, 300},
    Increment = 1,
    Suffix = " Power",
    CurrentValue = 50,
    Callback = function(Value)
        jumpBoost = Value
        Humanoid.JumpPower = Value
    end,
})

local NoClipToggle = OtherTab:CreateToggle({
    Name = "No Clip",
    CurrentValue = false,
    Callback = function(Value)
        noClip = Value
    end,
})

local FlyToggle = OtherTab:CreateToggle({
    Name = "Fly",
    CurrentValue = false,
    Callback = function(Value)
        fly = Value
    end,
})

local ESPSection = OtherTab:CreateSection("ESP Settings")

local AbilityESPToggle = OtherTab:CreateToggle({
    Name = "Ability ESP",
    CurrentValue = false,
    Callback = function(Value)
        abilityESP = Value
    end,
})

local EnableESPToggle = OtherTab:CreateToggle({
    Name = "Enable ESP",
    CurrentValue = false,
    Callback = function(Value)
        enableESP = Value
    end,
})

local ESPTracersToggle = OtherTab:CreateToggle({
    Name = "ESP Tracers",
    CurrentValue = false,
    Callback = function(Value)
        espTracers = Value
    end,
})

local ESPNamesToggle = OtherTab:CreateToggle({
    Name = "ESP Names",
    CurrentValue = false,
    Callback = function(Value)
        espNames = Value
    end,
})

local ESPBoxesToggle = OtherTab:CreateToggle({
    Name = "ESP Boxes",
    CurrentValue = false,
    Callback = function(Value)
        espBoxes = Value
    end,
})

local ESPColorPicker = OtherTab:CreateColorPicker({
    Name = "ESP Color",
    Color = Color3.fromRGB(255, 255, 255),
    Callback = function(Value)
        espColor = Value
    end
})

-- Misc Tab
local MiscTab = Window:CreateTab("Misc", 4483362458)

local MiscSection = MiscTab:CreateSection("Additional Features")

local AntiAFKToggle = MiscTab:CreateToggle({
    Name = "Anti AFK",
    CurrentValue = false,
    Callback = function(Value)
        local antiAFK = Value
        if antiAFK then
            local VirtualUser = game:GetService("VirtualUser")
            game:GetService("Players").LocalPlayer.Idled:Connect(function()
                VirtualUser:CaptureController()
                VirtualUser:ClickButton2(Vector2.new())
            end)
        end
    end,
})

local AutoRespawnToggle = MiscTab:CreateToggle({
    Name = "Auto Respawn",
    CurrentValue = false,
    Callback = function(Value)
        local autoRespawn = Value
        if autoRespawn then
            Character.Humanoid.Died:Connect(function()
                task.wait(1)
                Player:LoadCharacter()
            end)
        end
    end,
})

local InfiniteCashToggle = MiscTab:CreateToggle({
    Name = "Infinite Cash (Visual)",
    CurrentValue = false,
    Callback = function(Value)
        if Value then
            Rayfield:Notify({
                Title = "Visual Only",
                Content = "This is visual only and doesn't give real cash",
                Duration = 5,
                Image = 4483362458
            })
        end
    end,
})

local ServerHopButton = MiscTab:CreateButton({
    Name = "Server Hop",
    Callback = function()
        local HttpService = game:GetService("HttpService")
        local TeleportService = game:GetService("TeleportService")
        local placeId = game.PlaceId
        
        local servers = HttpService:JSONDecode(game:HttpGet("https://games.roblox.com/v1/games/"..placeId.."/servers/Public?sortOrder=Asc&limit=100"))
        TeleportService:TeleportToPlaceInstance(placeId, servers.data[1].id, Player)
    end,
})

local RejoinButton = MiscTab:CreateButton({
    Name = "Rejoin Server",
    Callback = function()
        local TeleportService = game:GetService("TeleportService")
        TeleportService:Teleport(game.PlaceId, Player)
    end,
})

-- Credits Tab
local CreditsTab = Window:CreateTab("Credits", 4483362458)

local CreditsSection = CreditsTab:CreateSection("Credits to JayRBLX Scripts")

CreditsTab:CreateLabel("Made by: JayRBLX Scripts")
CreditsTab:CreateLabel("YouTube: @jayscriptsrblx")
CreditsTab:CreateLabel("Discord Server: https://discord.gg/KPUPp4m9pJ")

local YouTubeButton = CreditsTab:CreateButton({
    Name = "Copy YouTube Link",
    Callback = function()
        setclipboard("https://youtube.com/@jayscriptsrblx?si=94ZHB3di6FfIHY9q")
        Rayfield:Notify({
            Title = "Copied!",
            Content = "YouTube link copied to clipboard",
            Duration = 3,
            Image = 4483362458
        })
    end,
})

local DiscordButton2 = CreditsTab:CreateButton({
    Name = "Copy Discord Server Link",
    Callback = function()
        setclipboard("https://discord.gg/KPUPp4m9pJ")
        Rayfield:Notify({
            Title = "Copied!",
            Content = "Discord link copied to clipboard",
            Duration = 3,
            Image = 4483362458
        })
    end,
})

-- Main Logic Loop
RunService.Heartbeat:Connect(function()
    if autoJump and Humanoid:GetState() ~= Enum.HumanoidStateType.Freefall then
        Humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
    end
    
    if noClip then
        for _, part in pairs(Character:GetDescendants()) do
            if part:IsA("BasePart") then
                part.CanCollide = false
            end
        end
    end
end)

-- Notification
Rayfield:Notify({
    Title = "Script Loaded!",
    Content = "Blade Ball Script by JayRBLX loaded successfully",
    Duration = 5,
    Image = 4483362458
})

print("Blade Ball Script loaded - For Entertainment Purposes ONLY!")