you should start a new game, then take on this challenge:
catch EVERY SINGLE POKEMON and RAISE EACH :)
that's what I do in my game:
I catch every pokemon possible from the lowest stage of evolution, then train each until each evolves. starting at lv 20, every 5 levels I can decide if I want to stop raising the pokemon (if it's already evolved) and put them in a "done" box in my pc.
I have 6 boxes in my pc (not the done ones), separated by types, and I take one from each box and that's my party. I raise each pokemon at the same time (i.e. all the pokemon in my pc are lv 18, etc. when a pokemon in my party grows I replace it with a lower leveled one in the corresponding box).
it's a challenge, and I've played for almost 200 hours on my game, being no further than blackthorn city and the majority of my pokemon at lv 23-ish, but it's really fun! your party pokemon don't get old and boring from sitting there all the time; you get a variety. plus you get to see the pokemon you don't normally see. plus it's a challange and you'll feel really good when you complete it! something to brag about...
** btw for the version exclusives, etc, I trade for them by catching say an extra growlithe to trade for a vulpix. but I keep my original growlithe.
**** another note: every 5 levels I drop a few pokemon from each box. by lv 40-50 I plan to have 6 strong, solid, really good pokemon in each box. I'll still get the variety and then I'll raise them all to lv 100!
EDIT
one more thing: it feels really good when you have all 6 starters from the first 2 gens, and all 5 eeveelutions at your disposal. and having have competed in the pokeathlon so many times to get evolution stones. and having have participated in the bug catching contest a bunch of times to get all the pokemon and because it's an easy way to raise an individual pokemon. it feels really good, you'll never want to restart your game xD