I think Blizz should focus on what they do best which is game development and just partner with a leader in bot prevention rather than rolling their own solution in-house.
There are many well-established bot prevention companies with long lists of Fortune 500 clients in the web / ecommerce space. They typically provide end-to-end solutions and provide an SDK that can be hooked into a customer’s software that records inputs and behavior. That input data is then sent to and processed by a heavier bot detection component or service which evaluates the input/behavior as bot or human. These systems are very accurate and their accuracy increases with the amount of data they are fed. They also use proven advanced AI, they are fast with evalutions often sub-second and in some cases with solutions sub-10ms, for example:
“Our bot prevention software makes comparisons with a massive in-memory pattern database, and uses a blend of AI and machine learning to decide in less than 2 milliseconds…”
So one nice thing with these real-time systems is the speed with which they operate. This could be a game-changer. For example, if Blizzard were to ban in waves months apart, botters could simply re-purchase. Banning infrequently may not be cost-prohibitive. But banning automatically with high confidence in an hour, as example, would be a game changer because it would then become very costly for botters.
And if Blizz used one of these systems, got comfortable with it, and assured themselves that detection rates had high confidence and a very low false-positive rate they might gradually just let the system ban automatically with an appeal process. Any time you involve staff in a manual review step as we know that will often kill your business process. So they could start with a process that has a manual step and wean themselves off of that as they gain confidence in the system. They might even get to a point where botters log in, start botting and within a few minutes they’re banned, with only an appeal process left as a resort.
As far as impacting game performance, they would certainly want to ensure there’s no noticeable impact to gameplay as that is the main concern - some of these systems have settings for frequency of input data collection and transfer. One interesting thing with a game is that it provides so much input data compared with other apps or web surfing - all of this additional data collected in-game tends to result in much better detection accuracy. Think of all those mouse and keyboard clicks
Also, because many of these systems have input/behavior profiles based on various bots in the ecommerce space, it’s likely Blizz would need to “train” the system and customize it. Some systems may also be better suited to Blizzard in terms of software stack compatibility.
Just a closing couple of points, I’ve read some comments here and there suggesting Blizzard already detects the vast majority of bots and simply isn’t efficient with manpower or their process is just too slow resulting in botters running for long periods of time. If that is the case, needless to say partnering with a leader in the field isn’t needed
I’ve also read that some think Blizzard purposefully keeps botting active to some degree just to make more money off of those game purchases. Or that they ban botters infrequently to make them spend money on new purchases but not so often as to cause them just to quit the game. Stuff like that.
My hope would just be that Blizzard is earnest in combatting bots and using a real-time AI-based solution might enable them to quickly ban botters with a high degree of accuracy.
EDIT #1
Take below info with a giant grain of salt as it may be completely inaccurate, this is from a Wowhead founder, source below as well:
"This is not a technical issue with Blizzard. This is a management decision to allow bots in the game. It is estimated that 20% of all WoW subscriptions are bots. This is due to interview material of large bot farmers who alone had 400k accounts, as well as extrapolating sales from the company that purchased Wowhead, Thottbot, etc.
For those not in the know, IGE purchased them, and they did $500 million a year in sales and were backed by Goldman Sachs, a company with 3 to 5 trillion USD in assets.
We know Blizzard purposefully allows bots because of one simple fact: 2 easy changes would decimate all bots, and Blizzard refuses to do so.
The top 3 bot softwares require LUA Unlockers to function. A LUA Unlocker gives any WoW client access to GM-level client APIs. These APIs are “unlocked” now and enable add-ons to be created to fully automate game play. Blizzard could easily remove these APIs from the client but refuses to do so.
Teleport hacking, used to farm minerals, instances, and raids, could be easily dealt with by monitoring excessive changes to player XYZ coordinates. Once detected, actions could be taken. Private servers do this simply and easily by database checks of character positioning changes. Blizzard refuses to implement this.
The above 2 changes are incredibly simple and low cost changes to implement. Blizzard refused to do so purposefully. They do so as these changes would cause a massive loss of revenue.
Instead, Blizzard has made pandering changes to give the appearance of caring. The instance lockout was strategically done to increase bot subscriptions and give a speaking point to make it seem as if they care.
Same with the multi boxing change. They stated it was to curb bots, yet zero bot softwares multibox. Instead, they all use LUA unlocked based automation."
Answering a question from a reply : “They could, but are those APIs really so essential to create a successful botting software?”
"Yes, they are absolutely critical. The top botting software products all use LUA unlockers. I would estimate 95%+ bots would immediately fail due to this one solution.
Teleport hacking definitely still works.
I know it sounds shocking that these 2 changes would remove all botting as we know it. It would. This is why these 2 changes have not occurred. The revenue decline for Blizzard would be massive."
Source: https://www.reddit.com/r/classicwow/comments/kx6uon/wowheads_founder_on_why_blizzard_wont_ban_bots/
EDIT #2
This is on Warden when it was first exposed by cybersecurity expert Greg Hoglund in 2005. This shows Blizzard has no problem with installing invasive and performance-affecting software on our PCs:
"I recently performed a rather long reversing session on a piece of software written by Blizzard Entertainment, yes—the ones who made Warcraft, and World of Warcraft (which has 4.5 million+ players now, apparently). This software is known as the ‘warden client’—it’s written like shellcode in that it’s position independent. It is downloaded on the fly from Blizzard’s servers, and it runs about every 15 seconds. It is one of the most interesting pieces of spyware to date, because it is designed only to verify compliance with a EULA/TOS. Here is what it does, about every 15 seconds, to about 4.5 million people (500,000 of which are logged on at any given time):
The warden dumps all the DLL’s using a ToolHelp API call. It reads information from every DLL loaded in the ‘world of warcraft’ executable process space. No big deal.
The warden then uses the GetWindowTextA function to read the window text in the titlebar of every window. These are windows that are not in the WoW process, but any program running on your computer. Now a Big Deal.
I watched the warden sniff down the email addresses of people I was communicating with on MSN, the URL of several websites that I had open at the time, and the names of all my running programs, including those that were minimized or in the toolbar. These strings can easily contain social security numbers or credit card numbers, for example, if I have Microsoft Excel or Quickbooks open w/ my personal finances at the time.
Once these strings are obtained, they are passed through a hashing function and compared against a list of ‘banning hashes’—if you match something in their list, I suspect you will get banned. For example, if you have a window titled ‘WoW!Inmate’—regardless of what that window really does, it could result in a ban. If you can’t believe it, make a dummy window that does nothing at all and name it this, then start WoW. It certainly will result in warden reporting you as a cheater. I really believe that reading these window titles violates privacy, considering window titles contain a lot of personal data. But, we already know Blizzard Entertainment is fierce from a legal perspective. Look at what they have done to people who tried to make BNetD, freecraft, or third-party WoW servers.
Next, warden opens every process running on your computer. When each program is opened, warden then calls ReadProcessMemory and reads a series of addresses—usually in the 0x0040xxxx or 0x0041xxxx range—this is the range that most executable programs on windows will place their code. Warden reads about 10–20 bytes for each test, and again hashes this and compares against a list of banning hashes. These tests are clearly designed to detect known 3rd party programs, such as wowglider and friends. Every process is read from in this way. I watched warden open my email program, and even my PGP key manager. Again, I feel this is a fairly severe violation of privacy, but what can you do? It would be very easy to devise a test where the warden clearly reads confidential or personal information without regard.
This behavior places the warden client squarely in the category of spyware. What is interesting about this is that it might be the first use of spyware to verify compliance with a EULA. I cannot imagine that such practices will be legal in the future, but right now in terms of law, this is the wild wild west. You can’t blame Blizz for trying, as well as any other company, but this practice will have to stop if we have any hope of privacy. Agree w/ botting or game cheaters or not, this is a much larger issue called ‘privacy’ and Blizz has no right to be opening my excel or PGP programs, for whatever reason."