If admins allow cheating - people that want to play would leave the server
If live in a non-metro area, you probably have a handful of server your latency allows you to play on - getting banned would be a big suck
Now you just click "play game" and you get match with some strangers you might never play ever again with. Financially, those privately hosted servers no longer make economical sense for game publishers.
With competitive matchmaking cheaters can hold players hostage until the end of the match, as leaving incurs penalties and cooldowns that temporarily ban you from playing.
(in theory, GTA online has had / still has huge problems with bots and cheats but still earns the publisher hundreds of millions a year)
Personally I find both unacceptable: I won't play a game that requires me to install a rootkit, and I won't play a game where cheaters and bots run rampant, ruining the fun for everyone.
So hopefully there's a solution to this that doesn't require a rootkit.
The solution is to build trusted spaces again IMO.
For video games assume that each user is trusted by default. As soon as they violate that trust by cheating, they are banned permanently for that copy of the game. If they want to be trusted again they have to buy another copy of the game to get another license. Make it hard to become a member of a trusted community and easy to be kicked out of a trusted community for violating trust. This would eliminate the vast majority of cheating and bots because most gamers are kids and having to buy a fresh copy will hit hard. If they abuse it enough, make them jump through more hoops like ip bans and computer fingerprint bans.
It’s only a problem when you game with strangers.
Half the battle is detection though. If you don't detect cheaters quick enough they ruin enough games that genuine players start getting frustrated and leave. Anti cheats help with this detection.
Probably every anti cheat idea you can think of, in terms of detection, prevention and punishment, has probably already been tried by a large online multiplayer game. It is an extremely difficult problem to solve, a constant arms race.
High level chess players (GMs) can win with just a few bits of information transmitted to them by a cheating accomplice (a cough if it's a critical position to spend extra time on, etc). Similarly, high level gamers only need the slightest of edges to win, and therefore only need the slightest of cheating.
That's why I think trusted user bases are the way to go. My initial ideas were naive, but I think the core idea is solid. If you had to pay $1000 to enter a "trusted club" which uses your hardware fingerprint, and all of your online interactions in a game were guaranteed to be with other people who paid $1000 to be in the club, would that not be a large deterrent to cheating?
It would also massively reduce the number of players. Competitive multiplayer games rely on large active playerbases for fast and fair matchmaking. That's why free to play has become the dominant model for these games. If you have to pay $1000 to play one of these games, they have no chance vs. the competition.
Obviously you can't completely solve this problem, but you can minimize it as much as possible.
Also these sorts of "trusted clubs" do exist for certain games (e.g. FaceIt for CounterStrike) but ultimately it still just relies on anti-cheat to establish that trust.
If you create a new account, you'll be peered with other new accounts (low trust). Still possible to cheat, but the cost is very high (years of effort to get accepted in the best trust clubs)