The best way to circumvent grinding, IMO, is to make the opponents scale with your level. That way, you get to maintain the feeling of progression due to your own work, rather than simply saying, "Okay, you made it here, all your pokemon are this level now". At the same time, scaling opponent...