no one seemed to be discussing it here, or maybe it's just old news and i didn't look long enough, but i recently stumbled upon this cool program called the universal pokemon game randomizer. it's exactly what it sounds like it is! you boot up a rom with whatever emulator you prefer and... well, a quote from the actual website can probably explain it better than i can!

the program can randomize:

The Starter Pokemon choices.The Wild Pokemon you encounter in grass, caves and other places.The Pokemon that Trainers use against you.The base stats which define the potential of each Pokemon.The elemental types of each Pokemon.The abilities of each Pokemon, in games where they exist.The moves that Pokemon learn by gaining levels.The contents of each TM which can be taught to Pokemon to give them additional moves (HM moves are not changed to make sure you can still beat the game)The ability of each Pokemon to learn each TM or HM move.The "static" Pokemon which you either are given, fight on the overworld, or are sold.The names of trainers & the classes they belong in.The moves taught by move tutors, for games within which they are significant enough.

it's a really nifty toy, and i have been having a lot of fun with it playing fire red. here are a few screenshots i have from the first few minutes of my experience with the randomizer:

here's my team, and i haven't even gone through mt. moon yet! i caught them all in the tall grass.

it looks cool, right? so here is the link to the website. the download and installation information is all there. i hope you guys have as much fun with it as i have been!