EA Won't Let Me Play This Game - So I Hacked It

Поделиться
HTML-код
  • Опубликовано: 29 фев 2024
  • Let's crack an old game to make it playable
    Become a member to get early access to videos - / @nathanbaggs
    Want to build cool stuff from scratch? app.codecrafters.io/join?via=...
    💭 All views are my own 💭
    Accompany me on an epic quest in "EA Won't Let Me Play This Game - So I Hacked It," as I strive to enjoy the classic God game, Black and White, despite EA's hindrances. Delve into the process of reverse engineering the key check algorithm to generate a new key and surpass the restrictions. Don't miss out on this enthralling hacking adventure - remember to subscribe for more gaming breakthroughs!

Комментарии • 819

  • @nathanbaggs
    @nathanbaggs  3 месяца назад +34

    Want early access to new videos and some behind the scenes content? Consider becoming a channel member ruclips.net/channel/UCQvW_89l7f-hCMP1pzGm4xwjoin

    • @Thrakus
      @Thrakus 3 месяца назад

      Do you know if there is away to restore full screen dosmode to Windows 10/11 , You can restore dosmode to windows, however they did block full screen mode from running.

    • @Dracconus
      @Dracconus 3 месяца назад +1

      I actually have a physical copy of Black and White if you'd like to get it we can discuss details.

    • @WildRapier
      @WildRapier 2 месяца назад

      Black & White was a great game, so was #2. Haven't seen it's likes or any attempt at a copy. A shame... games today have a hard time not adding zombies! I still have the original discs, just have to dust off my 3200+ and 9800 AIW!

    • @francoisleveille409
      @francoisleveille409 2 месяца назад +1

      EA did the same to me with Crysis 3. DVD-ROM not work!!

    • @Dracconus
      @Dracconus 2 месяца назад

      @@francoisleveille409 I had a similar issue with Crysis 2. Called their hotline and had it working within minutes. They'll take care of you if you call. Or..they used to.

  • @OfficialScottR
    @OfficialScottR 3 месяца назад +2402

    Its fourtunate you didnt accidentally give out the end of the code. If fiv'e taken one thing away from this video, its the importance of keeping CD keys private. It'd be a shame four a small business like EA to lose revenue from a game they no longer sell. I eight to even think of such a thing

    • @kevinbissinger
      @kevinbissinger 3 месяца назад +96

      legend

    • @AlbertDongler
      @AlbertDongler 3 месяца назад +20

      😂

    • @WackoMcGoose
      @WackoMcGoose 3 месяца назад +110

      Oh neat, I have the same combination on my luggage!

    • @lolfraggles
      @lolfraggles 3 месяца назад +86

      @@WackoMcGoose Space Balls: The Reference!

    • @mick.c
      @mick.c 3 месяца назад +12

      Lmao you had me there 😂

  • @sonarun
    @sonarun 3 месяца назад +725

    I love that the game is reverse engineering the game, and not actually playing it. I love this channel.

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +99

      Getting to the game is often more fun than the game itself (:

    • @johndorian4078
      @johndorian4078 3 месяца назад +14

      That was the fun part of a game genie, not just typing in the codes you got from the book but actually finding the codes

    • @pixelcatcher123
      @pixelcatcher123 3 месяца назад +3

      @@nathanbaggs or we could try and reverse out the key check algorithm and create our own key "Lets do the latter, it's a bit more challenging but could be a lot of fun". As u said :DD

    • @danquaylesitsspeltpotatoe8307
      @danquaylesitsspeltpotatoe8307 Месяц назад +1

      @@nathanbaggs Yes proving you are guilty of software fraud with a video on here is really smart! Now take the fork out of the toaster!

  • @benwafflez
    @benwafflez 3 месяца назад +389

    That second function just converts strings to integers:
    "4444" == 0x115c
    "4548" == 0x11c4
    Subtracting 0x30 is what tipped me off, it's an easy way to go from a ASCII digit to the value (e.g. 0x35 in ASCII is '5')

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +164

      Thanks for the insight. I got so wrapped up in the nitty gritty I forgot to take a step back and look at what it was actually doing

    • @KateGrayCode
      @KateGrayCode 3 месяца назад +55

      @@nathanbaggs If you see 0x30 being subtracted from numeric input, it's doing ASCII to integer. If you see base 10 things being done in a start at zero, read, multiply by 10, add loop, it's doing string to integer.

    • @daftwulli6145
      @daftwulli6145 3 месяца назад +9

      @@nathanbaggs erm there is a read me in the stuff you ripped from the internet, usually they contain the info you need to install the game, like CD keys and how to install it (like sometimes you need to copy a crack into some specific file, stuff like that)

    • @ferrumignis
      @ferrumignis 3 месяца назад +13

      @@daftwulli6145 Yep, as soon as I saw the files in that folder I was thinking the same. Not that I've ever seen a ripped game or anything.

    • @daftwulli6145
      @daftwulli6145 3 месяца назад

      @@ferrumignis Yea of course not, who would ever do that ?
      Btw quite a few studies showed that most often piracy is not done for monbetary reasons, but for reasons of convinience. If you do not give potential customers a good and simple way to pay you for the product they look for alternatives.
      Streaming plattforms are a big example. When netflix started out, and you had all the shows you want in one convinient place, TV show piracy droped by over 80%. But then more and more streaming plattforms apeared and each had less and less shows, so you had to look up everything you want to watch to see who had it, and thus had to plattform hop all the time, it went right back up. Funny how that works.
      Same goes for anti piracy meassures that are a pain in the ass for users that actually paid for the game, while pirates had no such problems. Also nobody wants minutes of unskippable adds on a dvd they paid good money for. Or why do i need to be constantly online for a single player game ? There is litjerally noi reasdon I need to be online thge whole time, and there have been so many occasions where my internet was spotty or crashed and I wanted to game till it comes back. So I will no longer buy games that demand I have to be online at all times
      I could keep going with examples all day, but it all goes back to the same nonsense : if piracy is way more convinient then buying something, and way less of a hassle, people will pirate. So companies should stop the BS on their paying customers, or they will find alternatives.

  • @rubinbingham9547
    @rubinbingham9547 3 месяца назад +175

    I remember "A friend" who managed to find where a key was checked for an old program and converted the Jump if equal instruction to a jump if not equal. Thus the program only worked if the wrong key was entered.

    • @derekthemagician
      @derekthemagician 2 месяца назад

      true=false poof.

    • @craesh
      @craesh 2 месяца назад +8

      I did exactly the same back in the late 90's. Worked fine. With current games it won't be possible any more.

    • @PicnicAtTheTesco
      @PicnicAtTheTesco 2 месяца назад +1

      Don’t mess with Rick Sanchez 😂

    • @adamm.1367
      @adamm.1367 2 месяца назад +9

      Yes! This was basically how I did it back in the day. Was way easier to patch the return code than to reverse engineer the algorithm. Ahh things were so much simpler back then.

    • @nathanjohnston9762
      @nathanjohnston9762 Месяц назад +2

      or you could change the elseif to return the same value as the if. That way it wouldn't matter what you put in.

  • @cigmorfil4101
    @cigmorfil4101 3 месяца назад +149

    Reminds me of back in the early 1990s when Lemmings and Lemmings 2 came out for the PC. To allow you to continue from a level, after each level is cleared a code is given which when entered allows you to go directly to the next level without having to play the previous levels. (It was sonething like 10-13 seemingly random letters long.)
    Lists started appearing in magazines and on bulletin boards (was pre/at start of internet).
    I noticed that different people sometimes got different codes for the same level (and sometimes a person would get different codes when replaying the same level).
    Using a few of these codes I was able to reverse engineer how they were generared and was able to create codes that worked but were impossible for the game to generate.
    Your challenge, should you wish to accept it, is to get a copy of the original PC Lemmings, get some codes (by playing it, or finding some) and workout how they work. This tape will self destruct in 5 seconds....

    • @AirbornChaos
      @AirbornChaos 3 месяца назад

      🤯☠

    • @zerogrey3798
      @zerogrey3798 3 месяца назад +2

      A lot of console games did this as well.

    • @nifiga_prikolno
      @nifiga_prikolno 3 месяца назад +2

      I remember some games were doing it, i thought that it was a gimmick which occurred when devs for some reason didn't make a saving process or it was technically impossible to handle the saving process like on cheap/bootleg disks and cartridges when it was impossible to write data on them or in the console

    • @pazsion
      @pazsion 3 месяца назад +1

      those are actul save points for each individual player. none of them were the same unless you had the same scenario and assets... which is extreamly unlikely.
      man i miss lemmings... there are a few games today that may be better or equal to the quality... buy even their demos are paid to play.
      sorry im not paying for something before i know what im getting, blizzard taught me this.
      because of blizzard ive atopped paying for software at all without a fully unlocked version thats free.

    • @varsityathlete9927
      @varsityathlete9927 3 месяца назад

      @@pazsion yep that is how it worked on the Sega Mastersystem games.

  • @JeffJK000
    @JeffJK000 3 месяца назад +100

    "What do we do now?"
    "Now we can finally play the game"

    • @vadnegru
      @vadnegru 3 месяца назад +3

      Not quite that...

  • @MobCat_
    @MobCat_ 3 месяца назад +219

    Gives me flashbacks to the massive FFF keygen that could generate keys for like 200+ EA games...

    • @MerolaC
      @MerolaC 3 месяца назад +32

      I still have it and use it to this day.
      Sometimes to install Sims 1, FIFA and NFS games.

    • @djdamagedome
      @djdamagedome 3 месяца назад +29

      I'm still not sure that was not malware, but damn it was handy and the pieces of music on various versions rocked.

    • @kuromiLayfe
      @kuromiLayfe 3 месяца назад +49

      @@djdamagedomeIt’s less malware than any of the DRM BS publishers put in nowadays.

    • @GoldSrc_
      @GoldSrc_ 3 месяца назад +4

      You had that one too?
      I think I still have it in an old hard drive with windows XP lol.

    • @WhitedevilEE
      @WhitedevilEE 3 месяца назад +7

      I can still hear the music playing

  • @funkaddictions
    @funkaddictions 3 месяца назад +359

    Good thing you didn't give away the numbers 😁. Cool video!

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +137

      Would be irresponsible if I did...

    • @Edek_Zgredek800
      @Edek_Zgredek800 2 месяца назад +3

      @@nathanbaggssure. EA lawyers have no mercy

    • @DIREWOLFx75
      @DIREWOLFx75 Месяц назад

      As someone has already posted, he effectively did give away the numbers, just not in decimal.

  •  3 месяца назад +73

    "It''s pretty cool that Ghidra managed to decompile this back to a x 10.............. anyway" That pause had me lol

  • @ChadeGB
    @ChadeGB 2 месяца назад +49

    I clicked onto this video ready to type my comment about how you didn't hack a game just because you installed a no-cd patch or something similar. But I was wrong, you actually did hack it, it was so nice to watch someone doing the thing they claimed in the titles for once. Props.

  • @nwstraith
    @nwstraith 3 месяца назад +10

    Oh man... my childhood favorite is a legacy game. Guess I'm old now. I absolutely loved B&W as a kid. Training my tiger to either be nice or evil. Casting rain or fire down upon my people. Chucking boulders at enemy villages. This game is an absolute gem. I would love it if they remastered it and released it again.

    • @rorychivers8769
      @rorychivers8769 Месяц назад

      That should be easy enough, just have to lock Peter Molineux in a deep dark dungeon and ensure he never, ever hears about it

  • @brianl2607
    @brianl2607 3 месяца назад +54

    Underrated youtube channel... excellent blend of information, education, light humor, and blended all with smooth transitions for a good overall flow. wishing you success!

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +5

      Much appreciated!

    • @satyris410
      @satyris410 3 месяца назад

      He's got gorgeous eyes as well😅. Instant subscribe

    • @simonnaughton2272
      @simonnaughton2272 3 месяца назад

      New sub here.

  • @superfly108
    @superfly108 3 месяца назад +93

    I love the fact I've been watching a RUclips channel find it's niche and grow since I saw the first video and subscribed. Good job buddy!

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +23

      Thanks for the kind words! I'm really enjoying solving puzzles and sharing that with everyone

  • @gabrielex
    @gabrielex 3 месяца назад +69

    As owner of the original DVD with original box and code I still found this extremely interesting.

    • @Gatorade69
      @Gatorade69 3 месяца назад +3

      It was on a CDRom not a DVD.

    • @fueledbyllama3043
      @fueledbyllama3043 3 месяца назад +2

      Same difference one just has more layers on the disc for storage

    • @ssokolow
      @ssokolow 3 месяца назад +6

      @@fueledbyllama3043 No, actually. a 4.4GiB DVD is still single-layer... it just packs the spiral more tightly... though it *does* sandwich it between two half-thickness pieces of polycarbonate instead of sitting on top of a full-thickness one with only a layer of lacquer to protect it.

    • @limpbiskit66
      @limpbiskit66 3 месяца назад

      As a non owner without any of that shit, so did I

    • @banedon8087
      @banedon8087 2 месяца назад +1

      Yep. Still got mine.

  • @annekedebruyn7797
    @annekedebruyn7797 3 месяца назад +56

    Can we just take a moment to appreciate the backwards compatibility of windows?
    Being able run code from '99 without any issue is insane.
    On MacOS even pre M1/2/3 chips, I weren't allowed to update the OS until the all the apps supported that version or it would break.
    It's insane.

    • @vadnegru
      @vadnegru 3 месяца назад +8

      Even more, windows has some apps that wasn't updated since win 95 or even 3.1.

    • @darrennew8211
      @darrennew8211 3 месяца назад +22

      It's pretty much the selling point for Windows at this point. They even have patches for broken games. If you're running the old Sims games, the kernel will allocate memory differently because the Sims has bugs in their memory usage.

    • @Dome98Otaku
      @Dome98Otaku 3 месяца назад +4

      The installer might look good, but trust me the game does not run without any issues once you actually boot it x(

    • @hadamana
      @hadamana 3 месяца назад +5

      Gawd, don't get me started on this... I recently tried to install my legit Adobe CS6 Master Collection on an Intel Mac running Catalina... Pure rage ensued. I have some grumpiness toward Apple for that. The frikkin' INSTALLER used some 32bit code so a 64bit application can't be installed. Seriously?!

    • @ssokolow
      @ssokolow 3 месяца назад

      @@hadamana Microsoft went so far as to bundle 32-bit InstallShield engines to transparently swap in if you try to install a 32-bit game with a 16-bit installer after they finally decided that 20 years was enough and didn't write support for 16-bit apps in 64-bit Windows.

  • @coisasnatv
    @coisasnatv 2 месяца назад +2

    Watching this I remember the good and old days of Phrozen Crew, Fravia's essay, SoftIce, IDA, W32dasm, etc.

  • @TommyLikeTom
    @TommyLikeTom Месяц назад +1

    7:03 I love how you awkwardly give a moment to just appreciate Ghidra

  • @DezsikeDevil1
    @DezsikeDevil1 3 месяца назад +34

    You'll face a bigger challenge from here: DRM. The game performs a disk check and somehow it knows if you have the original or a copy and it refuses to start when it detects a copy. To make things more complicated, Win 7 and beyond treat this as a rootkit and refuses to run it. Even a cracked copy will refuse to run as the DRM is still there, just patched to always return success even if a disk is not present at all. So it might be easy to get it running on an old machine (I do have one with an original disk and the DRM passes without any cracks or hacks) but it will be a pain to get it running on a modern PC.

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +32

      Yes I started looking at what happens next and it's, interesting... Hoping to get some time to come back to it and maybe do another video on it

    • @bricaaron3978
      @bricaaron3978 3 месяца назад +4

      Windows 7? I know that Windows 10+ disallows (some? all?) disc-based DRM, but I have never encountered a disc that could not be installed on my Win 7 system. I do not have a disc copy of Black & White, though.

    • @DezsikeDevil1
      @DezsikeDevil1 3 месяца назад +8

      It was blocked in Windows 10 out of the box. Windows Vista, 7, 8 and 8.1 blocked it with the KB3086255 update. Uninstalling this update might allow disk based DRMs to run on those operating systems, but there's no way to get it running on Windows 10 and newer. DRM must be removed altogether, patching it like cracks did back in the day won't work.

    • @bricaaron3978
      @bricaaron3978 3 месяца назад +6

      ​@@DezsikeDevil1 Right, right. I do not have that update installed. And that very freedom is one of the many reasons I'm using Windows 7.
      I will be building a Windows 10 system, but it will _only_ be used for playing (single-player) DX12 games. It will not be connected to the Web.

    • @enosunim
      @enosunim 3 месяца назад +3

      Yeah, this reminds me of running my own program, which I wrote myself on Delphi. And running it under W10 was tricky. Windows just closes it at some point. No antivirus warning, no nothing. It just closes and all.
      It started after I added function, which get process list, and kill one process if its name is matched. It was added as I call curl.exe using CreateProcess function. And sometimes it hangs, so I need to kill it and restart.
      It was fun for me, that Windows just kills my program, when it try to call the function. And later program file is removed from disk. No any quarantine records, no nothing too = )
      It was even funnier at first, as I just copied some function from the Internet, KillTask it was called. My program was just removed on run. After I modified my function code, so it was not universal anymore, I just made it look for particluar process name, it was alright.
      But a couple of weeks, and it started to kill it and remover once again. I guess some cloud antivirus protection leaked my program to MS, they analized it and blacklisted for no purpose.
      Well, I am just glad I do not use Windows for myself for 15 years or so. As it is just ridiculous, that I just cannot run my own programs anymore. = )
      Oh that good old times, when Windows just worked... = )

  • @AntonVeretenenko
    @AntonVeretenenko 3 месяца назад +31

    used to make a lot of cracks and keygens back in the days before youtube, great RE is getting track here, keep it up 🤘

    • @bonno666
      @bonno666 2 месяца назад

      And they where always reported as a virus. Even if it wasn't.

  • @LukeAvedon
    @LukeAvedon 3 месяца назад +35

    Love it! I fondly remember the space cops in original starflight who would come get you if you lost the cardboard key generator.

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +6

      Glad you enjoyed it!

    • @WirrWicht
      @WirrWicht 3 месяца назад +1

      God, I've been playing this game for quite a while, eradicating these pests time and time again...

    • @Rockin4D
      @Rockin4D 2 месяца назад

      Was anyone actually able to land on the Spemin home world in Starflight 2 and egg nuke it? I do have fond memories in Starflight 1 of landing on the religious fanatic fish people’s home world and activating an egg on it and destroying it.

  • @nineinchwhales
    @nineinchwhales 3 месяца назад +7

    I always love seeing the problem solving process going on, especially for fun projects like this

  • @TowelGamingHammer
    @TowelGamingHammer 3 месяца назад +11

    Man, Black and White was my JAM as a kid. I really need to see about playing it again, but I'll need to get a hold of an extra GPU to dedicate to the VM haha. I'm a little surprised it was that easy to crack, but then again it _was_ the early 2000s of game protections. Thanks for the video Nathan!

  • @Joshimuz
    @Joshimuz 3 месяца назад +8

    So the activation program takes in 4 different numbers, does some maths to the first set of 3 and the last one, and if the result of those two sets of maths match it accepts it as a key? Interesting! Thinking about it I'm not sure how I'd handle such a problem pre-internet activation days where you can't just put a lookup table of all the valid keys in with the rest of the code for obvious reasons lol (and then you'd have a predetermined number of possible keys without a new CD version)

    • @Rob_III
      @Rob_III 3 месяца назад

      Most (offline) keys worked like this back then. The Windows 95 (OEM and/or Retail) key algorithm was a joke. I could literally do "the math" in my head as it was mostly based of the numbers being added up had to be divisible by 7 (google it). Other applications and games had more complex algorithms, that's what keygens "solved". They ("hackers" or "release groups") reverse-engineered the algorithms and then calculated (or "generated") a valid key.

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +4

      That’s pretty much it!

    • @berenscott8999
      @berenscott8999 3 месяца назад +2

      I think the thing is, back in the day, keys weren't linked directly to your copy of the game. There was an algorithm for generating random keys, and they simply printed these on each game copy. Maybe many games had the same key?

  • @wolbeoj7739
    @wolbeoj7739 3 месяца назад +1

    Great video once again. Looking forward to future ones like this. There is value in examining old software like this.

  • @zeronightx
    @zeronightx 3 месяца назад +1

    This is my kind of content for sure. I love these vids. Please keep 'em coming!

  • @Martan404
    @Martan404 3 месяца назад +12

    Great video Nathan! I find your videos super interesting. Thank you for sharing your knowledge with the world and helping preserve old media.

  • @beefgoat80
    @beefgoat80 3 месяца назад +1

    I remember the gesture system in Black and White being super frustrating. Cool game concept though. I think my favorite avatar was the cow.

  • @aquilahawke
    @aquilahawke 3 месяца назад +18

    Omigosh I LOVE Black and White, grew up playing it! And I love your videos!
    Never would have expected them to cross over =0
    So cool to see inside of it like this, thank you for the really interesting look at it

    • @artey6671
      @artey6671 3 месяца назад +1

      This game is actually crazy. There's this obscure mechanic regarding artifacts that lets you build gigantic wonders that have absurd secondary effects.

  • @Phantompi
    @Phantompi 3 месяца назад +1

    Always enjoy how casual your content is. Thanks for sharing the adventure with us!

  • @ianskinner1619
    @ianskinner1619 2 месяца назад +1

    Prodigy and razor111 used to crack games like this back in the 90;s and 00's, they would get games from the local distributor prior to release to public and crack them, most would be out on the day of release or earlier.. at the height of the cracking game, these guys could do what you are doing in about 4 min. package it and ship it in with a bin file of the game. Vaughn, or 'little china' , just north of Toronto.

  • @ac15cr
    @ac15cr 3 месяца назад +3

    Another great video! Please continue, can’t wait for the next.

  • @JamesIsNinja
    @JamesIsNinja 3 месяца назад

    Always happy when I see a new video from you hit my feed, another fun break down!

  • @EER0000
    @EER0000 3 месяца назад

    I really like your reversing adventures! Thanks for the fun times! :D

  • @kinasakuraba
    @kinasakuraba 2 месяца назад +2

    I didn't understand a word of this because I don't know anything about computer coding.
    But man is it awesome to watch guys who know what they're talking about do cool things. So many of these comments are amazing too!

  • @Mireneye
    @Mireneye 3 месяца назад +1

    The hand gestures taught me the most!
    Brilliant video! Thank you for sharing all of these insights into reverse engineering.

  • @2old4gamez
    @2old4gamez 3 месяца назад

    I understood very, very little but was absolutely fascinated throughout. Top job. Subbed for more.

  • @robertmccallen1902
    @robertmccallen1902 Месяц назад

    I think you solved an old riddle from my childhood, ty. My friend and I were playing metal gear for 8 bit Nintendo waaaaaay back in the day. It had the most frustrating password system where it was like 32 characters long and had no backspace. if you entered a letter wrong it required you fill in all the blanks to input and then get rejected. One day my fat finger missed a letter and hit z by mistake. I just filled the rest of the password in with the letter z and it was like a debug code or something. IT was a late game save file with most everything done. We wrote it down and it worked. The look on our faces when it said password accepted was priceless.

  • @cerebraxis607
    @cerebraxis607 2 месяца назад

    This was really interesting and you tapped into my childhood. I went to school to be a microcomputer support specialist but I could never quite grasp the coding. I understood more of what you were doing in this than I did any of the stuff back then.

  • @zech098
    @zech098 Месяц назад

    love this thank you for pointing out the sections of code I've never seen someone do it like this but it make it a lot more coherent

  • @GMYuyuko
    @GMYuyuko 3 месяца назад +1

    Man,your videos are so cool
    I do appreciate them a lot
    Thanks for the entertainment

  • @JoshuaMHiggins
    @JoshuaMHiggins 3 месяца назад +3

    Excellent concise videos here. Love the content, Nathan! I'm not usually excited when I see new vids on my subscriptions these days, good to see you're still fulfilling my youtube experience!
    Thanks for creating these, inspiring me to learn how to code better, gives a huge amount of freedom to explore and learn things rather than relying on other people's work. Keep it up! :)

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +4

      Thanks for the kind words, glad you're enjoying them as much as I am making them (:

    • @98danielray
      @98danielray 3 месяца назад

      that might be a sign to clean your subscriptions.

    • @JoshuaMHiggins
      @JoshuaMHiggins 3 месяца назад

      @@98danielrayCertainly needs a clean for sure. Decades old subs on here still. Sometimes I hold hope for some youtubers, but it's been a bit dry.
      RUclips's main page and suggestions sucks a** which doesn't help finding anyone new.

  • @alderoth01
    @alderoth01 3 месяца назад

    That's insane... I was born with a developmental issue to where things like this just amaze me. I have the hardest time with complex puzzles and this just blew my freaking mind trying to follow how you did it lol. Great video!!

  • @chriskelso723
    @chriskelso723 2 месяца назад

    The last "4 seconds" floored me. You earned a sub. ❤😂

  • @xbinxpurp6118
    @xbinxpurp6118 Месяц назад

    Great video mate! subscribed!

  • @devinorium
    @devinorium 3 месяца назад

    like the videos and the casual format. would have loved to see a more dissected analysis of the validators, but also cool to see the shortest path to a success

  • @johnwhyte1488
    @johnwhyte1488 3 месяца назад

    Just came across this and it’s an easy SUBSCRIBE for me. Brilliant watching go through this explaining what you are doing as you go through the traces and processes.
    Reminded me of the late 80’s, early 90’s. There was a program (ICE springs to mind?) which needed two computers interfaced with a parallel cable. The program would run under the control of ICE? on one computer, whilst the other computer (again under ICE?) displayed the 80xxx disassembly, registers, stack pointer, etc.
    I'll be working my way through the rest of your videos now.
    All the best to you and yours.

  • @fairyroot1653
    @fairyroot1653 Месяц назад

    I really appreciate the great content, and I hope you make the videos more lengthy for u don't want them to end. Also, sharing the code in Git would be awesome for it would allow us to learn. And as always, tnak you.

  • @Klinky87
    @Klinky87 3 месяца назад

    Enjoying your videos! Flashbacks to me trying to figure these things out 15-20 years ago. I mostly failed, but its still a fun puzzle. How do you feel coding has changed, solution wise, 10-15 years ago compared to today. I mean if u look at drm free games today, are they an easier or harder "puzzle" to crack?

  • @nathantron
    @nathantron 3 месяца назад +2

    You should do this for a lot of abandonware games through the ages and show the trends and changes in protection algorithms and how they have evolved.

  • @7eis
    @7eis 3 месяца назад +4

    I can't help but wonder what video projects you've done before this channel. Surely noone can get to this level of greatness starting from scratch in such a short period

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +3

      Thanks for the kind words but I had no real experience before YT. Just been figuring it out as I go along and trying to make each video better than the last one

  • @teafx3
    @teafx3 Месяц назад

    Gave me flashbacks (the good kind) to CS201 and my capstone senior design course when I was in charge of coding an automated pill dispenser. It's so much fun to break down a piece of code and understand it so you can get it to do what you want it to do. Just making something work feels like a very small pushback against the unrelenting tide of entropy and chaos. Well done. Oh, and Black and White was a great game, and I wish somebody else would come out with a game where I can train a giant ape to eat villagers and then poop on their houses.

  • @Fewnity
    @Fewnity 3 месяца назад +7

    Good video! I like when you try to fix old software

  • @limpbiskit66
    @limpbiskit66 3 месяца назад

    The algorithm stuck this in my feed. Glad it did. Subbed

  • @KonKrom
    @KonKrom 2 месяца назад +1

    I love what You done at the end : D

  • @SomethingEls
    @SomethingEls 3 месяца назад +1

    As someone who knows almost nothing about coding this was coherent and interesting to watch

  • @Nubifier
    @Nubifier 2 месяца назад +1

    I still have a working copy of Black&White. I noticed one of the biggest issues was controlling your mouse while in game. After a bit of messing around I found out that the high DPI settings for modern mice just don't work here and I had to use a max DPI of 400 for any semblance of control.

  • @ChrisM541
    @ChrisM541 3 месяца назад

    Superbly done! That was an excellent piece of detective work.
    Question: is there, today, a simple(r) way to access your gfx card from within a VM? (I'm using an AMD 7900XT)

  • @brucegoatly
    @brucegoatly 2 месяца назад

    Back in the days of the BBC Micro I had a game that wouldn't load from my (non-standard) disk drive because the protection code used a call to the drive hardware that wasn't supported. With some luck and a primitive disassembler I managed to get it working. I contacted the games company (small market, remember) and suggested a fix. They then sent me later games to check they would run; some didn't, which led to more fun. I enjoyed the challenge for its own sake rather than for the gameplay, so I enjoyed your video for the memories it brought back!

  • @1Varrok1
    @1Varrok1 3 месяца назад +1

    I appreciate what you're doing, your vids are informative and entertaining 😄
    I kind of hope that you tackle some more bugs/broken features in old games that haven't been solved with community patches already. It seems more of a net positive for the world than redoing what had already been done

    • @nathanbaggs
      @nathanbaggs  3 месяца назад +1

      Please feel free to suggest things that are broken, I make a note of all suggestions (:

    • @1Varrok1
      @1Varrok1 3 месяца назад

      ​@@nathanbaggs Thank you for responding!
      Right now I'm not playing any notably crashy games at the moment, I get reminded of the rather big YT channel, MandaloreGaming, where he sometimes plays niche retro titles, and very early on in the video complains how much of a pain was to run it (especially games that never had a GOG release), and even when he does, it's with some form of compromise on his side
      He did that with his Sacrifice video (in this game he mentioned his game kept randomly reseting his Texture quality setting to low at re-launch), as well as
      Myth 1 (and 2) video (various issues),
      Ring (had many "mystery" issues while trying to run it, unfortunately didn't elaborate on that),
      Warhammer 40K Fire Warrior (audio crackling with reverb on forced him to disable it completely),
      and probably more. Ross from Accursed Farms channel also plays a lot of them, and often stumbles upon small but annoiying issues like that, thought I don't have any examples at hand.
      Feel free to look, if you wish :) Cheers!

  • @charlesturner897
    @charlesturner897 3 месяца назад

    Where you mentioned it was consuming a "-" and the box only allowed for numbers so it was basically skipping it, I would guess that the key has "-" between each string of characters when it's written in the manual, and that is a safety to ignore them if the user keys them in.

  • @Stennishh
    @Stennishh 3 месяца назад

    i remember trying to play this game on windows 7, i needed to do like 3 different things to get it running, and even then at the end i coulsnt save the game.
    great video 👍

  • @Doomsquad99
    @Doomsquad99 Месяц назад

    I remember playing this game as a kid. I don’t think I was old enough to really enjoy fully.
    Interesting video thanks for the info. You’re doing Gods work.

  • @kevfquinn
    @kevfquinn 3 месяца назад +1

    After you described the function processing the last field (take ascii values, subtract 0x30 (that's ascii for '0'), multiply increasingly by 10) the obvious conclusion is that it's just turning the text string "4444" into the actual number - and 4444 in hex is 0x115c which is what you had; so quick intuition confirmed there, without having to work on building clean source code for the Ghidra decompile. It's worth becoming fluent in ascii, hex vs decimal, etc to streamline this kind of stuff which should become obvious without so much work. The first function with its bit twiddling is likely a CRC or similar polynomial-based checksum from the look of the Ghida decompile you flashed up. If you're interested, search for highly optimised CRC algorithms - it's a fascinating topic in its own right - and you might find a good match.

  • @samsoncooper1
    @samsoncooper1 3 месяца назад

    Great video for a great game! Used to spend hours on this, have recently started my own coding journey, everything seems so far away but at the same time I couldn't have imagined doing the things I am doing a month ago!

  • @dave11674
    @dave11674 2 месяца назад

    This game was awesome, nice work on reversing the key code 👍 it was plagued with bugs tho, id like to see you do more work on this ;)

  • @drelephanttube
    @drelephanttube 3 месяца назад

    Love your videos, keep it up!!

  • @ifatreefalse
    @ifatreefalse 3 месяца назад +1

    to be fair, i remember this being the only game i ever cracked with iCE debugger in college 20 years ago, because there was a tutorial out for how to crack games based on this one.

  • @zacadoole1
    @zacadoole1 3 месяца назад +1

    May I suggest using the dark theme ghidra recently added, going back and forth from the dark debugger to the bright white of ghidra is not very easy on the eyes

  • @samaustin765
    @samaustin765 2 месяца назад

    Very interesting, i thought i had a similar problem, but then realised i still had the disks for both B&W and its sequel B&W2.
    I unplugged my DVD drive to install another hard drive so instead of installing from the disk i will probably download an image as it's less effort. I would love to see a video of you trying to get games like this to run properly on newer versions of windows!

  • @ShiroiAkumaSama
    @ShiroiAkumaSama 3 месяца назад

    Even though I will never try this, it is still interesting to watch. I even love how you make older games able to run again.

  • @nicolasmayer618
    @nicolasmayer618 2 месяца назад

    This brought up some memories, just that I was using SoftICE, W32DASM and IDA :)
    Btw, subtracting 0x30 from an ascii input converts a „string“ number to an integer (some stuff you learned and used, you will never forget ;) )

  • @GaneicMehiro
    @GaneicMehiro Месяц назад

    I remember a similar game installer with just numbers where i just once input random numbers three times and managed to install. Good old games

  • @Xitrial
    @Xitrial 25 дней назад

    Some installers use Lua, so using cheat engine and searching the string of the failed code or check, the searching the memory around it will usually lead you to the check in Lua. Then you either modify the Lua or get the requirement (in my case was a file with a specific crc32)

  • @user-bp6xz6ll9t
    @user-bp6xz6ll9t Месяц назад

    is there an extended version of this video that goes into more detail into all the coding and debugging?

  • @GGRS
    @GGRS 3 месяца назад +6

    Loved Black and White. Great work as usual

  • @Harytus
    @Harytus 3 месяца назад +1

    This is exactly the content I am looking forward to. I am wondering if maybe you could explain how the Oblivion's Soul Trap glitch works. I tried to read up online why when you create a spell with it and cast it looking at the feet it becomes permanent, but I only found information that it is actually not really related to Soul Trap but a bug in the targeting system. I hope that it will not cause any licensing issues and you can debug it to explain how it works.
    Great video as usual.

  • @AROAH
    @AROAH 2 месяца назад

    This channel has inspired me to figure out why an old game freezes when a dialog box appears on versions of Windows past XP. I barely know what I’m doing, but it might be related to a text rendering library. We’ll see how it goes. 😅

  • @Novacification
    @Novacification 3 месяца назад +1

    The community patches for the B&W series are pretty good if memory serves. I own all games but downloaded a collection with everything because it was easier to get running and more stable to play.

  • @richardtmulholland
    @richardtmulholland 2 месяца назад +1

    But how did you work around the safe disc program as that’s the issue I’m having trying to run my actual disc with key

  • @Karthig1987
    @Karthig1987 2 месяца назад

    Cool stuff. So for legal reasons the last 4 digits were blurred?

  • @ErizotDread
    @ErizotDread 2 месяца назад

    Reminds me of the early 90s for me trying to get rid of the copy protection on the D&D games for Commodore 64. I had a program called DI-Sector that let me look at all of the info of every sector of a disk represented in ASCII and hexadecimal. They used key words from the booklet that normally came with the game, but since I didn't have that, I would just look for regular words in the ASCII section and change them to the same word, so I only needed one word to input no matter what. Man, I spent a LOT of time in my bedroom! lol

  • @NavySturmGewehr
    @NavySturmGewehr 3 месяца назад

    What would be a good resource to learn this? I want to figure out how some checksums are calculated...

  • @Ultrajamz
    @Ultrajamz 2 месяца назад +1

    I’d love for someone to make a “black & white 3” essentially.

  • @iamaraindog385
    @iamaraindog385 2 месяца назад

    I've still got my CD copy around here somewhere. Loved that game when it came out and am sad it's never been given a port or remaster.

  • @martinceder6137
    @martinceder6137 2 месяца назад

    I've always wondered how key-gens were created back in the day and now i know. You did forget the wicked music and colored box though 😉

  • @Deafca7
    @Deafca7 2 месяца назад

    I rarely leave comments but figure you’ll appreciate reading this if you do check. Your delivery and knowledge is awesome man - I grew up playing black and white. Seeing it pop up in a video where technical reworking/software doctoring is being discussed as that’s what I’m into now as an adult, and it’s for a game I played as a kid. 😅😅
    Subscribed when you didn’t give out those last four digits of the key - you’re a man of integrity and culture. Now I’m gonna rabbit hole your channel cuz this was my first video lol

  • @octogames6823
    @octogames6823 2 месяца назад +1

    I miss black and white. That game was amazing.

  • @JMPDev
    @JMPDev 3 месяца назад

    Absolutely adore black & white. Very much looking forward to you fiddling with it more :)

  • @KimArvidsson
    @KimArvidsson 3 месяца назад +1

    Fortunately, I own the original discs of this game with original serial keys.
    But what I found when installing and attempting to update the game the update installers fails on a 64bit Windows. I solved this by installing and updating the game in a 32 bit virtual system and copied the updated installation to my 64 bit Windows and applied an appropriate no CD crack and the game is then playable on a modern Windows.

  • @witzman
    @witzman 3 месяца назад

    I am looking for a way to play this game since 4 years, wasnt able to find a solution. Glad you did it, even, if it does not help me

  • @skilz8098
    @skilz8098 3 месяца назад

    This kind of reminds me of the algorithm that is used within the NES game The Guardian Legend on how you as the player can put in a long string of characters (glyphs) from a large character set in order to continue where you last left off. This string would store or contain all of the necessary information for the map, the keys and weapons you had, your health, your world position, which bosses you did or didn't beat, etc... The engineering involved to craft such an algorithm is truly amazing especially when considering that most NES games were written in 6502 Assembly.

  • @jorgefreitas5983
    @jorgefreitas5983 3 месяца назад

    Black and White! You just brought me some good old memories... Perhaps even ressurrected the Old God in me to play this game again at some point? XD

  • @Alice.59
    @Alice.59 3 месяца назад +1

    Ah black & white... my 2nd "real" game when I was a kid, just after Age of Empire 2
    I never finished it... back in the days I just couldn't beat nemesis's creature ( I never understood the combat system with creatures, and still don't to this day... each time I won a creature fight it was just by luck and by spamming regen miracle on my creature )
    And in recent days tried multiple time over the ears, from windows 7 to windows 11, I tried multiple time to play it, both with my CD version and with multiple pirated version with all the patchs and all... but the game ALWAYS crash at the last island soon after you capture the Greek village

  • @VirtuosicKitty
    @VirtuosicKitty 2 месяца назад

    RUclips algorithm just decided I wanted to see your content... it wasn't wrong. Loved that game, love this video. I love how you deeply explained your methodology very educational, great insights. 👍🙏

    • @nathanbaggs
      @nathanbaggs  2 месяца назад

      Sometimes it gets it right (: glad you enjoyed

  • @tektight
    @tektight 2 месяца назад

    I still have all my boxes and manuals for games I have from the 90s up till now.

  • @AbAb-th5qe
    @AbAb-th5qe Месяц назад

    MessageBoxA is only the ANSI version. There's also MessageBoxW for wide characters, meaning unicode text.

  • @allpapi3897
    @allpapi3897 2 месяца назад +1

    Only problem I see here is that you are missing out on the best part of just grabbing a key gen which is listening to some of the swankiest music of all time. Idk how or why they always had such groovy tunes in them, but half the fun of the seas in the past was just opening that thing up for the music.

    • @nathanbaggs
      @nathanbaggs  2 месяца назад +1

      I do feel like I missed a trick not including some classic key gen music, maybe next time

  • @RealEngineer
    @RealEngineer 3 месяца назад

    Great video as always!🎉

  • @PW-72648
    @PW-72648 2 месяца назад

    Good content man, thanks