Going a bit sidetrack on this topic:
So, basically, for the earliest games, the changes were mainly which pokémon you'd find in each, but ever since Gen III (Ruby and Sapphire) it has also added small changes by giving the legendaries different, often antagonizing, roles. So you can see themes like [Land vs. Sea]; [Truth vs. Ideals]; [Life vs Death]; [Past vs. Future] in their mythology. Ruby and Sapphire (and its remakes) were probably the only ones that really made major story changes, going to the point of changing entirely which villain team you were facing against because of that duality.
But Ruby/Sapphire aside, storywise most of the remaining ones are still mainly cosmetic, with only minor changes in a couple areas and dialogues. That doesn't use their potential very well, but it still exists as a way of giving more personality to each version, differentiating them a bit further.