I gave up on the debugger many years ago. I found that I spent more time to get it working than I gained from using it.
Generally, it works with your local instance. Less so if SQL Server runs on a different machine. There are firewall ports that needs to be opened, including the rpc port, and that's not one to open if you think the firewall actually serves a purpose. And that firewall port is only the start of it.
What I do to debug my SQL code? Debug PRINT and SELECT. Occasionally I also use sp_sqltrace.
I also like to point that running the debugger against a production environment is definitely not appropriate, as you could be holding locks for a longer time that is suitable when you single-step through a procedure.
Finally, in the more recent cadence of SSMS, SSMS 18, the debugger is gone.