Pages

Saturday, August 13, 2011

Unrealized Reality of Diablo 3 -- Part 1

Players grumbling about the persistent online-only requirement for Diablo 3 are being encouraged to "just grab the crack" to play offline. It sounds simple enough, but they're assuming that D3 is similar to Starcraft 2. :)

Starcraft 2 is considered an "online" game, but that's only for authentication DRM. SC2 has all of the level design, maps, single player missions/campaigns, and assets built right into the game and it was designed to be playable offline. That can be cracked.

Diablo 3, however, is more like World of Warcraft but also a slightly different creature.

World of Warcraft and Diablo 3 both come with all media assets, maps, and levels built into the game. But, movement, player development and the characters themselves are controlled and stored on the server.

I think some gamers just haven't realized this. A "crack" will be possible eventually, but it will actually come in the form of an emulated server that will take weeks or even months to implement. Diablo 3 simply can't be played offline. Everything about your character is controlled by the server.

In World of Warcraft, all of the maps and levels are static (fixed). But in Diablo, the dungeons and levels are dynamically generated. It hasn't been mentioned in any interviews, but it's the SERVER that creates these random maps, random dungeons, random event scripting, mob locations, random NPCs, and vendor items for sale. The server might even control boss AI. All of this data is transferred to your client.

The game has been designed from the ground up for the server to generate all of the random content in the game.

We'll learn more soon enough (Diablo 3 beta invites next week), but because levels are randomly generated this makes botting, teleportation and speedhacks much more difficult. To conserve bandwidth, not all map data is going to be transferred to the client at once. I'm assuming that the map data will be transferred as you move throughout the world.. that is, the world is created around you (and cached) as you explore. If you jump too quickly to an area beyond an acceptable range, it makes teleportation and speedhacking very easy to detect. Imagine it like an invisible circle surrounding you.. it only caches land at its outer perimeter as you explore. The game code allows for a certain amount of flexibility, but if you go beyond its borders too quickly, it knows something is wrong. Movement tracking in D3 is more 2-dimensional too as opposed to World of Warcrafts 3-dimensional character location (making internal calculations and hack detection algorithms that much easier.)

(** Update: Here's an example of what happens when random map data created by the server isn't transferred quickly enough to the client. Local model editing for the purposes of world building or area changes, like in WOW, is not possible on live Diablo 3 servers because of this new system. However, the fastest way of getting an emulated server up-and-running is to simply create static maps and fixed weapon and item drops. It would be very easy to capture one randomly generated map, for example, from the live beta server and just use that as the template for the emulated server. So yeah.. the fastest way to "crack" the game is just to remove the random generation.)

It's easier to cheat in World of Warcraft because "explored land" is fixed and always there. Diablo 3 randomly generated terrain is more tricky though as you're now beginning to realize. :)

It's actually quite brilliant for both hack detection, preventation of botting (which relies of pre programming pathing), and DRM. It ensures that everyone buys the game once they realize "it can't be hacked" at least in the beginning.

And, Blizzard is not going to share this information with anyone. Why? Because when the game comes out, no one will be able to create an offline crack for it. Everyone will assume it's uncrackable and not realize that an emulated server needs to be constructed first.

"Dude. This game is like uncrackable.. there hasn't been a crack for weeks now and everyone's been begging for one. I'm just gonna go buy it."

During the beta, however, some clever programmers will start building a server emulator.. so if Blizzard can roll out the retail very quickly, they can hit retail a long time before the first B.NET emulators hit. They also have legal precedent on their side to combat B.NET emulators.. remember BNETD? :)

This is a great form of DRM, since it's not "persistent online authentication style DRM" that can be cracked but more like WoW with server generated levels and maps. It will eliminate piracy, at least in the beginning, and generate even more sales than an offline capable (aka "crackable") Diablo 3.

If you step back and look at all this holistically, you'll see some connections happening here.

* Only the server generates random content and stores the character, so the game client must be connected at all times.
* In order to crack the game, a server emulator will be required.
* They don't want users to know this until it's too late (e.g. they bought the game, emulated server comes out months later).
* Blizzard already has legal backing to prevent the creation of a server emulator.
* Because terrain is randomly generated, it makes teleportation and speedhacking much more difficult. Botting is also more difficult since pathing changes with each game session.
* The online-only component allows Blizzard to implement paid auction houses, and because of their immense popularity they can create a new standard for other businesses. Not only for RMT, but also their online-only approach.
* Any single player game can be redesigned so that a server is required to transfer simple on-the-fly content.
* While other game developers will be "indebted" to Blizzard, this opens up more business opportunities for their new 3rd party RMT partner (PayPal?).
* This RMT scheme also makes the Titan MMO RMT surprises much easier to accept when it's finally announced. Titan RMT will be D3 RMT v2.0. If Titan were announced today, I think there would be a LOT of angry people. D3, though, will get their feet wet and ease them into this new business paradigm.

Blizzard has some really smart people working for them.