Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Thursday March 07 2019, @11:19PM   Printer-friendly
from the 1996-network-security-meets-2019-networks;-the-"devil"-is-in-the-details dept.

Blizzard has handed Diablo I to Good Old Games.com for DRM free distribution in its original form, and also with some Direct X video mode freshening courtesy of the GOG development staff.

The Diablo code is original, 1996 vintage, doesn't require internet connection for single player, and does allow multi-player via vintage Battle.Net servers.

My question: does it run (well) in a VirtualBox VM? If so, perhaps opening up full Admin privileges to 23 year old network code isn't such a bad thing - just take a snapshot of your uninfected image before starting online play, and if you get PWNed outside the game, you can restore from your save point.


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 3, Informative) by ledow on Friday March 08 2019, @08:48AM (2 children)

    by ledow (5567) on Friday March 08 2019, @08:48AM (#811487) Homepage

    No, it's been decompiled. That's all.

    Even with help of symbol lists and all kinds of debugging information, you still end up with:

    https://github.com/diasurgical/devilution/blob/master/Source/lighting.cpp [github.com]

    which is basically unreadable. There's a reason they're trying to get a binary-exact state... because straying from that is very difficult indeed if you don't understand the code.

    There's an awfully big difference between decompiling, reverse engineering, and actual working projects that you can use/hack on. And he can be taken down at any moment, especially if...say... as a completely random example... the rights owners were still monetising that software...

    There are very few projects, even with all the information in the world, that get reverse engineered properly. It's a very intensive task, takes years and lots of very skilled people, and ultimately attracts a lot of attention from rights-holders who consider source much more their property than even the binaries they will sue over. For instance, they could be using a third-party library under NDA... they don't want you going near that library and reverse-engineering that, or its interfaces too.

    To my memory, only Transport Tycoon (but not Rollercoaster Tycoon) and the old SCUMM games got properly reverse-engineered and it took over a decade each... and that's because they have very lenient rights-holders, and that hacking on them had been happening before that for a decade or more (e.g. TTDPatch is WAY older than OpenTTD) and documented structures along the way. I think they may even have been the same person (ludde?). Syndicate has Freesynd but it's nowhere near a game. CorsixTH still isn't playable, I don't think. XCOM / UFO had several projects and at least one got shutdown.

    I'm happy to pay the current rights-holder for a copy of an old game that works. But waiting on a decompiled thing to become anything more than a poor copy of that game that doesn't run as well is going to take YEARS. That project has only been public for six months. Come back in a few years, minimum

    Starting Score:    1  point
    Moderation   +1  
       Informative=1, Total=1
    Extra 'Informative' Modifier   0  
    Karma-Bonus Modifier   +1  

    Total Score:   3  
  • (Score: 0) by Anonymous Coward on Friday March 08 2019, @11:15AM

    by Anonymous Coward on Friday March 08 2019, @11:15AM (#811507)

    There is also OpenDUNE and OpenRCT2 that are based on decompiled code.

  • (Score: 2) by RamiK on Friday March 08 2019, @03:02PM

    by RamiK (1813) on Friday March 08 2019, @03:02PM (#811536)

    which is basically unreadable

    Unreadable to whom? Maybe you have a different workflow working on other people's code (or old code you yourself wrote), but For me, running a binary attached to a debugger on the other screen that is showing this instead of assembly instructions is more than enough to understand exactly what the different functions are doing and correct bugs. And the guy doing that mod is proving just that.

    But waiting on a decompiled thing to become anything more than a poor copy of that game that doesn't run as well is going to take YEARS.

    Being binary exact means you're getting the same exact copy so there's nothing "poor" about it. And getting that done is just a question of diffing, tracing the function and correcting odd stack misalignments and such. It's most definitely doesn't require a full comprehension of everything going on. In fact, with enough compute you can dump the workflow on a pretty dumb AI and get 90% of it done.

    --
    compiling...