I "cheat" constantly, and contentedly, though only on a limited basis.
The only online battling I do is on Showdown, so that's not an issue either way. All my "cheating" is in my own game.
I used to spend hours and hours hunting for just the right pokemon for my team, and since I tend to use a lot of pokemon in a single playthrough (rotating through lots of them to make teams for whatever I'm doing at that moment instead of just using one fixed team), that meant that I was spending all that time hunting for just the right one for a couple of dozen different pokemon. I'd find a spot where I could catch one I wanted, save at the edge of it, then go catch one. I'd have an empty slot in my party so that it would show up immediately, then I'd check its ability and nature and calculate its stats and if it wasn't what I wanted, I'd reset and do it again. And again. And again. And again. For hours and hours and hours at a time.
No more. I just can't be bothered to do that any more. Now I find something I want and I catch one, then I import the save to pokegen and give it the ability and nature I want, and randomize the stats until I get something decent - the sort of stats that I would've kept searching for anyway.
None of them are really overpowered - for that, I might as well not bother playing the games at all. If the ability matters, then I'd wait for my preference anyway, and the same with nature, so the pokemon I use now aren't any better in that respect than they ever were - I just get them with much less fuss and bother. For stats, I shoot for something in the high 20s or so for the important stats (main attacking stat, speed if it's pertinent, HP for a wall or a tank - that sort of thing), nothing less than about 12 for other useful stats and whatever for the ones they won't use anyway. Again, that's what I would've ended up with after all the time I'd waste before, so the only thing that's changed is that I don't waste the time.
Beyond that though... I can't quite bring myself to do much. I hack in Shards in BW2, for pretty much the same reason - I could get all I need by spending lots of hours and lots of max repels chasing down dust swirls in caves, but it's just easier to hack them in. I went back and replayed Diamond a while back and found myself hacking in TMs, since I've been totally spoiled by reusable TMs and can't go back to single use ones now. And... that's about it. I still breed for egg moves and level babies up from scratch, I still only catch what's actually available, they're still only shiny if they're actually shiny in-game, I still EV train anything that's going to need it, none of them have perfect stats or any of that stuff. I just play the games pretty much the same way I've always played them, except I don't waste anywhere near as much time hunting for just the right pokemon and spend more time just playing.