-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] -- COMBAT TRAINING & DEBUG PANEL -- For use in your own Roblox experience / authorized testing. -- Mobile-friendly, draggable, scalable UI. local Players = game:GetService("Players") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") -- Remove old UI local old = PlayerGui:FindFirstChild("CombatDebugPanel") if old then old:Destroy() end --// SETTINGS local SCALE = 1 local ESPEnabled = false local HealthEnabled = true local PanelOpen = true --// GUI local gui = Instance.new("ScreenGui") gui.Name = "CombatDebugPanel" gui.ResetOnSpawn = false gui.IgnoreGuiInset = true gui.Parent = PlayerGui local scale = Instance.new("UIScale") scale.Scale = SCALE scale.Parent = gui -- Main panel local main = Instance.new("Frame") main.Name = "Main" main.Size = UDim2.fromOffset(330, 470) main.Position = UDim2.new(0.5, -165, 0.5, -235) main.BackgroundColor3 = Color3.fromRGB(15, 15, 20) main.BorderSizePixel = 0 main.Parent = gui local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 18) corner.Parent = main local stroke = Instance.new("UIStroke") stroke.Thickness = 2 stroke.Color = Color3.fromRGB(80, 80, 100) stroke.Parent = main -- Top bar local top = Instance.new("Frame") top.Size = UDim2.new(1, 0, 0, 58) top.BackgroundColor3 = Color3.fromRGB(25, 25, 32) top.BorderSizePixel = 0 top.Parent = main local topCorner = Instance.new("UICorner") topCorner.CornerRadius = UDim.new(0, 18) topCorner.Parent = top local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -110, 1, 0) title.Position = UDim2.fromOffset(18, 0) title.BackgroundTransparency = 1 title.Text = "⚡ COMBAT DEBUG" title.TextColor3 = Color3.new(1,1,1) title.TextSize = 20 title.Font = Enum.Font.GothamBold title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = top -- Close button local close = Instance.new("TextButton") close.Size = UDim2.fromOffset(42, 42) close.Position = UDim2.new(1, -50, 0, 8) close.BackgroundColor3 = Color3.fromRGB(45,45,55) close.Text = "×" close.TextColor3 = Color3.new(1,1,1) close.TextSize = 28 close.Font = Enum.Font.GothamBold close.Parent = top local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(1,0) closeCorner.Parent = close -- Content local content = Instance.new("ScrollingFrame") content.Size = UDim2.new(1, -20, 1, -75) content.Position = UDim2.fromOffset(10, 68) content.BackgroundTransparency = 1 content.BorderSizePixel = 0 content.ScrollBarThickness = 4 content.CanvasSize = UDim2.new(0,0,0,0) content.AutomaticCanvasSize = Enum.AutomaticSize.Y content.Parent = main local layout = Instance.new("UIListLayout") layout.Padding = UDim.new(0, 9) layout.HorizontalAlignment = Enum.HorizontalAlignment.Center layout.Parent = content -- Button creator local function makeButton(text, callback) local button = Instance.new("TextButton") button.Size = UDim2.new(1, -10, 0, 48) button.BackgroundColor3 = Color3.fromRGB(32,32,42) button.Text = text button.TextColor3 = Color3.new(1,1,1) button.TextSize = 16 button.Font = Enum.Font.GothamSemibold button.AutoButtonColor = true button.Parent = content local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, 12) c.Parent = button button.Activated:Connect(callback) return button end -- Section label local function makeLabel(text) local label = Instance.new("TextLabel") label.Size = UDim2.new(1,-10,0,30) label.BackgroundTransparency = 1 label.Text = text label.TextColor3 = Color3.fromRGB(170,170,180) label.TextSize = 13 label.Font = Enum.Font.GothamBold label.TextXAlignment = Enum.TextXAlignment.Left label.Parent = content return label end makeLabel("COMBAT TRAINING") -- Authorized local training actions makeButton("👊 Punch Test", function() print("[DEBUG] Punch test triggered") end) makeButton("💥 Slam Test", function() print("[DEBUG] Slam test triggered") end) makeButton("🥊 Heavy Attack Test", function() print("[DEBUG] Heavy attack test triggered") end) makeButton("👟 Stomp Test", function() print("[DEBUG] Stomp test triggered") end) makeLabel("PLAYER DEBUG") -- Health display local healthButton local function updateHealthButton() if HealthEnabled then healthButton.Text = "❤️ Health Display: ON" else healthButton.Text = "🖤 Health Display: OFF" end end healthButton = makeButton("", function() HealthEnabled = not HealthEnabled updateHealthButton() end) updateHealthButton() -- ESP/debug toggle local espButton local function updateESPButton() if ESPEnabled then espButton.Text = "👁️ Debug ESP: ON" else espButton.Text = "👁️ Debug ESP: OFF" end end espButton = makeButton("", function() ESPEnabled = not ESPEnabled updateESPButton() end) updateESPButton() -- UI scaling makeLabel("UI SETTINGS") makeButton("🔍 UI +", function() SCALE = math.clamp(SCALE + 0.1, 0.7, 1.8) scale.Scale = SCALE end) makeButton("🔎 UI −", function() SCALE = math.clamp(SCALE - 0.1, 0.7, 1.8) scale.Scale = SCALE end) makeButton("🎯 Reset UI Size", function() SCALE = 1 scale.Scale = SCALE end) --// Health bars local healthObjects = {} local function removeHealth(player) if healthObjects[player] then healthObjects[player]:Destroy() healthObjects[player] = nil end end local function createHealth(player) if player == LocalPlayer then return end local function setup(character) removeHealth(player) local head = character:FindFirstChild("Head") local humanoid = character:FindFirstChildOfClass("Humanoid") if not head or not humanoid then return end local billboard = Instance.new("BillboardGui") billboard.Name = "DebugHealth" billboard.Size = UDim2.fromOffset(120, 28) billboard.StudsOffset = Vector3.new(0, 3, 0) billboard.AlwaysOnTop = true billboard.Enabled = HealthEnabled billboard.Parent = head local bg = Instance.new("Frame") bg.Size = UDim2.new(1,0,0,8) bg.Position = UDim2.new(0,0,0.5,-4) bg.BackgroundColor3 = Color3.fromRGB(45,45,45) bg.BorderSizePixel = 0 bg.Parent = billboard local bgCorner = Instance.new("UICorner") bgCorner.CornerRadius = UDim.new(1,0) bgCorner.Parent = bg local bar = Instance.new("Frame") bar.Size = UDim2.new(1,0,1,0) bar.BackgroundColor3 = Color3.fromRGB(70,220,100) bar.BorderSizePixel = 0 bar.Parent = bg local barCorner = Instance.new("UICorner") barCorner.CornerRadius = UDim.new(1,0) barCorner.Parent = bar local nameLabel = Instance.new("TextLabel") nameLabel.Size = UDim2.new(1,0,0,16) nameLabel.Position = UDim2.new(0,0,-0.75,0) nameLabel.BackgroundTransparency = 1 nameLabel.Text = player.DisplayName nameLabel.TextColor3 = Color3.new(1,1,1) nameLabel.TextSize = 11 nameLabel.Font = Enum.Font.GothamBold nameLabel.Parent = billboard local connection connection = RunService.RenderStepped:Connect(function() if not character.Parent or humanoid.Health <= 0 then if connection then connection:Disconnect() end return end local percent = math.clamp( humanoid.Health / math.max(humanoid.MaxHealth,1), 0,1 ) bar.Size = UDim2.new(percent,0,1,0) billboard.Enabled = HealthEnabled if percent <= 0.25 then bar.BackgroundColor3 = Color3.fromRGB(220,70,70) elseif percent <= 0.5 then bar.BackgroundColor3 = Color3.fromRGB(230,190,60) else bar.BackgroundColor3 = Color3.fromRGB(70,220,100) end end) healthObjects[player] = billboard end if player.Character then setup(player.Character) end player.CharacterAdded:Connect(setup) end for _, player in ipairs(Players:GetPlayers()) do createHealth(player) end Players.PlayerAdded:Connect(createHealth) Players.PlayerRemoving:Connect(function(player) removeHealth(player) end) --// Debug ESP local function applyESP(player) if player == LocalPlayer then return end local function setup(character) local existing = character:FindFirstChild("DebugHighlight") if existing then existing:Destroy() end local highlight = Instance.new("Highlight") highlight.Name = "DebugHighlight" highlight.FillTransparency = 0.75 highlight.OutlineTransparency = 0 highlight.Enabled = ESPEnabled highlight.Parent = character RunService.RenderStepped:Connect(function() if highlight.Parent then highlight.Enabled = ESPEnabled end end) end if player.Character then setup(player.Character) end player.CharacterAdded:Connect(setup) end for _, player in ipairs(Players:GetPlayers()) do applyESP(player) end Players.PlayerAdded:Connect(applyESP) --// Close / reopen local reopen = Instance.new("TextButton") reopen.Size = UDim2.fromOffset(58,58) reopen.Position = UDim2.new(0,20,0.5,-29) reopen.BackgroundColor3 = Color3.fromRGB(30,30,38) reopen.Text = "⚡" reopen.TextSize = 26 reopen.TextColor3 = Color3.new(1,1,1) reopen.Visible = false reopen.Parent = gui local reopenCorner = Instance.new("UICorner") reopenCorner.CornerRadius = UDim.new(1,0) reopenCorner.Parent = reopen close.Activated:Connect(function() main.Visible = false reopen.Visible = true end) reopen.Activated:Connect(function() main.Visible = true reopen.Visible = false end) --// Drag support local dragging = false local dragStart local startPos top.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = main.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) top.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then local moveInput = input moveInput.Changed:Connect(function() if dragging then local delta = moveInput.Position - dragStart main.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) end end) print("Combat Debug Panel loaded successfully.")