If you develop cheats, it's a challenging problem that you can make a good bit of money if you are successful. As for the users, some do it to win money in competitions, some just like to play on god-mode. It's definitely more prevalent in free games since there's no financial disincentive when you get banned. There are also other ways to cheat that aren't actually cheating, like smurfing where a good player just makes new accounts to play against low level players or intentionally loses higher level games to bring them back down to low-level games.