South of Veilstone City, you will find Route 214, which has an entrance to the Ruin Maniac Cave.
Explore the Route
To the south, you can battle Psychic Abigail, who has a level 22 Gastly, a level 23 Misdreavus, and a level 24 Kadabra. You get 1056 Pokédollars for winning.
Southwest of there, you will find the entrance to Ruin Maniac Cave. You can go in and talk to the person there to be challenged to a race to catch an Unown. There is a TM28 Dig north of the Ruin Maniac.
Back outside, if you go east from the Psychic near the Veilstone City gate, you can use the Old Rod in the water to catch Magikarp or the Good Rod to catch Magikarp and Goldeen.
There are some berry trees to the east.
If you go down the eastern path from there, you find an X Sp. Def.
Go back the way you came, then go south down either the middle or the left paths.
In the grass, you can catch Geodude, Girafarig, Graveler, Kricketune, Ponyta, Stunky (Brilliant Diamond only), and Sudowoodo (Shining Pearl only).
To the south, you can battle PI Carlos, who has three level 23 Goldeens. You get 3036 Pokédollars for winning.
To the south, you can battle Collector Brady, who has a level 22 Ponyta, a level 20 Ponyta, and a level 24 Ponyta. You get 1824 Pokédollars for winning.
To the south, you can battle Beauty Devon, who has a level 25 Wormadam. You get 1700 Pokédollars for winning.
Northeast of there, you can find a hidden jar of Honey on the trees at the end of the path.
To the south, you can battle Psychic Mitchell, who has a level 23 Haunter and a level 23 Kadabra. You get 1012 Pokédollars for winning.
West of there, you can find a hidden Heart Scale.
To the southeast, you can battle Collector Douglas, who has a level 20 Roselia, a level 22 Roselia, and a level 24 Roselia. You get 1824 Pokédollars for winning.
Northwest of there, you can get a Big Root.
South of there, you find a Honey tree.
West of the Honey Tree, there is a Max Potion.
North of there, you can go up the stairs and follow the path, where you can battle Ruin Maniac Hunter, who has a level 26 Shieldon. You get 1456 Pokédollars for winning.
Keep going north, then go down the southern stairs and you can battle Collector Jamal, who has two level 21 Buizels and a level 24 Buizel. You get 1824 Pokédollars for winning.
Southeast of the collector, there is a hidden Tiny Mushroom.
Go north from the collector and you can battle Ruin Maniac Bryan, who has a level 24 Cranidos, a level 22 Geodude, and a level 23 Bronzor. You get 1380 Pokédollars for winning.
From here, you can either go north back to Veilstone City, or you can go south to Valor Lakefront.