-- ============================================================================ -- 🌌 SALCHIBLOX HUB | SPEED EDITION (V10.5 ULTIMATE MASTER SCRIPT + BYPASS) -- Creator: SALCHIBLOX -- Theme: Red & Black / Fully Customizable UI, Starfall, & Rain Colors -- Features: Universal Anti-Cheat Bypass, 1-1000 Speed, Avatar Scaler (-100 to 100), -- Crosshair, Spinbot, WalkOnWater, Chat Spy, Waypoints, FPS Booster, Anti-AFK, -- UI Scale (25%-150%), Anti-Ragdoll / Anti-Bat, Instant Proximity Grab, -- Working Colored Starfall & Rain Particle Emitters. -- ============================================================================ -- ============================================================================ -- 0. UNIVERSAL ANTI-CHEAT BYPASS MODULE -- ============================================================================ pcall(function() local mt = getrawmetatable(game) local oldIndex = mt.__index local oldNamecall = mt.__namecall setreadonly(mt, false) -- Bypass property checks for WalkSpeed / JumpPower flags mt.__index = newcclosure(function(self, k) if not checkcaller() and (k == "WalkSpeed" or k == "JumpPower" or k == "HipHeight") then return 32 end return oldIndex(self, k) end) setreadonly(mt, true) end) local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local CoreGui = game:GetService("CoreGui") local Workspace = game:GetService("Workspace") local Lighting = game:GetService("Lighting") local TeleportService = game:GetService("TeleportService") local VirtualUser = game:GetService("VirtualUser") local HttpService = game:GetService("HttpService") local ProximityPromptService = game:GetService("ProximityPromptService") local LocalPlayer = Players.LocalPlayer local Camera = Workspace.CurrentCamera local PlayerGui = LocalPlayer:FindFirstChildOfClass("PlayerGui") or CoreGui -- ============================================================================ -- 1. CONFIGURATION & CUSTOMIZATION DEFAULTS -- ============================================================================ local Config = { HubName = "SALCHIBLOX HUB | SPEED EDITION", Creator = "SALCHIBLOX", TikTok = "https://www.tiktok.com/@prime_salchiblox", Discord = "https://discord.gg/UGSmvHdGX", -- Theme Colors AccentColor = Color3.fromRGB(255, 20, 60), SecondaryColor = Color3.fromRGB(20, 20, 28), BackgroundColor = Color3.fromRGB(12, 12, 18), TextColor = Color3.fromRGB(245, 245, 250), Transparency = 0.08, UIScale = 1, -- Default 100% AnnouncementsText = "Welcome to Salchiblox Hub V10.5 Master Edition! Anti-Cheat Bypass Active.", -- Movement & Avatar SpeedEnabled = false, SpeedValue = 32, SpeedMultiplier = 1, JumpEnabled = false, JumpValue = 50, AvatarSizeValue = 0, AvatarSizeEnabled = false, AntiSlideEnabled = true, AntiFlingEnabled = true, NoclipEnabled = false, FlyEnabled = false, FlySpeed = 50, InfJumpEnabled = false, BhopEnabled = false, WalkOnWaterEnabled = false, SpinbotEnabled = false, SpinbotSpeed = 25, -- Combat, ESP & Protection ESPEnabled = false, TracersEnabled = false, AimbotEnabled = false, HitboxEnabled = false, HitboxSize = 25, HitboxInf = false, AntiRagdollEnabled = true, InstantGrabEnabled = false, -- World & Visuals GravityEnabled = false, GravityValue = 196.2, FullbrightEnabled = false, FOVValue = 70, InfZoomEnabled = false, TimeOfDayValue = 14, TimeOfDayEnabled = false, FPSBoosterEnabled = false, -- Utilities & Fun AutoClickerEnabled = false, AutoClickerCPS = 10, InvisibleEnabled = false, AutoRespawnEnabled = false, ChatSpyEnabled = false, AntiAFKEnabled = true, PanicKey = Enum.KeyCode.P, -- Crosshair CrosshairEnabled = false, CrosshairSize = 10, -- Waypoints Waypoint1 = nil, Waypoint2 = nil, Waypoint3 = nil, -- Particles & Color Customization StarfallEnabled = false, StarfallCount = 75, StarfallSpeed = 40, StarfallColor = Color3.fromRGB(0, 255, 255), RainEnabled = false, RainAmount = 140, RainSpeed = 70, RainColor = Color3.fromRGB(120, 200, 255), } -- Config System Functions (Max 5 Named Configs with Safe Local Storage File Handling) local ConfigFolder = "SalchibloxHubConfigs" pcall(function() if not isfolder(ConfigFolder) then makefolder(ConfigFolder) end end) local function getValidConfigName(name) local cleanName = name:gsub("[^%w_%-]", ""):sub(1, 20) if cleanName == "" then cleanName = "Config" end return cleanName end local function saveConfig(name) pcall(function() local safeName = getValidConfigName(name) local configsList = {} pcall(function() if isfile(ConfigFolder .. "/config_index.json") then configsList = HttpService:JSONDecode(readfile(ConfigFolder .. "/config_index.json")) end end) local found = false for _, cfgName in ipairs(configsList) do if cfgName == safeName then found = true break end end if not found then if #configsList >= 5 then table.remove(configsList, 1) end table.insert(configsList, safeName) writefile(ConfigFolder .. "/config_index.json", HttpService:JSONEncode(configsList)) end local saveData = { UIScale = Config.UIScale, SpeedEnabled = Config.SpeedEnabled, SpeedValue = Config.SpeedValue, SpeedMultiplier = Config.SpeedMultiplier, JumpEnabled = Config.JumpEnabled, JumpValue = Config.JumpValue, AvatarSizeValue = Config.AvatarSizeValue, AvatarSizeEnabled = Config.AvatarSizeEnabled, AntiSlideEnabled = Config.AntiSlideEnabled, AntiFlingEnabled = Config.AntiFlingEnabled, NoclipEnabled = Config.NoclipEnabled, FlySpeed = Config.FlySpeed, InfJumpEnabled = Config.InfJumpEnabled, BhopEnabled = Config.BhopEnabled, WalkOnWaterEnabled = Config.WalkOnWaterEnabled, SpinbotEnabled = Config.SpinbotEnabled, SpinbotSpeed = Config.SpinbotSpeed, ESPEnabled = Config.ESPEnabled, AimbotEnabled = Config.AimbotEnabled, HitboxEnabled = Config.HitboxEnabled, HitboxSize = Config.HitboxSize, HitboxInf = Config.HitboxInf, AntiRagdollEnabled = Config.AntiRagdollEnabled, InstantGrabEnabled = Config.InstantGrabEnabled, GravityEnabled = Config.GravityEnabled, GravityValue = Config.GravityValue, FullbrightEnabled = Config.FullbrightEnabled, FOVValue = Config.FOVValue, InfZoomEnabled = Config.InfZoomEnabled, TimeOfDayValue = Config.TimeOfDayValue, TimeOfDayEnabled = Config.TimeOfDayEnabled, FPSBoosterEnabled = Config.FPSBoosterEnabled, AutoClickerEnabled = Config.AutoClickerEnabled, AutoClickerCPS = Config.AutoClickerCPS, ChatSpyEnabled = Config.ChatSpyEnabled, AntiAFKEnabled = Config.AntiAFKEnabled, StarfallEnabled = Config.StarfallEnabled, StarfallCount = Config.StarfallCount, StarfallColorR = Config.StarfallColor.R, StarfallColorG = Config.StarfallColor.G, StarfallColorB = Config.StarfallColor.B, RainEnabled = Config.RainEnabled, RainAmount = Config.RainAmount, RainColorR = Config.RainColor.R, RainColorG = Config.RainColor.G, RainColorB = Config.RainColor.B } writefile(ConfigFolder .. "/" .. safeName .. ".json", HttpService:JSONEncode(saveData)) end) end local function loadConfig(name) pcall(function() local safeName = getValidConfigName(name) local filePath = ConfigFolder .. "/" .. safeName .. ".json" if isfile(filePath) then local fileContent = readfile(filePath) local loadedData = HttpService:JSONDecode(fileContent) for k, v in pairs(loadedData) do if k == "StarfallColorR" then Config.StarfallColor = Color3.new(v, loadedData.StarfallColorG or 0, loadedData.StarfallColorB or 0) elseif k == "RainColorR" then Config.RainColor = Color3.new(v, loadedData.RainColorG or 0, loadedData.RainColorB or 0) elseif Config[k] ~= nil then Config[k] = v end end end end) end local function getSavedConfigsList() local list = {} pcall(function() if isfile(ConfigFolder .. "/config_index.json") then list = HttpService:JSONDecode(readfile(ConfigFolder .. "/config_index.json")) end end) return list end -- Cleanup previous instances safely if PlayerGui:FindFirstChild("SalchibloxHubSpeedEditionV9") then PlayerGui.SalchibloxHubSpeedEditionV9:Destroy() end if CoreGui:FindFirstChild("SalchibloxHubSpeedEditionV9") then CoreGui.SalchibloxHubSpeedEditionV9:Destroy() end -- ============================================================================ -- 2. UI CREATION & WINDOW CONTROLS -- ============================================================================ local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "SalchibloxHubSpeedEditionV9" ScreenGui.ResetOnSpawn = false ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling pcall(function() ScreenGui.Parent = PlayerGui end) if not ScreenGui.Parent then ScreenGui.Parent = CoreGui end local UIHolderScale = Instance.new("UIScale") UIHolderScale.Name = "SalchibloxUIScale" UIHolderScale.Scale = Config.UIScale UIHolderScale.Parent = ScreenGui -- Main Window Frame local MainWindow = Instance.new("Frame") MainWindow.Name = "MainWindow" MainWindow.Size = UDim2.new(0, 840, 0, 540) MainWindow.Position = UDim2.new(0.5, -420, 0.5, -270) MainWindow.BackgroundColor3 = Config.BackgroundColor MainWindow.BackgroundTransparency = Config.Transparency MainWindow.BorderSizePixel = 0 MainWindow.Parent = ScreenGui local MainCorner = Instance.new("UICorner") MainCorner.CornerRadius = UDim.new(0, 14) MainCorner.Parent = MainWindow local MainStroke = Instance.new("UIStroke") MainStroke.Name = "MainStroke" MainStroke.Color = Config.AccentColor MainStroke.Transparency = 0.2 MainStroke.Thickness = 2.5 MainStroke.Parent = MainWindow -- Floating Reopen Button local ReopenButton = Instance.new("TextButton") ReopenButton.Name = "ReopenButton" ReopenButton.Size = UDim2.new(0, 160, 0, 50) ReopenButton.Position = UDim2.new(0.02, 0, 0.05, 0) ReopenButton.BackgroundColor3 = Config.BackgroundColor ReopenButton.BackgroundTransparency = 0.15 ReopenButton.BorderSizePixel = 0 ReopenButton.Visible = false ReopenButton.Text = "🌌 SALCHIBLOX" ReopenButton.TextColor3 = Config.AccentColor ReopenButton.TextSize = 14 ReopenButton.Font = Enum.Font.GothamBold ReopenButton.Parent = ScreenGui local ReopenCorner = Instance.new("UICorner") ReopenCorner.CornerRadius = UDim.new(0, 12) ReopenCorner.Parent = ReopenButton local ReopenStroke = Instance.new("UIStroke") ReopenStroke.Name = "ReopenStroke" ReopenStroke.Color = Config.AccentColor ReopenStroke.Thickness = 2 ReopenStroke.Parent = ReopenButton -- Top Bar / Title (Non-Draggable) local TopBar = Instance.new("Frame") TopBar.Name = "TopBar" TopBar.Size = UDim2.new(1, 0, 0, 48) TopBar.BackgroundColor3 = Config.SecondaryColor TopBar.BackgroundTransparency = 0.05 TopBar.BorderSizePixel = 0 TopBar.Parent = MainWindow local TopBarCorner = Instance.new("UICorner") TopBarCorner.CornerRadius = UDim.new(0, 14) TopBarCorner.Parent = TopBar local TopBarFix = Instance.new("Frame") TopBarFix.Size = UDim2.new(1, 0, 0, 14) TopBarFix.Position = UDim2.new(0, 0, 1, -14) TopBarFix.BackgroundColor3 = Config.SecondaryColor TopBarFix.BorderSizePixel = 0 TopBarFix.Parent = TopBar local TitleLabel = Instance.new("TextLabel") TitleLabel.Size = UDim2.new(0, 500, 1, 0) TitleLabel.Position = UDim2.new(0, 18, 0, 0) TitleLabel.BackgroundTransparency = 1 TitleLabel.Text = Config.HubName .. " | V10.5 MASTER + BYPASS" TitleLabel.TextColor3 = Config.TextColor TitleLabel.TextSize = 15 TitleLabel.Font = Enum.Font.GothamBold TitleLabel.TextXAlignment = Enum.TextXAlignment.Left TitleLabel.Parent = TopBar local ControlsContainer = Instance.new("Frame") ControlsContainer.Size = UDim2.new(0, 160, 1, 0) ControlsContainer.Position = UDim2.new(1, -165, 0, 0) ControlsContainer.BackgroundTransparency = 1 ControlsContainer.Parent = TopBar local function createTopButton(name, text, xPos, callback) local btn = Instance.new("TextButton") btn.Name = name btn.Size = UDim2.new(0, 32, 0, 32) btn.Position = UDim2.new(0, xPos, 0.5, -16) btn.BackgroundColor3 = Config.SecondaryColor btn.Text = text btn.TextColor3 = Config.TextColor btn.TextSize = 13 btn.Font = Enum.Font.GothamBold btn.Parent = ControlsContainer local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, 8) c.Parent = btn btn.MouseButton1Click:Connect(callback) return btn end local ToggleMainHub createTopButton("MiniBtn", "⚡", 0, function() end) createTopButton("HideBtn", "H", 38, function() ToggleMainHub(false) end) createTopButton("MinBtn", "-", 76, function() MainWindow.Visible = false; ReopenButton.Visible = true end) createTopButton("CloseBtn", "X", 114, function() ScreenGui:Destroy() end) ReopenButton.MouseButton1Click:Connect(function() ToggleMainHub(true) end) function ToggleMainHub(state) MainWindow.Visible = state ReopenButton.Visible = not state end -- ============================================================================ -- 3. LIVE ANNOUNCEMENT BANNER -- ============================================================================ local AnnouncementBanner = Instance.new("Frame") AnnouncementBanner.Name = "AnnouncementBanner" AnnouncementBanner.Size = UDim2.new(1, 0, 0, 30) AnnouncementBanner.Position = UDim2.new(0, 0, 0, 48) AnnouncementBanner.BackgroundColor3 = Config.AccentColor AnnouncementBanner.BackgroundTransparency = 0.15 AnnouncementBanner.BorderSizePixel = 0 AnnouncementBanner.Parent = MainWindow local AnnounceText = Instance.new("TextLabel") AnnounceText.Size = UDim2.new(1, -20, 1, 0) AnnounceText.Position = UDim2.new(0, 12, 0, 0) AnnounceText.BackgroundTransparency = 1 AnnounceText.Text = "📢 ANNOUNCEMENT: " .. Config.AnnouncementsText AnnounceText.TextColor3 = Color3.fromRGB(255, 255, 255) AnnounceText.TextSize = 12 AnnounceText.Font = Enum.Font.GothamBold AnnounceText.TextXAlignment = Enum.TextXAlignment.Left AnnounceText.Parent = AnnouncementBanner -- ============================================================================ -- 4. STREAMLINED TAB NAVIGATION (6 ELITE WORKING TABS) -- ============================================================================ local TabListContainer = Instance.new("ScrollingFrame") TabListContainer.Name = "TabList" TabListContainer.Size = UDim2.new(0, 195, 1, -92) TabListContainer.Position = UDim2.new(0, 10, 0, 84) TabListContainer.BackgroundTransparency = 1 TabListContainer.BorderSizePixel = 0 TabListContainer.CanvasSize = UDim2.new(0, 0, 0, 450) TabListContainer.ScrollBarThickness = 3 TabListContainer.Parent = MainWindow local TabListLayout = Instance.new("UIListLayout") TabListLayout.SortOrder = Enum.SortOrder.LayoutOrder TabListLayout.Padding = UDim.new(0, 8) TabListLayout.Parent = TabListContainer local ContentContainer = Instance.new("Frame") ContentContainer.Name = "ContentContainer" ContentContainer.Size = UDim2.new(1, -215, 1, -92) ContentContainer.Position = UDim2.new(0, 210, 0, 84) ContentContainer.BackgroundTransparency = 1 ContentContainer.Parent = MainWindow local Tabs = {} local SectionHeaders = {} local TabNames = { "Dashboard & Chat", "Movement & Fly", "Combat & ESP", "World & Visuals", "Teleports & Players", "Theme & Settings" } for _, name in ipairs(TabNames) do local tabContent = Instance.new("ScrollingFrame") tabContent.Name = name:gsub(" & ", ""):gsub(" ", "") .. "Tab" tabContent.Size = UDim2.new(1, 0, 1, 0) tabContent.BackgroundTransparency = 1 tabContent.BorderSizePixel = 0 tabContent.CanvasSize = UDim2.new(0, 0, 0, 1600) tabContent.ScrollBarThickness = 4 tabContent.Visible = false tabContent.Parent = ContentContainer local layout = Instance.new("UIListLayout") layout.SortOrder = Enum.SortOrder.LayoutOrder layout.Padding = UDim.new(0, 12) layout.Parent = tabContent local tabButton = Instance.new("TextButton") tabButton.Size = UDim2.new(1, -10, 0, 44) tabButton.BackgroundColor3 = Config.SecondaryColor tabButton.BackgroundTransparency = 0.4 tabButton.Text = " " .. name tabButton.TextColor3 = Config.TextColor tabButton.TextSize = 13 tabButton.Font = Enum.Font.GothamMedium tabButton.TextXAlignment = Enum.TextXAlignment.Left tabButton.Parent = TabListContainer local btnCorner = Instance.new("UICorner") btnCorner.CornerRadius = UDim.new(0, 10) btnCorner.Parent = tabButton Tabs[name] = { Button = tabButton, Content = tabContent } tabButton.MouseButton1Click:Connect(function() for _, t in pairs(Tabs) do t.Content.Visible = false t.Button.BackgroundTransparency = 0.4 t.Button.TextColor3 = Config.TextColor end tabContent.Visible = true tabButton.BackgroundTransparency = 0.1 tabButton.TextColor3 = Config.AccentColor end) end -- Default tab Tabs["Dashboard & Chat"].Content.Visible = true Tabs["Dashboard & Chat"].Button.BackgroundTransparency = 0.1 Tabs["Dashboard & Chat"].Button.TextColor3 = Config.AccentColor -- ============================================================================ -- UI BUILDER HELPERS -- ============================================================================ local function createSectionHeader(parent, text) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -10, 0, 28) lbl.BackgroundTransparency = 1 lbl.Text = " " .. text:upper() lbl.TextColor3 = Config.AccentColor lbl.TextSize = 13 lbl.Font = Enum.Font.GothamBold lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Parent = parent table.insert(SectionHeaders, lbl) return lbl end local function createToggle(parent, text, defaultState, callback) local frame = Instance.new("Frame") frame.Size = UDim2.new(1, -10, 0, 44) frame.BackgroundColor3 = Config.SecondaryColor frame.BackgroundTransparency = 0.3 frame.Parent = parent local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, 10) c.Parent = frame local stroke = Instance.new("UIStroke") stroke.Color = Color3.fromRGB(40, 40, 55) stroke.Transparency = 0.5 stroke.Parent = frame local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -65, 1, 0) lbl.Position = UDim2.new(0, 14, 0, 0) lbl.BackgroundTransparency = 1 lbl.Text = text lbl.TextColor3 = Config.TextColor lbl.TextSize = 13 lbl.Font = Enum.Font.GothamMedium lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Parent = frame local toggleBtn = Instance.new("TextButton") toggleBtn.Size = UDim2.new(0, 46, 0, 24) toggleBtn.Position = UDim2.new(1, -56, 0.5, -12) toggleBtn.BackgroundColor3 = defaultState and Config.AccentColor or Color3.fromRGB(45, 45, 55) toggleBtn.Text = "" toggleBtn.Parent = frame local tc = Instance.new("UICorner") tc.CornerRadius = UDim.new(1, 0) tc.Parent = toggleBtn local circle = Instance.new("Frame") circle.Size = UDim2.new(0, 20, 0, 20) circle.Position = defaultState and UDim2.new(1, -22, 0.5, -10) or UDim2.new(0, 2, 0.5, -10) circle.BackgroundColor3 = Color3.fromRGB(255, 255, 255) circle.Parent = toggleBtn local cc = Instance.new("UICorner") cc.CornerRadius = UDim.new(1, 0) cc.Parent = circle local state = defaultState toggleBtn.MouseButton1Click:Connect(function() state = not state toggleBtn.BackgroundColor3 = state and Config.AccentColor or Color3.fromRGB(45, 45, 55) circle.Position = state and UDim2.new(1, -22, 0.5, -10) or UDim2.new(0, 2, 0.5, -10) callback(state) end) return frame end local function createSlider(parent, text, min, max, defaultVal, callback) local frame = Instance.new("Frame") frame.Size = UDim2.new(1, -10, 0, 64) frame.BackgroundColor3 = Config.SecondaryColor frame.BackgroundTransparency = 0.3 frame.Parent = parent local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, 10) c.Parent = frame local stroke = Instance.new("UIStroke") stroke.Color = Color3.fromRGB(40, 40, 55) stroke.Transparency = 0.5 stroke.Parent = frame local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -90, 0, 28) lbl.Position = UDim2.new(0, 14, 0, 6) lbl.BackgroundTransparency = 1 lbl.Text = text lbl.TextColor3 = Config.TextColor lbl.TextSize = 13 lbl.Font = Enum.Font.GothamMedium lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Parent = frame local valLbl = Instance.new("TextLabel") valLbl.Size = UDim2.new(0, 75, 0, 28) valLbl.Position = UDim2.new(1, -85, 0, 6) valLbl.BackgroundTransparency = 1 valLbl.Text = tostring(defaultVal) valLbl.TextColor3 = Config.AccentColor valLbl.TextSize = 13 valLbl.Font = Enum.Font.GothamBold valLbl.TextXAlignment = Enum.TextXAlignment.Right valLbl.Parent = frame local sliderBg = Instance.new("Frame") sliderBg.Size = UDim2.new(1, -28, 0, 8) sliderBg.Position = UDim2.new(0, 14, 0, 40) sliderBg.BackgroundColor3 = Color3.fromRGB(30, 30, 40) sliderBg.BorderSizePixel = 0 sliderBg.Parent = frame local sbgc = Instance.new("UICorner") sbgc.CornerRadius = UDim.new(1, 0) sbgc.Parent = sliderBg local fill = Instance.new("Frame") fill.Size = UDim2.new(math.clamp((defaultVal - min) / (max - min), 0, 1), 0, 1, 0) fill.BackgroundColor3 = Config.AccentColor fill.BorderSizePixel = 0 fill.Parent = sliderBg local fc = Instance.new("UICorner") fc.CornerRadius = UDim.new(1, 0) fc.Parent = fill local draggingSlider = false local function updateValue(input) local pos = math.clamp((input.Position.X - sliderBg.AbsolutePosition.X) / sliderBg.AbsoluteSize.X, 0, 1) local val = math.floor(min + (max - min) * pos) fill.Size = UDim2.new(pos, 0, 1, 0) valLbl.Text = tostring(val) callback(val) end sliderBg.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = true updateValue(input) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = false end end) UserInputService.InputChanged:Connect(function(input) if draggingSlider and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then updateValue(input) end end) return frame end local function createButton(parent, text, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, -10, 0, 42) btn.BackgroundColor3 = Config.SecondaryColor btn.BackgroundTransparency = 0.25 btn.Text = text btn.TextColor3 = Config.AccentColor btn.TextSize = 13 btn.Font = Enum.Font.GothamBold btn.Parent = parent local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, 10) c.Parent = btn local stroke = Instance.new("UIStroke") stroke.Color = Config.AccentColor stroke.Transparency = 0.6 stroke.Parent = btn btn.MouseButton1Click:Connect(callback) return btn end -- ============================================================================ -- TAB 1: DASHBOARD & CHAT -- ============================================================================ local dashTab = Tabs["Dashboard & Chat"].Content createSectionHeader(dashTab, "Dashboard & Integrated Chat") local welcomeBox = Instance.new("Frame") welcomeBox.Size = UDim2.new(1, -10, 0, 115) welcomeBox.BackgroundColor3 = Config.SecondaryColor welcomeBox.BackgroundTransparency = 0.25 welcomeBox.Parent = dashTab local wbC = Instance.new("UICorner") wbC.CornerRadius = UDim.new(0, 10) wbC.Parent = welcomeBox local wbText = Instance.new("TextLabel") wbText.Size = UDim2.new(1, -20, 1, -20) wbText.Position = UDim2.new(0, 10, 0, 10) wbText.BackgroundTransparency = 1 wbText.Text = "Welcome to " .. Config.HubName .. " (V10.5 Master + Bypass)\nCreator: " .. Config.Creator .. "\nStatus: Universal Anti-Cheat Bypass Active & All Features Loaded." wbText.TextColor3 = Config.TextColor wbText.TextSize = 12 wbText.Font = Enum.Font.Gotham wbText.TextXAlignment = Enum.TextXAlignment.Left wbText.TextYAlignment = Enum.TextYAlignment.Top wbText.Parent = welcomeBox createSectionHeader(dashTab, "Built-In Script Chat & Spy") local chatScroll = Instance.new("ScrollingFrame") chatScroll.Size = UDim2.new(1, -10, 0, 180) chatScroll.BackgroundColor3 = Config.SecondaryColor chatScroll.BackgroundTransparency = 0.35 chatScroll.CanvasSize = UDim2.new(0, 0, 0, 500) chatScroll.ScrollBarThickness = 3 chatScroll.Parent = dashTab local csC = Instance.new("UICorner") csC.CornerRadius = UDim.new(0, 10) csC.Parent = chatScroll local chatLayout = Instance.new("UIListLayout") chatLayout.SortOrder = Enum.SortOrder.LayoutOrder chatLayout.Padding = UDim.new(0, 4) chatLayout.Parent = chatScroll local chatInput = Instance.new("TextBox") chatInput.Size = UDim2.new(1, -10, 0, 42) chatInput.BackgroundColor3 = Config.SecondaryColor chatInput.BackgroundTransparency = 0.25 chatInput.Text = "" chatInput.PlaceholderText = "Type message to hub chat..." chatInput.TextColor3 = Config.TextColor chatInput.TextSize = 12 chatInput.Font = Enum.Font.Gotham chatInput.Parent = dashTab local ciC = Instance.new("UICorner") ciC.CornerRadius = UDim.new(0, 10) ciC.Parent = chatInput chatInput.FocusLost:Connect(function(enterPressed) if enterPressed and chatInput.Text ~= "" then local msg = Instance.new("TextLabel") msg.Size = UDim2.new(1, -10, 0, 25) msg.BackgroundTransparency = 1 msg.Text = LocalPlayer.Name .. ": " .. chatInput.Text msg.TextColor3 = Config.TextColor msg.TextSize = 12 msg.Font = Enum.Font.Gotham msg.TextXAlignment = Enum.TextXAlignment.Left msg.Parent = chatScroll chatInput.Text = "" end end) -- Chat Spy feature for _, p in ipairs(Players:GetPlayers()) do p.Chatted:Connect(function(msg) if Config.ChatSpyEnabled and p ~= LocalPlayer then local spyMsg = Instance.new("TextLabel") spyMsg.Size = UDim2.new(1, -10, 0, 25) spyMsg.BackgroundTransparency = 1 spyMsg.Text = "[SPY] " .. p.Name .. ": " .. msg spyMsg.TextColor3 = Color3.fromRGB(255, 100, 100) spyMsg.TextSize = 12 spyMsg.Font = Enum.Font.GothamBold spyMsg.TextXAlignment = Enum.TextXAlignment.Left spyMsg.Parent = chatScroll end end) end -- ============================================================================ -- TAB 2: MOVEMENT & FLY -- ============================================================================ local movementTab = Tabs["Movement & Fly"].Content createSectionHeader(movementTab, "Movement, Avatar & Spinbot") createToggle(movementTab, "Enable Speed Modifier", Config.SpeedEnabled, function(state) Config.SpeedEnabled = state end) createSlider(movementTab, "Speed Value (1-1000)", 1, 1000, Config.SpeedValue, function(val) Config.SpeedValue = val end) createSlider(movementTab, "Speed Multiplier (1-100x)", 1, 100, Config.SpeedMultiplier, function(val) Config.SpeedMultiplier = val end) createToggle(movementTab, "Enable Jump Modifier", Config.JumpEnabled, function(state) Config.JumpEnabled = state end) createSlider(movementTab, "Jump Power (1-1000)", 1, 1000, Config.JumpValue, function(val) Config.JumpValue = val end) createToggle(movementTab, "Enable Avatar Scaler (-100 to 100)", Config.AvatarSizeEnabled, function(state) Config.AvatarSizeEnabled = state end) createSlider(movementTab, "Avatar Size Value (-100 to 100)", -100, 100, Config.AvatarSizeValue, function(val) Config.AvatarSizeValue = val end) createToggle(movementTab, "Walk On Water / Jesus Mode", Config.WalkOnWaterEnabled, function(state) Config.WalkOnWaterEnabled = state end) createToggle(movementTab, "Spinbot / Tornado Mode", Config.SpinbotEnabled, function(state) Config.SpinbotEnabled = state end) createSlider(movementTab, "Spinbot Speed", 5, 100, Config.SpinbotSpeed, function(val) Config.SpinbotSpeed = val end) createToggle(movementTab, "Anti-Slide (OP Stop-Skidding)", Config.AntiSlideEnabled, function(state) Config.AntiSlideEnabled = state end) createToggle(movementTab, "Anti-Fling Protection", Config.AntiFlingEnabled, function(state) Config.AntiFlingEnabled = state end) createToggle(movementTab, "Noclip / Ghost Mode", Config.NoclipEnabled, function(state) Config.NoclipEnabled = state end) createToggle(movementTab, "Flight Mode (Fly - Fixed Smooth)", Config.FlyEnabled, function(state) Config.FlyEnabled = state local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then local hrp = char.HumanoidRootPart if state then local bv = Instance.new("BodyVelocity") bv.Name = "SalchibloxFlyVelocity" bv.MaxForce = Vector3.new(math.huge, math.huge, math.huge) bv.Velocity = Vector3.new(0, 0, 0) bv.Parent = hrp local bg = Instance.new("BodyGyro") bg.Name = "SalchibloxFlyGyro" bg.MaxTorque = Vector3.new(math.huge, math.huge, math.huge) bg.CFrame = hrp.CFrame bg.Parent = hrp else if hrp:FindFirstChild("SalchibloxFlyVelocity") then hrp.SalchibloxFlyVelocity:Destroy() end if hrp:FindFirstChild("SalchibloxFlyGyro") then hrp.SalchibloxFlyGyro:Destroy() end end end end) createSlider(movementTab, "Flight Speed", 10, 200, Config.FlySpeed, function(val) Config.FlySpeed = val end) createToggle(movementTab, "Infinite Jump", Config.InfJumpEnabled, function(state) Config.InfJumpEnabled = state end) createToggle(movementTab, "Bunny Hop (Bhop)", Config.BhopEnabled, function(state) Config.BhopEnabled = state end) local waterPlatform = Instance.new("Part") waterPlatform.Name = "SalchibloxWaterPlatform" waterPlatform.Size = Vector3.new(30, 1, 30) waterPlatform.Anchored = true waterPlatform.Transparency = 1 waterPlatform.CanCollide = false waterPlatform.Parent = Workspace -- ============================================================================ -- TAB 3: COMBAT & ESP (EXPANDED HITBOX 1-2500 & INFINITE) -- ============================================================================ local combatTab = Tabs["Combat & ESP"].Content createSectionHeader(combatTab, "Combat & Protection") createToggle(combatTab, "Player ESP Box / Highlights", Config.ESPEnabled, function(state) Config.ESPEnabled = state end) createToggle(combatTab, "Player Tracers", Config.TracersEnabled, function(state) Config.TracersEnabled = state end) createToggle(combatTab, "Silent Aimbot / Assist", Config.AimbotEnabled, function(state) Config.AimbotEnabled = state end) createToggle(combatTab, "Hitbox Expander", Config.HitboxEnabled, function(state) Config.HitboxEnabled = state end) createSlider(combatTab, "Hitbox Size (1-2500)", 1, 2500, Config.HitboxSize, function(val) Config.HitboxSize = val end) createToggle(combatTab, "Infinite Hitbox Size", Config.HitboxInf, function(state) Config.HitboxInf = state end) createToggle(combatTab, "Anti-Ragdoll / Anti-Bat", Config.AntiRagdollEnabled, function(state) Config.AntiRagdollEnabled = state end) createToggle(combatTab, "Instant Proximity Grab", Config.InstantGrabEnabled, function(state) Config.InstantGrabEnabled = state end) -- ============================================================================ -- TAB 4: WORLD & VISUALS -- ============================================================================ local worldTab = Tabs["World & Visuals"].Content createSectionHeader(worldTab, "World & Visual Enhancements") createToggle(worldTab, "Custom Gravity Modifier", Config.GravityEnabled, function(state) Config.GravityEnabled = state end) createSlider(worldTab, "Gravity Value (0-500)", 0, 500, Config.GravityValue, function(val) Config.GravityValue = val end) createToggle(worldTab, "Fullbright Lighting", Config.FullbrightEnabled, function(state) Config.FullbrightEnabled = state end) createSlider(worldTab, "Field of View (FOV)", 50, 120, Config.FOVValue, function(val) Config.FOVValue = val Camera.FieldOfView = val end) createToggle(worldTab, "Infinite Camera Zoom", Config.InfZoomEnabled, function(state) Config.InfZoomEnabled = state if state then LocalPlayer.CameraMaxZoomDistance = 999999 else LocalPlayer.CameraMaxZoomDistance = 400 end end) createToggle(worldTab, "Time of Day Override", Config.TimeOfDayEnabled, function(state) Config.TimeOfDayEnabled = state end) createSlider(worldTab, "Time of Day (0-24 Hrs)", 0, 24, Config.TimeOfDayValue, function(val) Config.TimeOfDayValue = val end) createToggle(worldTab, "FPS Booster (Delete Shadows/Effects)", Config.FPSBoosterEnabled, function(state) Config.FPSBoosterEnabled = state if state then Lighting.GlobalShadows = false for _, v in ipairs(Workspace:GetDescendants()) do if v:IsA("BasePart") then v.Material = Enum.Material.SmoothPlastic v.CastShadow = false elseif v:IsA("ParticleEmitter") or v:IsA("Trail") or v:IsA("Fire") or v:IsA("Smoke") then v.Enabled = false end end end end) createSectionHeader(worldTab, "Working Colored Starfall & Rain") createToggle(worldTab, "Starfall Particle Emitter", Config.StarfallEnabled, function(state) Config.StarfallEnabled = state end) createSlider(worldTab, "Starfall Count", 10, 300, Config.StarfallCount, function(val) Config.StarfallCount = val end) createToggle(worldTab, "Rain Particle Emitter", Config.RainEnabled, function(state) Config.RainEnabled = state end) createSlider(worldTab, "Rain Amount", 20, 500, Config.RainAmount, function(val) Config.RainAmount = val end) -- Starfall & Rain Emitter Objects local starfallEmitter = Instance.new("ParticleEmitter") starfallEmitter.Name = "SalchibloxStarfall" starfallEmitter.Texture = "rbxassetid://607931056" starfallEmitter.Rate = 0 starfallEmitter.Speed = NumberRange.new(30, 50) starfallEmitter.Size = NumberSequence.new(0.5, 1.5) starfallEmitter.Transparency = NumberSequence.new(0, 1) starfallEmitter.Lifetime = NumberRange.new(3, 5) starfallEmitter.Parent = Workspace local rainEmitter = Instance.new("ParticleEmitter") rainEmitter.Name = "SalchibloxRain" rainEmitter.Texture = "rbxassetid://241904732" rainEmitter.Rate = 0 rainEmitter.Speed = NumberRange.new(60, 80) rainEmitter.Size = NumberSequence.new(0.1, 0.1) rainEmitter.Transparency = NumberSequence.new(0.2, 0.5) rainEmitter.Lifetime = NumberRange.new(1, 2) rainEmitter.Acceleration = Vector3.new(0, -100, 0) rainEmitter.Parent = Workspace -- ============================================================================ -- TAB 5: TELEPORTS & PLAYERS -- ============================================================================ local teleportsTab = Tabs["Teleports & Players"].Content createSectionHeader(teleportsTab, "Waypoints & Quick Teleports") createButton(teleportsTab, "Save Waypoint 1", function() local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then Config.Waypoint1 = char.HumanoidRootPart.CFrame end end) createButton(teleportsTab, "Teleport to Waypoint 1", function() if Config.Waypoint1 and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = Config.Waypoint1 end end) createButton(teleportsTab, "Save Waypoint 2", function() local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then Config.Waypoint2 = char.HumanoidRootPart.CFrame end end) createButton(teleportsTab, "Teleport to Waypoint 2", function() if Config.Waypoint2 and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = Config.Waypoint2 end end) createButton(teleportsTab, "Save Waypoint 3", function() local char = LocalPlayer.Character if char and char:FindFirstChild("HumanoidRootPart") then Config.Waypoint3 = char.HumanoidRootPart.CFrame end end) createButton(teleportsTab, "Teleport to Waypoint 3", function() if Config.Waypoint3 and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then LocalPlayer.Character.HumanoidRootPart.CFrame = Config.Waypoint3 end end) createSectionHeader(teleportsTab, "Server & Utilities") createButton(teleportsTab, "Server Hop / Rejoin", function() TeleportService:Teleport(game.PlaceId, LocalPlayer) end) createButton(teleportsTab, "Rejoin Same Server", function() TeleportService:TeleportToPlaceInstance(game.PlaceId, game.JobId, LocalPlayer) end) -- ============================================================================ -- TAB 6: THEME & SETTINGS -- ============================================================================ local settingsTab = Tabs["Theme & Settings"].Content createSectionHeader(settingsTab, "UI Scaling & Configuration") createSlider(settingsTab, "UI Scale (%)", 25, 150, Config.UIScale * 100, function(val) Config.UIScale = val / 100 UIHolderScale.Scale = Config.UIScale end) createToggle(settingsTab, "Anti-AFK Protection", Config.AntiAFKEnabled, function(state) Config.AntiAFKEnabled = state end) createToggle(settingsTab, "Chat Spy Toggle", Config.ChatSpyEnabled, function(state) Config.ChatSpyEnabled = state end) createSectionHeader(settingsTab, "Config Manager (Max 5 Saves)") createButton(settingsTab, "Save Config (Slot 1)", function() saveConfig("Slot1") end) createButton(settingsTab, "Load Config (Slot 1)", function() loadConfig("Slot1") end) createButton(settingsTab, "Save Config (Slot 2)", function() saveConfig("Slot2") end) createButton(settingsTab, "Load Config (Slot 2)", function() loadConfig("Slot2") end) -- Anti-AFK Connection LocalPlayer.Idled:Connect(function() if Config.AntiAFKEnabled then VirtualUser:Button2Down(Vector2.new(0,0), Camera.CFrame) task.wait(1) VirtualUser:Button2Up(Vector2.new(0,0), Camera.CFrame) end end) -- ============================================================================ -- FULL FUNCTIONAL HANDLERS (ESP, Hitbox, Aimbot, Inf Jump, Bhop, Instant Grab) -- ============================================================================ UserInputService.JumpRequest:Connect(function() if Config.InfJumpEnabled then local char = LocalPlayer.Character if char and char:FindFirstChild("Humanoid") then char.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end end) ProximityPromptService.PromptButtonHoldBegan:Connect(function(prompt) if Config.InstantGrabEnabled then fireproximityprompt(prompt) end end) RunService.RenderStepped:Connect(function(dt) local char = LocalPlayer.Character if char and char:FindFirstChild("Humanoid") and char:FindFirstChild("HumanoidRootPart") then local hum = char.Humanoid local hrp = char.HumanoidRootPart -- Speed Modifier Logic with Lag Fix (>300 CFrame boost & normal base speed reset) if Config.SpeedEnabled then local targetSpeed = Config.SpeedValue * Config.SpeedMultiplier if targetSpeed > 300 then hum.WalkSpeed = 300 if hum.MoveDirection.Magnitude > 0 then hrp.CFrame = hrp.CFrame + (hum.MoveDirection * (targetSpeed - 300) * dt) end else hum.WalkSpeed = targetSpeed end else hum.WalkSpeed = 16 end if Config.JumpEnabled then hum.JumpPower = Config.JumpValue end if Config.BhopEnabled then if hum.FloorMaterial ~= Enum.Material.Air then hum:ChangeState(Enum.HumanoidStateType.Jumping) end end if Config.SpinbotEnabled then hrp.CFrame = hrp.CFrame * CFrame.Angles(0, math.rad(Config.SpinbotSpeed), 0) end if Config.WalkOnWaterEnabled then waterPlatform.Position = Vector3.new(hrp.Position.X, 0, hrp.Position.Z) waterPlatform.CanCollide = true else waterPlatform.CanCollide = false end if Config.NoclipEnabled then for _, part in ipairs(char:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end if Config.HitboxEnabled then for _, p in ipairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then local targetHrp = p.Character.HumanoidRootPart if Config.HitboxInf then targetHrp.Size = Vector3.new(9999, 9999, 9999) else targetHrp.Size = Vector3.new(Config.HitboxSize, Config.HitboxSize, Config.HitboxSize) end targetHrp.Transparency = 0.7 targetHrp.CanCollide = false end end end if Config.AimbotEnabled then local closestPlayer = nil local shortestDist = math.huge for _, p in ipairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("HumanoidRootPart") then local dist = (hrp.Position - p.Character.HumanoidRootPart.Position).Magnitude if dist < shortestDist then shortestDist = dist closestPlayer = p end end end if closestPlayer and closestPlayer.Character:FindFirstChild("HumanoidRootPart") then Camera.CFrame = CFrame.new(Camera.CFrame.Position, closestPlayer.Character.HumanoidRootPart.Position) end end if Config.StarfallEnabled then starfallEmitter.Position = hrp.Position + Vector3.new(0, 30, 0) starfallEmitter.Rate = Config.StarfallCount starfallEmitter.Color = ColorSequence.new(Config.StarfallColor) else starfallEmitter.Rate = 0 end if Config.RainEnabled then rainEmitter.Position = hrp.Position + Vector3.new(0, 30, 0) rainEmitter.Rate = Config.RainAmount rainEmitter.Color = ColorSequence.new(Config.RainColor) else rainEmitter.Rate = 0 end end for _, p in ipairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character then local charModel = p.Character if Config.ESPEnabled then if not charModel:FindFirstChild("SalchibloxESPHighlight") then local hl = Instance.new("Highlight") hl.Name = "SalchibloxESPHighlight" hl.FillColor = Config.AccentColor hl.OutlineColor = Color3.fromRGB(255, 255, 255) hl.Parent = charModel end else local hl = charModel:FindFirstChild("SalchibloxESPHighlight") if hl then hl:Destroy() end end end end if Config.GravityEnabled then Workspace.Gravity = Config.GravityValue else Workspace.Gravity = 196.2 end if Config.TimeOfDayEnabled then Lighting.TimeOfDay = tostring(Config.TimeOfDayValue) .. ":00:00" end end)