To BE REALLY, I have cheated in the past.
BUT, when excluding the good ol' Missingno in RB and some cloning by trading or that one box trick in GS, which all happened way back (and is not 3rd gen.), it's all only been cheats that I needed for some gimmick runs. Like, changing the starter or letting something spawn in the first route that shouldn't be there.
I really hate this kind of "do this to get a level 100 Arceus with Hyper Beam, et cetera, et cetera"-kind of cheats (or, to make this 3rd gen, let's say Rayquaza instead of Arceus), I always find tons of these before I find an actual Pokemon spawning modifier.
Seriously, cheating is only fun when it changes the gaming experience, evertything else is for people who can't complete the game without level 100 legendaries.