//=time() ?>
Personally i think the best middle ground would be something similar to the ride system. Except it allows you to use register pokemon you own to replicate the activity. It wouldn't require them be in your party but whenever you need to surf or climb or ride it can be your own.
I feel like this connection between a player and their Pokemon is one of the most important aspects to the feel of the games. It's why things like following Pokemon and Pokemon-Amie were popular. I feel like confining the Pokemon to just battles and mini-games hurts that appeal.
However from a narrative perspective it feels less like you're using Pokemon's skill's to their best and more that you just have one super special super Pokemon. Same thing happened in ORAS where you are GIVEN latias/latios and only they had access to a special version of fly.