local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local CoreGui = game:GetService("CoreGui") local LocalPlayer = Players.LocalPlayer --// Variables for features local espEnabled = false local airJumpEnabled = false local playerSpeed = 16 local espObjects = {} --// GUI Creation local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "4Jayyz_MultiTool" ScreenGui.Parent = CoreGui ScreenGui.ResetOnSpawn = false --// Utility: Dragging Function local function MakeDraggable(frame, dragHandle) local dragging, dragInput, dragStart, startPos dragHandle = dragHandle or frame dragHandle.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 local delta = input.Position - dragStart frame.Position = UDim2.new(startPos.Width.Scale, startPos.Width.Offset + delta.X, startPos.Height.Scale, startPos.Height.Offset + delta.Y) end end) end --// Utility: Create stylized elements local function CreateUICorner(parent, radius) local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, radius or 8) corner.Parent = parent end local function CreateRainbowStroke(parent) local stroke = Instance.new("UIStroke") stroke.Thickness = 2 stroke.Parent = parent task.spawn(function() while stroke.Parent do local hue = tick() % 5 / 5 stroke.Color = Color3.fromHSV(hue, 1, 1) task.wait() end end) end --// 1. Movable Logo (Toggle Button) local LogoBtn = Instance.new("ImageButton") LogoBtn.Name = "LogoBtn" LogoBtn.Parent = ScreenGui LogoBtn.Size = UDim2.new(0, 50, 0, 50) LogoBtn.Position = UDim2.new(0.1, 0, 0.5, -25) LogoBtn.BackgroundColor3 = Color3.fromRGB(15, 15, 15) LogoBtn.Image = "rbxassetid://6331515291" -- Your requested texture ID LogoBtn.BorderSizePixel = 0 CreateUICorner(LogoBtn, 25) -- Circular CreateRainbowStroke(LogoBtn) MakeDraggable(LogoBtn) --// Main Frame local MainFrame = Instance.new("Frame") MainFrame.Name = "MainFrame" MainFrame.Parent = ScreenGui MainFrame.BackgroundColor3 = Color3.fromRGB(15, 15, 15) MainFrame.Position = UDim2.new(0.5, -90, 0.5, -140) MainFrame.Size = UDim2.new(0, 180, 0, 280) MainFrame.Visible = false -- Hidden by default CreateUICorner(MainFrame, 10) CreateRainbowStroke(MainFrame) MakeDraggable(MainFrame) -- Toggle visibility on logo click LogoBtn.MouseButton1Click:Connect(function() MainFrame.Visible = not MainFrame.Visible end) -- Title local Title = Instance.new("TextLabel") Title.Parent = MainFrame Title.BackgroundTransparency = 1 Title.Size = UDim2.new(1, 0, 0, 35) Title.Text = "Instagram: 4jayyz" Title.TextColor3 = Color3.new(1, 1, 1) Title.Font = Enum.Font.GothamBold Title.TextSize = 14 -- Button styling helper local function StyleMainBtn(btn, text, pos) btn.Parent = MainFrame btn.Text = text .. ": OFF" btn.Size = UDim2.new(0.9, 0, 0, 35) btn.Position = pos btn.BackgroundColor3 = Color3.fromRGB(30, 30, 30) btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.GothamBold btn.TextSize = 11 CreateUICorner(btn, 8) end --// Features Buttons local ESPBtn = Instance.new("TextButton") StyleMainBtn(ESPBtn, "👤 PLAYER ESP", UDim2.new(0.05, 0, 0.15, 0)) local AirJumpBtn = Instance.new("TextButton") StyleMainBtn(AirJumpBtn, "😾 AIR JUMP", UDim2.new(0.05, 0, 0.3, 0)) --// Speed Slider Elements local SpeedLabel = Instance.new("TextLabel") SpeedLabel.Parent = MainFrame SpeedLabel.Size = UDim2.new(0.9, 0, 0, 20) SpeedLabel.Position = UDim2.new(0.05, 0, 0.45, 0) SpeedLabel.Text = "Player Speed: 16" SpeedLabel.TextColor3 = Color3.new(1, 1, 1) SpeedLabel.BackgroundTransparency = 1 SpeedLabel.Font = Enum.Font.GothamBold SpeedLabel.TextSize = 10 SpeedLabel.TextXAlignment = Enum.TextXAlignment.Left local SliderBack = Instance.new("Frame") SliderBack.Name = "SliderBack" SliderBack.Parent = MainFrame SliderBack.BackgroundColor3 = Color3.fromRGB(40, 40, 40) SliderBack.Position = UDim2.new(0.05, 0, 0.55, 0) SliderBack.Size = UDim2.new(0.9, 0, 0, 8) CreateUICorner(SliderBack, 4) local SliderBtn = Instance.new("TextButton") SliderBtn.Name = "SliderBtn" SliderBtn.Parent = SliderBack SliderBtn.BackgroundColor3 = Color3.fromRGB(255, 255, 255) -- Initialize position based on default speed 16 (close to min 15) SliderBtn.Position = UDim2.new(0.01, -6, -0.5, 0) SliderBtn.Size = UDim2.new(0, 12, 0, 16) SliderBtn.Text = "" CreateUICorner(SliderBtn, 6) --// Destroy Button local DestroyBtn = Instance.new("TextButton") DestroyBtn.Parent = MainFrame DestroyBtn.Text = "Destroy UI" DestroyBtn.Size = UDim2.new(0.9, 0, 0, 30) DestroyBtn.Position = UDim2.new(0.05, 0, 0.85, 0) DestroyBtn.BackgroundColor3 = Color3.fromRGB(150, 0, 0) DestroyBtn.TextColor3 = Color3.new(1, 1, 1) DestroyBtn.Font = Enum.Font.GothamBold DestroyBtn.TextSize = 11 CreateUICorner(DestroyBtn, 8) --================================================================================== --// LOGIC SECTION --================================================================================== --// 1. ESP Logic (High Quality) local function CreateESP(plr) if plr == LocalPlayer then return end local function AddTag(char) if not char:IsDescendantOf(workspace) then return end char:WaitForChild("HumanoidRootPart") char:WaitForChild("Head") -- Highlight for Body Match local highlight = Instance.new("Highlight") highlight.Name = "4J_ESP" highlight.Parent = char highlight.FillColor = Color3.new(1, 0, 0) -- Red fill highlight.FillTransparency = 0.5 highlight.OutlineColor = Color3.new(1, 1, 1) -- White outline highlight.OutlineTransparency = 0 highlight.Adornee = char highlight.Enabled = espEnabled -- BillboardGui for DisplayName local bgui = Instance.new("BillboardGui") bgui.Name = "4J_Name" bgui.Parent = char:FindFirstChild("Head") bgui.Adornee = char:FindFirstChild("Head") bgui.Size = UDim2.new(0, 100, 0, 30) bgui.StudsOffset = Vector3.new(0, 2.5, 0) -- Above head bgui.AlwaysOnTop = true bgui.Enabled = espEnabled local namelabel = Instance.new("TextLabel") namelabel.Parent = bgui namelabel.BackgroundTransparency = 1 namelabel.Size = UDim2.new(1, 0, 1, 0) namelabel.Text = plr.DisplayName -- Medium Size Name namelabel.TextColor3 = Color3.new(1, 1, 1) namelabel.TextStrokeTransparency = 0 namelabel.Font = Enum.Font.GothamBold namelabel.TextSize = 12 namelabel.TextWrapped = true espObjects[plr.UserId] = {Highlight = highlight, NameTag = bgui} end if plr.Character then AddTag(plr.Character) end plr.CharacterAdded:Connect(AddTag) end -- Initialize ESP for existing players for _, p in pairs(Players:GetPlayers()) do CreateESP(p) end Players.PlayerAdded:Connect(CreateESP) -- Cleanup on PlayerRemoving Players.PlayerRemoving:Connect(function(plr) if espObjects[plr.UserId] then espObjects[plr.UserId] = nil end end) -- ESP Toggle ESPBtn.MouseButton1Click:Connect(function() espEnabled = not espEnabled ESPBtn.Text = "👤 ESP: " .. (espEnabled and "ON" or "OFF") ESPBtn.BackgroundColor3 = espEnabled and Color3.fromRGB(0, 150, 0) or Color3.fromRGB(30, 30, 30) for _, obj in pairs(espObjects) do if obj.Highlight then obj.Highlight.Enabled = espEnabled end if obj.NameTag then obj.NameTag.Enabled = espEnabled end end end) --// 2. Air Jump Logic (Infinite Jump) UserInputService.JumpRequest:Connect(function() if airJumpEnabled then local char = LocalPlayer.Character local hum = char and char:FindFirstChildOfClass("Humanoid") if hum then hum:ChangeState(Enum.HumanoidStateType.Jumping) end end end) AirJumpBtn.MouseButton1Click:Connect(function() airJumpEnabled = not airJumpEnabled AirJumpBtn.Text = "😾 AIR JUMP: " .. (airJumpEnabled and "ON" or "OFF") AirJumpBtn.BackgroundColor3 = airJumpEnabled and Color3.fromRGB(0, 150, 0) or Color3.fromRGB(30, 30, 30) end) --// 3. Speed Slider Logic (15-100, Gap 5) local minSpeed = 15 local maxSpeed = 100 local gap = 5 local isDraggingSlider = false local function UpdateSpeedFromSlider() local mouse = LocalPlayer:GetMouse() local relativeX = math.clamp((mouse.X - SliderBack.AbsolutePosition.X) / SliderBack.AbsoluteSize.X, 0, 1) -- Calculate raw value local rawSpeed = minSpeed + (relativeX * (maxSpeed - minSpeed)) -- Snap to nearest Gap of 5 playerSpeed = math.round(rawSpeed / gap) * gap playerSpeed = math.clamp(playerSpeed, minSpeed, maxSpeed) -- Update UI local visualPercent = (playerSpeed - minSpeed) / (maxSpeed - minSpeed) SliderBtn.Position = UDim2.new(visualPercent, -6, -0.5, 0) SpeedLabel.Text = "Player Speed: " .. playerSpeed -- Apply Speed local char = LocalPlayer.Character local hum = char and char:FindFirstChildOfClass("Humanoid") if hum then hum.WalkSpeed = playerSpeed end end SliderBtn.MouseButton1Down:Connect(function() isDraggingSlider = true end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then isDraggingSlider = false end end) RunService.RenderStepped:Connect(function() if isDraggingSlider then UpdateSpeedFromSlider() end end) -- Re-apply speed on respawn LocalPlayer.CharacterAdded:Connect(function(char) local hum = char:WaitForChild("Humanoid") hum.WalkSpeed = playerSpeed end) --// 4. Destroy Logic DestroyBtn.MouseButton1Click:Connect(function() -- Cleanup ESP for _, obj in pairs(espObjects) do if obj.Highlight then obj.Highlight:Destroy() end if obj.NameTag then obj.NameTag:Destroy() end end espObjects = {} -- Reset Speed local char = LocalPlayer.Character local hum = char and char:FindFirstChildOfClass("Humanoid") if hum then hum.WalkSpeed = 16 end ScreenGui:Destroy() end) game:GetService("StarterGui"):SetCore("SendNotification", {Title = "Instagram: 4jayyz", Text = "Have Great Day!", Duration = 6})