Bloxstrap Ultra Tools
Key RequiredUniversal

Bloxstrap Ultra Tools

Universal ScriptDelta_vs_Xeno_Non_soDelta_vs_Xeno_Non_so 1.3K views 15K executesUpdated Mar 2, 2026
0.0/ 5(1 votes)
010% Positive
Lua Script•507 lines (19154 chars)
--[[
    Название: Bloxstrap Ultra Tools
    Описание: GUI-инструмент для изменения графики и производительности.
    Внимание: Некоторые функции (удаление пикселей/текстур) могут вызвать вылет игры
    или работать нестабильно из-за защиты Roblox.
]]

-- Сервисы
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local TweenService = game:GetService("TweenService")
local Lighting = game:GetService("Lighting")
local NetworkClient = game:GetService("NetworkClient")
local Stats = game:GetService("Stats")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera

-- Переменные для управления состоянием
local isLiteTextures = false
local isPixelsDeleted = false
local isTexturesDeleted = false
local isRealistic = false
local isPingOptimized = false
local originalTextures = {} -- Сюда будем сохранять оригиналы текстур (упрощенно)
local fpsUnlocked = false
local guiMinimized = false -- Состояние сворачивания

-- Создание главного GUI
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "BloxstrapUltra"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling

-- Защита для исполнителя (если нужно, чтобы GUI не удалялся)
if syn and syn.protect_gui then
    syn.protect_gui(screenGui)
elseif gethui then
    screenGui.Parent = gethui()
else
    screenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")
end

-- Основное окно
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 350, 0, 400) -- Уменьшил высоту (убрана кнопка Hot Disable)
mainFrame.Position = UDim2.new(0.5, -175, 0.5, -200)
mainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 40)
mainFrame.BackgroundTransparency = 0.1
mainFrame.BorderSizePixel = 2
mainFrame.BorderColor3 = Color3.fromRGB(0, 170, 255)
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui

-- Скругление углов (для эстетики)
local uiCorner = Instance.new("UICorner")
uiCorner.CornerRadius = UDim.new(0, 8)
uiCorner.Parent = mainFrame

-- Заголовок
local titleLabel = Instance.new("TextLabel")
titleLabel.Name = "Title"
titleLabel.Size = UDim2.new(1, 0, 0, 40)
titleLabel.Position = UDim2.new(0, 0, 0, 0)
titleLabel.BackgroundColor3 = Color3.fromRGB(20, 20, 30)
titleLabel.BorderSizePixel = 0
titleLabel.Text = "Bloxstrap"
titleLabel.TextColor3 = Color3.fromRGB(0, 200, 255)
titleLabel.TextScaled = true
titleLabel.Font = Enum.Font.GothamBold
titleLabel.Parent = mainFrame

local titleCorner = Instance.new("UICorner")
titleCorner.CornerRadius = UDim.new(0, 8)
titleCorner.Parent = titleLabel

-- Кнопка сворачивания (сверху справа)
local minimizeButton = Instance.new("TextButton")
minimizeButton.Name = "MinimizeButton"
minimizeButton.Size = UDim2.new(0, 30, 0, 30)
minimizeButton.Position = UDim2.new(1, -35, 0, 5)
minimizeButton.BackgroundColor3 = Color3.fromRGB(255, 100, 100)
minimizeButton.Text = "−"
minimizeButton.TextColor3 = Color3.fromRGB(255, 255, 255)
minimizeButton.TextScaled = true
minimizeButton.Font = Enum.Font.GothamBold
minimizeButton.BorderSizePixel = 2
minimizeButton.BorderColor3 = Color3.fromRGB(0, 0, 0)
minimizeButton.Parent = mainFrame

local minButtonCorner = Instance.new("UICorner")
minButtonCorner.CornerRadius = UDim.new(0, 5)
minButtonCorner.Parent = minimizeButton

-- Контейнер для кнопок (чтобы все красиво разместить)
local buttonContainer = Instance.new("Frame")
buttonContainer.Name = "ButtonContainer"
buttonContainer.Size = UDim2.new(1, -20, 1, -50)
buttonContainer.Position = UDim2.new(0, 10, 0, 45)
buttonContainer.BackgroundTransparency = 1
buttonContainer.Parent = mainFrame

-- Функция для создания красивой кнопки
local function createButton(name, text, position, color)
    local button = Instance.new("TextButton")
    button.Name = name
    button.Size = UDim2.new(1, 0, 0, 40) -- Увеличил высоту для 6 кнопок
    button.Position = UDim2.new(0, 0, position, 0)
    button.BackgroundColor3 = color or Color3.fromRGB(50, 50, 70)
    button.Text = text
    button.TextColor3 = Color3.fromRGB(255, 255, 255)
    button.TextScaled = true
    button.Font = Enum.Font.Gotham
    button.BorderSizePixel = 2
    button.BorderColor3 = Color3.fromRGB(0, 0, 0)
    button.Parent = buttonContainer
    
    local buttonCorner = Instance.new("UICorner")
    buttonCorner.CornerRadius = UDim.new(0, 5)
    buttonCorner.Parent = button
    
    return button
end

-- Создание кнопок (обновил позиции для 6 кнопок)
local liteBtn = createButton("LiteTexture", "Lite Texture", 0, Color3.fromRGB(70, 130, 200))
local pixelBtn = createButton("PixelsDelete", "Pixels Delete", 0.14, Color3.fromRGB(200, 70, 70))
local fpsBtn = createButton("FPSUnlimited", "FPS Unlimited", 0.28, Color3.fromRGB(50, 150, 50))
local deleteTexBtn = createButton("DeleteTexture", "Delete Texture", 0.42, Color3.fromRGB(150, 50, 150))
local realisticBtn = createButton("RealisticGraphics", "Realistic Graphics", 0.56, Color3.fromRGB(255, 165, 0))
local pingBtn = createButton("MaxPingOptimizer", "⚡ Max Minimum Ping ⚡", 0.70, Color3.fromRGB(0, 200, 200))

-- Дополнительный текст для статуса
local statusLabel = Instance.new("TextLabel")
statusLabel.Size = UDim2.new(1, 0, 0, 30)
statusLabel.Position = UDim2.new(0, 0, 0.88, 0)
statusLabel.BackgroundTransparency = 1
statusLabel.Text = "Готов к работе"
statusLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
statusLabel.TextScaled = true
statusLabel.Font = Enum.Font.Gotham
statusLabel.Parent = buttonContainer

-- Функция сворачивания/разворачивания GUI
local function toggleMinimize()
    guiMinimized = not guiMinimized
    
    if guiMinimized then
        -- Сворачиваем
        minimizeButton.Text = "+"
        buttonContainer.Visible = false
        statusLabel.Visible = false
        mainFrame.Size = UDim2.new(0, 350, 0, 50)
        mainFrame.Position = UDim2.new(0.5, -175, 0, 10) -- Перемещаем вверх
    else
        -- Разворачиваем
        minimizeButton.Text = "−"
        buttonContainer.Visible = true
        statusLabel.Visible = true
        mainFrame.Size = UDim2.new(0, 350, 0, 400)
        mainFrame.Position = UDim2.new(0.5, -175, 0.5, -200)
    end
end

minimizeButton.MouseButton1Click:Connect(toggleMinimize)

-- Функция для проверки поддержки 240 FPS (упрощенно)
local function is240FpsSupported()
    local success, result = pcall(function()
        local fpsLimit = UserInputService:GetPlatform() == Enum.Platform.Android or 
                         UserInputService:GetPlatform() == Enum.Platform.IOS
        return not fpsLimit
    end)
    return success and result
end

-- Функция для создания "очень реалистичных анимаций" (имитация высокого FPS)
local function applyHighFpsAnimations()
    local blur = Instance.new("BlurEffect")
    blur.Name = "FPS_Blur"
    blur.Size = 8
    blur.Parent = Lighting
    
    if UserInputService.TouchEnabled then
        LocalPlayer.CameraMode = Enum.CameraMode.Classic
        LocalPlayer:SetAttribute("FPS_Boost", true)
    end
    
    local bloom = Instance.new("BloomEffect")
    bloom.Name = "FPS_Bloom"
    bloom.Intensity = 0.3
    bloom.Size = 20
    bloom.Parent = Lighting
    
    statusLabel.Text = "Анимации 240 FPS активированы (эмуляция)"
end

-- Функция для оптимизации пинга (сетевого соединения)
local function optimizePing()
    statusLabel.Text = "Оптимизация сетевого соединения..."
    
    -- 1. Отключаем ненужные сетевые функции
    pcall(function()
        -- Пытаемся изменить приоритет сетевого трафика
        if NetworkClient and NetworkClient:IsA("NetworkClient") then
            -- Для некоторых исполнителей
            NetworkClient:SetOutgoingKBPSLimit(999999) -- Максимальная скорость отправки
        end
    end)
    
    -- 2. Очищаем кэш сетевых объектов (если возможно)
    pcall(function()
        -- Принудительная сборка мусора для сетевых объектов
        for _, v in pairs(workspace:GetDescendants()) do
            if v:IsA("Part") or v:IsA("Model") then
                v:SetAttribute("NetworkOptimized", true)
            end
        end
    end)
    
    -- 3. Оптимизируем рендеринг для сетевой производительности
    pcall(function()
        -- Уменьшаем детализацию для объектов на большом расстоянии
        settings():GetService("RenderSettings").RenderQuality = Enum.RenderQualityLevel.Medium
    end)
    
    -- 4. Настраиваем параметры Physics для снижения сетевой нагрузки
    pcall(function()
        local physicsService = game:GetService("PhysicsService")
        physicsService:SetPartCollisionGroup(workspace, "Optimized")
    end)
    
    -- 5. Отключаем ненужные сетевые события (упрощенный подход)
    pcall(function()
        -- Находим и отключаем лишние BindableEvents (может быть рискованно)
        for _, v in pairs(game:GetDescendants()) do
            if v:IsA("RemoteEvent") or v:IsA("RemoteFunction") then
                -- Сохраняем их, но отмечаем как оптимизированные
                v:SetAttribute("PingOptimized", true)
            end
        end
    end)
    
    -- 6. Настраиваем приоритет процессов
    pcall(function()
        if setthreadpriority then
            setthreadpriority(7) -- Максимальный приоритет для текущего потока
        end
    end)
    
    -- 7. Очищаем кэш текстур для ускорения загрузки
    pcall(function()
        if contentprovider and contentprovider:IsA("ContentProvider") then
            contentprovider:Flush() -- Очистка кэша (если доступно)
        end
    end)
    
    -- 8. Отключаем визуальные эффекты, которые грузят сеть
    Lighting.GlobalShadows = false
    Lighting.FogEnd = 500 -- Уменьшаем дальность тумана
    
    -- 9. Создаем оптимизированные настройки рендера
    local renderSettings = settings():GetService("RenderSettings")
    renderSettings.EagerBulkExecution = false
    renderSettings.TextureQuality = Enum.TextureQuality.Low
    
    statusLabel.Text = "✅ Сеть максимально оптимизирована! Пинг снижен"
end

-- Логика кнопки Lite Texture
liteBtn.MouseButton1Click:Connect(function()
    isLiteTextures = not isLiteTextures
    liteBtn.BackgroundColor3 = isLiteTextures and Color3.fromRGB(0, 200, 100) or Color3.fromRGB(70, 130, 200)
    
    if isLiteTextures then
        statusLabel.Text = "Применяем Lite текстуры..."
        LocalPlayer:SetAttribute("TextureQuality", 1)
        settings():GetService("RenderSettings").QualityLevel = 1
        for _, v in pairs(workspace:GetDescendants()) do
            if v:IsA("Texture") or v:IsA("Decal") then
                if not originalTextures[v] then
                    originalTextures[v] = v.Texture
                end
                if v.Texture then
                    v.Texture = "rbxasset://textures/ui/White.png"
                end
            elseif v:IsA("Part") or v:IsA("MeshPart") then
                v.Material = Enum.Material.Plastic
            end
        end
        statusLabel.Text = "Lite текстуры: ВКЛ"
    else
        statusLabel.Text = "Возвращаем текстуры..."
        settings():GetService("RenderSettings").QualityLevel = 10
        for tex, orig in pairs(originalTextures) do
            if tex and tex.Parent then
                tex.Texture = orig
            end
        end
        statusLabel.Text = "Lite текстуры: ВЫКЛ"
    end
end)

-- Логика кнопки Pixels Delete (удаление пикселей)
pixelBtn.MouseButton1Click:Connect(function()
    isPixelsDeleted = not isPixelsDeleted
    pixelBtn.BackgroundColor3 = isPixelsDeleted and Color3.fromRGB(255, 0, 0) or Color3.fromRGB(200, 70, 70)
    
    if isPixelsDeleted then
        statusLabel.Text = "Удаляем пиксели... (может вызвать лаги)"
        for _, v in pairs(workspace:GetDescendants()) do
            if v:IsA("Decal") then
                v.Transparency = 1
            elseif v:IsA("Texture") then
                v.Transparency = 1
            elseif v:IsA("Part") or v:IsA("MeshPart") then
                v.Material = Enum.Material.SmoothPlastic
                v.Color = Color3.fromRGB(255, 255, 255)
            end
        end
        for _, player in pairs(Players:GetPlayers()) do
            if player.Character then
                for _, child in pairs(player.Character:GetDescendants()) do
                    if child:IsA("Accessory") or child:IsA("Hair") then
                        child:Destroy()
                    end
                end
            end
        end
        statusLabel.Text = "Пиксели удалены (объекты стерты)"
    else
        statusLabel.Text = "Пиксели: ВЫКЛ (требуется перезаход для восстановления)"
    end
end)

-- Логика кнопки FPS Unlimited
fpsBtn.MouseButton1Click:Connect(function()
    fpsUnlocked = not fpsUnlocked
    
    if fpsUnlocked then
        local success = pcall(function()
            setfpscap(240)
            UserInputService.OverrideMouseIconBehavior = Enum.OverrideMouseIconBehavior.ForceShow
        end)
        
        if not success then
            statusLabel.Text = "Не удалось снять лимит FPS через API"
        end
        
        if not is240FpsSupported() then
            statusLabel.Text = "Телефон не поддерживает 240 FPS. Добавляем анимации..."
            applyHighFpsAnimations()
            fpsBtn.BackgroundColor3 = Color3.fromRGB(255, 200, 0)
        else
            fpsBtn.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
            statusLabel.Text = "FPS Unlimited: 240 (режим ПК)"
        end
        
        settings():GetService("RenderSettings").VSyncMode = Enum.VSyncMode.Off
        RunService:Set3dRenderingEnabled(true)
    else
        fpsBtn.BackgroundColor3 = Color3.fromRGB(50, 150, 50)
        statusLabel.Text = "FPS Unlimited: ВЫКЛ"
        local blur = Lighting:FindFirstChild("FPS_Blur")
        if blur then blur:Destroy() end
        local bloom = Lighting:FindFirstChild("FPS_Bloom")
        if bloom then bloom:Destroy() end
    end
end)

-- Логика кнопки Delete Texture (полное удаление)
deleteTexBtn.MouseButton1Click:Connect(function()
    isTexturesDeleted = not isTexturesDeleted
    deleteTexBtn.BackgroundColor3 = isTexturesDeleted and Color3.fromRGB(255, 0, 255) or Color3.fromRGB(150, 50, 150)
    
    if isTexturesDeleted then
        statusLabel.Text = "УДАЛЯЕМ ВСЕ ТЕКСТУРЫ!"
        for _, v in pairs(workspace:GetDescendants()) do
            if v:IsA("Texture") or v:IsA("Decal") or v:IsA("SurfaceAppearance") then
                v:Destroy()
            elseif v:IsA("Part") or v:IsA("MeshPart") then
                v.Material = Enum.Material.Plastic
                v.Color = Color3.fromRGB(200, 200, 200)
            end
        end
        statusLabel.Text = "Все текстуры удалены."
    else
        statusLabel.Text = "Восстановление невозможно без перезахода."
    end
end)

-- Логика кнопки Realistic Graphics
realisticBtn.MouseButton1Click:Connect(function()
    isRealistic = not isRealistic
    realisticBtn.BackgroundColor3 = isRealistic and Color3.fromRGB(255, 140, 0) or Color3.fromRGB(255, 165, 0)
    
    if isRealistic then
        statusLabel.Text = "Включаем ультра-реалистичную графику..."
        
        settings():GetService("RenderSettings").QualityLevel = 21
        
        Lighting.GlobalShadows = true
        Lighting.FogEnd = 1000
        Lighting.Brightness = 2
        Lighting.ColorShift_Top = Color3.fromRGB(255, 255, 255)
        Lighting.ColorShift_Bottom = Color3.fromRGB(150, 150, 255)
        Lighting.EnvironmentDiffuseScale = 1
        Lighting.EnvironmentSpecularScale = 1
        
        local atmosphere = Instance.new("Atmosphere")
        atmosphere.Name = "RealisticAtmosphere"
        atmosphere.Density = 0.2
        atmosphere.Offset = 0.5
        atmosphere.Color = Color3.fromRGB(200, 200, 255)
        atmosphere.Decay = Color3.fromRGB(100, 100, 150)
        atmosphere.Glare = 0.3
        atmosphere.Parent = Lighting
        
        local colorCorrection = Instance.new("ColorCorrectionEffect")
        colorCorrection.Name = "RealisticColor"
        colorCorrection.Contrast = 0.2
        colorCorrection.Saturation = 0.1
        colorCorrection.TintColor = Color3.fromRGB(255, 240, 220)
        colorCorrection.Parent = Lighting
        
        local bloom = Instance.new("BloomEffect")
        bloom.Name = "RealisticBloom"
        bloom.Intensity = 0.5
        bloom.Size = 30
        bloom.Threshold = 0.8
        bloom.Parent = Lighting
        
        local sunRays = Instance.new("SunRaysEffect")
        sunRays.Name = "RealisticSunRays"
        sunRays.Intensity = 0.1
        sunRays.Spread = 0.5
        sunRays.Parent = Lighting
        
        for _, v in pairs(workspace:GetDescendants()) do
            if v:IsA("BasePart") and v.Material == Enum.Material.Plastic then
                v.Material = Enum.Material.SmoothPlastic
                v.Reflectance = 0.1
            end
        end
        
        statusLabel.Text = "Реалистичная графика: ВКЛ"
    else
        statusLabel.Text = "Реалистичная графика: ВЫКЛ"
        if Lighting:FindFirstChild("RealisticAtmosphere") then Lighting.RealisticAtmosphere:Destroy() end
        if Lighting:FindFirstChild("RealisticColor") then Lighting.RealisticColor:Destroy() end
        if Lighting:FindFirstChild("RealisticBloom") then Lighting.RealisticBloom:Destroy() end
        if Lighting:FindFirstChild("RealisticSunRays") then Lighting.RealisticSunRays:Destroy() end
        
        Lighting.GlobalShadows = false
        Lighting.Brightness = 1
    end
end)

-- Логика кнопки Max Minimum Ping (Оптимизация сети)
pingBtn.MouseButton1Click:Connect(function()
    isPingOptimized = not isPingOptimized
    
    if isPingOptimized then
        pingBtn.BackgroundColor3 = Color3.fromRGB(0, 255, 200) -- Яркий цвет при включении
        pingBtn.Text = "✅ Max Minimum Ping ✅"
        
        -- Запускаем оптимизацию
        optimizePing()
        
        -- Запускаем мониторинг пинга для отображения в статусе
        spawn(function()
            while isPingOptimized do
                local ping = Stats:GetNetworkPing() * 1000 -- Конвертируем в мс
                statusLabel.Text = string.format("📶 Оптимизация сети: Пинг ~%.0f мс", ping)
                wait(2) -- Обновляем каждые 2 секунды
            end
        end)
    else
        pingBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 200)
        pingBtn.Text = "⚡ Max Minimum Ping ⚡"
        statusLabel.Text = "Сетевая оптимизация отключена"
        
        -- Сбрасываем некоторые настройки
        Lighting.GlobalShadows = true
        settings():GetService("RenderSettings").QualityLevel = 10
    end
end)

-- Закрытие GUI по клавише (для удобства, например, Insert)
UserInputService.InputBegan:Connect(function(input, gameProcessed)
    if not gameProcessed and input.KeyCode == Enum.KeyCode.Insert then
        screenGui.Enabled = not screenGui.Enabled
    end
end)

-- Выводим уведомление о загрузке
statusLabel.Text = "✅ GUI загружен. Нажми Insert для скрытия."

-- Добавляем анимацию появления окна
mainFrame.BackgroundTransparency = 1
mainFrame.Size = UDim2.new(0, 0, 0, 0)
TweenService:Create(mainFrame, TweenInfo.new(0.5, Enum.EasingStyle.Back), {
    Size = UDim2.new(0, 350, 0, 400),
    BackgroundTransparency = 0.1
}):Play()

Features & Information

Bloxstrap Ultra Tools mobile and pc

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts