--[[ WARNING: Heads up! This script has not been verified by ScriptBlox. Use at your own risk! ]] local Xan = loadstring(game:HttpGet("https://xan.bar/init.lua"))() local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local HttpService = game:GetService("HttpService") local MarketplaceService = game:GetService("MarketplaceService") local LocalPlayer = Players.LocalPlayer local Camera = workspace.CurrentCamera --// CONFIG local Config = { Aimlock = false, ESP = false, Noclip = false, InfJump = false, JumpHack = false, SpeedHack = false, Fly = false, FlySpeed = 50, WalkSpeed = 16, JumpPower = 50, TargetPlr = nil, AimRange = 1000, HitParts = {Head = true, Chest = true} } --// STORE local Connections = {} local Objects = {} --// 1. SPLASH SCREEN (Priority) -- Shows first, plays for 2 seconds Xan.Splash( { Title = "CARTI HUB", Subtitle = "System Initialization...", Duration = 2, Theme = "Midnight" } ) --// 2. GAME DETECTION (Async during splash) local GameName = "Unknown Game" local GameIcon = Xan.Logos.Default task.spawn( function() pcall( function() local info = MarketplaceService:GetProductInfo(game.PlaceId) GameName = info.Name end ) local success, response = pcall( function() local r = (syn and syn.request) or (http and http.request) or http_request or (fluxus and fluxus.request) or request if r then return r( { Url = "https://api.xan.bar/api/games/lookup?name=" .. HttpService:UrlEncode(GameName), Method = "GET" } ) end end ) if success and response and response.StatusCode == 200 then local data = HttpService:JSONDecode(response.Body) if data.success and data.game then GameIcon = data.game.backup_rbxasset or data.game.rbxthumb end elseif Xan.GameIcons[GameName] then GameIcon = Xan.GameIcons[GameName] end end ) --// LOADING SEQUENCE -- Wait for splash (2s) + requested gap (1s) before showing Window task.wait(2.2) task.wait(1) --// 3. WINDOW local Window = Xan:CreateWindow( { Title = "CARTI HUB", Subtitle = GameName, Theme = "Midnight", Size = UDim2.new(0, 580, 0, 450), ShowActiveList = true, ShowLogo = true, Logo = GameIcon, ConfigName = "HolubHub" } ) Xan.MobileToggle({Window = Window, Position = UDim2.new(0.85, 0, 0.1, 0), Visible = true}) local Watermark = Xan.Watermark( { Text = "CARTI HUB | " .. os.date("%X"), Visible = true, ShowFPS = true, ShowPing = true, Theme = "Midnight" } ) task.spawn( function() while Window do Watermark:SetText("HOLUB HUB | " .. os.date("%X")) task.wait(1) end end ) --// 4. GUI TABS local MainTab = Window:AddTab("Main", Xan.Icons.Home) local ConfigTab = Window:AddTab("Config", Xan.Icons.Settings) --// MAIN: COMBAT MainTab:AddSection("Combat") local AimToggle = MainTab:AddToggle( "Aimlock", "aim_state", function(v) Config.Aimlock = v end ) MainTab:AddKeybind( "Aimlock Key [G]", "aim_key", Enum.KeyCode.G, function() AimToggle:Set(not AimToggle.Value()) end ) MainTab:AddSlider( "Aim FOV", "aim_fov", {Min = 100, Max = 2000, Default = 1000}, function(v) Config.AimRange = v end ) MainTab:AddCharacterPreview( { Name = "Hitbox Targeting", HitboxParts = {"Head", "Chest", "Arms", "Legs"}, Default = {Head = true, Chest = true}, Callback = function(val) Config.HitParts = val end } ) --// MAIN: VISUALS MainTab:AddSection("Visuals") local EspToggle = MainTab:AddToggle( "X-Ray (Chams)", "esp_state", function(v) Config.ESP = v if not v then for _, o in pairs(Objects) do if o.Name == "HLCache" then o:Destroy() end end return end for _, p in pairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character and not p.Character:FindFirstChild("HLCache") then local hl = Instance.new("Highlight") hl.Name = "HLCache" hl.FillColor = Color3.fromRGB(255, 0, 0) hl.OutlineColor = Color3.fromRGB(255, 255, 255) hl.FillTransparency = 0.5 hl.Parent = p.Character table.insert(Objects, hl) end end end ) MainTab:AddKeybind( "X-Ray Key [H]", "esp_key", Enum.KeyCode.H, function() EspToggle:Set(not EspToggle.Value()) end ) MainTab:AddCrosshair("Crosshair", {Enabled = false}) --// MAIN: MOVEMENT MainTab:AddSection("Movement") local FlightTog = MainTab:AddToggle( "Fly Hack", "fly_hack", function(v) Config.Fly = v if not v and LocalPlayer.Character then LocalPlayer.Character.Humanoid.PlatformStand = false end end ) MainTab:AddKeybind( "Fly Key [F]", "fly_key", Enum.KeyCode.F, function() FlightTog:Set(not FlightTog.Value()) end ) MainTab:AddSlider( "Fly Speed", "fly_val", {Min = 10, Max = 300, Default = 50}, function(v) Config.FlySpeed = v end ) local SpeedTog = MainTab:AddToggle( "Speed Hack", "speed_hack", function(v) Config.SpeedHack = v if not v and LocalPlayer.Character then LocalPlayer.Character.Humanoid.WalkSpeed = 16 end end ) MainTab:AddKeybind( "Speed Key [J]", "speed_key", Enum.KeyCode.J, function() SpeedTog:Set(not SpeedTog.Value()) end ) MainTab:AddSlider( "Walk Speed", "speed_val", {Min = 16, Max = 300, Default = 16}, function(v) Config.WalkSpeed = v end ) local JumpTog = MainTab:AddToggle( "Jump Hack", "jump_hack", function(v) Config.JumpHack = v if not v and LocalPlayer.Character then LocalPlayer.Character.Humanoid.JumpPower = 50 end end ) MainTab:AddKeybind( "Jump Key [K]", "jump_key", Enum.KeyCode.K, function() JumpTog:Set(not JumpTog.Value()) end ) MainTab:AddSlider( "Jump Power", "jump_val", {Min = 50, Max = 500, Default = 50}, function(v) Config.JumpPower = v end ) local NoclipTog = MainTab:AddToggle( "No Clip", "noclip_hack", function(v) Config.Noclip = v end ) MainTab:AddKeybind( "No Clip Key [N]", "noclip_key", Enum.KeyCode.N, function() NoclipTog:Set(not NoclipTog.Value()) end ) local InfJumpTog = MainTab:AddToggle( "Inf Jump", "inf_jump", function(v) Config.InfJump = v end ) MainTab:AddKeybind( "Inf Jump Key [L]", "inf_jump_key", Enum.KeyCode.L, function() InfJumpTog:Set(not InfJumpTog.Value()) end ) --// MAIN: TELEPORT MainTab:AddSection("Teleport") local function GetPlayerNames() local names = {} for _, p in pairs(Players:GetPlayers()) do if p ~= LocalPlayer then table.insert(names, p.Name) end end table.sort(names) if #names == 0 then table.insert(names, "No Other Players") end return names end local TpDropdown = MainTab:AddDropdown( "Select Player", "tp_target", GetPlayerNames(), function(v) Config.TargetPlr = Players:FindFirstChild(v) end ) Connections["PlrAdded"] = Players.PlayerAdded:Connect( function() TpDropdown:SetOptions(GetPlayerNames()) end ) Connections["PlrRemoved"] = Players.PlayerRemoving:Connect( function() TpDropdown:SetOptions(GetPlayerNames()) end ) MainTab:AddButton( "Refresh Dropdown", function() TpDropdown:SetOptions(GetPlayerNames()) end ) MainTab:AddButton( "Teleport [U]", function() if Config.TargetPlr and Config.TargetPlr.Character then LocalPlayer.Character:SetPrimaryPartCFrame( Config.TargetPlr.Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, 4) ) Xan.Notify({Title = "Teleport", Content = "Teleported to " .. Config.TargetPlr.Name}) else Xan.Notify({Title = "Error", Content = "Invalid target.", Type = "Error"}) end end ) MainTab:AddSpeedometer("HUD Speed", {Min = 0, Max = 200, AutoTrack = true}) --// CONFIG TAB ConfigTab:AddInput("Config Name", {Flag = "cfg_name", Default = "default"}) ConfigTab:AddButton( "Save Config", function() Xan:SaveConfig(Xan.Flags["cfg_name"] or "default") end ) ConfigTab:AddButton( "Load Config", function() Xan:LoadConfig(Xan.Flags["cfg_name"] or "default") end ) ConfigTab:AddDivider() ConfigTab:AddButton( "Unload & Cleanup", function() for _, c in pairs(Connections) do c:Disconnect() end for _, o in pairs(Objects) do pcall( function() o:Destroy() end ) end if LocalPlayer.Character then local h = LocalPlayer.Character:FindFirstChild("Humanoid") if h then h.PlatformStand = false h.WalkSpeed = 16 h.JumpPower = 50 end end Watermark:Destroy() Xan:Unload() end ) -------------------------------------------------------------------------------- -- LOOPS & LOGIC -------------------------------------------------------------------------------- local BodyVel, BodyGyro Connections["Loop"] = RunService.Stepped:Connect( function() local char = LocalPlayer.Character if not char then return end local hum = char:FindFirstChild("Humanoid") local root = char:FindFirstChild("HumanoidRootPart") if Config.Noclip then for _, p in pairs(char:GetDescendants()) do if p:IsA("BasePart") then p.CanCollide = false end end end if hum then if Config.SpeedHack then hum.WalkSpeed = Config.WalkSpeed end if Config.JumpHack then hum.UseJumpPower = true hum.JumpPower = Config.JumpPower end end if Config.Fly and root then if not BodyVel then BodyVel = Instance.new("BodyVelocity", root) BodyVel.MaxForce = Vector3.new(9e9, 9e9, 9e9) table.insert(Objects, BodyVel) end if not BodyGyro then BodyGyro = Instance.new("BodyGyro", root) BodyGyro.MaxTorque = Vector3.new(9e9, 9e9, 9e9) BodyGyro.P = 9e4 table.insert(Objects, BodyGyro) end hum.PlatformStand = true BodyGyro.CFrame = Camera.CFrame local dir = Vector3.zero if UserInputService:IsKeyDown(Enum.KeyCode.W) then dir = dir + Camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then dir = dir - Camera.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then dir = dir - Camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then dir = dir + Camera.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.E) then dir = dir + Vector3.new(0, 1, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.Q) then dir = dir - Vector3.new(0, 1, 0) end BodyVel.Velocity = dir * Config.FlySpeed else if BodyVel then BodyVel:Destroy() BodyVel = nil end if BodyGyro then BodyGyro:Destroy() BodyGyro = nil end end end ) Connections["Aim"] = RunService.RenderStepped:Connect( function() if not Config.Aimlock then return end local mouse = UserInputService:GetMouseLocation() local best, bestDist = nil, Config.AimRange for _, p in pairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character and p.Character:FindFirstChild("Humanoid") and p.Character.Humanoid.Health > 0 then local part = nil if Config.HitParts.Head then part = p.Character:FindFirstChild("Head") end if not part and Config.HitParts.Chest then part = p.Character:FindFirstChild("HumanoidRootPart") end if not part then part = p.Character:FindFirstChild("Head") end if part then local pos, vis = Camera:WorldToViewportPoint(part.Position) if vis then local dist = (Vector2.new(pos.X, pos.Y) - mouse).Magnitude if dist < bestDist then bestDist = dist best = part end end end end end if best then Camera.CFrame = CFrame.new(Camera.CFrame.Position, best.Position) end end ) Connections["InfJump"] = UserInputService.JumpRequest:Connect( function() if Config.InfJump and LocalPlayer.Character then LocalPlayer.Character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end ) Connections["Inputs"] = UserInputService.InputBegan:Connect( function(input, gpe) if gpe then return end if input.KeyCode == Enum.KeyCode.U and Config.TargetPlr and Config.TargetPlr.Character then LocalPlayer.Character:SetPrimaryPartCFrame( Config.TargetPlr.Character.HumanoidRootPart.CFrame * CFrame.new(0, 0, 4) ) Xan.Notify({Title = "Teleport", Content = "To: " .. Config.TargetPlr.Name}) end end ) -- Notifies success even though window might still be animating in due to library internal delays Xan.Notify({Title = "CARTI HUB", Content = "Loaded.", Icon = GameIcon, Type = "Success"})