local VirtualInputManager = game:GetService("VirtualInputManager") local Players = game:GetService("Players") local CoreGui = game:GetService("CoreGui") local UserInputService = game:GetService("UserInputService") local LocalPlayer = Players.LocalPlayer local macroActive = false local selectedEvent = "None" -- Default Timing Configurations local timing = { qHold = 0.02, qRelease = 0.03, eHold = 0.02, eRelease = 0.00 } -- Async Input Thread Execution task.spawn(function() while true do local character = LocalPlayer.Character local humanoid = character and character:FindFirstChildOfClass("Humanoid") if macroActive and humanoid and humanoid.Health > 0 then -- Q Sequence VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.Q, false, game) task.wait(timing.qHold) VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.Q, false, game) task.wait(timing.qRelease) -- E Sequence VirtualInputManager:SendKeyEvent(true, Enum.KeyCode.E, false, game) task.wait(timing.eHold) VirtualInputManager:SendKeyEvent(false, Enum.KeyCode.E, false, game) task.wait(timing.eRelease) else task.wait(0.1) end end end) -- GUI Elements Construction local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "EventRunnerMacro" ScreenGui.ResetOnSpawn = false local success, err = pcall(function() ScreenGui.Parent = CoreGui end) if not success then ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui") end local Frame = Instance.new("Frame") Frame.Size = UDim2.new(0, 160, 0, 350) Frame.Position = UDim2.new(0.05, 0, 0.4, 0) Frame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) Frame.BorderSizePixel = 2 Frame.Active = true Frame.Parent = ScreenGui -- Custom Dragging Script local dragging, dragInput, dragStart, startPos local function update(input) local delta = input.Position - dragStart Frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end Frame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = Frame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) Frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if input == dragInput and dragging then update(input) end end) local Title = Instance.new("TextLabel") Title.Size = UDim2.new(1, 0, 0, 30) Title.Text = "Event Presets" Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.BackgroundColor3 = Color3.fromRGB(45, 45, 45) Title.Font = Enum.Font.SourceSansBold Title.TextSize = 16 Title.Parent = Frame local StatusLabel = Instance.new("TextLabel") StatusLabel.Size = UDim2.new(1, 0, 0, 25) StatusLabel.Position = UDim2.new(0, 0, 0, 30) StatusLabel.Text = "Status: PAUSED (None)" StatusLabel.TextColor3 = Color3.fromRGB(255, 100, 100) StatusLabel.BackgroundTransparency = 1 StatusLabel.Font = Enum.Font.SourceSans StatusLabel.TextSize = 14 StatusLabel.Parent = Frame -- Helper to rapidly spin up template layout buttons local function createPresetButton(name, yPos, qH, qR, eH, eR, isGold) local Btn = Instance.new("TextButton") Btn.Size = UDim2.new(0.9, 0, 0, 35) Btn.Position = UDim2.new(0.05, 0, 0, yPos) Btn.Text = name Btn.Font = Enum.Font.SourceSansBold Btn.TextSize = 14 Btn.Parent = Frame -- Dynamic styling based on whether it is the gold button if isGold then Btn.BackgroundColor3 = Color3.fromRGB(212, 175, 55) -- Gold color Btn.TextColor3 = Color3.fromRGB(20, 20, 20) -- Dark text for contrast else Btn.BackgroundColor3 = Color3.fromRGB(60, 60, 60) Btn.TextColor3 = Color3.fromRGB(255, 255, 255) end Btn.MouseButton1Click:Connect(function() timing.qHold = qH timing.qRelease = qR timing.eHold = eH timing.eRelease = eR macroActive = true selectedEvent = name StatusLabel.Text = "Status: RUNNING ("..name..")" StatusLabel.TextColor3 = Color3.fromRGB(100, 255, 100) end) end -- Preset configurations (Y-spaced sequentially by 45px) createPresetButton("60m Dash", 65, 0.01, 0.01, 0.01, 0.00, false) createPresetButton("100m Dash", 110, 0.02, 0.03, 0.02, 0.00, false) createPresetButton("200m Dash", 155, 0.03, 0.02, 0.04, 0.00, false) createPresetButton("300m Dash", 200, 0.03, 0.02, 0.04, 0.00, false) createPresetButton("400m Dash", 245, 0.05, 0.04, 0.05, 0.00, false) createPresetButton("Superspeed", 290, 0.00, 0.00, 0.00, 0.00, true) -- Updated to 0.00 across all fields -- Global Keybind Handling UserInputService.InputBegan:Connect(function(input, processed) if not processed then if input.KeyCode == Enum.KeyCode.P then macroActive = not macroActive if macroActive then StatusLabel.Text = "Status: RUNNING ("..selectedEvent..")" StatusLabel.TextColor3 = Color3.fromRGB(100, 255, 100) else StatusLabel.Text = "Status: PAUSED ("..selectedEvent..")" StatusLabel.TextColor3 = Color3.fromRGB(255, 100, 100) end elseif input.KeyCode == Enum.KeyCode.LeftControl or input.KeyCode == Enum.KeyCode.RightControl then Frame.Visible = not Frame.Visible end end end)