You get it from Galactic Boss Cyrus after you defeat him in Veilstone city
In Pokemon Diamond, Pearl and Platinum you can get one master ball from Master Cyrus. To get more, you have to cheat using a Action Replay DS or DSI, or you can trade Pokemon with your friends and receive master balls from the Pokemon that they traded.
in jubelife ... top prize tv staition ... MASTER BALL!
you have to have action replay ds and you have to find the 999 masterball code online
The other way of getting a legit Master Ball in Pokemon Pearl/Diamond/Platinum is through the Jubilife City Lottery. Winning the grand prize gets you ten Master Balls, however the chances of winning are tiny. The easiest way would be to use Pal Park and import Pokemon holding Master Balls from Pokemon Ruby/Sapphire/Emerald if you have a DS. If you have a DSi or don't have the GBA Pokemon games, then borrow a DS and/or game from someone else. Another (less legit) way is to exploit the GTS glitch in Pearl/Diamond and clone a Pokemon holding the Master Ball.
You can copy a master ball on Pokemon Emerald by having one of your friends that has one sign on to their ds and connect the two. Then they can give it to you in the Pokemon center.
buy it, also you need action replay ds ball slot cheat
After you have seven badges, go to mount coronet to foil team galactic then, you can verse dialga to catch it. P.S:Save the Master Ball as you will need it for another legendary
you get lots of Pokemon games and clock them all then migrate them onto d/p/p with a master ball and other things if you want
if you have other GBA games then you can play the GBA game on the DS until you get a master ball, and then you can give the master ball to a Pokemon and send it to the pal park on the DS game or you can use cheats xP
tell me the cheat code
I think that TM energy ball doesn't exist in heartgold. You can find it in Pokemon diamond and pearl on ds.
Cyrus gives you one. but apart from that the only way to get other master balls is by winning the lottery If you want to get more than one you will need to get two ds's or borrow one, have more than one Pokemon ds game (Pokemon pearl, diamond or another platinum) and you need to get one of Cyrus then trade a Pokemon (I'd recommend a low lv Pokemon that you don't care about and make sure you trade your favourite Pokemon onto the other game) and make sure its holding your master ball and then delete your save on Pokemon platinum (that's why you need to trade your favourite Pokemon) and start a new file then get up to the part where Cyrus gives you a master ball and repeat this over and over again (it does take a while but its worth it) when you do that you can get more than one master ball and when you are happy with the number of master balls trade one Pokemon onto platinum whilst it's holding the master ball and repeat until all your master balls are on platinum or you can 999 master balls of the action replay ds using one of the cheats enjoy ;) he never gave me a master ball :(