if game.CoreGui:FindFirstChild("VortexX_AI") then game.CoreGui.VortexX_AI:Destroy() end local Players = game:GetService("Players") local player = Players.LocalPlayer local StarterGui = game:GetService("StarterGui") local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "VortexX_AI" ScreenGui.Parent = game.CoreGui ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling local Frame = Instance.new("Frame") Frame.Size = UDim2.new(0, 520, 0, 370) Frame.Position = UDim2.new(0.5, -260, 0.5, -185) Frame.BackgroundColor3 = Color3.fromRGB(15, 15, 25) Frame.BorderSizePixel = 0 Frame.Parent = ScreenGui Frame.Active = true Frame.Draggable = true Frame.ClipsDescendants = true Instance.new("UICorner", Frame).CornerRadius = UDim.new(0, 12) local TopBar = Instance.new("Frame", Frame) TopBar.Size = UDim2.new(1, 0, 0, 40) TopBar.BackgroundColor3 = Color3.fromRGB(25, 25, 40) local Title = Instance.new("TextLabel", TopBar) Title.Text = "Vortex X v4 (v0.1) - By terminated_fear2" Title.Size = UDim2.new(1, -140, 1, 0) Title.Position = UDim2.new(0, 10, 0, 0) Title.TextColor3 = Color3.fromRGB(0, 255, 200) Title.Font = Enum.Font.GothamBold Title.TextSize = 18 Title.BackgroundTransparency = 1 Title.TextXAlignment = Enum.TextXAlignment.Left local ExitBtn = Instance.new("TextButton", TopBar) ExitBtn.Size = UDim2.new(0, 40, 1, 0) ExitBtn.Position = UDim2.new(1, -45, 0, 0) ExitBtn.Text = "X" ExitBtn.Font = Enum.Font.GothamBold ExitBtn.TextSize = 18 ExitBtn.TextColor3 = Color3.fromRGB(255, 80, 80) ExitBtn.BackgroundTransparency = 1 ExitBtn.MouseButton1Click:Connect(function() ScreenGui:Destroy() end) local BoostBtn = Instance.new("TextButton", TopBar) BoostBtn.Size = UDim2.new(0, 40, 1, 0) BoostBtn.Position = UDim2.new(1, -90, 0, 0) BoostBtn.Text = "⚔" BoostBtn.Font = Enum.Font.GothamBold BoostBtn.TextSize = 18 BoostBtn.TextColor3 = Color3.fromRGB(255, 255, 100) BoostBtn.BackgroundTransparency = 1 local Boosted = false local SearchBar = Instance.new("TextBox", Frame) SearchBar.Size = UDim2.new(1, -20, 0, 35) SearchBar.Position = UDim2.new(0, 10, 0, 45) SearchBar.BackgroundColor3 = Color3.fromRGB(25, 25, 40) SearchBar.TextColor3 = Color3.fromRGB(200, 255, 255) SearchBar.PlaceholderText = "Search or ask Vortex X..." SearchBar.Font = Enum.Font.GothamBold SearchBar.TextSize = 16 Instance.new("UICorner", SearchBar).CornerRadius = UDim.new(0, 8) local ChatLog = Instance.new("ScrollingFrame", Frame) ChatLog.Size = UDim2.new(1, -20, 1, -100) ChatLog.Position = UDim2.new(0, 10, 0, 90) ChatLog.BackgroundTransparency = 1 ChatLog.CanvasSize = UDim2.new(0, 0, 0, 0) ChatLog.ScrollBarThickness = 4 local UIListLayout = Instance.new("UIListLayout", ChatLog) UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder UIListLayout.Padding = UDim.new(0, 5) local ChatBox = Instance.new("TextBox", Frame) ChatBox.Size = UDim2.new(1, -20, 0, 40) ChatBox.Position = UDim2.new(0, 10, 1, -50) ChatBox.BackgroundColor3 = Color3.fromRGB(30, 30, 45) ChatBox.TextColor3 = Color3.fromRGB(255, 255, 255) ChatBox.PlaceholderText = "Type a message..." ChatBox.Font = Enum.Font.Gotham ChatBox.TextSize = 16 Instance.new("UICorner", ChatBox).CornerRadius = UDim.new(0, 8) local function scrollToBottom() task.wait() -- ensure layout updated local contentHeight = UIListLayout.AbsoluteContentSize.Y local viewHeight = ChatLog.AbsoluteSize.Y local y = math.max(0, contentHeight - viewHeight + 8) ChatLog.CanvasSize = UDim2.new(0, 0, 0, contentHeight + 10) ChatLog.CanvasPosition = Vector2.new(0, y) end local function AddMessage(text, color) local Msg = Instance.new("TextButton") Msg.Size = UDim2.new(1, -10, 0, 0) Msg.BackgroundTransparency = 1 Msg.Text = text Msg.TextColor3 = color or Color3.fromRGB(255, 255, 255) Msg.Font = Enum.Font.Gotham Msg.TextSize = 16 Msg.TextWrapped = true Msg.TextXAlignment = Enum.TextXAlignment.Left Msg.TextYAlignment = Enum.TextYAlignment.Top Msg.Parent = ChatLog Msg.LayoutOrder = UIListLayout.AbsoluteContentSize.Y + 1 Msg.AutomaticSize = Enum.AutomaticSize.Y Msg.MouseButton1Click:Connect(function() if pcall(function() setclipboard(text) end) then StarterGui:SetCore("SendNotification", { Title = "Copied", Text = "Message copied to clipboard!", Duration = 2 }) end end) scrollToBottom() end local function ShowLoading() local speed = Boosted and 0.3 or 0.8 local Loading = Instance.new("TextLabel") Loading.Size = UDim2.new(1, -10, 0, 22) Loading.BackgroundTransparency = 1 Loading.Text = "Vortex X is processing..." Loading.TextColor3 = Color3.fromRGB(150, 150, 150) Loading.Font = Enum.Font.Gotham Loading.TextSize = 16 Loading.TextXAlignment = Enum.TextXAlignment.Left Loading.Parent = ChatLog Loading.AutomaticSize = Enum.AutomaticSize.Y scrollToBottom() task.wait(speed) Loading:Destroy() scrollToBottom() end local function ScriptGenerator(query) if string.find(query, "speed") then return [[local p = game.Players.LocalPlayer p.Character:WaitForChild("Humanoid").WalkSpeed = 100]] elseif string.find(query, "jump") then return [[local p = game.Players.LocalPlayer p.Character:WaitForChild("Humanoid").JumpPower = 200]] elseif string.find(query, "reset") then return [[local p = game.Players.LocalPlayer local h = p.Character:WaitForChild("Humanoid") h.WalkSpeed = 16 h.JumpPower = 50]] elseif string.find(query, "fly") then return [[local p = game.Players.LocalPlayer local UIS = game:GetService("UserInputService") local flying = false local char = p.Character or p.CharacterAdded:Wait() local hum = char:WaitForChild("Humanoid") UIS.InputBegan:Connect(function(input) if input.KeyCode == Enum.KeyCode.E then flying = not flying hum.PlatformStand = flying end end)]] elseif string.find(query, "time") then return [[print('Current Time: '..os.date('%X'))]] elseif string.find(query, "tp") then return [[local p = game.Players.LocalPlayer local target = game.Players:FindFirstChild('PlayerNameHere') if target and target.Character and target.Character:FindFirstChild('HumanoidRootPart') then p.Character:MoveTo(target.Character.HumanoidRootPart.Position) end]] else return "No script found. Try: speed, jump, reset, fly, time, tp." end end local function HandleInput(msg) AddMessage("You: " .. msg, Color3.fromRGB(0,255,100)) msg = string.lower(msg) ShowLoading() if string.find(msg, "script") then local code = ScriptGenerator(msg) AddMessage("Vortex X (Script): " .. "\n" .. code, Color3.fromRGB(255,200,0)) return end local reply if msg == "hello" then reply = "Hello, " .. player.Name .. "." elseif msg == "who are you" then reply = "I’m Vortex X, your AI assistant created by terminated_fear2." elseif msg == "help" then reply = "Commands: hello, who are you, script speed/jump/reset/fly/time/tp, bye." elseif msg == "bye" then reply = "Goodbye. Terminating session." elseif msg == "time" then reply = "System time: "..os.date("%X") else reply = "Command not recognized. Type 'help'." end if Boosted then reply = "[BOOSTED RESPONSE] " .. reply end AddMessage("Vortex X: " .. reply, Color3.fromRGB(0,200,255)) end ChatBox.FocusLost:Connect(function(enterPressed) if enterPressed and ChatBox.Text ~= "" then HandleInput(ChatBox.Text) ChatBox.Text = "" end end) SearchBar.FocusLost:Connect(function(enterPressed) if enterPressed and SearchBar.Text ~= "" then HandleInput(SearchBar.Text) SearchBar.Text = "" end end) local function PlayRocketAnimation() local Rocket = Instance.new("TextLabel", Frame) Rocket.Text = "šŸš€" Rocket.Size = UDim2.new(0, 50, 0, 50) Rocket.TextSize = 40 Rocket.BackgroundTransparency = 1 Rocket.Position = UDim2.new(0, -60, 1, -100) for i = 0, 1, 0.02 do Rocket.Position = UDim2.new(i, -60, 1 - i, -100) task.wait(0.01) end Rocket:Destroy() end BoostBtn.MouseButton1Click:Connect(function() Boosted = not Boosted if Boosted then Frame.BackgroundColor3 = Color3.fromRGB(100, 0, 0) PlayRocketAnimation() StarterGui:SetCore("SendNotification", { Title = "Vortex X Boosted", Text = "terminated_fear2 is fixing the setup for you...", Duration = 4 }) else Frame.BackgroundColor3 = Color3.fromRGB(15, 15, 25) StarterGui:SetCore("SendNotification", { Title = "Vortex X Normal", Text = "Boost mode disabled.", Duration = 3 }) end end) AddMessage("Vortex X: Ready. Type 'help' for commands.", Color3.fromRGB(0,200,255))