well my best advice is to just take life as it comes, do your best and always make it a point to learn from your mistakes. As far as it goes for your son, he's got a whole lifetime of lessons ahead of him, believe me he WILL do things he regrets but he too needs to just keep in mind the point of having these experiences is comprehending the life lessons that comes with them, learning from his mistakes and evolving his sense of self.
I can't tell you how to parent your child but I can tell you how to look at the bigger picture here. There is no quick fix, hell I don't even think there is a long term fix but I do know that in time and with more experiences we all learn how to survive. He may be doing stupid stuff now, but in 5 years he'll look back and realize that he was being young and dumb and that in and of itself is the reason he went through these things in the first place, so he would be able to come to that conclusion.
I'll be the first to tell you raising a teenager is no easy gig, especially a teenager with special needs or behavior issues, there is no mathematical solution to make kids behave if they don't want to, but you can't just give up on them either. As much as you'd like to think that your family will live happily ever after, sometimes there's just nothing you can do. He's gonna have to face the world sooner or later and hes gonna have to do that on his own.
let me give you an example. When I got back from the program I was hellbent on making up for lost time, I smoked, I drank, I stayed out well into the wee morning hours... all the while I had a scholarship and 2 grants to go to the art school of my dreams... Because of my partying my mom decided that she didn't want to help me with the rest of my tuition and she locked me out of the house if I came home after 11pm. In my mind I was just having fun but in her's I was wasting my future. Thus became my time being homeless. I can't tell you what she did was the right thing to do, I still wish I could have spent that time of my life in college especially after missing high school entirely due to my stint in the program, but I'll tell you what, that year I spent on my own I learned more about myself then I ever would have being sheltered from the big bad world. There's no lesson like a real life lesson and I now know that real life is the ultimate tough love. Yes she eventually came back around, helped me get my own apartment and gave me a job in her company, she didn't just abandon me, I honestly feel like she simply gave me the freedom I always wanted and I just had to see for myself what that really meant. Today my mom and I have a good relationship, we got past the past, (we definitely don't throw it in each others faces) and we both respect each other more and more as time goes on.
I'm not telling you this will work for your child, I don't know him/her and I don't know you. but what I do know is how your son must be feeling. I can tell you he probably feels trapped, maybe that you are unfair or making the wrong judgment call for his life and he wants to control his own destiny. He might not trust you or anyone for that matter and feels alienated, different and a little bit hopeless. Which of course makes him angry, and as these feelings compile he probably gets overwhelmed, that's when he chooses to act out, usually to blow off steam or just escape his emotions but mostly just to do what he wants to do because that is the only way he can feel he is in control of his own life.
I'm no expert, but I've seen it time and time again, when kids make bad decisions they usually do it because they are pissed off or unhappy about something they can't control. If the root of the problem is that they want some control of their lives you should try to simulate that for them by always giving them a choice. say, okay son, you have 2 choices here, you can do drugs and destroy your life or you can wake the fuck up and do what you really want to do with your life. Inspiring them to do what they enjoy doing is the best way to do something like this... you can say, son, you can either sit around and smoke pot all day or you can practice (insert sport or activity here) until your the best in the school, you can't have both. Life is about choices and if you want all the nice things and want to go out and have fun and enjoy yourself you have to acquire skills to provide theses means... you surely can't live off your parents forever so you need to focus on what you want to do with your life and who you want to be. Do you really want to be a junkie when you grow up? The choice is entirely yours.
He needs to decide for himself, and for his future what HE wants, whats important to him and that's the reason he will CHOOSE not to throw his life away. Once he has his goals and aspirations in site, all these other bumps in the road are just what he needs to learn to get there. Have some faith, I believe everything happens for a reason and if your kid is smart, he'll figure this out, it is his life after all, he needs to.