Jump to content
Sign in to follow this  

Diablo 2: Resurrected: the Story So Far

Recommended Posts


Blizzard have posted a huge lore article covering the entire Diablo world story up to the start of the events of Diablo 2, going into details on the events of D1, the beginning of the world, Sanctuary and a lot more. It's a great read, even if you already know the story! 

Blizzard LogoThe Story (Source)

The Lord of Terror returns in Diablo II: Resurrected, bringing with him millennia of cosmic baggage spanning numerous realms, books, and games. To help you better understand the state of Sanctuary at the beginning of your new adventure, we put together a brief timeline of the tug-of-war between the High Heavens and the Burning Hells and the chaotic events sparked by this strife.

Read on to relive the history of Diablo before you embark upon your journey in Diablo II: Resurrected.


The Eternal Conflict

Since the Beginning, light and darkness engaged in an eternal war called the Eternal Conflict, each vying for the power to hold sway over all creation. On one side of this Conflict were the angels of the High Heavens, warriors led by the Angiris Council of Archangels who believed that only absolute order could govern the realms; on the other, the demonic denizens of the Burning Hells led by the Prime Evils, Diablo, Baal, and Mephisto, who claimed that darkness and chaos were at the center of all things.

Yet, despite the length and sheer magnitude of the battles between these factions, neither could gain dominion over the other for long. The archangel Inarius, exhausted by the endless conflict between the Heavens and Hells, sought to create a peaceful world devoid of the strife that had consumed both realms for so long. To this end, he joined forces with the demoness Lilith, Daughter of Hatred, and gathered renegade angels and demons sympathetic to their cause to create the mortal realm of Sanctuary. Inarius utilized the Worldstone, a powerful artifact that had long been fought over by both factions, to conceal Sanctuary from the prying eyes of Heaven and Hell.

The dissident angels and demons of Sanctuary gave birth to the forebears of humanity: the nephalem. When it was found that the power of these entities could eclipse that of their progenitors, some were concerned that their strength might draw the attention of the High Heavens and Burning Hells. When Inarius left to contemplate this revelation in solitude, Lilith, fearing for the safety of her children, rampaged through Sanctuary and butchered every angel and demon residing in the realm. Inarius was forced to banish her to the Void and tampered with the Worldstone to curtail the power of the nephalem. Each generation grew weaker, their lifespans diminishing over time until they fully transformed into a race of mortals who possessed little knowledge of their forebears.


The Sin War

For a time, mankind led a peaceful existence in Sanctuary; but, as with all good things, such was not to last. The lords of the Burning Hells unearthed the mortal realm that had been hidden from them, enkindling the great Sin War. This struggle saw Inarius pitted against the forces of Hell, each attempting to subtly coerce and manipulate the humans to their respective sides. Both vied for control over mankind, the demons seeking to brandish the mortal denizens of Sanctuary as weapons in the Eternal Conflict, while Inarius sought to keep control of the perfect world he had created.

To influence humanity, the Prime Evils of the Burning Hells founded the Temple of the Triune. This cult was comprised of three branches devoted, unbeknownst to the mortals, to alter egos of the Prime Evils: Mefis, Dialon, and Bala. The Triune slowly and subtly seduced humanity to the side of sin, growing in number as the decades passed and the influence of the Prime Evils went unchecked. In an attempt to offset the Triune’s growing power, Inarius adopted the guise of the “Prophet” and created the Cathedral of Light to preach the tenets of the High Heavens.

The stalemate between light and dark continued in Sanctuary as it had in Heaven and Hell. Both the Triune and the Cathedral of Light spread their respective gospels throughout the lands and amassed swathes of believers until their game of chess was upset by the return of humanity’s First Mother: Lilith.

Lilith weakened the inhibitions put upon the Worldstone by Inarius, allowing the nephalem to regain their former powers. She then manipulated a farmer, Uldyssian ul-Diomed, into weaponizing his reawakened nephalem abilities. Uldyssian led his fellow nephalem in a revolt against the Triune and the Cathedral of Light, further manipulating the Worldstone to amplify the nephalem’s otherworldly powers and drawing the attention of the High Heavens to Sanctuary in doing so. A triplicate war broke out, ending only when Inarius banished Lilith to the Void once more and Uldyssian realized that the unchecked nephalem could spell doom for all of Sanctuary. He sacrificed himself to once more suppress the power of the Worldstone, divesting his fellow nephalem of their regained abilities in the process.

Following Uldyssian’s sacrifice, the Angiris Council and Mephisto convened to decide the fate of Sanctuary. Both sides of the Sin War came to an eventual agreement: in exchange for Inarius’s eternal imprisonment in the Burning Hells by Mephisto, Heaven and Hell would refrain from interfering in the affairs of Sanctuary and would instead allow humanity’s future generations to walk the paths of light or dark of their own unbiased accord. Thus, mankind’s memories of the Sin War and of the demons and angels that had once walked amongst them were erased, and the entire affair faded quietly into history.


The Dark Exile and the Horadrim

The agreement Mephisto had made with the Angiris Council drew the ire of the four Lesser Evils of the Burning Hells, who began to question the authority of the Prime Evils. They believed the three to be unfit to continue the fight against the High Heavens and began an uprising that consumed all of Hell. The Lesser Evils emerged victorious and exiled the Prime Evils to the mortal realm. Mephisto, Diablo, and Baal swept through Sanctuary, ravaging its eastern lands for decades and leaving immense suffering and chaos in their wake. Their presence was eventually noticed by Tyrael, the Archangel of Justice. To combat the Prime Evils, Tyrael formed the Horadrim, a faction of powerful mages who devoted themselves to the destruction of the demon lords. The Horadrim pursued the three throughout Sanctuary, armed with soulstones fashioned out of the Worldstone’s shards by Tyrael that were capable of imprisoning the Prime Evils.

The Horadrim succeeded in capturing two of the three demon lords within the Soulstones and locked them away. After a lengthy pursuit, Jered Cain and his fellow Horadrim sealed the last of the three Evils, Diablo, and hid his soulstone beneath Tristram Cathedral. With the threat of the Prime Evils no longer looming over the land and the duty entrusted to them by Tyrael accomplished, the Horadrim slowly faded away. Once more, the people of Sanctuary knew peace.


The Darkening of Tristram

Years later, a well-liked monarch named Leoric came to Tristram and named the town his seat of power. Unbeknownst to Leoric, the soulstone that had been sealed beneath the Cathedral long ago had become corrupted by Diablo’s power over time. Leoric’s adviser, the Archbishop Lazarus, found himself drawn to the soulstone and the energy emanating from it. Diablo corrupted Lazarus and compelled him to free the demon’s weakened spirit. To manifest himself once more, Diablo sought a mortal body to house his ephemeral soul; he tried, first, to possess Leoric, but was unable to fully dominate him, leaving the King a maddened and senseless husk of his former self.

Diablo turned, then, to Leoric’s son, Prince Albrecht. The demon forced Lazarus to embed the soulstone in Albrecht’s forehead, thereby allowing Diablo to seize control of the Prince’s body. Leoric, driven mad by Diablo’s failed possession, accused the people of Tristram of masterminding his son’s disappearance and began executing those he deemed guilty. Leoric’s knights were forced to slay their king, leaving Tristram with neither ruler nor heir to guide them through the encroaching darkness.

Lazarus took advantage of this uncertainty and united the people of Tristram to rescue Prince Albrecht, luring them into the catacombs beneath the Cathedral. Townsfolk rallied en masse, but the lies of Lazarus led them only to their gruesome deaths at the hands of the monstrous Butcher. Diablo, fed by these sacrifices, grew in power and began summoning demons to terrorize the countryside as he continued to regain his strength in preparation to free his brothers, Baal and Mephisto, from their own prisons.

From the darkness emerged an unlikely hero, one of many drawn to Tristram seeking to put an end to the plague of demons. He delved deep into the labyrinthine bowels of the Cathedral, slaughtering fiends and uncovering Diablo’s nefarious plot before coming face-to-face with the Prime Evil himself. The hero succeeded in besting Diablo but was forced to embed the soulstone within his own forehead to contain the Lord of Terror once more.


Evil Returns

Though the hero had prevailed over Diablo, the power of the soulstone overwhelmed him. A broken man who had been hollowed into little more than a vessel for Diablo, the hero took up the mantle of the Dark Wanderer and began journeying eastward.

Thus, in the wake of destruction, does the story of a humble new hero begin: your story. Embark, if you dare, upon a journey into the suffocating darkness of Sanctuary where you’ll unravel the mysteries of the Dark Wanderer and unearth the fates of the Prime Evils. . .

The Lord of Terror returns on September 23. Experience an epic story that unfolds across five distinct acts, raise hell as one of seven unique classes, and battle your way through hordes of hellish beasts and undead abominations to uncover the fate of the Prime Evils.

Pre-order Diablo II: Resurrected now to receive the Diablo II-themed “Heritage of Arreat” Barbarian transmog for Diablo III and prepare to face the fiends of Sanctuary when the gates of Hell open once more.

If you want to learn more about Diablo II: Resurrected, check out our website here, or follow our official Twitter @Diablo.

  • Like 1

Share this post

Link to post
Share on other sites
1 hour ago, SidonisAntares said:

Necessary since Lilith's return is the focus of D4

Yeah, Lilith's return is also a good way to delay return of Diablo in 4, which might occur much later, maybe in some expansion even. Could otherwise make him look somewhat cartoonish if he returns so soon, only to be defeated again.

Edited by Arcling
  • Like 1

Share this post

Link to post
Share on other sites
On 9/19/2021 at 1:06 AM, Arcling said:

Yeah, Lilith's return is also a good way to delay return of Diablo in 4, which might occur much later, maybe in some expansion even. Could otherwise make him look somewhat cartoonish if he returns so soon, only to be defeated again.

I'd call that consistent rather than cartoonish, considering the final boss of every (base) Diablo game has been Diablo. The expansions gave bosses like Na-krul, Baal and Malthael.

I'm expecting Lilith to either be the penultimate, or even not a boss at all, and Diablo would be coming back as the final boss of the base game. 

Diablo 4 can both have Lilith take center stage for the story and still have Diablo show up as the last boss.

Pure speculation, of course.

  • Like 1

Share this post

Link to post
Share on other sites
1 hour ago, MeOnIV said:

I'd call that consistent rather than cartoonish, considering the final boss of every (base) Diablo game has been Diablo. The expansions gave bosses like Na-krul, Baal and Malthael.

I'm expecting Lilith to either be the penultimate, or even not a boss at all, and Diablo would be coming back as the final boss of the base game. 

Diablo 4 can both have Lilith take center stage for the story and still have Diablo show up as the last boss.

Pure speculation, of course.

There's a lot of potential for this given how the storyline for D3 ended - Malthael defeated, the souls of the seven Evils seen falling away from the destroyed black soulstone in different directions, etc. Throw in the return of the Triune that was devoted to the three Prime Evils, who will be feverishly working to obtain compatible new hosts for their masters, and you've got a plot fulcrum between Lilith and the Prime Evils. Inarius is still out there, and I'm assuming the Cathedral of Light will make a return as well.

The three potential killers of Lilith are Mephisto for her betrayal of demonkind, Inarius for the betrayal of their love and their offspring the nephilim, and the adventurer because big bad.

Share this post

Link to post
Share on other sites
2 hours ago, MeOnIV said:

I'd call that consistent rather than cartoonish, considering the final boss of every (base) Diablo game has been Diablo. The expansions gave bosses like Na-krul, Baal and Malthael.

I'm expecting Lilith to either be the penultimate, or even not a boss at all, and Diablo would be coming back as the final boss of the base game. 

Possible, but there better be some build up to his return. Not something like when we don't see him anywhere, then suddenly he reappears and we kill him few minutes after his reintroduction. Sort of like Zoltun Kulle. Alternatively they could bring back some other Prime or Lesser Evils. Mephisto certainly fits given his past with Lilith. Who knows, maybe they could do a proper reintroduction of Azmodan at some point? Hopefully as something more than "haha, you killed my servants and destroyed my siege machines, but it doesn't matter!".

Btw, Na-Krul was from Hellfire, so he isn't canon. At least this one certainly won't return.

Edited by Arcling

Share this post

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Staff
      We have a new patch for D2R which should finally put a stop to the recent server issues plaguing the game, however it does introduce queues in high-traffic periods. The patch is currently live on PC and is coming next week on consoles.
      Patch 10.15 (Source)
      A new patch is now available for PC only.
      To share your feedback, please post in the Diablo II: Resurrected forum.
      To report a PC bug, visit our Bug Report forum.
      For troubleshooting assistance, visit our Technical Support forum.
      We have implemented a Login Queue for high traffic periods. This queue will pop up after the title screen when opening up the game. The queue will only appear during high traffic windows.
      Players will be shown a number on where they are in queue.
      Players will have the option of exiting the queue and playing offline immediately if they wish by hitting “Escape” on the queue prompt.
      We should note that the higher your queue number appears, the slower the number will refresh in the prompt. The number is still refreshing in the background, so we do not recommend leaving queue as this will create further delays to you entering the game during these high traffic windows.
      We expect a patch in the next week that will implement the same queue functionality to consoles.
      This in follow-up to our post yesterday regarding how we plan on mitigating some of our login issues players have been experiencing during high traffic windows. You can read more of that post here.
    • By Staff
      Diablo 2 servers have gone through some connection issues lately. Blizzard clarified their causes and how the Diablo 2 team works on long-term fixes for the issues.
      Hello, everyone.
      Since the launch of Diablo II: Resurrected, we have been experiencing multiple server issues, and we wanted to provide some transparency around what is causing these issues and the steps we have taken so far to address them. We also want to give you some insight into how we’re moving forward.
      tl;dr: Our server outages have not been caused by a singular issue; we are solving each problem as they arise, with both mitigating solves and longer-term architectural changes. A small number of players have experienced character progression loss–moving forward, any loss due to a server crash should be limited to several minutes. This is not a complete solve to us, and we are continuing to work on this issue. Our team, with the help of others at Blizzard, are working to bring the game experience to a place that feels good for everyone.
      We’re going to get a little bit into the weeds here with some engineering specifics, but we hope that overall this helps you understand why these outages have been occurring and what we’ve been doing to address each instance, as well as how we’re investigating the overall root cause. Let’s start at the beginning.
      The problem(s) with the servers:
      Before we talk about the problems, we’ll briefly give you some context as to how our server databases work. First, there’s our global database, which exists as the single source of truth for all your character information and progress. As you can imagine, that’s a big task for one database, and wouldn’t cope on its own. So to alleviate load and latency on our global database, each region–NA, EU, and Asia–has individual databases that also store your character’s information and progress, and your region’s database will periodically write to the global one. Most of your in-game actions are performed against this regional database because it’s faster, and your character is “locked” there to maintain the individual character record integrity. The global database also has a back-up in case the main fails.
      With that in mind, to explain what’s been going on, we’ll be focusing on the downtimes experienced between Saturday October 9 to now.
      On Saturday morning Pacific time, we suffered a global outage due to a sudden, significant surge in traffic. This was a new threshold that our servers had not experienced at all, not even at launch. This was exacerbated by an update we had rolled out the previous day intended to enhance performance around game creation–these two factors combined overloaded our global database, causing it to time out. We decided to roll back that Friday update we’d previously deployed, hoping that would ease the load on the servers leading into Sunday while also giving us the space to investigate deeper into the root cause.
      On Sunday, though, it became clear what we’d done on Saturday wasn’t enough–we saw an even higher increase in traffic, causing us to hit another outage. Our game servers were observing the disconnect from the database and immediately attempted to reconnect, repeatedly, which meant the database never had time to catch up on the work we had completed because it was too busy handling a continuous stream of connection attempts by game servers. During this time, we also saw we could make configuration improvements to our database event logging, which is necessary to restore a healthy state in case of database failure, so we completed those, and undertook further root cause analysis.
      The double-edged sword of Sunday’s outage was that because of what we’d dealt with on Saturday, we had created what was essentially a playbook on how to recover from it quickly. Which was good.
      But because we came online again so quickly in a peak window of player activity, with hundreds of thousands of games within tens of minutes, we fell over again. Which was bad.
      So we had many fixes to deploy, including configuration and code improvements, which we deployed onto the backup global database. This leads us into Monday, October 11, when we made the switch between the global databases. This led to another outage, when our backup database was erroneously continuing to run its backup process, meaning that it spent most of its time trying to copy from the other database when it should’ve been servicing requests from servers. During this time, we discovered further issues, and we made further improvements–we found a since-deprecated-but-taxing query we could eliminate entirely from the database, we optimized eligibility checks for players when they join a game, further alleviating the load, and we have further performance improvements in testing as we speak. We also believe we fixed the database-reconnect storms we were seeing, because we didn’t see it occur on Tuesday.
      Then Tuesday, we hit another concurrent player high, with a few hundreds of thousands of players in one region alone. This made us hit another incident of degraded database performance, the cause of which is currently being worked on by our database engineers. We also reached out to other engineers around Blizzard to work on smaller fixes as our own team focused on core server issues, and we reached out to our third-party partners for assistance as well.
      Why this is happening:
      In staying true to the original game, we kept a lot of legacy code. However, one legacy service in particular is struggling to keep up with modern player behavior.
      This service, with some upgrades from the original, handles critical pieces of game functionality, namely game creation/joining, updating/reading/filtering game lists, verifying game server health, and reading characters from the database to ensure your character can participate in whatever it is you’re filtering for. Importantly, this service is a singleton, which means we can only run one instance of it in order to ensure all players are seeing the most up-to-date and correct game list at all times. We did optimize this service in many ways to conform to more modern technology, but as we previously mentioned, a lot of our issues stem from game creation.
      We mention “modern player behavior” because it’s an interesting point to think about. 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.
      Additionally, overall, we were saving too often to the global database: There is no need to do this as often as we were. We should really be saving you to the regional database, and only saving you to the global database when we need to unlock you–this is one of the mitigations we have put in place. Right now we are writing code to change how we do this entirely, so we will almost never be saving to the global database, which will significantly reduce the load on that server, but that is an architecture redesign which will take some time to build, test, then implement.
      A note about progress loss:
      The progress loss some players have experienced is due to the way we do character locks both in the regional and global databases–we lock your character in the global database when you are assigned to a region (for example, when you play in the US region, your character is locked to the US region, and most actions are resolved in the US region’s database.)
      The problem was that during a server outage, when the database was falling over, a number of characters were becoming stuck in the regional database, and we had no way of moving them over to the global database. At that time, we believed we had two options: we either unlock everyone with unsaved changes in the global database, therefore losing some progress due to an overwrite that would occur in the global database, or we bring the game down entirely for an indeterminate amount of time and run a script to write the regional data to the global database.
      At the time, we acted on the former: we felt it was more important to keep the game up so people could play, rather than take the game down for a long period of time to restore the data. We are deeply sorry to any players who lost important progress or valuable items. As players ourselves, we know the sting of a rollback, and feel it deeply.
      Moving forward, we believe we have a way to restore characters that doesn’t lead to any significant data loss–it should be limited to several minutes of loss, if any, in the event of a server crash.
      This is better, but still not good enough in our eyes.
      What we are doing about it:
      Rate limiting: We are limiting the number of operations to the database around creating and joining games, and we know this is being felt by a lot of you. For example, for those of you doing Pindleskin runs, you’ll be in and out of a game and creating a new one within 20 seconds. In this case, you will be rate limited at a point. When this occurs, the error message will say there is an issue communicating with game servers: this is not an indicator that game servers are down in this particular instance, it just means you have been rate limited to reduce load temporarily on the database, in the interest of keeping the game running. We can assure you this is just mitigation for now–we do not see this as a long-term fix.
      Login Queue Creation: This past weekend was a series of problems, not the same problem over and over again. Due to a revitalized playerbase, the addition of multiple platforms, and other problems associated with scaling, we may continue to run into small problems. To diagnose and address them swiftly, we need to make sure the “herding”–large numbers of players logging in simultaneously–stops. To address this, we have people working on a login queue, much like you may have experienced in World of Warcraft. This will keep the population at the safe level we have at the time, so we can monitor where the system is straining and address it before it brings the game down completely. Each time we fix a strain, we’ll be able to increase the population caps. This login queue has already been partially implemented on the backend (right now, it looks like a failed authentication in the client) and should be fully deployed in the coming days on PC, with console to follow after.
      Breaking out critical pieces of functionality into smaller services: This work is both partially in progress for things we can tackle in less than a day (some have been completed already this week) and also planned for larger projects, like new microservices (for example, a GameList service that is only responsible for providing the game list to players). Once critical functionality has been broken down, we can look into scaling up our game management services, which will reduce the amount of load.
      We have people working incredibly hard to manage incidents in real-time, diagnosing issues, and implementing fixes–not just on the D2R team, but across Blizzard. This game means so much to all of us. A lot of us on the team are lifelong D2 players–we played during its initial launch back in 2001, some are part of the modding community, and so on. We can assure you that we will keep working until the game experience feels good to us not only as developers, but as players and members of the community ourselves.
      Please continue to submit your feedback to the Diablo II: Resurrected forum, report your bugs to our Bug Report forum, and for troubleshooting assistance, visit our Technical Support forum. Thank you for your ongoing communication with us across all channels–it’s invaluable to us as we work on these issues.
      The Diablo community team will keep you updated on our progress via the forums.
      The Diablo II: Resurrected Dev Team
    • By Staff
      Diablo 2 servers are experiencing connection issues for a couple of days in a row now.
      Blizzard Customer Service confirmed ongoing issues with the PS5 service today.
      Placeholder for tweet 1448215960809361410 Players are reporting issues with Diablo 2 servers today, as many got kicked out of the game. Blizzard said they are actively monitoring and reacting to the situation during peak play times and that there may be periods where logins or game creation are limited.
      Placeholder for tweet 1448277778013564940
    • By Staff
      Here comes a new patch, addressing the character deletion concerns as well as crash and stability issues. The servers have been having a lot of problems in the past few days and keeping players from playing online, so hopefully this patch helps! 
      Patch 10.12 (Source)
      A new patch is now available for Xbox consoles and PlayStation 4 consoles. PC, Nintendo Switch and PlayStation 5 consoles will follow shortly and we will update this thread when they become available on those platforms.
      To share your feedback, please post in the Diablo II: Resurrected forum.
      To report a PC bug, visit our Bug Report forum.
      To report a console bug, visit our Console Bug Report forum.
      For troubleshooting assistance, visit our Technical Support forum.
      Improvements to character deletion to help users from accidentally deleting their characters. STABILITY AND PERFORMANCE
      Various crash/stability fixes
    • By Staff
      Diablo 2 servers are experiencing connection issues today. Blizzard is aware of them and the Blizzard Customer Service confirmed on Twitter they are working on a solution for the problem.
      We've seen multiple player reports about Diablo 2 servers being offline today. 
      BlizzardCS confirmed they are working to fix the ongoing login issues.
      Placeholder for tweet 1447534443640590338 Placeholder for tweet 1447573955003486219
  • Create New...