For Nintendo, Game Freak, and Pokémon fans who have been around awhile, the games tend to get boring and repetitive after your second or third playthrough, and the basic Pokémon you encounter early on can get boring to have in your party. I mean, once you catch one normal/flying type bird you’ve pretty much caught them all, am I right? But you need those early Pokémon for around 20% of the game, and then training up the late game cool Pokémon (ex: Dratini, Denio, or Jangmo-o) can get boring; plus they don’t always feel like part of the team since they haven’t completed the same epic journey. It's like the old wizard characters in Fire Emblem.
The solution to this problem exists in the Pokemon community with the concept of randomizers. By playing a Pokemon game on an emulator, you can make use of an awesome piece of code to randomize the game. Depending on the generation and what emulator you use there are different options for how to randomize the game but in general the options it gives you are similar.
You are, of course, able to randomize the Pokémon, meaning that all the Pokémon from the starters to the legendaries could be completely random. Some have options to decide which ones you want to be random and how so. For example, a route may have random Pokémon that may include or exclude legendaries depending on your choice when you randomized the save. Most randomizers also give you the chance to randomize item pickups, TM’s, move sets, move types, move damage or effects, and even Pokémon stat blocks.
With the large variety of randomizer options available, it is incredibly easy to have wildly different types of runs and Pokémon games! For example, you may wish to have a run where the game is like normal except all the Pokémon have their base stat blocks completely randomized based on their normal total point value. Say a Glalie normally has a total of 480 points with 80 in each stat; in this run, it may have a base speed of 200 and everything else hovering around 30. Or you may have a run where you randomize all the items, TM’s, and the Pokémon so you can have an incredibly unique party from the very start of the game.
Where randomizers really shine is when they are combined with nuzlocke runs. The pure chaos and excitement that comes from a randomized nuzlocke bring back the tension and variety to Pokémon games you’ve played hundreds of times in the past. It’s never dull when Youngster Joey throws out God (Arceus) to fight you on Route 1. One of the best parts of a randomizer nuzlocke is the headcanon that comes from the story of your playthrough. I’ll never forget the first time I lost a run to an exploding Region the first Route killing my starter, it may have been the first time but it certainly wasn’t the last. All in all, a randomizer is a great way for old players to bring new life into old favorite Pokémon games that have been played so many times you can hum the battle music for each gym leader by heart.