People have been datamining Overwatch for just about as long as any slices of code have existed outside of Blizzard HQ. In the past couple of months it’s become a lot easier, with a program called Overtools making it so just about anyone – with a bit of patience – can dive into the 1s and 0s and dig out future plans, unannounced features and more. In the latest PTR patch, a set of data changes has made it so the vast majority of Overtools will need to be rewritten. Blizzard, it seems, are cracking down.
For a full rundown of the contents of Overwatch patch 1.14, see our dedicated article.
“Overwatch stores files as 8-byte numbers, as opposed to file names or file hashes,” explains dynaomi, creator of Overtools. “In 1.10 Blizzard started to tackle dataminers more aggressively as they introduced a new encrypted file that contained all these 8-byte numbers. Every patch changed the encryption ever so slightly so that it delayed immediate results by a few hours as a community member (who cleverly goes by the name of ‘Sombra’) provides the updated decryption methods.”
This is why Reddit, and various sites such as ourselves, would often report new information the morning after a patch release or PTR deploy. Generally it would take that long for new info to filter through from folks like dynaomi and her compatriots. Things have changed.
“Overwatch is periodically rolling out new format changes, some help us, some don’t. Back between 1.4 and 1.7, they rolled out a new model and effect format which was extremely helpful as it gave a better indication as to what the data means. Prior to this it was virtually impossible to determine how effects worked. When you’re viewing these files in a hex editor you more often than not just have a list of bytes, unlabeled so you have to do some clever guesswork to determine what it means. The model format rework made it a lot easier to determine what was used for what.
“Then 1.14 happened, which changed a file format integral to game metadata and logic, ‘Structured Data.’ This change has some benefits to us too. As I mentioned with the model rework, sometimes they add indicators as to what things are. In this case they added unique 4-byte numbers to each value that lets us cross-identify similarly named values more easily but everything else changed as well.”
The model rework was a situation where Overtools could be adapted to the new formats fairly quickly and easily. Here, dynaomi says “we will have to rewrite everything relating to Structured Data for patch 1.14 which is about 90% of all code written. While the two versions [aren’t] completely different, there are big enough changes that would make it easier to just restart.”
As dynaomi bemoaned on Twitter, that’s a year and a half of hard graft down the pan. Why now, and why like this?
“I think the fact that I made Overtools faster and more and more accessible as time went on, eventually Youtubers and Reddit picked up on it,” she says. “With its rising popularity and ease Blizzard would be pressed to do something about it. I’ve had a few sleepless nights about something I saw in the data and hoping nobody would post it on a billboard. For a while I feared Blizzard [would] just DMCA the project which would be fully within their right. In the end they went with this, which I appreciate for internet history sake, but it’s still 16 months of work undone.”
Datamining wasn’t the sole target of the changes. Dynaomi points out that the format changes will help with optimisation a little, because Blizzard’s systems don’t allow for “differential patching” – meaning you have to redownload an entire file if any part of it is changed, leading to long download times but lower strain on actually installing them. We asked Blizzard to clarify this, but they’re yet to respond, although one of their software engineers talked about some of the changes on Twitter.
No regrets from her though. “I started this project off because it’s become a hobby to break open the games I love to play, and Overwatch was a very beautifully designed and elaborate system where everything had a purpose, which says something considering I’ve been doing this for almost a decade.
“In the end, I don’t blame them. If it’s to squash dataminers or to just optimize the game, it was bound to happen eventually.”