How Diablo was completely Reverse Engineered without Source Code | MVG

  Рет қаралды 1,724,379

Modern Vintage Gamer

Modern Vintage Gamer

Күн бұрын

In 1996 Blizzard Entertainment released Diablo, an Action RPG that sold over 2.5 million copies and defined a genre. In 2018 a developer known as GalaXyHaXz almost completely reverse engineered the code in 4 months and released it as open source. How was this accomplished? Find out in this episode !
► Consider supporting me - / modernvintagegamer
Links
► DevilutionX (Open Source Diablo) github.com/diasurgical/devilu...
► My Nintendo Switch Port - github.com/lantus/devilution-nx
Social Media Links :
► Check me out on Facebook : / modernvintagegamer
► BandCamp : modernvintagegamer.bandcamp.com/
► The Real MVP Podcast : player.fm/series/the-real-mvp
► Follow me on Twitter : / modernvintageg
#Diablo #OpenSource #DontYouHavePhones

Пікірлер: 3 400
@ars7374
@ars7374 4 жыл бұрын
People are going to play this instead of Diablo Immortal.
@PronounDisrespecter
@PronounDisrespecter 4 жыл бұрын
Those guys don't have phones.
@mineman2142
@mineman2142 4 жыл бұрын
i want an android port
@paulunga
@paulunga 4 жыл бұрын
Why not play a good modern game instead, though?
@abyssstrider2547
@abyssstrider2547 4 жыл бұрын
I wonder if anyone would port this diablo game to android. But I don't mind playing it on PC either its just that it would be a great game to play when I'm in the bus or waiting for someone (there is not that many public wifi's where I live)
@faresabdelkefi397
@faresabdelkefi397 4 жыл бұрын
Switch!! Yes
@bananachild1936
@bananachild1936 4 жыл бұрын
MVG casually dropping a Diablo port on Switch in a video like it's no biggie
@bandolero7970
@bandolero7970 4 жыл бұрын
Yeah dude, I mean, WTF
@Krokoklemmee
@Krokoklemmee 4 жыл бұрын
I mean, that's exactly what "portability" means, but ok In some cases it can be as easy as changing a single command line parameter
@bandolero7970
@bandolero7970 4 жыл бұрын
@@Krokoklemmee you so envious
@kenrickeason
@kenrickeason 4 жыл бұрын
The man has that swagger to do so..
@lamdavld
@lamdavld 4 жыл бұрын
@@Krokoklemmee "it can be as easy as changing a single command line parameter" I'm sorry, but your naivete is showing. What you are describing is compiling a given code base for a different architecture, eg ARM vs Intel. That is different than porting to a different system with different drivers, control scheme, etc. That is where the challenge lies here, and it's very impressive what he has accomplished.
@garyliddon
@garyliddon 4 жыл бұрын
Ha. I was lead coder on PS1 Diablo. I'm pretty sure I left the sym file on the Japanese master by accident :D Top work porting it to the switch
@DecibelAlex
@DecibelAlex 4 жыл бұрын
legend! :D
@arantes6
@arantes6 4 жыл бұрын
Thank you for the accident ! :p The question is, did your port take you just "a few nights" like his ? :D
@destroyermaker
@destroyermaker 4 жыл бұрын
You did a great job with it.
@MrRockrazer
@MrRockrazer 4 жыл бұрын
Don't you have crackdown 3 to work on?
@TheAngelobarker
@TheAngelobarker 4 жыл бұрын
Inb4 blizzard sues
@BlueSatoshi
@BlueSatoshi 4 жыл бұрын
Someone found the source code to StarCraft once. Instead of dumping it, they gave it back to Blizzard for a free trip to Blizzcon. I'm still salty.
@woodchucksquirrel
@woodchucksquirrel 4 жыл бұрын
Me too.
@markmce1
@markmce1 4 жыл бұрын
Man didnt want a court order from blizzard so its fair enough. Although it would've been nice if he anonymously leaked it, but that doesnt help you move up in the world
@bondedomao
@bondedomao 4 жыл бұрын
Finding the source is one thing, reverse engineering.is another, and legal.
@blu3_enjoy
@blu3_enjoy 4 жыл бұрын
damn i remember that. what a scoundrel!
@BuzzKirill3D
@BuzzKirill3D 4 жыл бұрын
If it were Valve, instead of rewarding it would've sued him anyway.
@craigsparton
@craigsparton 4 жыл бұрын
Most people would have spammed the fact they made a Switch Diablo port all over the title. I like how he just casually tosses it in the video. Great video and nice work overall.
@cc_jmk
@cc_jmk 4 жыл бұрын
It's like.. yeah.. no biggie, but I needed some extra content for the video so I just ported this reversed engineered classic into a top modern mobile console, plus adjusted controls. So.. were where we..?
@HighestRank
@HighestRank 4 жыл бұрын
Most people would post a spoiler alert. Congrats, you're just normal.
@chriswy697
@chriswy697 4 жыл бұрын
This guy rules!
@phattjohnson
@phattjohnson 4 жыл бұрын
@@HighestRank I'll have some of what you're smoking!
@Kalvinjj
@Kalvinjj 4 жыл бұрын
@To Whom What When How Where and Back Again besides who's stupid enough to 1st look the comments and THEN go watch the video and complain on the comments that we were talking about... the video in question...
@sandakureva
@sandakureva 4 жыл бұрын
Wait... you literally ported Diablo to the Switch just for the sake of making a video? You absolute madman!
@contempt2012
@contempt2012 4 жыл бұрын
@Jonathan Soko so what does he mean saying "so I've ported it to switch, it took literally few nights"?
@sandakureva
@sandakureva 4 жыл бұрын
@Nope Nope I get it. He has nothing to do with the original crack, but he still did port that cracked version to the switch.
@gurgy3
@gurgy3 4 жыл бұрын
*madlad
@spressono
@spressono 4 жыл бұрын
@Jonathan Soko That's not at all what you said.
@tameku
@tameku 4 жыл бұрын
@@sandakureva well, his version is buggy and he basically took stuff from other people, he didn't even credit the guy he grabbed controller code from
@harshsawant4936
@harshsawant4936 3 жыл бұрын
This guy is so chill about porting Diablo to switch like it's nothing for him
@JbeeTv
@JbeeTv Ай бұрын
He’s been making homebrew and such for literally friggin years years
@imsuperpowerbitch
@imsuperpowerbitch 13 сағат бұрын
he literally could make a whole video about it and gain another thousands of views
@EURIPODES
@EURIPODES 4 жыл бұрын
Modern Vintage Gamer: Ports Diablo to the Switch. Me: Can't get the bouncy boobs mod on Skyrim to work.
@NotNekros
@NotNekros 3 жыл бұрын
Same, that mod is so hard to install, a lot of coding skill is needed to make the boob move
@doomertheboomer
@doomertheboomer 3 жыл бұрын
@@NotNekros what the hell lmao
@NotNekros
@NotNekros 3 жыл бұрын
@@doomertheboomer The lingerie mod is much harder than the boobs mod, we need more people to do boobs and lingerie mods for skyrim
@NotNekros
@NotNekros 3 жыл бұрын
​@Jonathan Soko If it has boobs with physics then i'll play it
@vincentschumann937
@vincentschumann937 3 жыл бұрын
cries in oblivion reloaded
@Sheepy007
@Sheepy007 4 жыл бұрын
Blizzard: "Don' t you have phones?" Community starts porting diablo to android and iOs
@oz_jones
@oz_jones 4 жыл бұрын
Sheepy007 modern problems require modern solutions
@ilovelimpfries
@ilovelimpfries 4 жыл бұрын
I’ll play the shit out of diablo on android.
@akeiai
@akeiai 4 жыл бұрын
@@ilovelimpfries I think the gameplay for the original Diablo is good with mobile. It looks like an indie developer starting a great game.
@joeypwns
@joeypwns 4 жыл бұрын
hahaha
@NewAgeSoldier
@NewAgeSoldier 4 жыл бұрын
Devilution is working on it. They want to release it before Diablo Immortal releases.
@Guggz
@Guggz 4 жыл бұрын
"I just ported this to Nintendo Switch" >JUST That's amazing.
@anondimwit
@anondimwit 4 жыл бұрын
Guggz not really
@chrisredfield6825
@chrisredfield6825 4 жыл бұрын
@@anondimwit You Negative Nancies are just the fucking worst.
@Xdetonando
@Xdetonando 4 жыл бұрын
Yeah, i really want to know how he did that.
@JesusSaves86AB
@JesusSaves86AB 4 жыл бұрын
@@chrisredfield6825 It's because they beat themselves off constantly like gamma's.
@baseddoggie
@baseddoggie 4 жыл бұрын
@@chrisredfield6825 No, porting straight up source code to other platforms is dead simple. Half the time achieved with a few command line inputs. It's basic stuff, everyone using a Linux terminal knows how to compile source code.
@d-o-n-u-t
@d-o-n-u-t 4 жыл бұрын
“Yeah lemme just port Diablo to Switch real fast brb”
@LordMarlle
@LordMarlle 4 жыл бұрын
Sometimes I forget you aren't just being an historian, you're also doing cool coding work yourself. The Diablo switch port looks very nice. Thanks for making these videos, they're always super informative
@MarquisDeSang
@MarquisDeSang 4 жыл бұрын
Finally someone will be able to put Diablo on Mobile.
@proCaylak
@proCaylak 4 жыл бұрын
@@corsegerspwnd he didn't mean any Diablo, he did mean THE Diablo
@ShadMuffin
@ShadMuffin 4 жыл бұрын
@@corsegerspwnd A good one, not the real money ah one
@skaruts
@skaruts 4 жыл бұрын
@@corsegerspwnd who cares about diablo 3
@ayuchanayuko
@ayuchanayuko 4 жыл бұрын
Diablo 1 PSX in Vita and in a PS1 player in Android
@GraveyardRUS
@GraveyardRUS 4 жыл бұрын
You can download playstation 1 emulator on your mobile and simply play diablo 1 the original consol version on your phone, just buy an android controller.
@BirthFromFire
@BirthFromFire 4 жыл бұрын
You've ported Diablo to the Switch!!! We can't thank you enough!!! Thank you and a big thanks to all the developers who helped on this project!
@phreeze83
@phreeze83 4 жыл бұрын
it's not "him"
@BirthFromFire
@BirthFromFire 4 жыл бұрын
@@phreeze83 What do you mean?
@MichaelJones-mc7ud
@MichaelJones-mc7ud 4 жыл бұрын
This is just fantastic. Props to all these people spending months and thousands of hours of their time to preserve gaming history and memories of our formative years. A lot of times they are doing this for free. Thank you all for what you do.
@kylegusek
@kylegusek 4 жыл бұрын
1:01 Oh damn look at that Compaq 7550 to the right! Such a great monitor. I remember being blown away that it could output 1600x1200 resolution!
@u1richh
@u1richh 4 жыл бұрын
1996: Do you guys not have PCs? 2019: Do you guys not have phones?
@phattjohnson
@phattjohnson 4 жыл бұрын
We've got phones.. but I can't believe you don't have a Snapchat, like, oh my Gawd!
@ruikazane5123
@ruikazane5123 4 жыл бұрын
I do not.
@grn1
@grn1 4 жыл бұрын
Here's something scary, apparently some members of the FTC apparently don't have/never use cell phones (GameTheory did an interview with the CEO of KZbin). These are the people in charge of making rules for not only telecommunications but also the internet. They are also in charge of determining if a video is COPPA compliant or not (and if they determine a video isn't compliant they can charge content creators $42K per video).
@vmelkon
@vmelkon 4 жыл бұрын
@@grn1 : I don't have a cellphone. I have many PCs. If I want a cellphone, I want something with a 30 cm screen.
@PsyQoBoy
@PsyQoBoy 4 жыл бұрын
2030: Do you guys not have VR?
@GGoblin1
@GGoblin1 4 жыл бұрын
I don't understand anything, but still watched from start to finish
@ModernVintageGamer
@ModernVintageGamer 4 жыл бұрын
lol thanks :)
@renakunisaki
@renakunisaki 4 жыл бұрын
To try to explain it simply: Source code is text, which the computer turns into a program (which is a binary file). A program made for a PC won't work on a Playstation and vice versa, so if you want to run the game on a different system, you need to build another program for it, which requires the source code. Diablo doesn't give the source code out to the public, but, they gave it to another company to port to Playstation. That company accidentally left some debug files on the disc. Those aren't source code, but they list all the names of variables and subroutines and where they are in the program. (Normally, the binary program doesn't contain names, just numbers.) Using those files, people were able to read the binary and reconstruct source code by hand. (This can be done with any program, but having the names makes it a lot easier. It's an extremely tedious process.) Since it's done without seeing Diablo's original source code, they can publish the reconstructed code for everyone. So now anyone can port Diablo to any system they want using that code. Although it's not identical to the original code (labels, comments, formatting etc can be different), it produces the same program.
@AE86ofMtAkina
@AE86ofMtAkina 4 жыл бұрын
I kept watching videos like this until I could finally understand them, after using Wikipedia to decipher it. I think I've watched MVG's ps3 video 11 times.
@txorimorea3869
@txorimorea3869 4 жыл бұрын
Is like trying to understand a long forgotten ancient Grimoire written long time ago in Sumerian, and try to write it again in modern English.
@xCARPx2014
@xCARPx2014 4 жыл бұрын
@@renakunisaki what about the images, sounds & models?
@MaxOakland
@MaxOakland 3 жыл бұрын
“We’ve gone from Windows 95 to Windows 10” funny how the numbers went down
@akaimizu1
@akaimizu1 3 жыл бұрын
They basically did what SNK did. KOF '94-2003, then KOF 11.
@tazz1911er
@tazz1911er 2 жыл бұрын
now its Windows 11 MICROSOFT WHAT THE FUC-
@BlackHoleForge
@BlackHoleForge 4 жыл бұрын
I absolutely love your storytelling, the content of your videos, and the way you express your genuine interest in the topic. I just wanted to say thank you.
@projektb4rd0n53
@projektb4rd0n53 4 жыл бұрын
"NO WORRIES" THIS GUY ALREADY
@LambdaCalculus379
@LambdaCalculus379 4 жыл бұрын
I saw a post related to this a few days ago on Twitter, where a dev showed Diablo running on OpenBSD. Looks like #ItRunsDiablo is going to be a new thing now. 😁
@AkiraElMittico
@AkiraElMittico 4 жыл бұрын
Nice!
@AkiraElMittico
@AkiraElMittico 4 жыл бұрын
Crossover or directly with WINE maybe ?
@thugasaurusrex6004
@thugasaurusrex6004 4 жыл бұрын
Lmao every time I see OpenBSD I can't help but think of the BSOD.
@CyclesMcHurtz
@CyclesMcHurtz 4 жыл бұрын
It's nice that Diablo is returning to it's roots as a clone of Moria.
@iHawke
@iHawke 4 жыл бұрын
I am waiting for a raspberry pi release
@miguelpereira9859
@miguelpereira9859 4 жыл бұрын
lol this dude is a legend. "You know what? Today I'm feeling like porting Diablo to the Switch"
@rock3tcatU233
@rock3tcatU233 4 жыл бұрын
Such a boss move.
@glennielsen
@glennielsen 4 жыл бұрын
Quite honestly i dont think he would have been able to do it if it wasnt already reverse engineered by the other guy. I mean he probably COULD have done it, but wouldnt have done all that work for 1 video..because the other guy reverse engneered it, it made it super easy for him to port it to switch.
@hollowlife1987
@hollowlife1987 4 жыл бұрын
He took others people work and copied a lot of it modified `some` of it to compile on switch and is claiming most the credit. Your so called "legend" just plagiarizes work.
@tameku
@tameku 4 жыл бұрын
@@hollowlife1987 100% truth ^^
@theworstflash
@theworstflash 4 жыл бұрын
@@hollowlife1987 I don't think he really took any credit though. He fully admitted that he just took the devolution code and played with it a bit and didn't make a big deal of it. Still better than a lot of people could do, haha.
@deusexaethera
@deusexaethera 3 жыл бұрын
Well done, sir. I haven't played Diablo 1 since college and I prefer the more complex sequels anyway, but I greatly admire the effort you put into this.
@Igneale
@Igneale 4 жыл бұрын
You and the Devolution team are awesome!.. I can't wait to give this a try.
@MrReese
@MrReese 4 жыл бұрын
As a developer myself I love these videos with significant in-depth information. You need to make more videos :D love your content.
@TrueSkyl1n3
@TrueSkyl1n3 4 жыл бұрын
10:09 “It can be updated to 2019 quality standards” ...so it’s going to be unfinished, a paywall for new dungeons, DLC for weapons and eventually be turned into a battle royale? I dunno man I think I prefer the late-90’s standards of gaming 🙄
@FadNad0731
@FadNad0731 4 жыл бұрын
Noice!
@retiredshitposter1062
@retiredshitposter1062 4 жыл бұрын
but there might be an UBER-gay whimsyshire this time.
@FadNad0731
@FadNad0731 4 жыл бұрын
@@retiredshitposter1062 they put that shit on evarythang
@schlomoshekelstein908
@schlomoshekelstein908 4 жыл бұрын
@@FadNad0731 globohomo
@himi6536
@himi6536 4 жыл бұрын
You say that as if the majority of games come out unfinished. I reject that notion.
@Cyberfoxxy
@Cyberfoxxy 4 жыл бұрын
**casually ports diablo 1 to switch** I consider myself competent in programming. But this badassery is leagues beyond me.
@tameku
@tameku 4 жыл бұрын
no badassery there when you are using someone else's controller code + code that people reverse engineered and were making cross platform already (It worked on linux/mac/windows/ios/and most of other things except android which is a work in progress - switch would've come too
@huleyn135
@huleyn135 4 жыл бұрын
Theres not much impressive going on.. Devolution is meant to be portable.
@tameku
@tameku 4 жыл бұрын
@@huleyn135 yup
@jameswalker199
@jameswalker199 4 жыл бұрын
Don't you just put the source code into the compiler and fix what its screaming about until it stops screaming?
@tameku
@tameku 4 жыл бұрын
@@jameswalker199 kind of, 99% of the effort was creating the code in the first place, which he didn't do
@anthonythebeard
@anthonythebeard 4 жыл бұрын
dude your content is awesome! so happy i stumbled onto your KZbin channel. thanks for all your contributions to gaming and all the informative videos : D
@shahaab
@shahaab 4 жыл бұрын
It's weird but I like how there is always a footage of MVG putting the disc in the driver. I remember looking at a disc to see its art and having a feeling of excitement while waiting for it to load.
@meemee1357
@meemee1357 4 жыл бұрын
I think it is partially to show that he owns the game/disk, because he does talk about modded systems most of the time...
@shahaab
@shahaab 4 жыл бұрын
mee mee Huh! Great point
@pelgervampireduck
@pelgervampireduck 4 жыл бұрын
it didn't run only on win95, it ran fine up to XP, and with some workarounds (like ending explorer task to prevent color corruption) on 7 too.
@igorthelight
@igorthelight 4 жыл бұрын
True!
@erik00073
@erik00073 4 жыл бұрын
and even that problem was only there every 3. game stard
@sabbathjackal
@sabbathjackal 4 жыл бұрын
i played it for the first time on XP
@rjonboy7608
@rjonboy7608 4 жыл бұрын
You are right. There was a way to set the video card to properly render both Diablo and D2LOD. Worked perfectly on XP, worked mostly on Win7 but only for LOD.
@LetsGoGetThem
@LetsGoGetThem 4 жыл бұрын
yeah but in the last segments of the game it would lag on XP. It only ran perfectly on win95.
@Tron08
@Tron08 4 жыл бұрын
Love the "compete FREE over the internet" graphic on that CD jewel case. Based PC gaming.
@JesusSaves86AB
@JesusSaves86AB 4 жыл бұрын
Before cucks damn near ruined games with micro-transactions.
@CoolKoon
@CoolKoon 4 жыл бұрын
@TheTron08 Believe it or not, back in the 90s when many didn't have even dial-up, it was a REALLY big deal. Many games didn't have that feature either, not even later.
@Azlehria
@Azlehria 3 жыл бұрын
That being a major marketing point was an artifact of the times, when the typical model for online games, as well as access to the Internet itself, was _hourly_ billing. In fact it's two points in one! The obvious and emphasized point of being free, but also the point of using _the Internet_ rather than a private, dial-in network. That used to be a thing!
@mrbisshie
@mrbisshie 3 жыл бұрын
Makes me sad that all major consoles require you to pay money to play online. At least on PC it's free, unless it's some crazy MMO. The MMO monthly payment is why I never got into WoW. I just enjoy the idea of where I can just pop in a game, find out it has online, and just go randomly online, without being prompted I need to pay x amount to go online. I know Switch online is pretty cheap, but part of me just refuses to pay to play online, even if it's cheap.
@Jerrycourtney
@Jerrycourtney 4 жыл бұрын
I preferred _Diablo_ over _Diablo II_ for the simple fact of the tone of the game. _Diablo_ had such a dark, disturbing set/setting, it made it an incredibly effective horror hack & slash game.
@ChucksBasix
@ChucksBasix 4 жыл бұрын
And many people have said the same about the whole Diablo II vs Diablo III thing.
@Jerrycourtney
@Jerrycourtney 4 жыл бұрын
I concur
@vicc6790
@vicc6790 4 жыл бұрын
what is it with old people equating shitty old graphics to a "darker setting"? Everytime a sequel to a game comes out you have all the old farts start chiming in about how the old one was better. We get it, old people like old things. You can go back to your stroller now
@jeremyabbott4537
@jeremyabbott4537 4 жыл бұрын
Um Diablo 3 literally has no atmosphere, it has gruesome imagery yes, but no atmosphere to speak of. Also since your characters are so overpowered in it, most enemies don't provide any sense of fear or dread, and they have to send waves and waves of enemies at you in order for there to be any challenge.
@vicc6790
@vicc6790 4 жыл бұрын
@@jeremyabbott4537 I never mentioned Diablo 3 at all so I don't get where that rant is coming from???
@MrPredatorCZ
@MrPredatorCZ 4 жыл бұрын
Devs: Leaves debug symbols within release version. Reverse engineers: It's a free real estate.
@lyxar777
@lyxar777 4 жыл бұрын
Yep, the video's title is a little bit misleading, because with debugsymbols, headers and project-structure, a disassembler can reconstruct about 2/3 of what the original source looked like. Also, indiedevs do this on a regular basis, especially for early-access releases. I suppose so crashlogs from early-access testers look neater. If you want debugsyms, you best chance is to ask around if a tester still has a dev-version around.
@tjsbbi
@tjsbbi 4 жыл бұрын
I once maintained a Cobol runtime written in C that had been decompiled from DOS and ported to Unix (by someone else). The code was very readable once you got past the generic variable and function names. We just named them appropriately as we figured out what they were. But the executable ran fine even though whole chunks weren't well understood. If the debug symbols were in there it would have been straightforward.
@sleaf6
@sleaf6 4 жыл бұрын
tjsbbi geez that sounds awful haha, glad it worked though
@bb010g
@bb010g 4 жыл бұрын
Nintendo is great with this.
@ruikazane5123
@ruikazane5123 4 жыл бұрын
Who knows, cleaning up all the unnecessary files actually saves more than a quarter of total space...and more, at that era
@draco107
@draco107 4 жыл бұрын
"You guys have phones right?" Me: yeah... we do.... Ports diablo to my phone* Now this is diablo on mobile.
@gobzdzilla
@gobzdzilla 4 жыл бұрын
Exactly my thoughts.
@MrKert86
@MrKert86 4 жыл бұрын
I'd rather have this on mobile than Immortal, I'd even be fine with them revealing this on stage..
@pardalmadgod9960
@pardalmadgod9960 4 жыл бұрын
Well shit, wp xD I wish this was the response given when they asked if we had phones.
@Gr33kChief
@Gr33kChief 4 жыл бұрын
jaja
@mobious01
@mobious01 4 жыл бұрын
Robin Erik no you wouldn’t, if they were to announce a remake/reboot/remake i would want that everywhere and not just mobile
@MechMykl
@MechMykl 4 жыл бұрын
Loved the deep technical explanation. More of this please!
@Ghostie.
@Ghostie. 4 жыл бұрын
Been watching your videos for awhile, good stuff dude.
@SyeedAli
@SyeedAli 4 жыл бұрын
"We lost the source code" _hold my beer_
@jeschinstad
@jeschinstad 4 жыл бұрын
True love.
@Lunibruniful
@Lunibruniful 4 жыл бұрын
Hold my beer, and bring me coffee. Lots of coffee
@SyeedAli
@SyeedAli 4 жыл бұрын
And an empty Gatorade bottle.
@AJenbo
@AJenbo 4 жыл бұрын
I don't really like the taste of beer or coffee but I do drink a fair amount of coke :)
@Hellblazer191
@Hellblazer191 3 жыл бұрын
We'll craft fresh sauce code
@jzph
@jzph 4 жыл бұрын
Got homebrew on a dsi today, thanks for showing me how useful it is.
@Xilefian
@Xilefian 4 жыл бұрын
I did this last week too, following MVG's video guide and advice. It really is a surprisingly great home-brew console, for now I'm dedicated to GBA home-brew, but I can imagine looking into DS/DSi stuff in the future.
@sygos
@sygos 4 жыл бұрын
it's so great being able to unlock old hardware and keep it useful for years. Hackers and exploiters are the best.
@jzph
@jzph 4 жыл бұрын
Xilefian same, instead of spending £49.99 on a nes classic with 30 games, I just got a full library of roms
@andrewclegg9501
@andrewclegg9501 4 жыл бұрын
I did too. Sold the ds. A very cheap upgrade.
@damian9303
@damian9303 4 жыл бұрын
I did too, it just turned my entire DSi into a flash cart since my SD card was 2gb+
@TheMeditron
@TheMeditron 4 жыл бұрын
I played diablo first on PC at my buddies place, but i beat it all the way through the first time on the play station version. So a version that I can play on my switch is really appealing, so in my eyes you are a legend. Thanks for your work and the info on the history of the code was really interesting so keep up the good work.
@kev7345
@kev7345 4 жыл бұрын
I admire the skill and dedication of coders like you, knowing that you have put many, many hours of work into making these games available for us mere mortals .. if i had a hat i would certainly take it off to you sir...
@ahhmac1
@ahhmac1 4 жыл бұрын
This is why I love this channel, you're the only youtuber who makes a video on reverse engineering binaries and you even supply the source implementation for the switch. Thanks for the release, haha !
@Eunhon93
@Eunhon93 4 жыл бұрын
heres a video about how diablo was reverse engineered . oh btw i ported it to the switch here u go!
@tolugo87
@tolugo87 4 жыл бұрын
When I hear the Tristam Theme, it gives me goosebumps as just as I used to have when I was a child. A masterpiece game indeed!
@chron2417
@chron2417 4 жыл бұрын
Dude your stuff is incredible!!! I would pay to see you do a panel at a con!
@roygillotti4615
@roygillotti4615 4 жыл бұрын
Notaz of the Open Pandora Community did this in 2015 with Diablo I and II, and 2014 with Starcraft for ARM linux. He never released sources due to fears of retribution from Blizzard, but binaries are out there.
@YourIdeologyIsDelusional
@YourIdeologyIsDelusional 4 жыл бұрын
People need to start doing these projects under pseudonyms and distributing the actual projects over decentralized, encrypted (or at least encryption capable) platforms. Greedy, blood sucking, IP trolling, asshole lawyers can't touch you if they can't find you.
@ModernVintageGamer
@ModernVintageGamer 4 жыл бұрын
i read up on that. He was wrapping the binaries with some type of x86 emulation layer which is intriguing. do you know more about it?
@roygillotti4615
@roygillotti4615 4 жыл бұрын
@@ModernVintageGamer No His ports are truely ARM compiled ports, but they're still essentially all Windows programs, to allow it to be used in Linux he uses WINE compiled to the ARM platform to handle that.
@IanTester
@IanTester 4 жыл бұрын
I remember that. He 'converted' the Windows x86 binary to simple C code, where each statement did exactly the same thing as each instruction. He then compiled it with Winlib. So it's really just a recompilation/transcompilation. The "source code" wouldn't be of any more use than the binary. hackaday.com/2014/07/31/playing-starcraft-on-an-arm/
@rasz
@rasz 4 жыл бұрын
At least the Starcraft port was a recompilation. IDA decompile + github.com/notaz/ia32rtools/blob/master/tools/translate.c
@fredfrance1495
@fredfrance1495 4 жыл бұрын
thank you so much for playing the tristram music that makes me happy in my heart. rip to my childhood 💔😌
@0ldenn
@0ldenn 4 жыл бұрын
Great video and great work! Thanks!!
@mohammadalaaelghamry8010
@mohammadalaaelghamry8010 10 ай бұрын
Great video full of insights. Thank you.
@aabbccddeeff7749
@aabbccddeeff7749 4 жыл бұрын
Great job with the port, thank you for the content and the effort !
@lukin1231
@lukin1231 4 жыл бұрын
If someone make Diablo II for Switch I will finally mod my console
@TheRealRusDaddy
@TheRealRusDaddy 4 жыл бұрын
Hell ill buy a damn switch if they do
@TexasHollowEarth
@TexasHollowEarth 4 жыл бұрын
You're missing out....
@hardgay7537
@hardgay7537 4 жыл бұрын
@@TexasHollowEarth He's really not. I suspect my Switch is gonna keep collecting dust until SMT5 comes out.
@Sampsonay
@Sampsonay 4 жыл бұрын
Turn on airplane mode and use the emunand method on a separate sd card. I've never been banned doing this because it's undetectable :)
@EzequielLFriscia
@EzequielLFriscia 4 жыл бұрын
10x Ber 4 Port
@Xlfdll
@Xlfdll 4 жыл бұрын
This reminds me of KONAMI's Silent Hill HD Remaster disaster...
@pedriuskii
@pedriuskii 4 жыл бұрын
Amazing work!!! This is so awesome!!
@Badger-Z
@Badger-Z 4 жыл бұрын
Your content is absolute gold. For me you cant sit down and watch without a beer, to fully take it in.
@davidoswald2155
@davidoswald2155 4 жыл бұрын
This explained a lot for me thanks. Always wondered why it was considered difficult to remaster or restyle an old game whatever the terminology is. Thanks for the info.
@thegentlemadman1296
@thegentlemadman1296 4 ай бұрын
I remember playing Diablo and Diablo 2 on my dad's laptop whenever he got back from a UN contract. I have come to love both D1 and D2 dearly
@Megameatloaf
@Megameatloaf 4 жыл бұрын
I don't understand enough about programming to really follow this along, I was just curious since I've heard the stories of FF8 and losing the source code and I also grew up with Diablo 1. It's still my favorite of the series. And then you casually drop your homebrew switch port and I'm in fucking awe...
@theodoreroosevelt3143
@theodoreroosevelt3143 4 жыл бұрын
"do you guys have Nintendo Switch?" ~ Modern Vintage Gamer
@furydeath
@furydeath 4 жыл бұрын
Now i want to mod my switch
@jameswalker199
@jameswalker199 4 жыл бұрын
"No, I'm poor" ~Me
@JAGO_Tech
@JAGO_Tech 4 жыл бұрын
MVG... I work in IT infrastructure, solution design, & technical sales.... knee... no neck deep in business IT all day. You make me realize how talented my implementation & procurement guys are. They make me look good. Keep it up!!! Here's to the keyboard guys out there 🍺🍻🍻 cheers
@BenRangel
@BenRangel 4 жыл бұрын
For non-coders who wanna understand the difference between runnable code and proper source code: Source-code might contain a function like MovePlayer which states that if you press left the playerCharacter should walk 40 pixels to the left and play an animation. This is compiled into machine-code which could look like: "add 1 to the value in memoryArea62, swap memoryArea 120 and memoryArea562, add 6 to the value of memoryArea133" etc. Machine-code is pretty incomprehensible to humans. You'd have to look at patterns and guess that memoryArea62 is related to moving the player. But without any extra info you cannot be sure. You might not even be able to run the code on a machine which doesn't have the same memory-system as the machine it was first compiled for.
@RineyCat
@RineyCat 4 жыл бұрын
As someone who's dived into MPQ files for Starcraft, it's lovely to still see the craft alive.
@zachsteiner
@zachsteiner 4 жыл бұрын
Hell yeah a MVG upload! One of my absolute favorite channels.
@ztgasdf
@ztgasdf 4 жыл бұрын
To my knowledge, they have NOT released Diablo II yet on GOG.
@SurprisePie
@SurprisePie 4 жыл бұрын
This. And it's doubtful that they ever will, Blizzard already sells Diablo 2 and it's expansion on battle.net for pretty cheap.
@Whatareyouareyou
@Whatareyouareyou 4 жыл бұрын
@@SurprisePie People said the same for diablo then for hellfire, we now have both
@roymcdre9180
@roymcdre9180 4 жыл бұрын
Only because no body played d1 (since you almost couldnt), thousands still play d2
@Whatareyouareyou
@Whatareyouareyou 4 жыл бұрын
@@roymcdre9180 but you could :p brought physical copy of diablo and was playing it on win 10. People don't play it cause it hasn't aged well at all.
@Cinicraft00
@Cinicraft00 4 жыл бұрын
Man your channel is amazing!
@findjonmoses
@findjonmoses 4 жыл бұрын
I saw your speedball t-shirt, and now I want them to remaster speedball. I loved that game on my Atari ST
@jfwfreo
@jfwfreo 4 жыл бұрын
Diablo is far from the only game where this has been accomplished. I am involved with a project that has essentially completly reverse engineered and replaced the engine AND all the toolchain for the game Command & Conquer Renegade (a game that is likely a LOT more complex than the first Diablo game). We have not only reverse engineered it but added many many enhancements to it.
@ModernVintageGamer
@ModernVintageGamer 4 жыл бұрын
interesting. i'll need to check this out sometime. I loved Renegade !
@seritools
@seritools 4 жыл бұрын
The goal of Devilution (non-X) changed from "just" a reverse-engineering to being fully binary exact. That means compiling Devilution with the original toolset will generate a byte-for-byte exact executable. Right now, just one of the 1880 functions in Diablo does not produce exact assembly (minus offsets to other functions and global data, the ordering is basically the last thing to do).
@dadud3
@dadud3 4 жыл бұрын
W3DHUB REPRESENT!
@dadud3
@dadud3 4 жыл бұрын
@TablePacer you talking about Dennis?
@dadud3
@dadud3 4 жыл бұрын
@TablePacer cause jonwil is the most quiet memeber of W3Dhub and actually made no mention of posting this comment in our community. Infact we were only tipped off because someone else noticed and shared it in discord. He's been working on C&C renegade for well over a decade. And saying he's a douchebag kinda backfires and shows everyone that infact, you're the douchebag.
@Lock2002ful
@Lock2002ful 4 жыл бұрын
omfg D1 on the Switch? A dream come true! :O Thank you so much! ^o^
@cybermodo
@cybermodo 4 жыл бұрын
Man, you talk about Diablo, source control, reverse engineering, porting code... and you wear SPEEDBALL shirt! You made my day, sir, and inspired me immensely! THANKS!
@edme8865
@edme8865 4 жыл бұрын
This is interesting because the concept of "slow fire". Slow fire is the loss of information over time due to a number of factors, for instance paper books rotting away. In the computer realm, the loss of data due to demagnetized tapes, scratched CD, corrupt hardware are just a few. The main point is that even with the data files being saved to cloud storage or another medium, the loss of the actual program/source code that interprets those data files is just as harmful as say a scratch on a CD. So thank you to people like this guy that figure out ways to retrieve data.
@roger2602
@roger2602 4 жыл бұрын
You've been a hero of mine since the OG Xbox days. Keep up the good work!
@drummersarus
@drummersarus 4 жыл бұрын
I’m glad my love of diablo made me click on a recommended video. Because now I have to learn how to mod my switch and then get this. Thanks for your work on this and you have a new like and subscribe.
@Drawolfie
@Drawolfie 4 жыл бұрын
Diablo 1 is part of my childhood. I love it
@NightFyreTV
@NightFyreTV 3 жыл бұрын
Love watching all of your videos
@lightningfarronxp8899
@lightningfarronxp8899 4 жыл бұрын
If they can reverse engineer diablo, there may still be hope for panzer dragoon saga.
@redpheonix1000
@redpheonix1000 4 жыл бұрын
I had the exact same thought! Especially now that they're releasing a remake of the first Panzer Dragoon
@Skims19
@Skims19 4 жыл бұрын
I’m praying that the remakes sell well so we can finally get that remake or at least an Hd port
@dozegamin8604
@dozegamin8604 4 жыл бұрын
for diablo, they found the symbol file, that made it easier.
@bakerbakerbaker305
@bakerbakerbaker305 4 жыл бұрын
Why did it take so long to figure out how to reverse engineer Diablo if a guy did it in 4 months why didn't someone do that a long time ago
@TheXev
@TheXev 4 жыл бұрын
I have a difficult time believing Sega lost the source code to Panzer Dragoon. Sega is the one, single company that has a fantastic record of keeping ahold of their source code. That is how we've gotten recent ports like Virtua Racing. I only hope that the upcoming remaster of Grandia 1 is based on the Saturn version of the game and not the PSX port. I want all the liquid water and battle engine smoothness the PSX version lacks. More so then any other source code, Sega source code has a funny way of popping up from time to time...
@xxxvertigoxxx
@xxxvertigoxxx 4 жыл бұрын
Awesome video, great work. One correction though - Diablo 2 is not on GOG. Hellfire, which is a Diablo 1 expansion, was added, not Diablo 2.
@kiba3x
@kiba3x 3 жыл бұрын
My first PC (K6-2, no video card) came with 4 games preinstalled : Duke Nukem 3D, Quake 1, Diablo 1 and Warcraft 2. All of them are priceless classics.
@coreylyman6429
@coreylyman6429 4 жыл бұрын
I am so glad i stumbled onto this guy... thanks man
@IamAJoe
@IamAJoe 4 жыл бұрын
I'd love to have fully functional diablo 1 and 2 on my vita or switch.
@VetsRage
@VetsRage 4 жыл бұрын
MyName_Joe Same.Blizz allowed D1 to be on GoG, they might as well just sell it on all the digital stores. Id pay for it again to have on un-modded switch.
@bland9876
@bland9876 4 жыл бұрын
@@VetsRage i have so many pc games i bet could easily run on the switch no problem for example Frogger he's back (plus every game made by Hasbro interactive) Assault Heroes, RollerCoaster Tycoon Deluxe, Pac-Man Adventures in Time, AM2R (this being better than the official port makes me think links awakening will be bad)
@alexandrosnaoum1318
@alexandrosnaoum1318 4 жыл бұрын
OpenTTD a great example of reverse engineering and creating a super-duper new game.
@MrSapps
@MrSapps 4 жыл бұрын
OpenRCT also
@sebwan
@sebwan 4 жыл бұрын
Mad Monks' Revenge - Definite Edition as well
@coincident
@coincident 4 жыл бұрын
OpenXcom too, and a lot of DOOM source-ports. The true classics never get forgotten :)
@FreestylerAlbert
@FreestylerAlbert 4 жыл бұрын
omg OpenTTD!!!! LOVE IT!
@K-Anator
@K-Anator 4 жыл бұрын
@@carb_rta I believe Quake also had it's source released, or at least this new RTX version of it.
@ryanm8322
@ryanm8322 4 жыл бұрын
I really enjoyed this video, thank you!!
@teknoman117
@teknoman117 4 жыл бұрын
7:07 - that's the San Mateo (California) SIE office by the way.
@cronoforever937
@cronoforever937 4 жыл бұрын
Dude another awesome video, keep it going. Hopefully Panzer Dragoon saga could be reversed engineered. Lets support the HD remake of the 1st Panzer and show them we care about the series.
@resuort
@resuort 4 жыл бұрын
THIS IS WHAT I WANTED TO SEE AT BLIZZCON! THIS WOULD HAVE BEEN ENOUGH! A 4 player local would have been amazing! Also if you could implement the graphic updates from Belzebub!
@dobrozner7784
@dobrozner7784 4 жыл бұрын
You madman! I was very much enjoying the information I was learning, and then "Oh, by the way, I ported it to Switch." Thank you very much!
@NeilRoy
@NeilRoy 4 жыл бұрын
Wow, fascinating video, thanks for sharing. I've done some programming myself, so I understand a little about how they could reconstruct the code, but even still, that had to be a lot of work! I know the heartache of losing my source code. I was working on a game back around 2000 or so when my hard drive completely failed. The only time that has ever happened to me, but I lost a lot of work at the time. I had some backups, but they were old. It turned out to be a blessing in disguise as when I reprogrammed it again I managed to solve some old problems and had much cleaner code. What blew me away about Diablo 1, was that was David Brevick's first game he wrote in C! I remember my first C game... it wasn't close to no Diablo game! LOL
@dsp4392
@dsp4392 4 жыл бұрын
Fantastic work. A lot of these reverse engineering efforts feel like archaeology in that you look at the "remains" and reconstruct the source material as best as you can. This raises many questions about intellectual property and all that. For instance, should the reverse engineered code be made available for free, publicly, considering it is Blizzard's IP? Or maybe archaeologists are all pirates, and we've just accepted as a civilization that the criminality of the act lessens over time as it becomes more important to share knowledge than protect individual interests? Also, it definitely highlights the importance of open source for the benefit of future generations and plays in other areas of tech like the right to repair movement. For instance, reverse engineering an old fully mechanical car used to be pretty easy as the "compiled code" was nothing more than mechanical devices that could be figured out relatively easily. Binary code on the other hand can get massively hard to reverse engineer, especially when it's wrapped in layers of DRM and encryptions, so something like a Tesla is harder to fix, and eventually reverse engineer, and future archaeologists will probably have a hard time deciphering the original code that made our currently modern devices tick.
@AspenEmrys
@AspenEmrys 4 жыл бұрын
yo dawg, we reverse engineered Tomb Raider, so now you can play pirated archaeology as a pirate archaeologist
@howardlam6181
@howardlam6181 4 жыл бұрын
I am not sure what you can gain from Diablo 1 that induce a loss on Blizzard's part. There is simply nothing to protect from.
@metaorior
@metaorior 4 жыл бұрын
Yo wanna help with reversing a game called Battlefield Heroes? we are almost finishing it
@vaugna1620
@vaugna1620 4 жыл бұрын
IIRC the HD remasters of Ico, SotC, MGS2/3, and KH1 were reverse-engineered from the PS2 discs instead of ported from source code
@bleedorange1998
@bleedorange1998 4 жыл бұрын
vaugna16 Tetsuya Nomura said the entire source code for KH was completely lost so they had to rebuild it from something.
@Clonest
@Clonest 4 жыл бұрын
So THAT'S how that one dude on KZbin was able to make "Doomiablo!
@jackgreenstalk777
@jackgreenstalk777 2 жыл бұрын
amazing breakdown of the history 💚🙏
@danmanx2
@danmanx2 4 жыл бұрын
"How Diablo was completely Reverse Engineered..." and also, HERE'S MY SWITCH PORT?? SUBSCRIBED!!!
@legalfreedom
@legalfreedom 4 жыл бұрын
They have not released Diablo II on GOG. Only Diablo with expansion. 5:58
@fredveefrqc4072
@fredveefrqc4072 4 жыл бұрын
i had the same thoughts maybe he think Helfire is diablo 2 lord of destruction , even tho the difference is a bit obvious :P
@dadrising6464
@dadrising6464 4 жыл бұрын
Because diablo 2 is still sold by blizzard afaik Edit: misread you/not checked timestamp.
@YuyuHakurei
@YuyuHakurei 3 жыл бұрын
He definitely accidentally called the expansion Diablo 2. He probably meant Diablo 1 part 1 and 2. Which is confusing but it makes the most sense.
@Michael-Madrid
@Michael-Madrid 3 жыл бұрын
Yeah it is great you can get diablo on GOG and is playable on modern systems, but diablo II that is only available on the blizzard thing, isn't with out stuffing around with it.
@YuyuHakurei
@YuyuHakurei 3 жыл бұрын
@@Michael-Madrid I really want a remaster for it so they can fix the glitches with a lot of the abilities. Maybe add the concept for that expansion david brevik was designing before the company disbanded. As he has openly stated in his streams that Diablo 2 was actually supposed to have 2 expansions. The second would have added another act and at least 1 other class. The Cleric. There might have been a secret with all of the battlenet mysteries revealed in that expansion too. I'd also like to see a bonus passive ability added for every class and it listed in the skill screen so you can see what they are. The assassin has the ability to open locks without keys. So I think it'd be cool if every class had a passive like that. Even if they weren't equal it would have been cool. I would imagine that if they invited the original team to work on it under a contract then it would be really cool. They probably won't do that but I think it is the best way they could go about it.
@adrians_reality
@adrians_reality 4 жыл бұрын
absolutely love your channel
@programmervp
@programmervp 4 жыл бұрын
Great work!
@edwin8808
@edwin8808 4 жыл бұрын
I really hope that you inspired some people to reverse engineer the polyMega, so we can make our own "polymegas" :D!
@piotrd.4850
@piotrd.4850 4 жыл бұрын
I'd like to see Myth: The Fallen Lords, Z and Total Anihillation REFORGED to 4k but otherwise unaltered.
@dovs96
@dovs96 4 жыл бұрын
Just awesome as always
@NOPerative
@NOPerative 4 жыл бұрын
Interesting talk. Very well done.
@DaleKamp
@DaleKamp 4 жыл бұрын
Seeing Diablo I running on that Switch was a beautiful sight to behold.
@spidermcgavenport8767
@spidermcgavenport8767 4 жыл бұрын
The original StarCraft source code was lost/stolen and just recently returned to Blizzard.
@mikakorhonen5715
@mikakorhonen5715 4 жыл бұрын
NSA has full backup of your family photos...
@spidermcgavenport8767
@spidermcgavenport8767 4 жыл бұрын
I have no family photos, jokes on them. They might have prior military photos but that's history.
@bsherman8236
@bsherman8236 4 жыл бұрын
NSA can suck my nipples
@RanEncounter
@RanEncounter 4 жыл бұрын
"recently"
@Braxton1981
@Braxton1981 4 жыл бұрын
@B Sherman They do! they have always done it while you sleep. Didn't you realize? Remember that strange but somehow pleasant "dreams"? well, NSA, they were in your room
@antayat123
@antayat123 3 жыл бұрын
Youre amazing, dude! Rock on!!
@PanCakeMixer101
@PanCakeMixer101 4 жыл бұрын
I always admired you, for having such vast knowledge.
A closer look at the Super NES DOOM Source Code Release | MVG
13:49
Modern Vintage Gamer
Рет қаралды 727 М.
10 Games You Can NEVER Play Again
15:46
gameranx
Рет қаралды 558 М.
ELE QUEBROU A TAÇA DE FUTEBOL
00:45
Matheus Kriwat
Рет қаралды 18 МЛН
Glow Stick Secret 😱 #shorts
00:37
Mr DegrEE
Рет қаралды 146 МЛН
Clever Anti Piracy on the Super Nintendo | MVG
11:23
Modern Vintage Gamer
Рет қаралды 814 М.
Reverse Engineered old Compression Algorithm for Frogger
16:29
LiveOverflow
Рет қаралды 252 М.
How did Resident Evil 2 manage to fit on a single Nintendo 64 Cart ? | MVG
12:22
Modern Vintage Gamer
Рет қаралды 1,5 МЛН
SecuROM - The PC CD-ROM DRM that broke games | MVG
12:41
Modern Vintage Gamer
Рет қаралды 950 М.
How we fit an NES game into 40 Kilobytes
12:04
Morphcat Games
Рет қаралды 3,5 МЛН
Reverse Engineering RollerCoaster Tycoon | How does it work?
38:54
Nathan Baggs
Рет қаралды 224 М.
So I started decompiling LEGO Island...
21:19
MattKC
Рет қаралды 865 М.
What happened to the Nintendo 64 Classic Mini ? | MVG
15:20
Modern Vintage Gamer
Рет қаралды 890 М.
Why was the Sony PlayStation 3 so hard to develop games for ? | MVG
12:39
Modern Vintage Gamer
Рет қаралды 832 М.
Caseoh VS Sonic & Aphmau | Minecraft & Sonic
0:12
Mischief time
Рет қаралды 12 МЛН
💀💀 #brawl #gaming #games #supercell
0:20
GGg
Рет қаралды 6 МЛН
Kaiju Buzz absence 😔 | Brawl Stars #brawlstars #shorts
0:20
Ghostify Labs
Рет қаралды 7 МЛН