First of all, I would say try not to have "Come" mean the end of something good. If you call "come" and your dog comes and then you leave the dog park, or put him in his crate, eventually he won't want to come at all. Call him to "Come" alot and give him a treat or praise and a bit of play and then release him to do whatever he was doing. This way he will learn that "come" is a good thing. Keep a tug toy or special treats in the car so leaving the dog park is rewarding too.
As for coming away from distractions, that takes work. You have to really make "come" more desirable than whatever it is your dog is distracted by. Practice "come" in your yard or in a park on a long line with the best tasting food you can get your hands on. Play a game, love him up, throw a party when he comes. Practice often for reliability.
I have two tricks up my sleeve that work when my dog doesn't come when called. First, I holler a high-pitched "Biddy-Biddy-Biddy!" and then I run like hell in the opposite direction. Her name is NOT Biddy, but it is a word she never hears and at a pitch she never hears coming from me, so it automatically attracts her attention. I don't know whether she follows me because she thinks I'm going somewhere better, chasing something interesting, or what but it works. She runs like a gazelle to catch up with me.
The second thing I use is something I started with both my dogs. I call "Two Dogs" to get them both coming. I have never not rewarded them with food for coming to this call--NEVER. If I don't have a food treat to reward them with, I do not use "Two Dogs". I often work with my dogs together, but want to give commands to them one at a time so I use their name before the command. You can see then that if I wanted to have them both "Come" quickly I would have a mouthful to say "Dog 1, Come, Dog 2, Come". If I needed to call them both away from danger, I wanted something short so I chose "Two Dogs". They have learned that "Two Dogs" means great food and more of it to the dog who comes the fastest. It even works when I have them out one at a time.
So basically all I've done is train a "Come" and a "Come faster and you get better stuff". I only pull out the second one in times of need. I practice it at home with steak or chicken bits and during walks in the woods on long lines when I am fairly certain they will come to it. It has helped call my dogs to me quickly when I've seen an unknown dog approach. I've called them off balls and squirrels with it too. In a dire emergency if I called "Two Dogs" and ran in the opposite direction I am reasonably sure my dogs would be right behind me.