Instructions
Go to the Safari Zone, found off Route 121 near Mt. Pyre.
Pay $500 for 30 Safari Balls and enter the Safari Zone. Go to the southwest or southeast quadrant and start walking around in tall grass.
Throw a Safari Ball when a Pikachu appears. Ignore the "Move Closer" or "Poké Block" options and continue to throw Safari Balls until you capture the Pikachu.
Capture as many Pikachus as you can within the limit. Note that you have 30 Safari Balls and 500 steps; you'll be forced to leave after either runs out. Note also that you only have a five percent chance of encountering Pikachu, so it may take you several attempts.
Go to the PC and choose "Bill's PC" to inspect the Pikachus you captured. You have a five percent chance that any given Pikachu will be holding a light ball. Repeat the entire process until you capture a Pikachu with a light ball.