-- ==== Load Obsidian Library & Setup ==== local repo = "https://raw.githubusercontent.com/deividcomsono/Obsidian/main/" local Library = loadstring(game:HttpGet(repo .. "Library.lua"))() Library:SetDPIScale(85) Library:SetWatermarkVisibility(true) local RunService = game:GetService("RunService") local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local LP = Players.LocalPlayer local Camera = Workspace.CurrentCamera -- Watermark FPS + Ping update local FrameTimer = tick() local FrameCounter = 0 local FPS = 60 local Stats = game:GetService("Stats") RunService.RenderStepped:Connect(function() FrameCounter += 1 if tick() - FrameTimer >= 1 then FPS = FrameCounter FrameTimer = tick() FrameCounter = 0 end Library:SetWatermark(('Velocity Trial | %s fps | %s ms'):format( math.floor(FPS), math.floor(Stats.Network.ServerStatsItem['Data Ping']:GetValue()) )) end) Library:Notify({ Title = "Success", Description = "Script Executed successfully", Time = 5 }) -- Load addons local ThemeManager = loadstring(game:HttpGet(repo .. "addons/ThemeManager.lua"))() local SaveManager = loadstring(game:HttpGet(repo .. "addons/SaveManager.lua"))() local Options = Library.Options local Toggles = Library.Toggles -- Create Window local Window = Library:CreateWindow({ Title = "Velocity", Footer = "version: Version 1.0", Icon = 128828160470041, NotifySide = "Right", ShowCustomCursor = false, }) -- Tabs local Tabs = { Main = Window:AddTab("Main", "user"), Esp = Window:AddTab({Name = "Visuals", Description = "Visuals & Players & World Options", Icon = "eye"}), AutoFarm = Window:AddTab({Name = "AutoFarm", Description = "Automatically Farm", Icon = "axe"}), }-- ==== Silent Aim Group ==== local SAGroup = Tabs.Main:AddLeftGroupbox("Silent Aim", "crosshair") local SAFOV = 100 local FOVColor = Color3.fromRGB(255,255,255) local SAFOVFilled = true local SAFOVOutline = true local C1, C2 = nil, nil local SAConnections = {} local SAHook = nil local HitPart = "HumanoidRootPart" local SAHitChance = 100 -- default 100% local SASnaplines = false local SnaplineDrawing = nil local CircleMode = "Center" -- "Center" or "Follow Crosshair" local SAToggle = SAGroup:AddToggle("SilentAimToggle", { Text = "Enable Silent Aim", Default = false, Callback = function(Value) if Value then local CC = Workspace.CurrentCamera local SA = {fov = SAFOV, fovcircle = true} local Tgt = nil C1 = Drawing.new("Circle") C2 = Drawing.new("Circle") SAConnections.RenderStepped = RunService.Stepped:Connect(function() local sc if CircleMode == "Center" then sc = Vector2.new(CC.ViewportSize.X/2, CC.ViewportSize.Y/2) else local mouse = LP:GetMouse() sc = Vector2.new(mouse.X, mouse.Y) end C1.Position = sc C2.Position = sc SA.fov = SAFOV C1.Position = sc C1.Radius = SA.fov C1.Color = FOVColor C1.Filled = SAFOVFilled C1.Transparency = SAFOVFilled and 0.3 or 0 C1.Visible = SAFOVFilled C2.Position = sc C2.Radius = SA.fov C2.Color = FOVColor C2.Thickness = SAFOVOutline and 2 or 0 C2.Filled = false C2.Visible = SAFOVOutline -- Find closest target local closest, dist = nil, SA.fov for _, v in ipairs(Players:GetPlayers()) do local h = v.Character and v.Character:FindFirstChild(HitPart) if v ~= LP and h then local hum = v.Character:FindFirstChildOfClass("Humanoid") local pos, on = CC:WorldToViewportPoint(h.Position + Vector3.new(0,0.2,0)) if on and hum and hum.Health > 0 then local canTarget = true if Toggles.SAWallCheck.Value then local rayParams = RaycastParams.new() rayParams.FilterType = Enum.RaycastFilterType.Blacklist rayParams.FilterDescendantsInstances = {LP.Character} local result = Workspace:Raycast(CC.CFrame.Position, (h.Position - CC.CFrame.Position).Unit * 1000, rayParams) canTarget = not result or result.Instance:IsDescendantOf(v.Character) end if canTarget then local m = (Vector2.new(pos.X,pos.Y)-sc).Magnitude if m < dist then dist, closest = m, v end end end end end Tgt = closest -- Snapline drawing if SASnaplines then if not SnaplineDrawing then SnaplineDrawing = Drawing.new("Line") SnaplineDrawing.Color = Color3.fromRGB(255, 0, 0) SnaplineDrawing.Thickness = 2 SnaplineDrawing.Visible = true end if Tgt and Tgt.Character and Tgt.Character:FindFirstChild(HitPart) then local tgtPos, onScreen = CC:WorldToViewportPoint(Tgt.Character[HitPart].Position) if onScreen then SnaplineDrawing.From = Vector2.new(CC.ViewportSize.X/2, CC.ViewportSize.Y/2) SnaplineDrawing.To = Vector2.new(tgtPos.X, tgtPos.Y) SnaplineDrawing.Visible = true else SnaplineDrawing.Visible = false end else SnaplineDrawing.Visible = false end else if SnaplineDrawing then SnaplineDrawing.Visible = false end end end) SAHook = hookmetamethod(game, "__namecall", function(self,...) local a={...} if not checkcaller() and getnamecallmethod()=="FindPartOnRayWithIgnoreList" and Tgt and Tgt.Character then if math.random(1,100) <= SAHitChance then local o = a[1].Origin a[1] = Ray.new(o, Tgt.Character[HitPart].Position-o) end end return SAHook(self, unpack(a)) end) else for _, conn in pairs(SAConnections) do conn:Disconnect() end SAConnections = {} if C1 then C1:Remove() end if C2 then C2:Remove() end if SnaplineDrawing then SnaplineDrawing:Remove() SnaplineDrawing=nil end if SAHook then hookmetamethod(game, "__namecall", SAHook) end end end }) -- Snaplines toggle SAGroup:AddToggle("SASnaplinesToggle", { Text = "Enable Snaplines", Default = false, Callback = function(Value) SASnaplines = Value if not Value and SnaplineDrawing then SnaplineDrawing:Remove() SnaplineDrawing = nil end end }) -- FOV Slider SAGroup:AddSlider("SAFOVSlider", { Text = "FOV Size", Default = SAFOV, Min = 10, Max = 500, Rounding = 1, Callback = function(Value) SAFOV = Value end }) -- FOV Color SAToggle:AddColorPicker("SAFOVColor", { Default = FOVColor, Title = "FOV Color", Callback = function(Value) FOVColor = Value end }) SAGroup:AddDropdown("SAFOVModeDropdown", { Text = "FOV Circle Mode", Values = {"Center", "Follow Crosshair"}, Default = "Center", Callback = function(Value) CircleMode = Value end }) -- Filled/Outline toggles SAGroup:AddToggle("SAFOVFilledToggle",{Text="Filled FOV",Default=true,Callback=function(Value) SAFOVFilled=Value end}) SAGroup:AddToggle("SAFOVOutlineToggle",{Text="Outline FOV",Default=true,Callback=function(Value) SAFOVOutline=Value end}) -- Wall Check local SAOptionsGroup = Tabs.Main:AddRightGroupbox("Silent Aim Options", "eye") SAOptionsGroup:AddToggle("SAWallCheck", { Text = "Wall Check", Default = false }) -- Hit Part Dropdown SAGroup:AddDropdown("SAHitPartDropdown",{ Text="Hit Part", Values={"Head","Torso","HumanoidRootPart"}, Default="HumanoidRootPart", Callback=function(Value) HitPart=Value end }) -- Hit Chance Slider SAGroup:AddSlider("SAHitChanceSlider",{ Text="Hit Chance %", Default=100, Min=1, Max=100, Rounding=1, Callback=function(Value) SAHitChance=Value end }) local SAOptionsGroup = Tabs.Main:AddRightGroupbox("Miscellaneous", "brush") SAOptionsGroup:AddToggle("CrosshairToggle", { Text = "Crosshair", Default = false, }):OnChanged(function(Value) if Value then -- === CREATE CROSSHAIR === local RunService = game:GetService("RunService") local Camera = workspace.CurrentCamera local Center = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2) local CrosshairLines, LineCount, Radius, LineLength, LineColor = {}, 4, 7, 15, Color3.fromRGB(255,0,0) for i = 1, LineCount do local line = Drawing.new("Line") line.Color = LineColor line.Thickness = 2 line.Visible = true table.insert(CrosshairLines, line) end local Dot = Drawing.new("Circle") Dot.Radius = 2 Dot.Position = Center Dot.Color = LineColor Dot.Filled = true Dot.Visible = true local VelocityText = Drawing.new("Text") VelocityText.Text = "Velocity" VelocityText.Position = Vector2.new(Center.X - 20, Center.Y + 20) VelocityText.Size = 16 VelocityText.Center = true VelocityText.Outline = true VelocityText.Color = Color3.new(1,1,1) VelocityText.Visible = true VelocityText.Font = 2 local LOLText = Drawing.new("Text") LOLText.Text = ".lol" LOLText.Position = Vector2.new(Center.X + 35, Center.Y + 20) LOLText.Size = 16 LOLText.Center = true LOLText.Outline = true LOLText.Color = Color3.fromRGB(255,0,0) LOLText.Visible = true LOLText.Font = 2 local angle = 0 CrosshairConnection = RunService.RenderStepped:Connect(function() Center = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2) for i, line in ipairs(CrosshairLines) do local a = angle + (math.pi*2/LineCount)*(i-1) local from = Vector2.new(Center.X + math.cos(a) * Radius, Center.Y + math.sin(a) * Radius) local to = Vector2.new(Center.X + math.cos(a) * (Radius + LineLength), Center.Y + math.sin(a) * (Radius + LineLength)) line.From = from line.To = to end Dot.Position = Center VelocityText.Position = Vector2.new(Center.X - 20, Center.Y + 20) LOLText.Position = Vector2.new(Center.X + 35, Center.Y + 20) angle = angle + 0.05 end) CrosshairObjects = {Dot, VelocityText, LOLText} for _, line in ipairs(CrosshairLines) do table.insert(CrosshairObjects, line) end else -- === REMOVE CROSSHAIR === if CrosshairConnection then CrosshairConnection:Disconnect() CrosshairConnection = nil end if CrosshairObjects then for _, obj in ipairs(CrosshairObjects) do obj:Remove() end CrosshairObjects = nil end end end) -- ==== ESP / Visuals ==== local ESPGroup = Tabs.Esp:AddLeftGroupbox("Player Visuals", "eye") -- Highlight toggle (chams) local ESPHighlightToggle = ESPGroup:AddToggle("ESPEnabled", { Text = "Enable Highlight", Default = false, Tooltip = "Enable player highlights (chams)" }) -- Highlight color variable local HighlightColor = Color3.fromRGB(0,0,255) -- default blue -- Color picker for highlight ESPHighlightToggle:AddColorPicker("ESPHighlightColor", { Default = Color3.fromRGB(255, 0, 0), Title = "Highlight Color", Callback = function(Value) HighlightColor = Value -- Update existing highlights if any for _, h in pairs(Highlights) do if h then h.FillColor = HighlightColor end end end }) -- Sub-toggles local ESPNameToggle = ESPGroup:AddToggle("ESPName", {Text = "Show Names", Default = false}) local ESPHealthToggle = ESPGroup:AddToggle("ESPHealthBar", {Text = "Show Health Bars", Default = false}) local ESPDistanceToggle = ESPGroup:AddToggle("ESPDistance", {Text = "Show Distance", Default = false}) local ESPCornersToggle = ESPGroup:AddToggle("ESPCorners", {Text = "Show Outline Box", Default = false}) local ESPWeaponToggle = ESPGroup:AddToggle("ESPWeapon", {Text = "Show Weapon/Tool", Default = false}) -- Storage for drawings and highlights local Drawings = {} local Highlights = {} -- Health color gradient local function getHealthColor(p) return Color3.fromHSV(p * 0.33, 1, 1) end -- Cleanup ESP for a player local function removeESP(plr) if Drawings[plr] then for _, obj in pairs(Drawings[plr]) do if typeof(obj)=="table" then for _, d in pairs(obj) do if d.Remove then d:Remove() end end elseif obj.Remove then obj:Remove() end end Drawings[plr]=nil end if Highlights[plr] then Highlights[plr]:Destroy() Highlights[plr]=nil end end -- Corner lines local function createCorners() local lines = {} for _=1,8 do local l = Drawing.new("Line") l.Color = Color3.new(1,1,1) l.Thickness = 2 l.Visible = false table.insert(lines,l) end return lines end -- Initialize ESP for a player local function createESP(plr) if plr==LP then return end Drawings[plr]={ DisplayName=Drawing.new("Text"), Username=Drawing.new("Text"), Distance=Drawing.new("Text"), HealthBar=Drawing.new("Line"), HealthText=Drawing.new("Text"), Corners=createCorners(), Weapon=Drawing.new("Text") } for _, obj in pairs({Drawings[plr].DisplayName,Drawings[plr].Username,Drawings[plr].Distance,Drawings[plr].HealthText,Drawings[plr].Weapon}) do obj.Visible=false obj.Center=true obj.Outline=true obj.Font=2 obj.Size=13 obj.Color=Color3.new(1,1,1) end Drawings[plr].HealthBar.Thickness=4 Drawings[plr].HealthBar.Visible=false if ESPHighlightToggle.Value then local h = Instance.new("Highlight") h.FillColor = Color3.fromRGB(255, 0, 0) -- default red h.OutlineColor = Color3.new(1,1,1) h.FillTransparency = 0.25 h.OutlineTransparency = 0 h.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop h.Parent = game.CoreGui Highlights[plr] = h end end -- ESP Render Loop RunService.RenderStepped:Connect(function() if not ESPHighlightToggle.Value and not ESPNameToggle.Value and not ESPHealthToggle.Value and not ESPDistanceToggle.Value and not ESPCornersToggle.Value and not ESPWeaponToggle.Value then for _, plr in pairs(Players:GetPlayers()) do removeESP(plr) end return end for _, plr in pairs(Players:GetPlayers()) do if plr~=LP and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then local char=plr.Character local hrp=char:FindFirstChild("HumanoidRootPart") local hum=char:FindFirstChildOfClass("Humanoid") local pos,vis = Camera:WorldToViewportPoint(hrp.Position) local dist = (Camera.CFrame.Position-hrp.Position).Magnitude if not Drawings[plr] then createESP(plr) end local obj=Drawings[plr] if vis and dist<=1000 then local scale=1/(dist/100) local boxW=30*scale local boxH=30*scale local size=Vector2.new(boxW,boxH) local tl=Vector2.new(pos.X-size.X/2,pos.Y-size.Y/2) local tr=tl+Vector2.new(size.X,0) local bl=tl+Vector2.new(0,size.Y) local br=tl+size local len=8*scale local c=obj.Corners for i=1,8 do c[i].Visible=ESPCornersToggle.Value end c[1].From=tl;c[1].To=tl+Vector2.new(len,0) c[2].From=tl;c[2].To=tl+Vector2.new(0,len) c[3].From=tr;c[3].To=tr-Vector2.new(len,0) c[4].From=tr;c[4].To=tr+Vector2.new(0,len) c[5].From=bl;c[5].To=bl+Vector2.new(len,0) c[6].From=bl;c[6].To=bl-Vector2.new(0,len) c[7].From=br;c[7].To=br-Vector2.new(0,len) c[8].From=br;c[8].To=br-Vector2.new(0,len) obj.DisplayName.Position=Vector2.new(pos.X,tl.Y-35) obj.DisplayName.Text=plr.DisplayName obj.DisplayName.Visible=ESPNameToggle.Value obj.Username.Position=Vector2.new(pos.X,tl.Y-23) obj.Username.Text=plr.Name obj.Username.Visible=ESPNameToggle.Value obj.Distance.Position=Vector2.new(pos.X,br.Y+4) obj.Distance.Text=math.floor(dist).." Studs" obj.Distance.Visible=ESPDistanceToggle.Value if hum then local hpPercent=math.clamp(hum.Health/hum.MaxHealth,0,1) local barHeight=size.Y*hpPercent local from=Vector2.new(tl.X-6,br.Y) local to=Vector2.new(tl.X-6,br.Y-barHeight) obj.HealthBar.From=from obj.HealthBar.To=to obj.HealthBar.Color=getHealthColor(hpPercent) obj.HealthBar.Visible=ESPHealthToggle.Value obj.HealthText.Position=Vector2.new(from.X-10,to.Y-6) obj.HealthText.Text=tostring(math.floor(hum.Health)) obj.HealthText.Color=getHealthColor(hpPercent) obj.HealthText.Visible=ESPHealthToggle.Value end if ESPWeaponToggle.Value then local tool=nil for _, child in ipairs(char:GetChildren()) do if child:IsA("Tool") then tool=child break end end if tool then obj.Weapon.Text=tool.Name obj.Weapon.Position=Vector2.new(pos.X,tl.Y-50) obj.Weapon.Visible=true else obj.Weapon.Visible=false end else obj.Weapon.Visible=false end if Highlights[plr] then Highlights[plr].Adornee=char Highlights[plr].Enabled=ESPHighlightToggle.Value end else for _, obj2 in pairs(obj) do if typeof(obj2)=="table" then for _, x in pairs(obj2) do x.Visible=false end elseif obj2.Visible then obj2.Visible=false end end if Highlights[plr] then Highlights[plr].Enabled=false end end else removeESP(plr) end end end) Players.PlayerRemoving:Connect(removeESP) -- ==== World Groupbox ==== local WorldGroup = Tabs.Esp:AddRightGroupbox("World", "globe") local CameraFOV = 70 WorldGroup:AddSlider("CameraFOVSlider",{ Text="Camera Field Of View", Default=CameraFOV, Min=50, Max=120, Rounding=1, Callback=function(Value) CameraFOV=Value Camera.FieldOfView=CameraFOV end }) local VisualSaturation = 100 local VisualBrightness = 1 local Lighting = game:GetService("Lighting") local ColorEffect = Instance.new("ColorCorrectionEffect") ColorEffect.Parent = Lighting ColorEffect.Saturation=VisualSaturation/100 ColorEffect.Brightness=VisualBrightness/35 ColorEffect.TintColor=Color3.new(1,1,1) WorldGroup:AddSlider("VisualSaturationSlider",{Text="Saturation",Default=VisualSaturation,Min=0,Max=100,Rounding=1,Callback=function(Value) VisualSaturation=Value ColorEffect.Saturation=VisualSaturation/100 end}) WorldGroup:AddSlider("VisualBrightnessSlider",{Text="Brightness",Default=VisualBrightness,Min=1,Max=10,Rounding=1,Callback=function(Value) VisualBrightness=Value ColorEffect.Brightness=VisualBrightness/10 end}) WorldGroup:AddButton("Stretched Resolution",function() getgenv().Resolution={[".gg/scripters"]=0.65} local Camera=workspace.CurrentCamera if getgenv().gg_scripters==nil then game:GetService("RunService").RenderStepped:Connect(function() Camera.CFrame=Camera.CFrame*CFrame.new(0,0,0,1,0,0,0,getgenv().Resolution[".gg/scripters"],0,0,0,1) end) end getgenv().gg_scripters="Aori0001" end) WorldGroup:AddButton("FPS Boost (BloxStrap)",function() loadstring(game:HttpGet('https://raw.githubusercontent.com/qwertyui-is-back/Bloxstrap/main/Initiate.lua', true))() end) -- Services local Players = game:GetService("Players") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer -- Variables local followDistance = 2 local sideOffset = 1 local followTime = 1.5 local knifeName = "Knife" local equipInterval = 0.5 -- Current character reference local currentChar = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait() LocalPlayer.CharacterAdded:Connect(function(char) currentChar = char end) local autoFarmGroup = Tabs.AutoFarm:AddLeftGroupbox("AutoFarm Settings", "axe") -- AutoFarm toggle local autoFarmToggle = autoFarmGroup:AddToggle("AutoFarmToggle", { Text = "AutoFarm", -- visible label Default = false }) -- Auto Equip Knife toggle local autoEquipToggle = autoFarmGroup:AddToggle("AutoEquipKnifeToggle", { Text = "Auto Equip Knife", -- visible label Default = false }) -- Helper: get next player local function getNextPlayer(currentIndex) local all = Players:GetPlayers() if #all <= 1 then return nil, 0 end local index = currentIndex or 0 local tries = 0 repeat index = index + 1 if index > #all then index = 1 end tries = tries + 1 until all[index] ~= LocalPlayer or tries > #all return all[index] ~= LocalPlayer and all[index] or nil, index end -- Combined AutoFarm + Auto Equip Knife loop task.spawn(function() local currentIndex = 0 while true do -- AUTO FARM LOGIC if autoFarmToggle.Value then local target target, currentIndex = getNextPlayer(currentIndex) if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then local startTime = tick() while tick() - startTime < followTime and autoFarmToggle.Value do local hrp = target.Character:FindFirstChild("HumanoidRootPart") if currentChar and hrp and currentChar:FindFirstChild("HumanoidRootPart") then local backPos = hrp.Position - hrp.CFrame.LookVector * followDistance local sidePos = backPos + hrp.CFrame.RightVector * sideOffset currentChar.HumanoidRootPart.CFrame = CFrame.new(sidePos, hrp.Position) end RunService.RenderStepped:Wait() end else task.wait(0.2) end else task.wait(0.2) end -- AUTO EQUIP KNIFE LOGIC if autoEquipToggle.Value then local backpack = LocalPlayer:FindFirstChild("Backpack") if backpack and currentChar then local knife = backpack:FindFirstChild(knifeName) if knife then currentChar.Humanoid:EquipTool(knife) end end end task.wait(equipInterval) end end) -- Configuration Tab local Configuration = Window:AddTab({ Name = "Configuration", Description = "Settings & Configs", Icon = "file" }) -- ========================= -- Left Groupbox: Menu / UI -- ========================= local MenuGroup = Configuration:AddLeftGroupbox("Menu", "wrench") MenuGroup:AddToggle("KeybindMenuOpen", { Default = Library.KeybindFrame.Visible, Text = "Open Keybind Menu", Callback = function(value) Library.KeybindFrame.Visible = value end, }) MenuGroup:AddToggle("ShowCustomCursor", { Text = "Custom Cursor", Default = true, Callback = function(Value) Library.ShowCustomCursor = Value end, }) MenuGroup:AddDropdown("NotificationSide", { Values = { "Left", "Right" }, Default = "Right", Text = "Notification Side", Callback = function(Value) Library:SetNotifySide(Value) end, }) MenuGroup:AddDropdown("DPIDropdown", { Values = { "50%", "75%", "100%", "125%", "150%", "175%", "200%" }, Default = "100%", Text = "DPI Scale", Callback = function(Value) Value = Value:gsub("%%", "") local DPI = tonumber(Value) Library:SetDPIScale(DPI) end, }) MenuGroup:AddDivider() MenuGroup:AddLabel("Menu bind") :AddKeyPicker("MenuKeybind", { Default = "RightShift", NoUI = true, Text = "Menu keybind" }) MenuGroup:AddButton("Unload", function() Library:Unload() end) Library.ToggleKeybind = Options.MenuKeybind -- ========================= -- Right Groupbox: Configs -- ========================= local ConfigGroup = Configuration:AddRightGroupbox("Config Manager", "cog") -- Hook managers into library ThemeManager:SetLibrary(Library) SaveManager:SetLibrary(Library) -- Ignore theme + menu keybind in configs SaveManager:IgnoreThemeSettings() SaveManager:SetIgnoreIndexes({ "MenuKeybind" }) -- Folder structure ThemeManager:SetFolder("MyScriptHub") SaveManager:SetFolder("MyScriptHub/specific-game") SaveManager:SetSubFolder("specific-place") -- Force managers into RIGHT groupbox SaveManager:BuildConfigSection(ConfigGroup) -- ✅ Build config list, save/load, etc ThemeManager:ApplyToGroupbox(ConfigGroup) -- ✅ Add theme dropdowns here -- Auto-load if marked SaveManager:LoadAutoloadConfig() -- ==== Finish Setup ==== ThemeManager:SetLibrary(Library) SaveManager:SetLibrary(Library) SaveManager:IgnoreThemeSettings() SaveManager:SetFolder("MyScriptHub") SaveManager:SetSubFolder("specific-place") SaveManager:BuildConfigSection(Tabs["UI Settings"]) ThemeManager:ApplyToTab(Tabs["UI Settings"]) SaveManager:LoadAutoloadConfig()