-- ======================================================= -- M A L A I K A T H U B -- S T R I C T S A F E - Z O N E L O A D E R -- ======================================================= local CoreGui = game:GetService("CoreGui") local TweenService = game:GetService("TweenService") local MarketplaceService = game:GetService("MarketplaceService") local RunService = game:GetService("RunService") local PlaceId = game.PlaceId -- 1. PREVENT DOUBLE LOADING if _G.MalaikatHubLoaded then if CoreGui:FindFirstChild("MalaikatHub_UltraUI") then CoreGui["MalaikatHub_UltraUI"]:Destroy() end end _G.MalaikatHubLoaded = true -- 2. SUPPORTED SCRIPTS & GAMES CONFIG local API_BASE = "https://raw.githubusercontent.com/MalaikatHubOFFICIAL/MalaikatHUB/refs/heads/main/" local Scripts = { AutoAim = API_BASE .. "MalaikatHUBautoaim.lua", PowerCity = API_BASE .. "MalaikatHUBPanel", BuildTeam = API_BASE .. "BuildYouTeamOWn", Assassin = API_BASE .. "silentassa", } local SupportedGames = { [286090429] = Scripts.AutoAim, -- Arsenal [136801880565837] = Scripts.AutoAim, -- Flick [112731528776884] = Scripts.AutoAim, -- Knife Duels [81549698024226] = Scripts.PowerCity, -- Power You City [94164742020505] = Scripts.BuildTeam, -- Build-a-Soccer-Team [103854444055060] = Scripts.Assassin, -- SilentAssasin } -- 3. COLOR PALETTE local Theme = { CardBg = Color3.fromRGB(14, 15, 20), Accent1 = Color3.fromRGB(0, 220, 255), -- Cyan Neon Accent2 = Color3.fromRGB(140, 80, 255), -- Purple Neon AccentHover = Color3.fromRGB(100, 240, 255), TextMain = Color3.fromRGB(245, 245, 250), TextSub = Color3.fromRGB(130, 135, 150), Success = Color3.fromRGB(80, 255, 150), Error = Color3.fromRGB(255, 75, 75), FontMain = Enum.Font.GothamMedium, FontBold = Enum.Font.GothamBold, } -- ======================================================= -- UI CONSTRUCTION -- ======================================================= local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "MalaikatHub_UltraUI" ScreenGui.ResetOnSpawn = false ScreenGui.IgnoreGuiInset = true pcall(function() if syn and syn.protect_gui then syn.protect_gui(ScreenGui) end if gethui then ScreenGui.Parent = gethui() else ScreenGui.Parent = CoreGui end end) if not ScreenGui.Parent then ScreenGui.Parent = CoreGui end -- Master Container local MasterContainer = Instance.new("Frame") MasterContainer.Name = "MasterContainer" MasterContainer.Size = UDim2.new(0, 330, 0, 120) MasterContainer.Position = UDim2.new(0.5, 0, 0.5, 0) MasterContainer.AnchorPoint = Vector2.new(0.5, 0.5) MasterContainer.BackgroundTransparency = 1 MasterContainer.Parent = ScreenGui -- Main Card Frame local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Size = UDim2.new(1, 0, 1, 0) MainFrame.Position = UDim2.new(0.5, 0, 0.5, 0) MainFrame.AnchorPoint = Vector2.new(0.5, 0.5) MainFrame.BackgroundColor3 = Theme.CardBg MainFrame.BackgroundTransparency = 0.12 MainFrame.BorderSizePixel = 0 MainFrame.ClipsDescendants = true MainFrame.ZIndex = 1 MainFrame.Parent = MasterContainer local CardCorner = Instance.new("UICorner") CardCorner.CornerRadius = UDim.new(0, 14) CardCorner.Parent = MainFrame -- Canvas khusus Particle Meteor local MeteorCanvas = Instance.new("Frame") MeteorCanvas.Name = "MeteorCanvas" MeteorCanvas.Size = UDim2.new(1, 0, 1, 0) MeteorCanvas.BackgroundTransparency = 1 MeteorCanvas.ClipsDescendants = true MeteorCanvas.ZIndex = 2 MeteorCanvas.Parent = MainFrame -- UI Stroke (Border Neon) local UIStroke = Instance.new("UIStroke") UIStroke.Thickness = 1.2 UIStroke.Transparency = 0.25 UIStroke.ApplyStrokeMode = Enum.ApplyStrokeMode.Border UIStroke.Parent = MainFrame local BorderGradient = Instance.new("UIGradient") BorderGradient.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Theme.Accent1), ColorSequenceKeypoint.new(0.5, Theme.Accent2), ColorSequenceKeypoint.new(1, Theme.Accent1) }) BorderGradient.Parent = UIStroke -- // HEADER AREA // local HeaderFrame = Instance.new("Frame") HeaderFrame.Size = UDim2.new(1, -30, 0, 36) HeaderFrame.Position = UDim2.new(0, 15, 0, 12) HeaderFrame.BackgroundTransparency = 1 HeaderFrame.ZIndex = 3 HeaderFrame.Parent = MainFrame local LogoBadge = Instance.new("Frame") LogoBadge.Size = UDim2.new(0, 32, 0, 32) LogoBadge.Position = UDim2.new(0, 0, 0, 2) LogoBadge.BackgroundColor3 = Color3.fromRGB(22, 24, 34) LogoBadge.BorderSizePixel = 0 LogoBadge.ZIndex = 3 LogoBadge.Parent = HeaderFrame local LogoCorner = Instance.new("UICorner") LogoCorner.CornerRadius = UDim.new(0, 8) LogoCorner.Parent = LogoBadge local LogoStroke = Instance.new("UIStroke") LogoStroke.Color = Theme.Accent1 LogoStroke.Thickness = 1 LogoStroke.Transparency = 0.5 LogoStroke.Parent = LogoBadge local LogoText = Instance.new("TextLabel") LogoText.Size = UDim2.new(1, 0, 1, 0) LogoText.BackgroundTransparency = 1 LogoText.Text = "M" LogoText.TextColor3 = Theme.Accent1 LogoText.TextSize = 18 LogoText.Font = Theme.FontBold LogoText.ZIndex = 4 LogoText.Parent = LogoBadge local TitleLabel = Instance.new("TextLabel") TitleLabel.Size = UDim2.new(1, -45, 1, 0) TitleLabel.Position = UDim2.new(0, 42, 0, 0) TitleLabel.BackgroundTransparency = 1 TitleLabel.Text = "MALAIKAT HUB" TitleLabel.TextColor3 = Theme.TextMain TitleLabel.TextSize = 16 TitleLabel.TextXAlignment = Enum.TextXAlignment.Left TitleLabel.Font = Theme.FontBold TitleLabel.ZIndex = 3 TitleLabel.Parent = HeaderFrame -- // STATUS & PROGRESS BAR AREA // local StatusContainer = Instance.new("Frame") StatusContainer.Name = "StatusContainer" StatusContainer.Size = UDim2.new(1, -30, 0, 45) StatusContainer.Position = UDim2.new(0, 15, 0, 56) StatusContainer.BackgroundTransparency = 1 StatusContainer.ZIndex = 3 StatusContainer.Parent = MainFrame local StatusLabel = Instance.new("TextLabel") StatusLabel.Size = UDim2.new(1, 0, 0, 20) StatusLabel.BackgroundTransparency = 1 StatusLabel.Text = "Initializing interface..." StatusLabel.TextColor3 = Theme.TextMain StatusLabel.TextSize = 12 StatusLabel.Font = Theme.FontMain StatusLabel.TextXAlignment = Enum.TextXAlignment.Center StatusLabel.TextTransparency = 1 StatusLabel.ZIndex = 3 StatusLabel.Parent = StatusContainer local BarOutline = Instance.new("Frame") BarOutline.Size = UDim2.new(1, -40, 0, 3) BarOutline.Position = UDim2.new(0.5, 0, 0, 26) BarOutline.AnchorPoint = Vector2.new(0.5, 0) BarOutline.BackgroundColor3 = Color3.fromRGB(28, 30, 42) BarOutline.BorderSizePixel = 0 BarOutline.ZIndex = 3 BarOutline.Parent = StatusContainer local BarCorner = Instance.new("UICorner") BarCorner.CornerRadius = UDim.new(1, 0) BarCorner.Parent = BarOutline local BarFill = Instance.new("Frame") BarFill.Size = UDim2.new(0, 0, 1, 0) BarFill.BackgroundColor3 = Theme.Accent1 BarFill.BorderSizePixel = 0 BarFill.ZIndex = 4 BarFill.Parent = BarOutline local FillCorner = Instance.new("UICorner") FillCorner.CornerRadius = UDim.new(1, 0) FillCorner.Parent = BarFill local FillGradient = Instance.new("UIGradient") FillGradient.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Theme.Accent1), ColorSequenceKeypoint.new(1, Theme.Accent2) }) FillGradient.Parent = BarFill -- // ACTION AREA (EXECUTE BUTTON & FOOTER) // local ActionContainer = Instance.new("Frame") ActionContainer.Name = "ActionContainer" ActionContainer.Size = UDim2.new(1, -30, 0, 85) ActionContainer.Position = UDim2.new(0, 15, 0, 98) ActionContainer.BackgroundTransparency = 1 ActionContainer.Visible = false ActionContainer.ZIndex = 3 ActionContainer.Parent = MainFrame local ExecuteBtn = Instance.new("TextButton") ExecuteBtn.Name = "ExecuteButton" ExecuteBtn.Size = UDim2.new(1, 0, 0, 36) ExecuteBtn.Position = UDim2.new(0, 0, 0, 0) ExecuteBtn.BackgroundColor3 = Theme.Accent1 ExecuteBtn.Text = "EXECUTE" ExecuteBtn.TextColor3 = Color3.fromRGB(10, 12, 18) ExecuteBtn.TextSize = 13 ExecuteBtn.Font = Theme.FontBold ExecuteBtn.AutoButtonColor = false ExecuteBtn.ZIndex = 4 ExecuteBtn.Parent = ActionContainer local BtnCorner = Instance.new("UICorner") BtnCorner.CornerRadius = UDim.new(0, 8) BtnCorner.Parent = ExecuteBtn local Subtext1 = Instance.new("TextLabel") Subtext1.Size = UDim2.new(1, 0, 0, 12) Subtext1.Position = UDim2.new(0, 0, 0, 44) Subtext1.BackgroundTransparency = 1 Subtext1.Text = "MalaikatHUB NEVER USE KEY" Subtext1.TextColor3 = Theme.TextSub Subtext1.TextTransparency = 0.55 Subtext1.TextSize = 9 Subtext1.Font = Theme.FontMain Subtext1.ZIndex = 4 Subtext1.Parent = ActionContainer local Subtext2 = Instance.new("TextLabel") Subtext2.Size = UDim2.new(1, 0, 0, 12) Subtext2.Position = UDim2.new(0, 0, 0, 58) Subtext2.BackgroundTransparency = 1 Subtext2.Text = "MalaikatHUB ONLY UPLOAD IN RSCRIPT" Subtext2.TextColor3 = Theme.TextSub Subtext2.TextTransparency = 0.55 Subtext2.TextSize = 9 Subtext2.Font = Theme.FontMain Subtext2.ZIndex = 4 Subtext2.Parent = ActionContainer -- ======================================================= -- METEOR ENGINE (STRICT SAFE-ZONE MATH) -- ======================================================= local ActiveMeteors = {} local SpawnTimer = 0 local function SpawnPhysicsMeteor() if not ScreenGui.Parent or not MainFrame.Parent then return end local canvasSize = MeteorCanvas.AbsoluteSize local w, h = canvasSize.X, canvasSize.Y if w <= 60 or h <= 60 then return end local length = math.random(40, 60) local thickness = 1.5 local angleDegrees = 145 local meteorFrame = Instance.new("Frame") meteorFrame.Name = "PhysicsMeteor" meteorFrame.AnchorPoint = Vector2.new(1, 0.5) -- Head point meteorFrame.Size = UDim2.new(0, length, 0, thickness) meteorFrame.Rotation = angleDegrees meteorFrame.BackgroundColor3 = Theme.Accent1 meteorFrame.BorderSizePixel = 0 meteorFrame.BackgroundTransparency = 1 meteorFrame.ZIndex = 2 meteorFrame.Parent = MeteorCanvas -- Ekor Gradien Halus local tailGradient = Instance.new("UIGradient") tailGradient.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Color3.fromRGB(10, 15, 25)), ColorSequenceKeypoint.new(0.65, Theme.Accent1), ColorSequenceKeypoint.new(1, Color3.fromRGB(255, 255, 255)) }) tailGradient.Transparency = NumberSequence.new({ NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.7, 0.2), NumberSequenceKeypoint.new(1, 0) }) tailGradient.Parent = meteorFrame -- Titik Kepala Terang local headDot = Instance.new("Frame") headDot.Size = UDim2.new(0, 3, 0, 3) headDot.Position = UDim2.new(1, 0, 0.5, 0) headDot.AnchorPoint = Vector2.new(0.5, 0.5) headDot.BackgroundColor3 = Color3.fromRGB(255, 255, 255) headDot.BorderSizePixel = 0 headDot.ZIndex = 3 headDot.Parent = meteorFrame local headCorner = Instance.new("UICorner") headCorner.CornerRadius = UDim.new(1, 0) headCorner.Parent = headDot local angleRad = math.rad(angleDegrees) local dirX = math.cos(angleRad) local dirY = math.sin(angleRad) -- Spawn STRICTLY DI DALAM KOTAK (Bukan di luar) local startX = math.random(math.floor(w * 0.45), math.floor(w - 35)) local startY = math.random(25, math.floor(h * 0.45)) local speed = math.random(150, 230) local maxLife = math.random(8, 13) / 10 local maxOpacity = 0.85 table.insert(ActiveMeteors, { Frame = meteorFrame, HeadDot = headDot, Pos = Vector2.new(startX, startY), Dir = Vector2.new(dirX, dirY), Speed = speed, Length = length, Life = 0, MaxLife = maxLife, MaxOpacity = maxOpacity }) end -- Render Loop utama local renderConnection renderConnection = RunService.RenderStepped:Connect(function(dt) BorderGradient.Rotation = (BorderGradient.Rotation + dt * 65) % 360 SpawnTimer = SpawnTimer + dt if SpawnTimer >= 0.4 then SpawnTimer = 0 if #ActiveMeteors < 4 then SpawnPhysicsMeteor() end end local canvasSize = MeteorCanvas.AbsoluteSize local cw, ch = canvasSize.X, canvasSize.Y for i = #ActiveMeteors, 1, -1 do local m = ActiveMeteors[i] m.Life = m.Life + dt if m.Life >= m.MaxLife or not m.Frame.Parent then m.Frame:Destroy() table.remove(ActiveMeteors, i) else m.Pos = m.Pos + (m.Dir * m.Speed * dt) m.Frame.Position = UDim2.new(0, m.Pos.X, 0, m.Pos.Y) -- Koordinat Kepala local x_h, y_h = m.Pos.X, m.Pos.Y -- Koordinat Ekor local x_t = x_h - (m.Dir.X * m.Length) local y_t = y_h - (m.Dir.Y * m.Length) -- Cek jarak Kepala DAN Ekor ke 4 dinding tepi kotak local pad = 30 -- Pudar total 30px SEBELUM menyentuh batas kotak local hDist = math.min(x_h, cw - x_h, y_h, ch - y_h) local tDist = math.min(x_t, cw - x_t, y_t, ch - y_t) local minDist = math.min(hDist, tDist) -- Pudar otomatis saat mendekati tepi local edgeAlpha = math.clamp(minDist / pad, 0, 1) -- Pudar berdasarkan durasi hidup local progress = m.Life / m.MaxLife local timeAlpha = 1 if progress < 0.2 then timeAlpha = progress / 0.2 elseif progress > 0.7 then timeAlpha = (1 - progress) / 0.3 end local finalAlpha = timeAlpha * edgeAlpha local finalTransp = 1 - (m.MaxOpacity * finalAlpha) m.Frame.BackgroundTransparency = finalTransp m.HeadDot.BackgroundTransparency = finalTransp end end end) -- ======================================================= -- INTERAKSI & ANIMASI UI -- ======================================================= local TInfo_Fast = TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out) local TInfo_Quint = TweenInfo.new(0.6, Enum.EasingStyle.Quint, Enum.EasingDirection.Out) local TInfo_Bounce = TweenInfo.new(0.35, Enum.EasingStyle.Back, Enum.EasingDirection.Out) -- Interactive Hover Tombol EXECUTE ExecuteBtn.MouseEnter:Connect(function() TweenService:Create(ExecuteBtn, TInfo_Bounce, { Size = UDim2.new(1, 10, 0, 40), Position = UDim2.new(0, -5, 0, -2), BackgroundColor3 = Theme.AccentHover }):Play() end) ExecuteBtn.MouseLeave:Connect(function() TweenService:Create(ExecuteBtn, TInfo_Fast, { Size = UDim2.new(1, 0, 0, 36), Position = UDim2.new(0, 0, 0, 0), BackgroundColor3 = Theme.Accent1 }):Play() end) -- Status Text & Progress Bar Changer local function SetStatus(text, color, progress) color = color or Theme.TextMain TweenService:Create(StatusLabel, TInfo_Fast, { TextTransparency = 1, Position = UDim2.new(0, 0, 0, -6) }):Play() task.wait(0.08) StatusLabel.Text = text StatusLabel.TextColor3 = color StatusLabel.Position = UDim2.new(0, 0, 0, 6) TweenService:Create(StatusLabel, TInfo_Fast, { TextTransparency = 0, Position = UDim2.new(0, 0, 0, 0) }):Play() if progress then TweenService:Create(BarFill, TInfo_Quint, {Size = UDim2.new(math.clamp(progress, 0, 1), 0, 1, 0)}):Play() end end -- Open & Close Functions local function ShowUI() MasterContainer.Size = UDim2.new(0, 260, 0, 80) MainFrame.BackgroundTransparency = 1 UIStroke.Transparency = 1 TweenService:Create(MasterContainer, TInfo_Quint, {Size = UDim2.new(0, 330, 0, 120)}):Play() TweenService:Create(MainFrame, TInfo_Quint, {BackgroundTransparency = 0.12}):Play() TweenService:Create(UIStroke, TInfo_Quint, {Transparency = 0.25}):Play() task.wait(0.3) TweenService:Create(StatusLabel, TInfo_Fast, {TextTransparency = 0}):Play() end local function UnloadUI() if renderConnection then renderConnection:Disconnect() end TweenService:Create(MasterContainer, TInfo_Quint, {Size = UDim2.new(0, 250, 0, 70)}):Play() TweenService:Create(MainFrame, TInfo_Quint, {BackgroundTransparency = 1}):Play() TweenService:Create(UIStroke, TInfo_Quint, {Transparency = 1}):Play() task.wait(0.5) ScreenGui:Destroy() _G.MalaikatHubLoaded = false end -- ======================================================= -- LOGIKA EKSEKUSI LOADER -- ======================================================= task.spawn(function() ShowUI() -- Step 1: Inisialisasi task.wait(0.5) SetStatus("Verifying session...", nil, 0.25) task.wait(0.7) -- Step 2: Deteksi Game SetStatus("Analyzing environment...", nil, 0.5) local gameName = "Unknown Universe" pcall(function() local info = MarketplaceService:GetProductInfo(PlaceId) if info and info.Name then gameName = info.Name end end) task.wait(0.6) SetStatus("Context: " .. gameName:sub(1, 22) .. "...", Theme.Accent1, 0.75) task.wait(0.9) -- Step 3: Cek Dukungan Game local targetScriptURL = SupportedGames[PlaceId] if targetScriptURL then SetStatus("LIKE MY SCRIPT IF YOU LIKE IT", Theme.Success, 1) task.wait(0.8) -- Expansion Animation (Membuka Area EXECUTE Button) TweenService:Create(MasterContainer, TInfo_Quint, {Size = UDim2.new(0, 330, 0, 202)}):Play() task.wait(0.2) -- Fade Out Progress Bar TweenService:Create(BarOutline, TInfo_Fast, {BackgroundTransparency = 1}):Play() TweenService:Create(BarFill, TInfo_Fast, {BackgroundTransparency = 1}):Play() ActionContainer.Visible = true -- Event Klik Tombol Execute local clicked = false ExecuteBtn.MouseButton1Click:Connect(function() if clicked then return end clicked = true TweenService:Create(ExecuteBtn, TInfo_Fast, {BackgroundColor3 = Color3.fromRGB(0, 160, 200)}):Play() SetStatus("Executing main module...", Theme.Accent1) task.wait(0.3) pcall(function() loadstring(game:HttpGet(targetScriptURL))() end) SetStatus("Script Executed!", Theme.Success) task.wait(0.8) UnloadUI() end) else SetStatus("Environment not supported.", Theme.Error, 1) task.wait(2.5) UnloadUI() end end)