Diablo II: Resurrected is the best Blizzard-game-remaster when it comes to technology innovation. I mean, really? A 3D layer on top of the old game’s code and graphics. As Rob Galleriani responded to my question during the BlizzConline D2R Press Q&A:
Blizzplanet (Tomas Hernandez): What kind of technologies or tools were used to superimpose 3D over the old 2D sprite engine?
Gallerani: Magic! No. Basically, what it is… the game has the 2D sprites running underneath. It’s actually always running. At the press of a button, you can flip over to it (toogle) and you’ll see them.
We have a 3D engine on top that is being told what to do by those sprites; and so in a modern game, usually you have like 3D collision, and… Oh, you know, there’s an attack sphere on a sword, and when the attack sphere hits a vulnerabilities around a monster and like that’s how it works.
That’s not how ours works. The only reason for our visual engine is to run things that are visuals, right? So there’s a little bit of geometry and collision because of clutting or if a monster’s bones get scattered on the ground, like the bone bounces off the ground, but all of the logic is it’s pretty much being run by that sprite engine.
And so that’s pretty much what the purpose of that engine is. It is a visual only engine. It’s almost like a puppet, and the original game is the puppeteer.
The game looks beautiful, detailed, and the console controller support for Windows 10 PC truly makes the game shine. This game feels like it was always meant to be played with a console controller. I haven’t had this much fun since Diablo Immortal. You can tell by the many hours I have already put into Diablo II: Resurrected.
Before I knew it, I have already played 6 Classes. All of them currently beat Duriel in Normal difficulty. Some have defeated Diablo (Paladin, Druid, and Amazon). The Sorceress is currently in Harrogath, a few hours away from attempting a Baal (Hell difficulty) kill.
In early 2000s, I managed to kill Baal in Normal difficulty, but then I found myself in a roadblock in Nightmare difficulty, dying and dying, unable to move forward. I had no idea what the best gear for me was, obviously. Or what the correct build for my character should be. Thus, I gave up and stopped playing Diablo II: Lord of Destruction.
Now we have YouTube, Maxroll.gg, Wikis, Reddit, and other resources. It has made my Diablo II experience so much worthwhile and fun.
However, as good as the remaster is, it has come to a very disappointing caveat.
What went wrong with Diablo II: Resurrected
Several months ago, I speculated on a Diablo II remaster that could be done using a new engine. Vicarious Visions engine: Alchemy. The original creators of Diablo had revealed at ExileCon 2018 that the Diablo II source code was fatally corrupted and a lot of assets were lost.
I seriously hoped that under the hands of Vicarious Visions, Diablo II could be rebuilt in a new engine — without the fancy old game engine in the background. However, Vicarious Visions opted to keep the old Diablo II engine and code in the background.
This was a terrible, terrible design decision.
I understand the team leadership wanted to preserve what the original game was. I understand the risk of things feeling different. But the price we are now paying, for that poor decision, is far greater.
One month in, we have had several login issues, disconnections, progress lost, and while there are plans to fix these problems, I can’t but feel these are just bandaid fixes, instead of a major surgery to truly solve the problem.
You can read the full response to the D2R server outages.
Transparency is good. But it is not going to erase the fact that the design decision to keep the old engine was a major screw up. And we still don’t know what will happen in the future after they finally implement the solution they are working on at the moment.
To me, Diablo II: Resurrected should have been made in a brand-new engine from scratch. Taking a few years to make the game the best it could possibly be for modern-age systems.
The old engine was designed for early 2000s systems taking in mind that era’s limitations: server capacity, database-wise.
As the server outage response post says: “In 2001, there wasn’t nearly as much content on the internet around how to play Diablo II “correctly” (Baal runs for XP, Pindleskin/Ancient Sewers/etc for magic find, etc). Today, however, a new player can look up any number of amazing content creators who can teach them how to play the game in different ways, many of them including lots of database load in the form of creating, loading, and destroying games in quick succession. Though we did foresee this — with players making fresh characters on fresh servers, working hard to get their magic-finding items–we vastly underestimated the scope we derived from beta testing.”
So here we are. Keeping the old code because the team leader was too worried about a new engine not capturing the essence of Diablo II; versus keeping the ancient engine and code and now causing a bottleneck in the database. A bad decision.
I wouldn’t be surprised if people want a refund. We already experienced Warcraft III: Reforge. What we are experiencing now is a bit different, but the bottomline is we have had a truly bad experience trying to play the game in the mornings, and not be able to until later around noon or past noon.
Diablo II: Resurrected is great when you are playing it. That has been settled. But as more people plays the game, and the database bottlenecks intensify, I don’t know whether the bandaid solutions will hold enough for the players to stick around. As I am writing this opinion piece, I got slapped at 9am EST with a queue popup placing me at 141. Something that is usually common in Blizzard games when a World of Warcraft expansion launches.
We’ll have to trust that the plan to fix these login issues works out. Personally, I think we would have done much better creating a new engine from scratch without the old source code and old engine underneath. It gives the wrong kind of impression about spitting out a remaster as fast as possible to cash in.