A hack of Pokémon: Emerald Version that randomizes items and procedurally generates routes and encounters, including gym leaders and their Pokémon teams. There are two versions: Vanilla and EX, of which the latter adds modern updates like battle items, abilities, the Fairy type (which officially debuted in Gen 5), Physical/Special split, and more.
After failing a run, or finishing it by beating the Champion, you can buy permanent items and catch new “starter” Pokémon from the hub area to strengthen your team for the next run.