Diablo Source Code Reconstructed With Support for Latest OSes, Mods
Blizzard has recently revisited some of its classic titles, with updates and improvements dropping for Warcraft III, Starcraft, and World of Warcraft’s upcoming Classic servers. Some of its older games, like the original Diablo, however, haven’t received the same coat of paint or support. Diablo was a huge hit in 1996, eventually shifting 2.5 million copies by 2001 — but it was completely dwarfed by Diablo II, which reportedly sold 17.5 million copies. But interest in the original game has never died, and one programmer, GalaXyHaXz, has posted a reconstruction of Diablo’s source code, dubbed Devilution, that’s intended to significantly improve the original game’s compatibility with modern operating systems, as well as allowing it to be ported to OSes like Linux.
According to Galaxy, he was able to pull this project off in just four months in part by getting extremely lucky. He writes:
Blizzard gave Diablo’s source code to two developers: Synergestic Software (to create an expansion), and Climax Studios (to create a Playstation port). Now Sony of Japan has long been known for letting things slide in their QA department. Anything from prototypes to full source code leaks (Beatmania), and Diablo was no exception. A symbolic file was accidentally left on the Japanese port, which contained a layout of everything in the game. This includes functions, data, types, and more! A beta version of the port also leaked, which contained yet another one of these files.
To top it all off, a debug build of the PC version is contained right there on your Diablo disc! Hidden in DIABDAT.MPQ -> D1221A.MPQ -> DIABLO.EXE. This build contains debug tools not found in the retail game, and many assert strings giving away code information. Combining these aspects not only makes reversing the game much easier, but it makes it far more accurate. File names, function names, and even line numbers will be fairly close to the real deal.
The project has multiple goals. In the long run, having access to reconstructed source code should make it easier to maintain and improve the game, and this project has opened up the ability to mod Diablo like never before. It’s also possible to build the file to run under Linux, though would-be players should be aware: There are no art assets included here. You’ll need to own the original Diablo CD-ROM or have access to the game’s assets in order to use Devilution to play it.
Devilution opens up Diablo for modding long-term, and there’s already talk on Reddit on whether some mod projects for that game might use the eventual Devilution source code or work with any mod projects that are spun out of the reconstructed source code. It’s always interesting to see what modders can do, even with assets as old as Diablo’s, and having access to even reconstructed source should make it easier to fix bugs or create new mods and content. Best-case, it could allow existing mods to improve and extend their own work more quickly and easily, along with possible support on other operating systems (for now, only x86 is supported).
As a onetime Diablo II modder myself, I’ll be curious to see what happens next. Reconstructed source code is the sort of achievement we’d have killed for back 17 years ago when I was working with Diablo II.
Continue reading
Nvidia, Google to Support Cloud Gaming on iPhone Via Web Apps
Both Nvidia and Google have announced iOS support for their respective cloud gaming platforms via progressive web applications. Apple can't block that.
Asus Announces Chromebox 4 With Support for 10th Gen Core Processors
Chromebooks are so plentiful these days they might as well grow on trees. There are fewer Chromeboxes, but Asus has been keeping its line updated and just announced its latest version.
AMD Will Bring Smart Access Memory Support to Intel, Nvidia Hardware
AMD is reportedly working with Nvidia and Intel to bring hardware support for Smart Access Memory to other GPU and CPU platforms.
Intel Is Spreading FUD About Supposedly Huge Ryzen 4000 Performance Drops on Battery
Intel believes it has presented evidence that negates the value of AMD's Ryzen 4000 product stack. Intel is mistaken.