From another topic: First off, there is no Pokemon inthe game that requires you to use the Masterball as a rule. I view catching all the Pokemon with Dusk Balls to be a simple test of the player: Are you good enough?
There is an ingame trade in Snowpoint where you get a Haunter holding an Everstone. Start with him. Level him to level 49 and evolve him if you can. Take him to the Move Relearner in Pastoria and relearn Mean Look and Hypnosis. I also like to have a good, high level Kricketune with False Swipe along for the ride. Here is what I do:
1) Bring up the Marking Map and watch the runner's location as you step back and forth over a route boundary, one step each way. You should see the little tag dropping down to tell you that you have entered a new route. Do this until the runner is in the same route as you. Takes 2 minutes or so.
2) Pop a Super Repel, put the Haunter/Gengar in the lead, and run in the grass until you find the Runner. 30 seconds.
3) Use Mean Look right away and then beat him down to low HP. Then switch to the Kricketune and False Swipe him once to get him to 1 HP. At this point he flees. Save. Takes about a minute.
4) Repeat steps 1 and 2 to find him again, I usually don't even need to pop another Super Repel. 2 1/2 minutes or so.
5) Mean Look him again, use Hypnosis, and start chucking balls. Best to do this at night so you can use Dusk Balls. This can be a long slog or a quick thing, depending on your luck.