local SA = getgenv().SilentAim local Players = game:GetService("Players") local LP = Players.LocalPlayer print(string.format("fireCalls=%d fireHits=%d hits=%d enabled=%s dry=%s", SA.State.FireCalls, SA.State.FireHits, SA.State.Hits, tostring(SA.Config.Enabled), tostring(SA.Config.DryRun))) print("lastFire: " .. tostring(SA.State.LastFire)) for i = 1, math.min(3, #SA.State.Log) do print(" log " .. SA.State.Log[i]) end -- target scan diagnostics SA.Config.Fov = 2500 SA.Config.Center = true SA.Scan() print(string.format("cands=%d target=%s wall=%s team=%s", SA.State.Candidates, SA.State.Target and SA.State.Target.Player.Name or "none", tostring(SA.Config.WallCheck), tostring(SA.Config.TeamCheck))) local cam = workspace.CurrentCamera local aim = Vector2.new(cam.ViewportSize.X / 2, cam.ViewportSize.Y / 2) for _, p in ipairs(Players:GetPlayers()) do if p ~= LP and p.Character then local h = p.Character:FindFirstChildOfClass("Humanoid") local pt = p.Character:FindFirstChild("Head") or p.Character:FindFirstChild("HumanoidRootPart") if h and pt then local sp, on = cam:WorldToViewportPoint(pt.Position) local d = (Vector2.new(sp.X, sp.Y) - aim).Magnitude local params = RaycastParams.new() params.FilterType = Enum.RaycastFilterType.Exclude params.FilterDescendantsInstances = { p.Character, LP.Character } local res = workspace:Raycast(cam.CFrame.Position, pt.Position - cam.CFrame.Position, params) print(string.format(" %-18s on=%s z=%.0f px=%.0f hp=%s blocked=%s", p.Name, tostring(on), sp.Z, d, tostring(h.Health), res and res.Instance.Name or "clear")) end end end