The Free Version Of StarCraft Is NOT What It Seems...

Sdílet
Vložit
  • čas přidán 10. 09. 2024
  • Let's take a deep dive into the original 1998 release of StarCraft as well as the free 2017 version to see how similar they really are.
    Become a member to get early access to videos - / @nathanbaggs
    Want to build cool stuff from scratch? app.codecrafte...
    Tools:
    🐉 - Ghidra - github.com/Nat...
    🐛 - x64dbg - github.com/x64...
    💭 All views are my own 💭

Komentáře • 241

  • @nathanbaggs
    @nathanbaggs  Před měsícem +17

    Want early access to new videos and some behind the scenes content? Consider becoming a channel member czcams.com/channels/QvW_89l7f-hCMP1pzGm4xw.htmljoin
    Other videos you might enjoy:
    czcams.com/video/DvJLIWAGno4/video.html
    czcams.com/video/ILY7tYdIS2Y/video.html
    czcams.com/video/JyWeSVG8hVw/video.html

    • @FutureJacket
      @FutureJacket Před měsícem

      Not the best video title. I watch you because I like your content but if I saw this without knowing your channel I wouldn't click it.

    • @nathanbaggs
      @nathanbaggs  Před měsícem

      Thanks for the input - CZcams titles are hard, I may swap several in and out depending on the performance. I'd be curious to know why you didn't like this specific title?

    • @ellensedge1898
      @ellensedge1898 Před 24 dny +1

      Its interesting, but I'm curious as a layman, what is the purpose? Are they trying to prevent reverse engineering? Are they trying to stop pirating? Or are they trying to prevent people from playing without having B.net?

    • @nathanbaggs
      @nathanbaggs  Před 23 dny

      I suspect they’re trying to stop people cheating

  • @GuildOfCalamity
    @GuildOfCalamity Před měsícem +237

    These reverse engineering videos on older games are fascinating.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +11

      Glad you're enjoying them (:

    • @ChrisR3tro
      @ChrisR3tro Před měsícem +1

      Also my favorite content on this channel!

    • @General_Cap
      @General_Cap Před 13 dny +2

      We'd of had it gold if the source code disk for starcraft 1 was leaked instead of returned.

  • @ZynSays
    @ZynSays Před měsícem +98

    "Why is my VM talking to me!?"
    Oh man. Years ago now, I started a windows 10 install, got interrupted, closed it and stuffed it into my backpack. I figured it'd go into sleep mode, so I sure was shocked about 10 minutes later when my backpack started yelling at me as I was walking down the street.
    I get that it's probably good for accessibility, but an installer speaking unprompted sure is jarring.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +28

      Computers should only speak when spoken to

  • @RobertJGowans
    @RobertJGowans Před měsícem +83

    I have vivid memories of guessing the key as a kid. I was joking with a friend saying "don't worry, we'll just try all combinations". Starting with all zeroes and incrementing only the last digit by 1 each time. Turns out, this worked with the final digit being "3". What was more interesting, is that after discovering this, we found this trick (and variations of) worked on many different games.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +12

      A few people have shared stories like this, which is fascinating. Thanks!

    • @L3monsta
      @L3monsta Před 26 dny +9

      I have a similar memory that I had all but forgotten. Went to stay with my grandparents and brought the CD with me to install there but didn't have the key. Was frustrated and upset so I just spammed letters and numbers and got it on a few tries... Thought it was a miracle at the time 😂

  • @KX36
    @KX36 Před měsícem +91

    VM: What is my purpose?
    Nathan: You run an old game in which I will only be looking for the rendering code.
    VM: Oh my God.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +27

      I would feel some sort of mechanical sympathy for my VM, if VirtualBox didn't keep crashing (:

    • @cho4d
      @cho4d Před měsícem +5

      if VMs are butter bot does that make containers meseeks?

    • @nangld
      @nangld Před měsícem +1

      @@nathanbaggs Virtual Box is not a proper emulator, but a virtualization thingie. You need something like pcem.

    • @IntegerOfDoom
      @IntegerOfDoom Před 24 dny

      As long as the butter is passed all is well.

  • @LeftJoystick
    @LeftJoystick Před měsícem +95

    THAT CD KEY THING EXPLAINS SO MUCH. I swore I once “guessed” a CD-Key as a kid.
    It turns out I might just have gotten lucky with the last number?
    Nice to know it is possible to just spam numbers and possibly have it work! Lolol

    • @nathanbaggs
      @nathanbaggs  Před měsícem +21

      I was really hoping someone would comment saying they tried this all those years a go (looks like you're not the only one!) (:

    • @Bobbias
      @Bobbias Před měsícem +4

      Yeah the technique they're using is called a checksum. It's not meant for security, it's meant to be used as error detection when transmitting/receiving data. If the data changed but the checksum didn't, there's an error somewhere in the message.
      This can be used for things like checking if the contents of a file have been tampered with by including a checksum of the file's contents in the file, assuming the user wasn't smart enough to fix the checksum while they were tampering with the data.
      If the program knows a file isn't supposed to change no matter what, they can keep a hard-coded copy of the checksum and detect if you changed the file even if you fixed the file's internal checksum. Of course, a smart user can just find the code that checks this and bypass it or edit the program's copy of the checksum to match the hacked file too...

    • @alexxx4434
      @alexxx4434 Před měsícem +6

      Worked the same with credit card numbers ;)

    • @musickid43
      @musickid43 Před měsícem

      @@alexxx4434 Credit cards just follow the Luhn Algorithm with the added check that the first digit identifies which type of card it is.

    • @monad_tcp
      @monad_tcp Před 29 dny +1

      111-1111-1112

  • @jesus287
    @jesus287 Před měsícem +45

    the fun thing is that if you look closely, the "old graphics" on the remastered version actually don't look the same as the original, in part maybe because the new one was made to support zooming in and out, as well as widescreen vs. 4:3 ratios, so likely isn't considering the canvas it draws to as a fixed number of pixels

    • @theshinken
      @theshinken Před 18 dny +7

      At first the classic graphics looked absolutely horrible when Blizzard released the remastered version with REALLY ugly upscaling. They improved it a bit since then, but it still doesn't look as good as SC BW 1.16.1 or before with a good ddraw.dll replacement.

  • @cho4d
    @cho4d Před měsícem +60

    the utter misery of everyone and their dog requiring a game launcher.... i was pretty loathe to hop on the steam bandwagon and that is actually providing some value to the end user. hell no dawg i'm not going to have 3 or 4 game launchers so you can "synergise your brand". just like i'm not subscribing to 5 streaming services to watch 1 show on each service.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +12

      Yes I agree it's the same with steaming services - everyone wants their slice of the pie

    • @monad_tcp
      @monad_tcp Před 29 dny +8

      ​It's the enshittification. Everything must be a cable-TV subscription instead of a Box product.

    • @theicyphoenix_7745
      @theicyphoenix_7745 Před 21 dnem +1

      agreed,tho as legally i cant get StarCraft any other way it is what it is,i also hate how they promote their other games into my face when i only litteraly care about StarCraft,someone told me StarCraft characters appear in heroes of the storm,but all i got was some random world of warcraft character so 1 minute after installing it i deleted it,so if i could play StarCraft without a launcher it would sure feel refreshing but i guess you gotta do what you gotta do

  • @beidero
    @beidero Před měsícem +37

    Man that starcraft opening sound, classic. Also mounting cd images, haven't done that for years

    • @nathanbaggs
      @nathanbaggs  Před měsícem +5

      It was a simpler time

    • @beidero
      @beidero Před měsícem +2

      @@nathanbaggs Not sure sure, today everything is Plug n' Play. Back in the day I recall spending hours slightly adjusting memory allocation in dos to get games to run in a stable manner, after all we only had 16 mb (and we had a lot for that time). I ended up memorizing what settings I needed for every game I wanted to play. Today you just hit the game icon on your phone and if it doesn't work you uninstall and try the next one.

    • @raiden72
      @raiden72 Před 13 dny

      Daemon tools, or Alcohol 120% , remember those tools? ❤

  • @MobCat_
    @MobCat_ Před měsícem +34

    Everything is open source if you can read asm.
    I really like these deep technical dives on code like this.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +3

      Thanks! They take a long time to make but I've been pretty overwhelmed by the positive response

  • @TAK-YON_
    @TAK-YON_ Před 28 dny +28

    thank god you censored the key, now i have no idea what it might've been

    • @nathanbaggs
      @nathanbaggs  Před 27 dny +10

      Got to be careful with information like that

  • @RossWasTaken
    @RossWasTaken Před měsícem +13

    These videos are still really interesting even when you only understand 10% of the content

  • @ZeroCiaran
    @ZeroCiaran Před měsícem +93

    Very interesting comparison. I also hate when launchers require you to run the game from within them instead of direct from the exe file - which is why I quite like GOG - it allows that.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +19

      I get why they do it but I don’t want a different launcher for every game I play

    • @maryrose2676
      @maryrose2676 Před 24 dny +3

      ​@@nathanbaggsI just make a shortcut of the gog .exes and launch them from steam.

    • @bluetooth2677
      @bluetooth2677 Před 16 dny

      ​​​@@maryrose2676I think steam is a terrible launcher for a couple reasons. But then again it doesn't have much competition.
      Personally I like playnite over every launcher out. I have all my GOG, console, and steam games on it.

    • @maryrose2676
      @maryrose2676 Před 16 dny

      @@bluetooth2677 I play with a lot of mods, Steam's native mod support is what drew me in. But I agree. For games without mod support, I don't use steam. Personally, the best game launcher I have is my games folder. Playnite seems interesting. Looking at it now. Thanks for mentioning it.

    • @liarnn3767
      @liarnn3767 Před 11 dny

      ​@@bluetooth2677why do you think it is terrible? I'm sincerely curious

  • @Maxjoker98
    @Maxjoker98 Před měsícem +22

    2:39 I like how you censored the actual key part of the CD-key, it's hilarious :P
    I'd guess you can't legally protect a single digit key, but you never know!

  • @Winnetou17
    @Winnetou17 Před měsícem +19

    Nice view!
    I do have to point out that you're comparing version 1.04 (I think, this was the first BroodWar version) to version 1.16 or something like that (too lazy to check the exact version)
    So what they provided might actually by the original one with the latest patch before the remaster. I do remember they had to patch it at one point for the colors to work ok on Windows 7 and later for example. And they also fixed A LOT of exploits that were still working in version 1.04. And multiplayer improvements. So, can't say I'm that surprised they're very different. They probably have something anti-cheating too.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +2

      Thanks for the insight, I'll admit to not going too deep on version comparison. It was whatever version i could find for both 1998 and 2017

    • @Winnetou17
      @Winnetou17 Před měsícem

      @@nathanbaggs Yeah, it's still interesting, nevertheless.

    • @cr128
      @cr128 Před 26 dny +4

      The updated version he got from BattleNet would be the same version number as the latest Remastered patch, so 1.23.10 or whatever, because the modern free version is just Remastered with the new graphics and some other features disabled. This can be pretty obvious from the fact that the free version has a massively bloated file size compared to older versions, because it still includes all the Remastered files.
      I believe that a lot of the differences between it and the last legacy version, 1.16.1 from 2009, actually go back to the 1.17 and 1.18 patches that were released in 2017 during the run-up to Remastered’s release. Most mods ever made for the game need 1.16.1 or an earlier version, even many newer ones made after the new patches, because the new patches broke a bunch of things and were more difficult to mod than the earlier versions.

  • @ysakhno
    @ysakhno Před 14 dny +4

    Storm was not an engine but a sort of abstraction mechanism for OS-specific stuff: reading files (including files from inside compressed MPQs), memory management, dispatching window messages, manipulating textual strings, etc. You can find various lists on the Internet that match function ordinals to their 'real' names. It was also used by other Blizzard games like Diablo and WarCraft, albeit with some modifications between games (Storm.dll from one game would not be a drop-in replacement for the other game).

  • @momom6197
    @momom6197 Před 22 dny +6

    French player here. They completely changed the French translation with the Remaster. Now, the translation is more literal and less evocative, and sometimes completely nonsensical. It also messed up keyboard shortcuts.

    • @nathanbaggs
      @nathanbaggs  Před 22 dny

      That’s a shame, did you go back to the original?

    • @momom6197
      @momom6197 Před 15 dny

      @@nathanbaggs No, I don't know how to do it, if it's even possible.

  • @RagasonPvP
    @RagasonPvP Před měsícem +19

    Always love old implementations of license keys!

    • @nathanbaggs
      @nathanbaggs  Před měsícem +11

      I get the feeling it's something they felt they needed to include but didn't put a lot of effort into

    • @slavikdoter
      @slavikdoter Před měsícem +2

      What if they explicitly made low effort in that place in a move against capitalization?

    • @rnts08
      @rnts08 Před 29 dny +4

      At the time when sc came out most developers knew that their games would be cracked and warezed before it hit the shelves anyway, so most implementations had the same spirit as how locks only keep honest thieves out.

  • @Novacification
    @Novacification Před měsícem +16

    The anti-debugger and obfuscation methods are truly sad given the trend in the industry to screw over consumers. Blizzard is actually among the worst when it comes to honoring purchases, having yanked at least two games so far.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +3

      They have to do something to prevent cheaters though right?

    • @Novacification
      @Novacification Před měsícem +7

      @@nathanbaggs true but then what happens when they become the cheaters? :)

  • @seiaghen
    @seiaghen Před měsícem +8

    i remember putting a random number for the serial in 1999 and it worked, finally now i know why

    • @nathanbaggs
      @nathanbaggs  Před měsícem +5

      I was really hoping someone would comment saying they tried this all those years a go (:

    • @seiaghen
      @seiaghen Před měsícem

      ​@@nathanbaggs pretty sure it worked just to enter the game (single-player), to acces the battle-net we used BNGatewayEditor to edit the server list and add our private servers though

    • @stambe8605
      @stambe8605 Před měsícem

      @@nathanbaggs I also remember putting 3's or 1's and it worked perfectly every time :)

  • @pirat87pl
    @pirat87pl Před 21 dnem +8

    That CD-key trick sure would have blown my 12yo mind.
    Imagine the 'playground cred' this would have gotten me! Infinite Starcraft keys!

    • @nathanbaggs
      @nathanbaggs  Před 21 dnem +2

      A few people have shared stories about guessing a valid key, at least now we know why (:

  • @ltsaboat
    @ltsaboat Před měsícem +4

    0:14 those transitions are giving me chills

  • @dertyp3463
    @dertyp3463 Před 22 dny +3

    Ghidra naming all the functions "FUN" does indeed make it more enjoyable.

  • @arivald6677
    @arivald6677 Před měsícem +4

    1:50 Just go 123456789123 or something. Starcraft CD-Keys werent exactly bulletproof.

  • @p_mouse8676
    @p_mouse8676 Před měsícem +6

    Maybe i am mistaken, but I swear there was a different free version that just ran straight away without all the online nonsense?🤔

    • @cr128
      @cr128 Před 26 dny +5

      You can still find unofficial downloads for the last “old” version, 1.16.1 from 2009, which still works fine but is missing both any new features and new issues that were introduced with the newer patches and Remastered from 2017 onward. The current free version is literally just Remastered with the paid features disabled.

  • @bahadirozer
    @bahadirozer Před 26 dny +6

    I didn't understand much but I like the video

  • @Artanis02sk
    @Artanis02sk Před 21 dnem +3

    Back in the day, I always used 2222-22222-2223 or 3333-33333-3332 cd-key (can't remember which one worked) - but it didn't allow BNET access.

  • @BouncingCow
    @BouncingCow Před 23 dny +1

    if I remember correctly from the lan parties as a kid, we always used 1 followed by just 0 to get it working on all pcs

  • @kigf4785
    @kigf4785 Před měsícem +11

    I think diablo also uses storm

    • @nathanbaggs
      @nathanbaggs  Před měsícem +6

      Ah interesting, thanks!

    • @Bobbias
      @Bobbias Před měsícem +12

      ​@@nathanbaggsDiablo, D2, StarCraft, Warcraft 2 and 3 all use storm.dll. its primary use is reading the MPQ files used to store game data for these games, though the DLL also contains functions relating to networking, memory management, and such.

    • @sintanan469
      @sintanan469 Před 29 dny +1

      @@Bobbias WoW also used Storm until Wrath of the Lich King when they changed the rendering engine to allow for higher quality rendering on in-game cutscenes when you don't have control of the camera.

    • @Bobbias
      @Bobbias Před 29 dny +2

      @@sintanan469 ahh, I somehow completely blanked on that one.

    • @sintanan469
      @sintanan469 Před 29 dny +6

      @@Bobbias It's actually pretty funny in the WoW case. The terrain generation is the War3 map render just expanded on with larger maps. Terrain features and pathing maps are added to original 2004 vanilla WoW just like map makers did for War3 and TFT custom maps. In theory if War3 could handle WoW map sizes you could just port the terrain over 1-to-1 because the maps are encoded the same way War3 encodes maps, too.
      Turns out when you give fans the keys to the kingdom with reverse engineering Storm.dll and .mpq files for six years, people knew how to edit WoW day 1.

  • @zeiphon
    @zeiphon Před měsícem +3

    glDrawElementsBaseVertex was introduced in OpenGL 3.2 released in 2009, so definitely an updated drawing pipeline.
    Would be very interested to see the API trace of the original running in OpenGL mode

    • @nathanbaggs
      @nathanbaggs  Před 29 dny +1

      It didn’t occur to me till after filming that there’s probably an OpenGL renderer for the original as it was also release on mac

  • @karpai5427
    @karpai5427 Před měsícem +7

    Starcraft Remastered has "dynamic lighting" so there is a reason probably maybe that it has renderer thing idk.

  • @VioletGiraffe
    @VioletGiraffe Před 27 dny +2

    Would be interesting to learn how their anti-debugging techniques work, exactly.

  • @viniguazzelli807
    @viniguazzelli807 Před měsícem +3

    Man, when are you going to create a course to teach us mortals? Cheers from Brazil!

  • @MxIxTxC
    @MxIxTxC Před 20 dny +1

    If i could go back to the day i first played starcraft i would. Hardly any games match it in my childhood

    • @raiden72
      @raiden72 Před 13 dny

      Same dude and the cinematics were otherworldly, So many nights spent in dark rooms finishing maps to the end.

  • @harm991
    @harm991 Před měsícem +4

    The conclusion seems rather vague for the basic viewer.
    So the old one is using DirectX5 and the new one DirectX9/OpenGL and is completely remade into the newer rendering engines? Which also is difficult since the game needs to be exactly the same as the old one in terms of gameplay.

    • @sintanan469
      @sintanan469 Před měsícem +4

      The gameplay between the remaster and the original is close, but there's some minor differences under the hood that result in some different functions. Easiest comparison is calling them rounding errors; for 99.9% of players there is no difference. For people that mess around with the functionality of the game in some hacked custom maps, there are a couple things that do not work as they should in the remaster.

    • @monad_tcp
      @monad_tcp Před 29 dny +1

      I bet the engine was separated in two parts, one that dealt with the operating system and the other that just produced frame buffers using the CPU.
      If he could find a way to skip the anti-debugger protection , he would land on the reminiscent code of the Storm engine.
      Remember that the game is entirely 2D and basically made without any acceleration at all.
      Besides a BitBlt copying rects of pixels from one buffer to another.

    • @monad_tcp
      @monad_tcp Před 29 dny +5

      ​​@@sintanan469 I think the rounding errors are because they changed compilers and didn't pay attention to the change in behavior of the floating point math library.
      That's very typical.

  • @89BlackGatomon
    @89BlackGatomon Před 21 dnem +3

    I still have the original and add on on cd

  • @raiden72
    @raiden72 Před 13 dny

    This is absolutely fascinating mate, thank you for sharing. I grew up playing starcraft, online one of my favorite maps was probavly "PTWTC" and tarpit D lol, also Evolves and cat and mouse

  • @boreduser12
    @boreduser12 Před 17 dny +2

    I thought this would be about how the in game experience is different. As in if the campaign or some graphics or something is different.

  • @phantasMoon69
    @phantasMoon69 Před 12 dny

    Having the original Star Craft 1 code would be nice. Shame that guy some years ago returned it to Blizzard. I'd've loved to see that

  • @GalaxyCat001
    @GalaxyCat001 Před měsícem +2

    Hi, do you think you could RE a game called Space Empires IV, there are a couple of quirks I would love to fix/change on a modern system, happy to elaborate further if interested. I think the game was written in Delphi.
    Also, what limits are there to Ghidra, can you do a tutorial video at some point though no rush? Great video otherwise, loved SC1.

  • @krzysztofputerko1943
    @krzysztofputerko1943 Před 4 dny

    Me who have never seen this channel before and got this video show up in "suggested" section, thinking this video would be about changes made about some campaign missions or units stats or something more in terms of gameplay: "INTERESTING".
    Also me who have watched whole video while I have never had any experience with any coding: "I like your funny words magic man".

  • @sokarash
    @sokarash Před 21 dnem +1

    I think the changes make sense. DirectDraw is pretty much obsolete at this point, plus it had compatibility problems with modern Windows version, especially on Vista and 7. So redoing the rendering in something more modern, that also leverages the power of modern GPUs makes sense. Plus it enables some of the new graphical effects in the rematster. I guess it was already developed for the remaster and backported, or the "new" version is just remaster without the new graphics. After all, you can switch between them on the fly. I don't know why D3D9 instead of 10 or 11, maybe because it has less overhead? OGL maybe for the OSX Version, but on the other hand OpenGL support is legendary broken on Mac devices for years.
    And because you can also play in the online ladder, those obfuscation techniques also makes sense. Not everbody looks into the executables to learn about it like you, but to find weaknesses to cheat.

  • @Ch40zz
    @Ch40zz Před 29 dny +1

    You can just dump the process when its running and load that into IDA/Ghidra, their packer is not a big obstacle

    • @nathanbaggs
      @nathanbaggs  Před 29 dny +2

      Funnily enough I did try this but ghidra just spun for hours trying to process it, presumably I did something wrong

  • @Fewnity
    @Fewnity Před měsícem +4

    Do you think you can RE diablo? This may be interesting!

    • @nathanbaggs
      @nathanbaggs  Před měsícem +9

      It's on my list (:

    • @Fewnity
      @Fewnity Před měsícem

      @@nathanbaggs Nice! Btw this video was great!

    • @sintanan469
      @sintanan469 Před měsícem +2

      @@nathanbaggs You're going to run into the Storm.dll and MPQ files again with Diablo. Diablo 1 is when Blizzard created their archive system used for most their games. As far as my understanding of it, it was with Overwatch when they finally changed from the original MPQ archive file to their newer version of MPQ and stopped using Storm.dll to translate between the MPQ archive and the game's executable.

  • @WPFreeinternet
    @WPFreeinternet Před 9 dny

    "Why is my virtual machine talking to me?"

  • @JohnAlanWoods
    @JohnAlanWoods Před 29 dny

    Absolutely great vids. Love this combination of learning, nostalgia and a hint of sarcasm 😂

  • @rodrigobogado653
    @rodrigobogado653 Před měsícem +3

    Really good analysis! Do you have a route on how to start the reverse engineering part in video games?

    • @nathanbaggs
      @nathanbaggs  Před měsícem +7

      You need a goal with RE so I normally start with trying to answer a question “how does the ai work?”, “how does the rendering work?”, etc. As a practical starting point can’t go wrong by starting with strings

    • @rodrigobogado653
      @rodrigobogado653 Před měsícem

      @@nathanbaggs thanks!

  • @marblemunkey
    @marblemunkey Před 24 dny +1

    Okay, now I'm curious if the free version is the same version that was included with the Starcraft 2 deluxe box. It included a copy of Starcraft on a USB thumb drive (shaped like Raynor's dog tag)

  • @raggedclawstarcraft6562

    Well yes. I noticed that right away since the in-game fonts didn't render how they rendered in the 1.16.x version of the game

  • @JohnAlanWoods
    @JohnAlanWoods Před 29 dny

    An assembly tutorial for Apple Silicon would be really interesting, in your unique style

  • @pandaprewmaster325
    @pandaprewmaster325 Před 18 dny

    Having starcraft on my list of games to play in the future , since I kinda have no clue what or where to download a free full version with full content I thought you were going to show some stuff removed from free version well good to know thats not the case.

  • @amyshaw893
    @amyshaw893 Před měsícem +1

    If you wanted to see if they were different, couldn't you just hash both of them and compare?

    • @nathanbaggs
      @nathanbaggs  Před měsícem +2

      I'm more interested in how they are different

  • @DezsikeDevil1
    @DezsikeDevil1 Před 26 dny +4

    The original Starcraft had issues with Windows 7, the colors were all glitched. It took them a while but eventually they released a patch that fixed it. Maybe that's the point when they changed the renderer. It was long before it became free. I remember the original worked on a non-3D accelerated graphics card, many games from that era had so ugly graphics in software rendered mode, Starcraft somehow managed to get much more out of it. And it came out in 1997 so the guy uploaded it to the archive messed it up. A 32 bit game in 1993? The developers must had a time machine to get a copy of Windows 95.

    • @marknewellmusic
      @marknewellmusic Před 24 dny

      This is likely correct and relates to Windows 7 and DirectDraw.
      If I remember correctly, I believe Windows 7 didn't handle DirectDraw by default without users using compatibility mode or altering settings in directdiag

    • @Tamamo-no-Bae
      @Tamamo-no-Bae Před 23 dny

      Indeed I'd love a comparison between the free one and the last patch of the original.

  • @boreduser12
    @boreduser12 Před 17 dny

    I wish I was able to do all the stuff you did in the beginning to install the original!

  • @TheKnightMaps
    @TheKnightMaps Před 21 dnem

    This is cool, thanks!
    But if you all what to know why "Blizzard" had to remaster SCBW to SC:R ASAP, it was becoming full of hackers and bots, killing games before you could even make them! it was not fun..
    PS patch 1.17.0 pre-release, was still SC:BW old code, until 1.80.0 patch was release, "official StarCraft Remaster."
    And I don't know how you figure this is not "OG SC" because if this was true maps that people made won't not work at all.
    Remaster also allowed newer Mac PCs and newer Windows OS PC to work.

  • @vladislavkaras491
    @vladislavkaras491 Před 21 dnem

    It was quite interesting to watch about it!
    Thanks for the video!

  • @dangthinh90
    @dangthinh90 Před 20 dny

    I think the free version of Starcraft Brood War got a downgrade in graphics. It looks so blurry compared right now.

  • @intel386DX
    @intel386DX Před 17 dny

    They added 16:9 proportion in the remake.

  • @jomoju
    @jomoju Před měsícem +6

    Storm gate now makes more sense for the new game made by OG starcraft2 developers

  • @karljessonking8593
    @karljessonking8593 Před 25 dny

    hello, id like to starting learning this as a hobby. im an adult no job. how do i start and where? ofc C? from there where? how can i understand what you are saying? im a bw fanatic when i was a kid

  • @XantheFIN
    @XantheFIN Před 21 dnem

    So.. did archiver include viruses as used vm or not?

  • @TeraunceFoaloke
    @TeraunceFoaloke Před 22 dny

    Wow, how did you not know all 3's was a valid key? That's been common knowledge since forever.

    • @nathanbaggs
      @nathanbaggs  Před 22 dny

      But I wanted to know why all 3’s was valid

  • @raggedclawstarcraft6562

    4:38 - the most likely answer is yes.

  • @NaiadViolet
    @NaiadViolet Před 10 dny

    Not sure if anyone else mentioned ot. But you kinda look like the original Jim Raynor portrait in game.

  • @mrLumen2
    @mrLumen2 Před 8 dny

    за 12 минут узнал больше, чем за 4 года в университете.

    • @nathanbaggs
      @nathanbaggs  Před 8 dny +2

      If google translate worked for me then I’m glad you enjoyed it!

  • @Heckatomba
    @Heckatomba Před měsícem +2

    You said the original game used DirectX, but iirc StarCraft was also released on Mac, so that means they must have used a different API for that version. Are there traces of that in the original version?

    • @woldemunster9244
      @woldemunster9244 Před měsícem +1

      StarCraft.

    • @Heckatomba
      @Heckatomba Před měsícem +2

      @@woldemunster9244 I blame my spell checker

    • @brandonkellner2920
      @brandonkellner2920 Před měsícem

      In the video, he also looks at OpenGL for the new version. Probably used OpenGL back then, too.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +3

      I would expect the mac version to use OpenGL, although I'll admit to not looking into it. Given the time frame I would expect it to be old school fixed function pipeline OpenGL - so still different to this new version

    • @hylje
      @hylje Před měsícem +1

      It wasn’t ”also released” on Mac, the same release, the same CDs and all, worked on both Mac and Windows.

  • @tHiNk413
    @tHiNk413 Před 5 dny

    So.... 12 numbers and the last "proof number" derives from the previous 12? That sounds quite like ISBN/EANs

  • @SkyFly19853
    @SkyFly19853 Před 12 dny

    I find this video very interesting as a video game developer.
    P.S. I am developing a Civ like video game.

  • @jbragg33
    @jbragg33 Před měsícem +1

    I'm not sure I totally understood the part with the CD-key, it can't be that simplistic that it just checks if the last digit is equal to some value and then let you in. Why on earth would they do something like that ? I'm confused

    • @nathanbaggs
      @nathanbaggs  Před měsícem +3

      I'm as surprised as you are, but as far as I can tell that's what the code does

    • @0xeb-
      @0xeb- Před měsícem +3

      Yes. That was common back in the day. See how credit card numbers have same concept.

    • @filipstamate1564
      @filipstamate1564 Před měsícem

      @@0xeb- It's not the same concept at all. A credit card number will have a check digit that depends on the other numbers. So you can't just guess a credit card number by changing the last digit.
      This, as far as I understand, simply checks if the last digit is something, and doesn't care at all about the other numbers.

    • @nathanbaggs
      @nathanbaggs  Před měsícem +4

      @filipstamate1564 - it calculates the checksum from the first 14 digits and compares that to the 15th, which means there's only 10 possible outputs

    • @Bobbias
      @Bobbias Před měsícem +2

      Which is exactly the same as a credit card, like 0xeb- said.

  • @papijaygaming2996
    @papijaygaming2996 Před 6 dny

    The video is fascinating, however, its more like a bug bounty documentation than a comparison of the old and the new releases, but, still its a good video anyway.

  • @neohavic6012
    @neohavic6012 Před měsícem

    I love watching reverse engineering videos, even though I only have an amateur ability in C/C++ (I’m a PLC programmer; similar, but simplified, sort of). But I feel like the more I watch of these, the more I can learn by osmosis… that’s the plan anyways 😭

  • @qwe5616
    @qwe5616 Před 24 dny +1

    The game has been patched continuously for 26 years. I don't get what comparing the 1998 release to the current one is supposed to prove. What's not what it seems?
    Clickbait title aside, the video was interesting.

  • @eugeneponomarov7429
    @eugeneponomarov7429 Před 29 dny

    I never thought that "anti-debugging" is a thing 😮

  • @TheHackysack
    @TheHackysack Před měsícem

    eyyyy! I spent a large portion of my life playing UMS maps lol

  • @loganhodgsn
    @loganhodgsn Před měsícem

    I'd love to see how a battle vs the anti-debug software might take place!

    • @nathanbaggs
      @nathanbaggs  Před měsícem +4

      Whilst it would be fun to see how far I could push it I'm keen to not give away anything that would let people cheat in still active games

    • @loganhodgsn
      @loganhodgsn Před měsícem +1

      @@nathanbaggs An old game, or other software with similar self-preservation techniques would still be cool!

  • @bidu2331324
    @bidu2331324 Před měsícem

    Brood war is still the best competitive rts ever and wont be topped any time soon. They accidentally made a near perfect game.

  • @62chipo
    @62chipo Před 13 dny

    i played this when i was kid

    • @62chipo
      @62chipo Před 13 dny

      the free version yes, i believe i still have the disc

  • @dikkepikenhardeballe
    @dikkepikenhardeballe Před 29 dny

    Starcraft is a balls to the walls test of wits. Not for the feint of heart. It was lucky hit accident made by an unlikely group of nerds who loved RTS.
    That era is long gone and will never be back. Now it only resides as a memory and for the real nerds. Maven's Haven and Katan's Lair were kickass on kali.

  • @redlopa1
    @redlopa1 Před měsícem +3

    0:05 It’s a cultural phenomenon. Phenomena is plural. “It’s a cultural phenomena.” makes as much sense as “Look at that trees.”. Just proving we’re paying attention!

  • @webfischi
    @webfischi Před 24 dny

    Running a VM in Turtle mode is not a good idea, that Windows 10 install must have taken forever

  • @nangld
    @nangld Před měsícem

    Back in the day Blizzard sued people to hell for reverse engineering Starcraft

  • @IIIspirit
    @IIIspirit Před měsícem

    Impressive - You know your stuff.
    I hope Epic will hire you, so they finally fix anticheat for Linux and I can play fortnite and such.

  • @starc0w
    @starc0w Před 28 dny

    Thanks! 🙂

  • @mo938
    @mo938 Před měsícem

    OMG I freakin love SC!!!! And I love your vids!! What a perfect match.

    • @nathanbaggs
      @nathanbaggs  Před měsícem

      These nostalgic games seem to be hitting the mark at the moment

  • @bishopcupoison4550
    @bishopcupoison4550 Před měsícem +1

    Ребята програмисты, ктото может обьяснить чего он доббился своими изысканиями и что он в итоге сделал. Я вроде внимательно слушал , но результата так и не увидил.

    • @sdjhgfkshfswdfhskljh3360
      @sdjhgfkshfswdfhskljh3360 Před měsícem +1

      Он взял очевидно различающиеся версии игры и убедился, что они таки различаются.

    • @fenathesnake
      @fenathesnake Před 29 dny +2

      в ремастере стоит защита от дебаггера поэтому он не смог его нормально изучить, поэтому видео достаточно бессмысленное. А так, все как сказал комментатор выше.

    • @bishopcupoison4550
      @bishopcupoison4550 Před 29 dny

      @@sdjhgfkshfswdfhskljh3360 спасибо. я так и понял. но не понял для чего , думал может вторая часть будет где он к 1й подкинет второй принцип ренедера или еще чего нибудь.

    • @bishopcupoison4550
      @bishopcupoison4550 Před 29 dny +1

      @@fenathesnake очень бессмысленное. а чего он изначально хотел, он ведь тоже не обозначил?

    • @fenathesnake
      @fenathesnake Před 29 dny

      @@bishopcupoison4550 вначале говорит, что хочет посмотреть насколько отличается рендер (отрисовка графики).
      Итог: в оригинале используется DirectX 5, в ремастере DirectX 9/OpenGL (что достаточно очевидно и без реверса)
      В принципе видео для людей увлекающихся реверс-инжинирингом, интересно посмотреть как чел разбирает игры и какой инструментарий использует, для остальных полезной инфы тут нет.

  • @kekitech
    @kekitech Před 26 dny

    Comment for the algo... Also i need to check if you've ever done one of there for the old black and white 1 or 2, i still wonder to this day how the f***ing ball mouse controlled 3D hand gestures where so good. I need to see that code.

  • @djdoc06
    @djdoc06 Před 13 dny

    Well they up scaled it, which they said they’d do, because the original resolution is unbearable in 2024.

  • @JoshIbbotson
    @JoshIbbotson Před 29 dny

    Please do sc2, my favourite game of all time

  • @bc3f4a
    @bc3f4a Před 14 dny

    It always looks so easy. :D

  • @Classic_DionysuS
    @Classic_DionysuS Před 26 dny

    It's still frustrating that remastered can barely run online without being a giant lag fest in 2024

  • @garbuz3324
    @garbuz3324 Před 26 dny +1

    the video is interesting, the clickbait is a shame

  • @danielpakiam2629
    @danielpakiam2629 Před 20 dny

    Debugger wouldn't run coz you have not enough minerals 😂

  • @AlexeiVoronin
    @AlexeiVoronin Před měsícem

    LOL, you can just fill all the CD key fields with the number 3 (i.e. 3333 33333 3333) and it accepts it without question. The whole rummaging through the source code and trying out different numbers was quite unnecessary ;)

    • @nathanbaggs
      @nathanbaggs  Před měsícem +2

      I had fun, so not a wasted effort. And now we know why all threes works (:

    • @AlexeiVoronin
      @AlexeiVoronin Před měsícem

      @@nathanbaggs Indeed. BTW, I think one other Blizz game acepted fours as its key, but I'm not sure which one.

  • @LukeAvedon
    @LukeAvedon Před měsícem +1

    Holy crap, I haven't thought of 'construct additional pylons' since 1998. Totally forgot about that.

  • @sulljoh1
    @sulljoh1 Před 22 dny

    Bro, I have a CD you could have just borrowed for the video

  • @gamesthatmatter9374
    @gamesthatmatter9374 Před měsícem +1

    this guy is a hack ...kidding . he is really good.. learned a lot from that video of widows to linux coversion . Btw whats your opinion on rust ? Is c++ dead ?

    • @nathanbaggs
      @nathanbaggs  Před měsícem +2

      I'll admit to not having played with rust yet, so I don't really have an opinion. Languages arn't "dead" till people stop using them and there's a lot of C++ out there

    • @gamesthatmatter9374
      @gamesthatmatter9374 Před měsícem

      @@nathanbaggs you are a great person . thank you for your videos

    • @Bobbias
      @Bobbias Před měsícem +1

      C++ is nowhere near dead and probably won't be well and truly dead for like 50+ years at a minimum.
      COBOL is still alive, despite being much older than C++ and having far fewer use cases. COBOL is still important because the machines that run it are massive expensive mainframes and while the code is old, it still runs and nobody wants to have to rewrite it.
      In C++'s case things will be different. The language has orders of magnitude more programmers, it's still being actively developed, and there are more use cases than COBOL. While Rust can replace it for some use cases, it is not a silver bullet. The borrow checker errs on the side of caution, making it much harder to do some things in rust, and making certain code that is perfectly safe an error because the borrow checker can't prove that it is safe.
      In addition, rust relies on LLVM, which does not support every platform that C++ can be compiled on. This further limits Rust.
      Rust is also not the only alternative to C++ for systems programming, so even if C++ was dead, Rust can't possibly claim to be the one that killed it. There's Zig, Odin, Zephyr, C3, Carbon, D, Herb Sutter's cppfront (or whatever it's being called now), and many others out there that you could conceivably choose instead of C++, depending on what your goals are.

  • @thetso99
    @thetso99 Před 15 dny

    Big thumbs up for reverse-engineering. Sexiest part.

  • @calvinfoo
    @calvinfoo Před 28 dny

    Why not just put it the simplest way. Just return 1 regardless what it does.

  • @celticjordan1
    @celticjordan1 Před měsícem +1

    It’s simply said… newer games now and days are blah and boring… older games are more playable and fun and had an amazing story. that means games like Starcraft, Zelda oot, halo, Mario 64 are the goats…

  • @ryan266846
    @ryan266846 Před měsícem

    Don't get a copy strike. You make some of the informative and entertaining stuff on this forsaken platform. Keep it up.... for posterity.

    • @nathanbaggs
      @nathanbaggs  Před měsícem

      I'm pretty careful not to give away anything that would have any impact on existing games or developers. The game is free after all