This game is insanely frustrating at times.
It looks like pokemon. It works like pokemon. But it fucks you over in ways Pokemon never would.
The PvE is about the same as regular pokemon, although I definitely think the EXP does not scale properly, so it takes about 25% more grinding to level up your pokemon to be viable. That just is what it is.
The massive problem is the fucking trainer battles. Not the gym leaders, who you know are there: no, I'm talking about "ok, I just got my main pokemon down to about 15 HP, I've leveled up this secondary mon to ~10 or so, as I still haven't beaten Brock, now is a good time to go back to the pokemon center". You leave the screen, and get into a random battle with a Team Rocket member with LEVEL 30 POKEMON. In the fucking starting areas, haven't even hit Mt. Moon yet. Sometimes, as a bonus "fuck you", there will be TWO trainer pokemon fighting you at once, and you only have one pokemon out on the field. You don't see these trainers coming, you have no way to prepare, you have no way to avoid them, and you have absolutely no recourse once they've attacked you. You just have to either reload your save (get used to saving A LOT), or take the fucking L and lose half of the money you've scrimped and saved for at that point in the game.
It should be a lot more fun than it is. Honestly, Pokemon is a winning formula and since the game looks and plays like it, it's still fun. But to have 10 minutes of grinding wiped out by the long hard cock of RNG is just fucking OBNOXIOUS beyond belief. Of course you can just scroll up and save scum and redo shit, but that's just not great game design.
So to the dev, I make these humble requests: 1) Improve leveling a little bit; 2) give us a WARNING at least that we're about to be attacked, or give us some way of avoiding the trainer battles, or at least 3) match those random battles to the average player pokemon level so we stand a chance instead of just getting fuckin mollywhopped with zero recourse.