How to Find Heracross in "Pokemon Crystal"by Mitch Reid ; Updated September 22, 2017
While you can find most wild Pokemon scampering through the grass, Heracross is an exception. The beetle Pokemon hides in trees, so the only way to find it is by jostling it from the branches. With high attack power and a unique type combination, Heracross can be a useful addition to your Pokemon team.
Travel to the Ilex Forest, west of Azalea Town.
Navigate to the center of the forest. A man will give you TM02: Headbutt.
Teach Headbutt to one of your Pokemon. Most Fighting-type Pokemon are able to learn this move.
Go to Routes 29 to 33, or Routes 42 to 46.
Use Headbutt on any small trees you see. A Pokemon will fall from the tree.
Repeat Step 5 until you find a Heracross. This may take a few tries; the beetle Pokemon is rare. Once you find Heracross, capture it like you would any other Pokemon.
If you defeat Heracross, you will need to continue headbutting trees until another one appears.