Sigma GUI for
Key Required

Sigma GUI for

Catalog Heaven KD0SPAPAJKD0SPAPAJ 1.7K views 700 executesUpdated Apr 4, 2026
0.0/ 5(1 votes)
010% Positive
Lua Script•1448 lines (57278 chars)
getgenv().Necessary = {
    ["Auto Open Base"] = true, --// auto open base on executing script
    --["No Base Move"] = true --// keeps all your base parts unmoved if moved
    ["Equipment Tools"] = { --// gears that will be equipped upon execution, goes GearName = AssetId
        ["Diamond Blade Sword"] = 173755801,
        ["RocketJumper"] = 169602103,
        ["DragonSword&Shield"] = 172298750,
        ["KorbloxSwordAndShield"] = 68539623,
        ["StepGun"] = 34898883,
        ["HadesStaff"] = 69210321
    }
}

getgenv().Config = {
    ["Combat"] = {
        ["Attack"] = {
            ["Diamond Blade"] = false,
            ["Rocket Jumper"] = false,
            ["Auto Void"] = false,
            ["Auto Blind"] = false,
            ["Cbring"] = false,
            ["CbringAnchorCheck"] = false
        },
        ["Hitlist"] = { 2839473960, 10752356332 }
            ["Enabled"] = false
        }
    },
    ["Protection"] = {
        ["Godmode"] = {
            ["Diamond Blade"] = false,
            ["Dragon Shield"] = false,
            ["InfAll"] = false,
            ["BatFFOnRespawn"] = false
        },
        ["Base Protection"] = {
            ["Protect Base"] = false,
            ["Protection Range"] = 35,
            ["Whitelist Enabled"] = false
        }
    },
    ["Misc"] = {
        ["Miscellaneous"] = {
            ["Use Heal Pads"] = false,
            ["Remove Bases FF"] = false,
            ["Auto Enable Backpack"] = false,
            ["Anti Platforms"] = false,
            ["Anti Crash"] = false,
            ["Respawn Bind"] = "R"
        },
        ["Tool Duper"] = {
            ["Auto Pickup"] = false,
            ["Cycle Amount"] = 1
        },
        ["Tool Giver"] = {
            ["Player Username"] = ""
        }
    },
    ["AntiGear"] = {
        ["Gear Detection"] = {
            ["Diamond Blade Sword"] = false,
            ["Rocket Jumper"] = false,
            ["Dragon Shield"] = false,
            ["Custom Check"] = false
        },
        ["Player Whitelist"] = {
            ["Enabled"] = false
        }
    },
    ["Settings"] = {
        ["UI Settings"] = {
            ["Open/Close Bind"] = "RightShift",
            ["UI Toggle Button"] = false
        }
    }
}

local UIElements = {Toggles = {}, Sliders = {}, TextBoxes = {}, Keybinds = {}}

UIElements.Sliders["Protection"] = {}
UIElements.Sliders["Protection"]["Base Protection"] = {}

UIElements.Keybinds["Misc"] = {}
UIElements.Keybinds["Misc"]["Miscellaneous"] = {}

UIElements.Keybinds["Settings"] = {}
UIElements.Keybinds["Settings"]["UI Settings"] = {}

UIElements.TextBoxes["Misc"] = {}
UIElements.TextBoxes["Misc"]["Tool Duper"] = {}
UIElements.TextBoxes["Misc"]["Tool Giver"] = {}

UIElements.TextBoxes["AntiGear"] = {}
UIElements.TextBoxes["AntiGear"]["Gear Detection"] = {}
UIElements.TextBoxes["AntiGear"]["Player Whitelist"] = {}

UIElements.Toggles["Combat"] = {}
UIElements.Toggles["Combat"]["Attack"] = {}
UIElements.Toggles["Combat"]["Hitlist"] = {}

UIElements.Toggles["Protection"] = {}
UIElements.Toggles["Protection"]["Godmode"] = {}
UIElements.Toggles["Protection"]["Base Protection"] = {}

UIElements.Toggles["Misc"] = {}
UIElements.Toggles["Misc"]["Miscellaneous"] = {}
UIElements.Toggles["Misc"]["Tool Duper"] = {}

UIElements.Toggles["AntiGear"] = {}
UIElements.Toggles["AntiGear"]["Gear Detection"] = {}
UIElements.Toggles["AntiGear"]["Player Whitelist"] = {}

UIElements.Toggles["Settings"] = {}
UIElements.Toggles["Settings"]["UI Settings"] = {}

local ContinueScript = game.PlaceId == 26838733

if not ContinueScript then
    loadstring(game:HttpGet("https://raw.githubusercontent.com/w1nsense/main/refs/heads/main/Hello-World.lua"))()
    return
end

if CHVar then
    for ConnectionName, Connection in CHVar.Connections do
        if typeof(Connection) == "RBXScriptConnection" and Connection.Connected then
            Connection:Disconnect()
            Connection = nil
            print("Disconnected", ConnectionName)
        end
    end
    CHVar = nil
end

getgenv().CHVar = {
    AttackList = {},
    Hitlist = {},
    BaseWhitelist = {},
    BlacklistedGears = {},
    GearWhitelistedPlayers = {},
    --BlindedPlayers = {},
    Connections = {
        BatFF = nil,
        Respawn = nil,
        WorkspaceTrashWatcher = nil
        --PlayerRemoving = nil
    }
}

getgenv().setclipboard = setclipboard or toclipboard or set_clipboard or (Clipboard and Clipboard.set)
getgenv().isnetworkowner = isnetworkowner or function(Part) if not Part:IsA("BasePart") then return end return Part.ReceiveAge == 0 end

local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local UserInputService = game:GetService("UserInputService")
local HttpService = game:GetService("HttpService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local MyBase = workspace:WaitForChild(LocalPlayer.Name .. "'s Cloud")
local FFLeverEvent = ReplicatedStorage.Remotes.ToggleForceField
local BlacklistedNames = {"Humanoid", "Sound", "Animate", "Head", "HumanoidRootPart", "Left Arm", "Left Leg", "Right Arm", "Right Leg", "Torso", "ForceField", "LeftFoot", "LeftHand", "LeftLowerArm", "LeftLowerLeg", "LeftUpperArm", "LeftUpperLeg", "LowerTorso", "RightFoot", "RightHand", "RightLowerArm", "RightLowerLeg", "RightUpperArm", "RightUpperLeg", "UpperTorso", "LeftWing", "RightWing"}

pcall(function()
    if not isfolder("Catalog Heaven Private") then 
        makefolder("Catalog Heaven Private") 
    end
    if not isfolder("Catalog Heaven Private/Auto Config") then 
        makefolder("Catalog Heaven Private/Auto Config") 
    end
    if not isfolder("Catalog Heaven Private/Gear Blacklist") then 
        makefolder("Catalog Heaven Private/Gear Blacklist") 
    end

    if not isfile("Catalog Heaven Private/Auto Config/Config.txt") then 
        writefile("Catalog Heaven Private/Auto Config/Config.txt", HttpService:JSONEncode(Config)) 
    end
    if isfile("Catalog Heaven Private/Hitlist.txt") then 
        CHVar.Hitlist = HttpService:JSONDecode(readfile("Catalog Heaven Private/Hitlist.txt")) 
    end
    if isfile("Catalog Heaven Private/BaseWhitelist.txt") then 
        CHVar.BaseWhitelist = HttpService:JSONDecode(readfile("Catalog Heaven Private/BaseWhitelist.txt")) 
    end
    if isfile("Catalog Heaven Private/Gear Blacklist/BlacklistedGears.txt") then 
        CHVar.BlacklistedGears = HttpService:JSONDecode(readfile("Catalog Heaven Private/Gear Blacklist/BlacklistedGears.txt")) 
    end
    if isfile("Catalog Heaven Private/Gear Blacklist/GearWhitelistedPlayers.txt") then 
        CHVar.GearWhitelistedPlayers = HttpService:JSONDecode(readfile("Catalog Heaven Private/Gear Blacklist/GearWhitelistedPlayers.txt")) 
    end
end)

local Library = loadstring(game:HttpGet("https://raw.githubusercontent.com/w1nsense/main/main/ui-library.lua"))()

local Window = Library.new("dark_theme", "Catalog Fun")

Window.ChangeToggleKey(Enum.KeyCode.RightShift)

local Home = Window:Category("Home")
local Combat = Window:Category("Combat")
local Protection = Window:Category("S'more Phully Hot Pockets?")
local Misc = Window:Category("Misc")
local AntiGear = Window:Category("Anti Gear")
local Fun = Window:Category("Fun")
local Settings = Window:Category("I am a Fat Pdough")

local ScriptInfo = Home:Sector("Information")
ScriptInfo:DarkStorm("Label", "Script developed by @ErklingEntropy and @IdkSapling")
ScriptInfo:DarkStorm("Label", "Contributed to by kdospapaj while his underage girlfriend Zoey helped feed him pepperoni and cheesesticks to keep up his energy!")

local Attack = Combat:Sector("Attack")
UIElements.Toggles["Combat"]["Attack"]["Diamond Blade"] = Attack:DarkStorm("Toggle", "Use Diamond Blade", function(Value) Config["Combat"]["Attack"]["Diamond Blade"] = Value end)
UIElements.Toggles["Combat"]["Attack"]["Rocket Jumper"] = Attack:DarkStorm("Toggle", "Use Rocket Jumper", function(Value) Config["Combat"]["Attack"]["Rocket Jumper"] = Value end)
UIElements.Toggles["Combat"]["Attack"]["Auto Void"] = Attack:DarkStorm("Toggle", "Auto Void", function(Value) Config["Combat"]["Attack"]["Auto Void"] = Value end)
UIElements.Toggles["Combat"]["Attack"]["Auto Blind"] = Attack:DarkStorm("Toggle", "Auto Blind", function(Value) Config["Combat"]["Attack"]["Auto Blind"] = Value end)
UIElements.Toggles["Combat"]["Attack"]["Cbring"] = Attack:DarkStorm("Toggle", "Use Cbring", function(Value) Config["Combat"]["Attack"]["Cbring"] = Value end)
UIElements.Toggles["Combat"]["Attack"]["CbringAnchorCheck"] = Attack:DarkStorm("Toggle", "Cbring Anchor Check", function(Value) Config["Combat"]["Attack"]["CbringAnchorCheck"] = Value end)

local AttackListDropdown = Attack:DarkStorm("Dropdown", "Player List", function(Option)
    CHVar.AttackList = Option
end, {
	list = {},
    placeholder = {"Select Target(s)", "Targets"},
	playerlist = true,
    multiselect = true
})

local Hitlist = Combat:Sector("Hitlist")
UIElements.Toggles["Combat"]["Hitlist"]["Enabled"] = Hitlist:DarkStorm("Toggle", "Enabled", function(Value) Config["Combat"]["Hitlist"]["Enabled"] = Value end)
local HitlistUserIdTextbox = Hitlist:DarkStorm("TextBox", "", function() end, {placeholder = "Insert User ID"})
local HitlistOutputLabel = nil
Hitlist:DarkStorm("Button", "Add", function()
    local InputedID = tostring(HitlistUserIdTextbox:GetValue())
    if InputedID and InputedID ~= "" then
        local Username = getUser(InputedID)
        repeat task.wait() Username = getUser(InputedID) until Username
        if not CHVar.Hitlist[InputedID] then
            CHVar.Hitlist[InputedID] = Username
            HitlistOutputLabel:SetText("Output: Successfully Added " .. Username)
        else
            HitlistOutputLabel:SetText("Output: Error, " .. Username .. " Already Exists!")
        end
    end
    writefile("Catalog Heaven Private/Hitlist.txt", HttpService:JSONEncode(CHVar.Hitlist))
end, {text = "Click", ConfigElement = false})
Hitlist:DarkStorm("Button", "Remove", function()
    local InputedID = tostring(HitlistUserIdTextbox:GetValue())
    if InputedID and InputedID ~= "" then
        local Username = getUser(InputedID)
        repeat task.wait() Username = getUser(InputedID) until Username
        if CHVar.Hitlist[InputedID] then
            CHVar.Hitlist[InputedID] = nil
            HitlistOutputLabel:SetText("Output: Successfully Removed " .. Username)
        else
            HitlistOutputLabel:SetText("Output: Error, " .. Username .. " Not Exists!")
        end
    end
    writefile("Catalog Heaven Private/Hitlist.txt", HttpService:JSONEncode(CHVar.Hitlist))
end, {text = "Click", ConfigElement = false})
HitlistOutputLabel = Hitlist:DarkStorm("Label", "Output: Hello World")

local Godmode = Protection:Sector("Godmode")
UIElements.Toggles["Protection"]["Godmode"]["Diamond Blade"] = Godmode:DarkStorm("Toggle", "Diamond Blade", function(Value) Config["Protection"]["Godmode"]["Diamond Blade"] = Value end)
UIElements.Toggles["Protection"]["Godmode"]["Dragon Shield"] = Godmode:DarkStorm("Toggle", "Dragon Shield", function(Value) Config["Protection"]["Godmode"]["Dragon Shield"] = Value end)
UIElements.Toggles["Protection"]["Godmode"]["InfAll"] = Godmode:DarkStorm("Toggle", "Infinite Health All", function(Value) Config["Protection"]["Godmode"]["InfAll"] = Value end)
UIElements.Toggles["Protection"]["Godmode"]["BatFFOnRespawn"] = Godmode:DarkStorm("Toggle", "Bat FF On Respawn", function(Value) Config["Protection"]["Godmode"]["BatFFOnRespawn"] = Value end)
Godmode:DarkStorm("Button", "Bat Knight Force Field", function()
    BatFF()
end, {text = "Click", ConfigElement = false})

local BaseProtection = Protection:Sector("Base Protection")
UIElements.Toggles["Protection"]["Base Protection"]["Protect Base"] = BaseProtection:DarkStorm("Toggle", "Protect Base", function(Value) Config["Protection"]["Base Protection"]["Protect Base"] = Value end)
UIElements.Sliders["Protection"]["Base Protection"]["Protection Range"] = BaseProtection:DarkStorm("Slider", "Protection Range", function(Value) Config["Protection"]["Base Protection"]["Protection Range"] = tonumber(Value) end, {default = 35, min = 35, max = 85, precise = 0})
BaseProtection:DarkStorm("Label", "Base Whitelist")
BaseProtection:DarkStorm("Label", "⤷ Allows Whitelisted Users stay on the base")
UIElements.Toggles["Protection"]["Base Protection"]["Whitelist Enabled"] = BaseProtection:DarkStorm("Toggle", "Enabled", function(Value) Config["Protection"]["Base Protection"]["Whitelist Enabled"] = Value end)
local BaseUserIdTextbox = BaseProtection:DarkStorm("TextBox", "", function() end, {placeholder = "Insert User ID"})
local BaseOutputLabel = nil
BaseProtection:DarkStorm("Button", "Add", function()
    local InputedID = tostring(BaseUserIdTextbox:GetValue())
    if InputedID and InputedID ~= "" then
        local Username = getUser(InputedID)
        repeat task.wait() Username = getUser(InputedID) until Username
        if not CHVar.BaseWhitelist[InputedID] then
            CHVar.BaseWhitelist[InputedID] = Username
            BaseOutputLabel:SetText("Output: Successfully Added " .. Username)
        else
            BaseOutputLabel:SetText("Output: Error, " .. Username .. " Already Exists!")
        end
    end
    writefile("Catalog Heaven Private/BaseWhitelist.txt", HttpService:JSONEncode(CHVar.BaseWhitelist))
end, {text = "Click", ConfigElement = false})
BaseProtection:DarkStorm("Button", "Remove", function()
    local InputedID = tostring(BaseUserIdTextbox:GetValue())
    if InputedID and InputedID ~= "" then
        local Username = getUser(InputedID)
        repeat task.wait() Username = getUser(InputedID) until Username
        if CHVar.BaseWhitelist[InputedID] then
            CHVar.BaseWhitelist[InputedID] = nil
            BaseOutputLabel:SetText("Output: Successfully Removed " .. Username)
        else
            BaseOutputLabel:SetText("Output: Error, " .. Username .. " Not Exists!")
        end
    end
    writefile("Catalog Heaven Private/BaseWhitelist.txt", HttpService:JSONEncode(CHVar.BaseWhitelist))
end, {text = "Click", ConfigElement = false})
BaseOutputLabel = BaseProtection:DarkStorm("Label", "Output: Hello World")

local Miscellaneous = Misc:Sector("Miscellaneous")
UIElements.Toggles["Misc"]["Miscellaneous"]["Use Heal Pads"] = Miscellaneous:DarkStorm("Toggle", "Use Heal Pads", function(Value) Config["Misc"]["Miscellaneous"]["Use Heal Pads"] = Value end)
UIElements.Toggles["Misc"]["Miscellaneous"]["Remove Bases FF"] = Miscellaneous:DarkStorm("Toggle", "Remove Bases FFs", function(Value) Config["Misc"]["Miscellaneous"]["Remove Bases FF"] = Value end)
UIElements.Toggles["Misc"]["Miscellaneous"]["Auto Enable Backpack"] = Miscellaneous:DarkStorm("Toggle", "Auto Enable Backpack", function(Value) Config["Misc"]["Miscellaneous"]["Auto Enable Backpack"] = Value end)
UIElements.Toggles["Misc"]["Miscellaneous"]["Anti Platforms"] = Miscellaneous:DarkStorm("Toggle", "Anti Platforms (must have good ping)", function(Value) Config["Misc"]["Miscellaneous"]["Anti Platforms"] = Value end)
UIElements.Toggles["Misc"]["Miscellaneous"]["Anti Crash"] = Miscellaneous:DarkStorm("Toggle", "Anti Crash Server", function(Value) Config["Misc"]["Miscellaneous"]["Anti Crash"] = Value end)
Miscellaneous:DarkStorm("Button", "Binoculray Stack", function()
    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local Humanoid = Character:FindFirstChild("Humanoid")

    if not Character then
        return
    end

    if not Humanoid then
        return
    end

    local Binoculray = Backpack:FindFirstChild("Binoculray") or Character:FindFirstChild("Binoculray")

    if not Binoculray then
        ToggleAsset(27133214)
        Binoculray = Backpack:WaitForChild("Binoculray")
	end

    if Humanoid then
        for i=1,500 do
            Humanoid:UnequipTools()
            Humanoid:EquipTool(Binoculray)
        end
    end
end, {text = "Click", ConfigElement = false})
Miscellaneous:DarkStorm("Button", "Anchor Self", function()
    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local StaffOfPitFire = Backpack:FindFirstChild("StaffOfPitFire")

    if not Character then
        return
    end

    if not StaffOfPitFire then
        ToggleAsset(49491808)
    end

    StaffOfPitFire = Backpack:WaitForChild("StaffOfPitFire")

    if not StaffOfPitFire.Enabled then
	    ToggleAsset(49491808)
        ToggleAsset(49491808)
    end

    StaffOfPitFire = Backpack:WaitForChild("StaffOfPitFire")

    StaffOfPitFire.Parent = Character
    Character:WaitForChild("StaffOfPitFire"):Activate()
    ToggleAsset(49491808)
    ToggleAsset(49491808)
end, {text = "Click", ConfigElement = false})
Miscellaneous:DarkStorm("Button", "Devoid All (fix velocity)", function()        
    for i, v in pairs(workspace:GetDescendants()) do
	    if v:IsA("BasePart") or v:IsA("Union") then
			v.Velocity = Vector3.zero
        end
	end
end, {text = "Click", ConfigElement = false})
Miscellaneous:DarkStorm("Button", "CRASH SERVER", function()
    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local Tools = {
        ["SillyGuitar"] = 57229371,
        ["WhiteGoldBlueFlowerSword"] = 226205948,
        ["ChartreusePeriastron"] = 80661504,
        ["DragonSword&Shield"] = 172298750,
        ["TrollPet"] = 88143060,
        ["Balligator"] = 292969458,
        ["SpaceSword"] = 170903610
    }
    
    for i, v in Tools do 
        if not Backpack:FindFirstChild(i) or Character:FindFirstChild(i) then
            ToggleAsset(v)
        end
    end
    
    task.wait(2)

    local CharCFrame = Character:GetPivot()

    Character:PivotTo(CharCFrame * CFrame.new(0, 20, 0))
    DragonHeal()

    for i, v in Backpack:GetChildren() do
        if not string.find(v.Name, "Diamond") then
            v.Parent = Character
            v.Parent = Backpack
        end
    end
    
    Backpack.SillyGuitar.Parent = Character
    
    Backpack:WaitForChild("Balligator"):WaitForChild("Remote"):WaitForChild("Spawn"):InvokeServer()
    Character:WaitForChild("Balligator"):PivotTo(CFrame.new(12e12, 12e12, 12e12))
    Backpack.SpaceSword:WaitForChild("ControlFunction"):InvokeServer("KeyDown", "q")
end, {text = "Click", ConfigElement = false})
UIElements.Keybinds["Misc"]["Miscellaneous"]["Respawn Bind"] = Miscellaneous:DarkStorm("KeyBind", "Respawn Bind", function(Value)
    Config["Misc"]["Miscellaneous"]["Respawn Bind"] = Value
end, {placeholder = "R"})

local Dupe = Misc:Sector("Tool Duper")
UIElements.Toggles["Misc"]["Tool Duper"]["Auto Pickup"] = Dupe:DarkStorm("Toggle", "Auto Pick up Duped Tools", function(Value) Config["Misc"]["Tool Duper"]["Auto Pickup"] = Value end)
UIElements.TextBoxes["Misc"]["Tool Duper"]["Cycle Amount"] = Dupe:DarkStorm("TextBox", "Amount of Cycles", function(Value) Config["Misc"]["Tool Duper"]["Cycle Amount"] = tonumber(Value) end, {placeholder = "Input Number"})
Dupe:DarkStorm("Button", "Start Dupe", function()
    local Cycles = Config["Misc"]["Tool Duper"]["Cycle Amount"]
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

    if not Character then
        return
    end

    local CharCFrame = Character:GetPivot()
    Character:PivotTo(CFrame.new(12e12, 12e12, 12e12))

    task.wait(1)

    local Head = Character:FindFirstChild("Head")

    if not Head then
        return
    end

    if Head:FindFirstChild("BodyVelocity") then
        Head.BodyVelocity:Destroy()
    end

    local BodyVelocity = Instance.new("BodyVelocity")
    BodyVelocity.Parent = Head
    BodyVelocity.Velocity = Vector3.zero

    for i=0, Cycles do
        Dupe()
        task.wait()
    end

    Character:PivotTo(CharCFrame)
    BodyVelocity:Destroy()
end, {text = "Click", ConfigElement = false})

local Give = Misc:Sector("Tool Giver")
Give:DarkStorm("Label", "Gives all Tools in Workspace under your Network Ownership to given Player.")
Give:DarkStorm("Label", "**Auto Pick up Duped Tools needs to be Disabled for this.**")
UIElements.TextBoxes["Misc"]["Tool Giver"]["Player Username"] = Give:DarkStorm("TextBox", "Player Username", function(Value) Config["Misc"]["Tool Giver"]["Player Username"] = Value end, {placeholder = "Input Username"})
Give:DarkStorm("Button", "Give Tools", function()
    local Player = Players:FindFirstChild(Config["Misc"]["Tool Giver"]["Player Username"])

    if not Player then
        return
    end

    local Character = Player.Character or Player.CharacterAdded:Wait()

    if not Character then
        return
    end

    for i,v in workspace:GetChildren() do
        if v:IsA("Tool") then
            local Handle = v:FindFirstChild("Handle")
            if Handle then
                if isnetworkowner(Handle) then
                    v:PivotTo(Character:GetPivot())
                end
            end
        end
    end
end, {text = "Click", ConfigElement = false})

local GearDetection = AntiGear:Sector("Gear Detection")
GearDetection:DarkStorm("Label", "Blacklist certain gears from use.")
UIElements.Toggles["AntiGear"]["Gear Detection"]["Diamond Blade Sword"] = GearDetection:DarkStorm("Toggle", "Diamond Blade Sword", function(Value) Config["AntiGear"]["Gear Detection"]["Diamond Blade Sword"] = Value end)
UIElements.Toggles["AntiGear"]["Gear Detection"]["Rocket Jumper"] = GearDetection:DarkStorm("Toggle", "Rocket Jumper", function(Value) Config["AntiGear"]["Gear Detection"]["Rocket Jumper"] = Value end)
UIElements.Toggles["AntiGear"]["Gear Detection"]["Dragon Shield"] = GearDetection:DarkStorm("Toggle", "Dragon Shield", function(Value) Config["AntiGear"]["Gear Detection"]["Dragon Shield"] = Value end)
GearDetection:DarkStorm("Label", "")
UIElements.Toggles["AntiGear"]["Gear Detection"]["Custom Check"] = GearDetection:DarkStorm("Toggle", "Custom Gear Check", function(Value) Config["AntiGear"]["Gear Detection"]["Custom Check"] = Value end)
local CustomGearTextBox = GearDetection:DarkStorm("TextBox", "Custom Gear", function(Value) end, {placeholder = "Gear Name"})
local CustomGearOutputLabel = nil
GearDetection:DarkStorm("Button", "Add", function()
    local InputedName = tostring(CustomGearTextBox:GetValue())
    if InputedName and InputedName ~= "" then
        if not table.find(CHVar.BlacklistedGears, InputedName) then
            table.insert(CHVar.BlacklistedGears, InputedName)
            CustomGearOutputLabel:SetText("Output: Successfully Added " .. InputedName)
        else
            CustomGearOutputLabel:SetText("Output: Error, " .. InputedName .. " Already Blacklisted!")
        end
    end
    writefile("Catalog Heaven Private/Gear Blacklist/BlacklistedGears.txt", HttpService:JSONEncode(CHVar.BlacklistedGears))
end, {text = "Click", ConfigElement = false})
GearDetection:DarkStorm("Button", "Remove", function()
    local InputedName = tostring(CustomGearTextBox:GetValue())
    if InputedName and InputedName ~= "" then
        if table.find(CHVar.BlacklistedGears, InputedName) then
            table.remove(CHVar.BlacklistedGears, table.find(CHVar.BlacklistedGears, InputedName))
            CustomGearOutputLabel:SetText("Output: Successfully Removed " .. InputedName)
        else
            CustomGearOutputLabel:SetText("Output: Error, " .. InputedName .. " Not Exists!")
        end
    end
    writefile("Catalog Heaven Private/Gear Blacklist/BlacklistedGears.txt", HttpService:JSONEncode(CHVar.BlacklistedGears))
end, {text = "Click", ConfigElement = false})
CustomGearOutputLabel = GearDetection:DarkStorm("Label", "Output: Hello World")
GearDetection:DarkStorm("Label", "")
GearDetection:DarkStorm("Label", "This one should be useful;")
GearDetection:DarkStorm("Label", "Copy Equipped Tool Name.")
GearDetection:DarkStorm("Button", "Copy Name", function()
    local Character = LocalPlayer.Character

    if Character then
        local Tool = Character:FindFirstChildOfClass("Tool")
        if Tool then
            setclipboard(Tool.Name)
        end
    end
end, {text = "Click", ConfigElement = false})
local PlayerWhitelist = AntiGear:Sector("Player Whitelist")
UIElements.Toggles["AntiGear"]["Player Whitelist"]["Enabled"] = PlayerWhitelist:DarkStorm("Toggle", "Enabled", function(Value) Config["AntiGear"]["Player Whitelist"]["Enabled"] = Value end)
PlayerWhitelist:DarkStorm("Label", "Add/Remove Players to bypass list.")
local PlayerWhitelistUserIdTextbox = PlayerWhitelist:DarkStorm("TextBox", "", function() end, {placeholder = "Insert User ID"})
local PlayerWhitelistOutputLabel = nil
PlayerWhitelist:DarkStorm("Button", "Add", function()
    local InputedID = tostring(PlayerWhitelistUserIdTextbox:GetValue())
    if InputedID and InputedID ~= "" then
        local Username = getUser(InputedID)
        repeat task.wait() Username = getUser(InputedID) until Username
        if not CHVar.GearWhitelistedPlayers[InputedID] then
            CHVar.GearWhitelistedPlayers[InputedID] = Username
            PlayerWhitelistOutputLabel:SetText("Output: Successfully Added " .. Username)
        else
            PlayerWhitelistOutputLabel:SetText("Output: Error, " .. Username .. " Already Exists!")
        end
    end
    writefile("Catalog Heaven Private/Gear Blacklist/GearWhitelistedPlayers.txt", HttpService:JSONEncode(CHVar.GearWhitelistedPlayers))
end, {text = "Click", ConfigElement = false})
PlayerWhitelist:DarkStorm("Button", "Remove", function()
    local InputedID = tostring(PlayerWhitelistUserIdTextbox:GetValue())
    if InputedID and InputedID ~= "" then
        local Username = getUser(InputedID)
        repeat task.wait() Username = getUser(InputedID) until Username
        if CHVar.GearWhitelistedPlayers[InputedID] then
            CHVar.GearWhitelistedPlayers[InputedID] = nil
            PlayerWhitelistOutputLabel:SetText("Output: Successfully Removed " .. Username)
        else
            PlayerWhitelistOutputLabel:SetText("Output: Error, " .. Username .. " Not Exists!")
        end
    end
    writefile("Catalog Heaven Private/Gear Blacklist/GearWhitelistedPlayers.txt", HttpService:JSONEncode(CHVar.GearWhitelistedPlayers))
end, {text = "Click", ConfigElement = false})
PlayerWhitelistOutputLabel = PlayerWhitelist:DarkStorm("Label", "Output: Hello World")

local Sound = Fun:Sector("Sound Troll")
Sound:DarkStorm("Button", "Play all Sounds", function()
    for i,v in game:GetDescendants() do
        if v:IsA("Sound") then
            v:Play()
        end
    end
end, {text = "Click", ConfigElement = false})
Sound:DarkStorm("Button", "Stop all Sounds", function()
    for i,v in game:GetDescendants() do
        if v:IsA("Sound") then
            v:Stop()
        end
    end
end, {text = "Click", ConfigElement = false})

local SettingsUI = Settings:Sector("UI Settings")
UIElements.Keybinds["Settings"]["UI Settings"]["Open/Close Bind"] = SettingsUI:DarkStorm("KeyBind", "Open/Close Bind", function(Value)
    Window.ChangeToggleKey(Enum.KeyCode[Value])
    Config["Settings"]["UI Settings"]["Open/Close Bind"] = Value
end, {placeholder = "RightShift"})
UIElements.Toggles["Settings"]["UI Settings"]["UI Toggle Button"] = SettingsUI:DarkStorm("Toggle", "UI Toggle Button", function(Value) Window.ChangeToggleButton("Visible", Value) Config["Settings"]["UI Settings"]["UI Toggle Button"] = Value end)

local SettingsConfig = Settings:Sector("Config Settings")
SettingsConfig:DarkStorm("Button", "", function()
	writefile("Catalog Heaven Private/Auto Config/Config.txt", HttpService:JSONEncode(Config))
end, {text = "Save Auto Config", ConfigElement = false})
SettingsConfig:DarkStorm("Button", "", function()
	writefile("Catalog Heaven Private/Auto Config/Config.txt", HttpService:JSONEncode({
    ["Combat"] = {
        ["Attack"] = {
            ["Diamond Blade"] = false,
            ["Rocket Jumper"] = false,
            ["Auto Void"] = false,
            ["Auto Blind"] = false,
            ["Cbring"] = false,
            ["CbringAnchorCheck"] = false
        },
        ["Hitlist"] = {
            ["Enabled"] = false
        }
    },
    ["Protection"] = {
        ["Godmode"] = {
            ["Diamond Blade"] = false,
            ["Dragon Shield"] = false,
            ["InfAll"] = false,
            ["BatFFOnRespawn"] = false
        },
        ["Base Protection"] = {
            ["Protect Base"] = false,
            ["Protection Range"] = 35,
            ["Whitelist Enabled"] = false
        }
    },
    ["Misc"] = {
        ["Miscellaneous"] = {
            ["Use Heal Pads"] = false,
            ["Remove Bases FF"] = false,
            ["Auto Enable Backpack"] = false,
            ["Anti Platforms"] = false,
            ["Anti Crash"] = false,
            ["Respawn Bind"] = "R"
        },
        ["Tool Duper"] = {
            ["Auto Pickup"] = false,
            ["Cycle Amount"] = 1
        },
        ["Tool Giver"] = {
            ["Player Username"] = ""
        }
    },
    ["AntiGear"] = {
        ["Gear Detection"] = {
            ["Diamond Blade Sword"] = false,
            ["Rocket Jumper"] = false,
            ["Dragon Shield"] = false,
            ["Custom Check"] = false
        },
        ["Player Whitelist"] = {
            ["Enabled"] = false
        }
    },
    ["Settings"] = {
        ["UI Settings"] = {
            ["Open/Close Bind"] = "RightShift",
            ["UI Toggle Button"] = false
        }
    }
}))
end, {text = "Reset Auto Config", ConfigElement = false})

pcall(function()
	Config = game:GetService("HttpService"):JSONDecode(readfile("Catalog Heaven Private/Auto Config/Config.txt"))
	local Range = Config["Protection"]["Base Protection"]["Protection Range"]
    for i,v in pairs(UIElements) do
		for b,x in pairs(v) do
			if Config[b] then
				if type(Config[b]) == "table" then
					for d,f in pairs(x) do
						if type(Config[b][d]) == "table" then
							for p,j in pairs(f) do
								j:SetValue(Config[b][d][p])
							end
						else
							f:SetValue(Config[b][d])
						end
					end
				else
					x:SetValue(Config[b])
				end
			end
		end
	end
    task.wait(0.1)
	Config["Protection"]["Base Protection"]["Protection Range"] = Range
end)

workspace.FallenPartsDestroyHeight = -50000

function ToggleAsset(AssetId: number)
    if not AssetId then
        return
    end
    local ToggleAsset = ReplicatedStorage.Remotes:FindFirstChild("ToggleAsset")
    if ToggleAsset then
        pcall(function()
            ToggleAsset:InvokeServer(AssetId)
        end)
    end
end

function Touch(Part: BasePart, Part2: BasePart, Toggle: boolean | number) --// made just for shorten fti lol
    if firetouchinterest then
        firetouchinterest(Part, Part2, Toggle)
    end
end

function Anchored()

    local Character = LocalPlayer.Character
    local Output = false

    for i, v in Character:GetChildren() do
        if v:IsA("BasePart") then
            if v.Anchored then
                Output = true
                return Output
            else
                Output = false
            end
        end
    end

    return Output
end

function LookForNewPart(Target: Model)

    if not Target then
        return
    end

    local Founded = false

    for i, v in Target:GetChildren() do
        if not v:IsA("Tool") and not v:IsA("Accessory") and not v:IsA("Shirt") and not v:IsA("Pants") and not v:IsA("MeshPart") and not v:IsA("Shirt Graphic") and not v:IsA("LocalScript") then
            if not table.find(BlacklistedNames, v.Name) then
                Founded = true
            end
        end
    end

    return Founded
end

function getUser(ID)
    local response = HttpService:JSONDecode(game:HttpGet("https://users.roblox.com/v1/users/"..ID))
    if response then
        return response.name
    end
end

function Diamond(Target: Model, WantedDamage: number)
    
    if not Target then
        return
    end

    if (not WantedDamage or not type(WantedDamage) == "number") then
        return
    end

    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local DiamondBladeSword = Backpack:FindFirstChild("Diamond Blade Sword") or Character:FindFirstChild("Diamond Blade Sword")

    if not DiamondBladeSword then
        return
    end

    local Humanoid = Target:FindFirstChildWhichIsA("Humanoid")

    if not Humanoid then
        return
    end

    if Target:FindFirstChildWhichIsA("ForceField") then -- stop targetting ff users, no sense
        return
    end


    if Humanoid.Health > 0 or tostring(Humanoid.Health) == "inf" then
        local Controller = DiamondBladeSword.GearScript:FindFirstChild("Controller")
        if Controller then
            pcall(function()
                Controller:InvokeServer(7, Humanoid, WantedDamage) 
            end)
        end
    end
end

function Rocket(Target)
    
    if not Target then
        return
    end

    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local RocketJumper = Backpack:FindFirstChild("RocketJumper") or Character:FindFirstChild("RocketJumper")

    if not RocketJumper then
        return
    end

    local Humanoid = Target:FindFirstChildWhichIsA("Humanoid")

    if not Humanoid then
        return
    end

    local Head = Target:FindFirstChild("Head")
    
    if not Head then
        return
    end

    if Humanoid:GetState() ~= Enum.HumanoidStateType.Dead then
        local FireRocket = RocketJumper:FindFirstChild("FireRocket")
        if FireRocket then
            pcall(function()
                FireRocket:FireServer(Head.Position+Vector3.new(0, -10, 0), Head.Position)
            end)
        end
    end
end

function PlatformVoid(Target)

    if not Target then
        return
    end

    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local StepGun = Backpack:FindFirstChild("StepGun") or Character:FindFirstChild("StepGun")

    if not StepGun then
        return
    end
    
    local Humanoid = Target:FindFirstChildWhichIsA("Humanoid")

    if not Humanoid then
        return
    end

    if Humanoid:GetState() ~= Enum.HumanoidStateType.Dead then
        if Target:FindFirstChild("Head") then
            if StepGun.Parent == Backpack then
                StepGun.Parent = Character
            end
            local Shoot = StepGun:FindFirstChild("Shoot")
            if Shoot then
                pcall(function()
                    Shoot:FireServer(Vector3.new(12e12, 12e12, 12e12))
                end)
            end
            StepGun.Parent = Backpack
            local ContactReporter = LocalPlayer.PlayerGui:WaitForChild("ContactReporter")
            if ContactReporter then
                local Report = ContactReporter:FindFirstChild("Report")
                if Report then
                    local succ, err = pcall(function()
                        Report:FireServer(CFrame.new(-12e12, -12e12, -12e12), Target:FindFirstChildOfClass("Part"))
                    end)
                    if succ then
                        ContactReporter:Destroy()
                    end
                end
            end
        end
    end
end

function Cbring(Target: Model)

    if not Target then
        return
    end

    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local KorbloxSwordAndShield = Backpack:FindFirstChild("KorbloxSwordAndShield") or Character:FindFirstChild("KorbloxSwordAndShield")

    if not Character then
        return
    end

    if not KorbloxSwordAndShield then
        return
    end
    
    local Humanoid = Target:FindFirstChildWhichIsA("Humanoid")

    if not Humanoid then
        return
    end

    local Handle = KorbloxSwordAndShield:FindFirstChild("Handle")

    if not Handle then
        return
    end

    if not Anchored() then
        if Humanoid:GetState() ~= Enum.HumanoidStateType.Dead then
            if KorbloxSwordAndShield.Parent == Backpack then
                KorbloxSwordAndShield.Parent = Character
            end
            KorbloxSwordAndShield:Activate()
            for i, v in Target:GetChildren() do
                if v:IsA("BasePart") then
                    Touch(Handle, v, 0)
                    Touch(Handle, v, 1)
                end
            end
        end
    end

end

function Blind(Target: Model)

    if not Target then
        return
    end

    for i, v in workspace:GetChildren() do
        if v:IsA("Part") then
            if isnetworkowner(v) then
                local Mesh = v:FindFirstChild("Mesh")
                if Mesh and Mesh.MeshId == "http://www.roblox.com/asset/?id=66877034" then
                    Touch(v, Target:FindFirstChildOfClass("Part"), 0)
                    Touch(v, Target:FindFirstChildOfClass("Part"), 1)
                end
            end
        end
    end
end

function DragonHeal()
    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()
    local DragonShield = Backpack:FindFirstChild("DragonSword&Shield") or Character:FindFirstChild("DragonSword&Shield")

    if not DragonShield then
        return
    end

    local GearLib = DragonShield.GearScript.GearLibrary

    if GearLib.Disabled then
        return
    end

    GearLib.Disabled = true
    if DragonShield.Parent == Backpack then
        DragonShield.Parent = Character
    end
    local Blocking = DragonShield:FindFirstChild("Blocking")
    if Blocking then
        pcall(function()
            Blocking:FireServer(true)
        end)
    end
    DragonShield.Parent = Backpack
end

function Dupe()
    local Backpack = LocalPlayer.Backpack
    local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

    if not Character then
        return
    end

    if Anchored() then
        return
    end

    if Config["Misc"]["Tool Duper"]["Auto Pickup"] then
        for i, v in workspace:GetChildren() do
            if v:IsA("Tool") then
                local Handle = v:FindFirstChild("Handle")
                if Handle then
                    if isnetworkowner(Handle) then
                        Touch(Character:FindFirstChildOfClass("Part"), Handle, 0)
                        task.wait()
                        Touch(Character:FindFirstChildOfClass("Part"), Handle, 1)
                    end
                end
            end
        end
    end

    for i, v in workspace:GetChildren() do
        if v:IsA("Part") and v:FindFirstChild("RandomEgg") then
            if v.RandomEgg:FindFirstChild("Creator") and v.RandomEgg:FindFirstChild("Creator").Value == LocalPlayer then
                Touch(Character:FindFirstChildOfClass("Part"), v, 0)
                task.wait()
                Touch(Character:FindFirstChildOfClass("Part"), v, 1)
            end
        end
    end

    local Joyful = Backpack:FindFirstChild("JoyfulPeriastron") or Character:FindFirstChild("JoyfulPeriastron")

    if not Joyful then
        ToggleAsset(233520257)
        Joyful = Backpack:WaitForChild("JoyfulPeriastron")
    end

    Joyful.Parent = Character
    pcall(function()
        Joyful:WaitForChild("Remote"):FireServer(Enum.KeyCode.Q)
    end)

    for i=1, 2 do
        ToggleAsset(233520257)
    end
end

function BatFF()
    local Backpack = LocalPlayer.Backpack
	local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

    if not Character then
        return
    end

    if Character:FindFirstChildWhichIsA("ForceField") then
        return
    end

    local BatKnightBatSword = Backpack:FindFirstChild("BatKnightBatSword") or Character:FindFirstChild("BatKnightBatSword")

    if not BatKnightBatSword then
        ToggleAsset(17680660)
        BatKnightBatSword = Backpack:WaitForChild("BatKnightBatSword")
	end

    local Root = Character:FindFirstChild("HumanoidRootPart")
    local Torso = Character:FindFirstChild("Torso")
    local FFStatus = MyBase:FindFirstChild("ForceField")

    if not Root then
        return
    end

    if not Torso then
        return
    end

    repeat task.wait() until not Anchored() or not Character

    if FFStatus then
        Touch(FFStatus:FindFirstChild("FF"), Root, 0)
        task.wait()
        Touch(FFStatus:FindFirstChild("FF"), Root, 1)
    end

    if not FFStatus then
        pcall(function()
            FFLeverEvent:FireServer()
        end)
        FFStatus = MyBase:WaitForChild("ForceField")
        Touch(FFStatus:FindFirstChild("FF"), Root, 0)
        task.wait()
        Touch(FFStatus:FindFirstChild("FF"), Root, 1)
        task.wait(0.1)
        pcall(function()
            FFLeverEvent:FireServer()
        end)
    end

    local FakeRoot = Root:Clone()

    Root.AncestryChanged:Wait()
    if BatKnightBatSword.Parent == Backpack then
        BatKnightBatSword.Parent = Character
    end
    Character:WaitForChild("BatKnightBatSword")
    Torso.Anchored = true
    pcall(function()
        BatKnightBatSword:WaitForChild("Remote"):FireServer(Enum.KeyCode.Q)
    end)
    BatKnightBatSword.Parent = Backpack
    local NewTorso = Instance.new("Part")
    NewTorso.Parent = Character
    NewTorso.Transparency = 1
    NewTorso.Name = Torso.Name
    NewTorso:Destroy()
    Torso.Anchored = false
    FakeRoot.Massless = true
    FakeRoot.Parent = Character
end

function kill(Character)

    if not Character then
        return
    end

    pcall(function()
        if Config["Combat"]["Attack"]["Diamond Blade"] then Diamond(Character, 1/0) end
        if Config["Combat"]["Attack"]["Rocket Jumper"] then Rocket(Character) end
        if Config["Combat"]["Attack"]["Auto Void"] then PlatformVoid(Character) end
        if Config["Combat"]["Attack"]["Auto Blind"] then Blind(Character) end
        if Config["Combat"]["Attack"]["Cbring"] then local Torso = Character:FindFirstChild("Torso") or Character:FindFirstChild("UpperTorso") if Torso then if Config["Combat"]["Attack"]["CbringAnchorCheck"] then if Torso.Anchored then Cbring(Character) end else Cbring(Character) end end end
    end)
end

function Attack()
    pcall(function()
        for i, v in Players:GetPlayers() do
            if v ~= LocalPlayer then
                if table.find(CHVar.AttackList, v.Name) or (CHVar.Hitlist[tostring(v.UserId)] and Config["Combat"]["Hitlist"]["Enabled"]) then
                    local Character = v.Character or v.CharacterAdded:Wait()
                    if Character then
                        kill(Character)
                    end
                end
            end
        end
    end)
end

function BaseProtect()
    pcall(function()
        local Range = Config["Protection"]["Base Protection"]["Protection Range"]
        local Backpack = LocalPlayer.Backpack
        local MyCharacter = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

        local SpawnLocation = MyBase:FindFirstChild("SpawnLocation")
        
        if Config["Protection"]["Base Protection"]["Protect Base"] then
            if Config["Protection"]["Base Protection"]["Whitelist Enabled"] then
                for i, v in Players:GetPlayers() do
                    if v ~= LocalPlayer then
                        if not CHVar.BaseWhitelist[tostring(v.UserId)] then
                            local Character = v.Character or v.CharacterAdded:Wait()
                            if Character then
                                local Torso = Character:FindFirstChild("Torso") or Character:FindFirstChild("UpperTorso")
                                if Torso then
                                    if (Torso.Position - SpawnLocation.Position).Magnitude <= Range then
                                        if MyCharacter then
                                            local Humanoid = MyCharacter:FindFirstChildWhichIsA("Humanoid")
                                            if Humanoid:GetState() ~= Enum.HumanoidStateType.Dead and MyCharacter:FindFirstChild("Head") then
                                                Cbring(Character)
                                            else
                                                if not Torso.Anchored then
                                                    Rocket(Character)
                                                    Diamond(Character, 1/0)
                                                end
                                           end
                                        end
                                    end
                                end
                            end
                        end
                    end
                end
            else
                for i, v in Players:GetPlayers() do
                    if v ~= LocalPlayer then
                        local Character = v.Character or v.CharacterAdded:Wait()
                        if Character then
                            local Torso = Character:FindFirstChild("Torso") or Character:FindFirstChild("UpperTorso")
                            if Torso then
                                if (Torso.Position - SpawnLocation.Position).Magnitude <= Range then
                                    if MyCharacter then
                                        local Humanoid = MyCharacter:FindFirstChildWhichIsA("Humanoid")
                                        if Humanoid:GetState() ~= Enum.HumanoidStateType.Dead and MyCharacter:FindFirstChild("Head") then
                                            Cbring(Character)
                                        else
                                            if not Torso.Anchored then
                                                Rocket(Character)
                                                Diamond(Character, 1/0)
                                            end
                                        end
                                    end
                                end
                            end
                        end
                    end
                end
            end
        end
    end)
end

function Protection()
    pcall(function()
        local MyCharacter = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

        if Config["Protection"]["Godmode"]["Diamond Blade"] then
            Diamond(MyCharacter, -1/0)
        end

        if Config["Protection"]["Godmode"]["Dragon Shield"] then
            DragonHeal()
        end

        if Config["Protection"]["Godmode"]["InfAll"] then
            for i, v in Players:GetPlayers() do
                if v ~= LocalPlayer then
                    if not table.find(CHVar.AttackList, v.Name) and not CHVar.Hitlist[tostring(v.UserId)] then
                        local Character = v.Character or v.CharacterAdded:Wait()
                        if Character then
                            Diamond(Character, -1/0)
                        end
                    end
                end
            end
        end
    end)
end

function Miscellaneous()
    pcall(function()
        local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

        if Config["Misc"]["Miscellaneous"]["Use Heal Pads"] then
            for i, v in Players:GetPlayers() do
                local HealPad = workspace[v.Name.."'s Cloud"]:FindFirstChild("HealingPad")
                if HealPad then
                    if Character then
                        if not Anchored() then
                            Touch(Character:FindFirstChildOfClass("Part"), HealPad, 0)
                            Touch(Character:FindFirstChildOfClass("Part"), HealPad, 1)
                        end
                    end
                end
            end
        end

        if Config["Misc"]["Miscellaneous"]["Remove Bases FF"] then
            for i, v in Players:GetPlayers() do
                if v ~= LocalPlayer then
                    local ForceField = workspace[v.Name.."'s Cloud"]:FindFirstChild("ForceField")
                    if ForceField then
                        ForceField:Destroy()
                    end
                end
            end
            local ForceField = MyBase:FindFirstChild("ForceField")
            if ForceField then
                for i, v in ForceField:GetChildren() do
                    if v:IsA("BasePart") then
                        v.CFrame = CFrame.new(9e9, 9e9, 9e9)
                    end
                end
            end
        end

        if Config["Misc"]["Miscellaneous"]["Anti Platforms"] then
            for i, v in workspace:GetChildren() do
                if v.Name == "StickyStep" then
                    local Player = Players:FindFirstChild(tostring(v:WaitForChild("creator").Value))
                    if (Player and Player ~= LocalPlayer) and (Player.Character) then
                        local ContactReporter = LocalPlayer.PlayerGui:WaitForChild("ContactReporter")
                        if ContactReporter then
                            local Report = ContactReporter:FindFirstChild("Report")
                            if Report then
                                local succ, err = pcall(function()
                                    Report:FireServer(CFrame.new(-12e12, -12e12, -12e12), Player.Character:FindFirstChildOfClass("Part"))
                                end)
                                if succ then
                                    LocalPlayer.PlayerGui.ContactReporter:Destroy()
                                end
                            end
                        end
                    end
                end
            end
        end

        if Config["Misc"]["Miscellaneous"]["Anti Crash"] then
            for i, v in Players:GetPlayers() do
                if v ~= LocalPlayer then
                    local Character = v.Character or v.CharacterAdded:Wait()
                    if Character then
                        if v.Backpack:FindFirstChild("WhiteGoldBlueFlowerSword") or Character:FindFirstChild("WhiteGoldBlueFlowerSword") then
                            if v.Backpack:FindFirstChild("SledgeHammer") or Character:FindFirstChild("SledgeHammer") then
                                Cbring(Character)
                                Diamond(Character, 1/0)
                            end
                        end
                        
                        if v.Backpack:FindFirstChild("SpaceSword") or Character:FindFirstChild("SpaceSword") then
                            if LookForNewPart(Character) then --//look for char model expand
                                Cbring(Character)
                                Diamond(Character, 1/0)
                            end
                        end
                    end
                end
            end
        end

        for i,v in LocalPlayer.PlayerGui:GetChildren() do
            if v.Name == "VolleyballScreenGui" or v.Name == "DarknessGui" then
                v.Enabled = false
            end
        end

        if Config["Misc"]["Miscellaneous"]["Auto Enable Backpack"] then
            game:GetService("StarterGui"):SetCoreGuiEnabled(Enum.CoreGuiType.Backpack, true)
        end
    end)
end

function AntiGear() -- ts is so ugly
    pcall(function()
        for i, v in Players:GetPlayers() do
            if v ~= LocalPlayer then
                local Character = v.Character or v.CharacterAdded:Wait()
                if Character then
                    if Config["AntiGear"]["Player Whitelist"]["Enabled"] then
                        if not CHVar.GearWhitelistedPlayers[tostring(v.UserId)] then
                            if v.Backpack:FindFirstChild("Diamond Blade Sword") then
                                if Config["AntiGear"]["Gear Detection"]["Diamond Blade Sword"] then
                                    kill(Character)
                                end
                            end
                            if v.Backpack:FindFirstChild("RocketJumper") then
                                if Config["AntiGear"]["Gear Detection"]["Rocket Jumper"] then
                                    kill(Character)
                                end
                            end
                            if v.Backpack:FindFirstChild("DragonSword&Shield") then
                                if Config["AntiGear"]["Gear Detection"]["Dragon Shield"] then
                                    kill(Character)
                                end
                            end
                            if Config["AntiGear"]["Gear Detection"]["Custom Check"] then
                                for i, v in v.Backpack:GetChildren() do
                                    if table.find(CHVar.BlacklistedGears, v.Name) then
                                        kill(Character)
                                        break
                                    end
                                end
                            end
                        end
                    else
                        if v.Backpack:FindFirstChild("Diamond Blade Sword") then
                            if Config["AntiGear"]["Gear Detection"]["Diamond Blade Sword"] then
                                kill(Character)
                            end
                        end
                        if v.Backpack:FindFirstChild("RocketJumper") then
                            if Config["AntiGear"]["Gear Detection"]["Rocket Jumper"] then
                                kill(Character)
                            end
                        end
                        if v.Backpack:FindFirstChild("DragonSword&Shield") then
                            if Config["AntiGear"]["Gear Detection"]["Dragon Shield"] then
                                kill(Character)
                            end
                        end
                        if Config["AntiGear"]["Gear Detection"]["Custom Check"] then
                            for i, v in ipairs(v.Backpack:GetChildren()) do
                                if table.find(CHVar.BlacklistedGears, v.Name) then
                                    kill(Character)
                                    break
                                end
                            end
                        end
                    end
                end
            end
        end
    end)
end

CHVar.Connections.BatFF = LocalPlayer.CharacterAdded:Connect(function(Character)
    if Config["Protection"]["Godmode"]["BatFFOnRespawn"] then
        task.delay(1, BatFF)
    end
end)

CHVar.Connections.Respawn = UserInputService.InputBegan:Connect(function(input, typing)
    if input.KeyCode == Enum.KeyCode[Config["Misc"]["Miscellaneous"]["Respawn Bind"]] and not typing then
        local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

        if not Character then
            return
        end

        local CharCFrame = Character:GetPivot()
        local Humanoid = Character:FindFirstChildWhichIsA("Humanoid")

        if not Humanoid then
            return
        end

        local SetRigType = ReplicatedStorage.Remotes:FindFirstChild("SetRigType")
        if SetRigType then
            local succ, err = pcall(function()
                SetRigType:FireServer(Humanoid.RigType)
            end)
            if succ then
                LocalPlayer.CharacterAdded:Wait()
                repeat task.wait(1) until LocalPlayer.Character
                LocalPlayer.Character:PivotTo(CharCFrame)
            end
        end
    end
end)

CHVar.Connections.WorkspaceTrashWatcher = workspace.ChildAdded:Connect(function(Child)
    if Child:IsA("Explosion") then
        task.defer(function()
            Child:Destroy()
        end)
    end
end)

--[[CHVar.Connections.PlayerRemoving = Players.PlayerRemoving:Connect(function(Player)
    if table.find(CHVar.BlindedPlayers, Player.Name) then
        print('founded')
        local succ, no = pcall(function() table.remove(CHVar.BlindedPlayers, table.find(CHVar.BlindedPlayers, Player.Name)) end)
        print(succ)
    end
end)]]

game:GetService("RunService"):UnbindFromRenderStep("BeforeCamera")
game:GetService("RunService"):UnbindFromRenderStep("Attack")
game:GetService("RunService"):UnbindFromRenderStep("Protection")
game:GetService("RunService"):UnbindFromRenderStep("BaseProtect")
game:GetService("RunService"):UnbindFromRenderStep("Miscellaneous")
game:GetService("RunService"):UnbindFromRenderStep("AntiGear")

game:GetService("RunService"):BindToRenderStep("Attack", 0, Attack)
game:GetService("RunService"):BindToRenderStep("Protection", 0, Protection)
game:GetService("RunService"):BindToRenderStep("BaseProtect", 0, BaseProtect)
game:GetService("RunService"):BindToRenderStep("Miscellaneous", 0, Miscellaneous)
game:GetService("RunService"):BindToRenderStep("AntiGear", 0, AntiGear)

local Backpack = LocalPlayer.Backpack
local Character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait()

for i, v in Necessary["Equipment Tools"] do
    if not Backpack:FindFirstChild(i) and not Character:FindFirstChild(i) then
        ToggleAsset(v)
    end
end

if MyBase:FindFirstChild("ForceField") and Necessary["Auto Open Base"] then
    pcall(function()
        FFLeverEvent:FireServer()
    end)
end

Features & Information

Unlike most of the shity CH scripts on sites nowadays, this does not require the chat function to work - it has a built in GUI for you to loopkill players. You can also use abilities on yourself, like infinity health.
#Catalog Heaven

Community Comments (2)

ThaRealKdospapajThaRealKdospapajApr 5, 2026

fake script doesnt even work

Replying to @ThaRealKdospapaj
KD0SPAPAJKD0SPAPAJApr 6, 2026

@ThaRealKdospapaj fkawr

More Scripts for Catalog Heaven