Never
Chat with our AI personalities
You can find one in the Safari Zone, or get one when you first leave Cherrygrove City.
Basically All you need is surf and waterfall. You cross the waterfall and leave the cave. That is about it.
In Heart Gold, you'll have to breed them. Get a female Pikachu and either any male Pokemon from the Ground or Fairy Egg group or a ditto and leave them alone together in the day care center in Goldenrod City. Talk to the old man outside the daycare and he'll give you the egg. You can look up what Pokemon are in the Ground and Fairy Egg group on http://bulbapedia.bulbagarden.net/wiki/Main_Page .
you get a baby ditto
When you get to Cherrygrove City for the first time the old man will give the running shoes to you after you run around with him. He'll also give you the map card when u try to leave cherry grove city.