It is luck. There is no way to influence wild Pokemon to stay at Poke Pelago and join you, only encourage them to visit more frequently.I find trying to make Pokemon at the Pokepelago stay more annoying then the linear storyline, seems more luck then choice.
Then IF Poke Rides are a thing in the gen 8 games, (knowing Game Freak it seems unlikely and we'll be back to HMs) make those work like how HMs in the older games did. Some Tauros rocks here, a bit of Mudsdale terrain there, and only give the player access to the rides that can clear the obstacle once they should be ready to handle what lies beyond it. (clearing a trial, beating a gym, etc.)Bw2 roadblocks are bad because it's not you affecting the world. Every place you're blocked from has an arbitrary reason, dancers are worst but by no means the only dumb roadblock. It's not a coincidence that we didn't have bad roadblocks in early games because those were HMs. That's how they kept you from movoing on, and because progression was tied to gyms it felt like a natural way of opening up areas. Since BW they've slowly been phazing HMs out in favor of "my stoutland is arbitrarily standing here", and that's why this is becoming a problem.
But no bad roadblocks in the early games, you say? "Hey! Have you checked out the Pewter Gym? I'll show you the way!" "I can't let you go through here. I sure am thirsty, though..." "Hey kid! How about you buy a Rage Candy Bar? Mahogany Town's local specialty! Not letting you past even if you do, though!" "The Slowpoke Well is dangerous, so I'm standing watch. Aren't I a good Samaritan?" "Hey, the Wailmer are doing really important training here in the bay." (even if it's a Team Magma grunt) THE LINE OF TEAM MAGMA/AQUA GRUNTS BEFORE THE TRICK HOUSE.
Point is, bad roadblocks have been around since the beginning. Gen 7's roadblocks are more annoying because they don't just push the character back a step or so, but typically have to make the screen fade to black and then come back to your character being a step or so away from the obstacle.