Headbutting trees was a unique way of finding Pokémon in Gold and Silver. It is arguably more entertaining and generally better than the Honey Tree concept from Diamond/Pearl/Platinum.
Headbutt makes a welcome return in HeartGold/SoulSilver. There 27 total Pokémon that can be encountered when using Headbutt. All of the Pokémon that could be found in this way in GSC are still found in trees in HGSS and some from Hoenn and Sinnoh to boot.
It is said, however, that it has had a minor mechanic tweak. That being that a failed headbutting, one which produces no Pokémon, will render that tree forever bearen. Whether this is true, and whether or not it applies to the specific trees which only yield certain Pokémon is still being investigated.
There is a mass amount of routes and locations shared by the Pokémon listed in the table below. As such, grouping them based on location makes a lot of sense to reduce redundancy. As such, the two major groups' locations are being provided prior to the table. Use the location provided with a Pokémon to determine where it can be found.
Some Pokémon, namely a few those available only after recieving the National Dex, require being bumped out of a specific tree. A specific location has been provided for those Pokémon and below the table in-game screenshots of the specific trees will be provided.
Lowland - Routes: 26, 27, 29, 30, 31, 32, 34, 35, 36, 37, 38, 43 and 39. Azalea Town, Ilex Forest and Lake of Rage.
Highland - Routes: 33, 42, 44, 45 and 46.
Specific Headbutt Locations
Five Pokémon in particular are located only in specific trees throughout Johto and Kanto. These specific locations, and how to get to them are depicted in screenshots, with directions below.