Blaster Master Pause Glitch and Rotating Tanks Explained - Behind the Code

Sdílet
Vložit
  • čas přidán 25. 11. 2021
  • Some bosses take damage even with the game paused. The tank can rotate around platforms.
    How does all of this work?
    If you would like to support this channel, here is a link to the Displaced Gamers Patreon page - / displacedgamers
    Twitter: / displacedgamers
    Facebook: / displacedgamers
    Instagram: / displacedgamers
    Music:
    Wolf & Raven - / @wolfandraven
    Two Blaster Master MIDI files arranged and played back on a Roland SC-55 Mk2
    #NES #Programming #Code
  • Hry

Komentáře • 171

  • @WilliamPorygon
    @WilliamPorygon Před 2 lety +98

    "That's a lot of detail to put into something you could literally blink and miss."
    *starts blinking when the tank reaches the corners to confirm*

    • @DisplacedGamers
      @DisplacedGamers  Před 2 lety +20

      I did the same thing!

    • @draketungsten74
      @draketungsten74 Před 2 lety +4

      Me too!

    • @GrayBlood1331
      @GrayBlood1331 Před 2 lety +4

      Yep, same here lol

    • @knghtbrd
      @knghtbrd Před 2 lety +5

      That's Sunsoft NES games for you! Their games usually had very high levels of detail. Very high quality productions. That's why the bugs that snuck past them are sometimes such odd things to have missed. But then, all the old games had strange bugs like that. There weren't really patches the way there are now, which in a lot of ways is something I'm glad for.

  • @Hatchet2k4
    @Hatchet2k4 Před 2 lety +78

    I could not click this video fast enough. Blaster Master is such a great game and brings me right back to my childhood!

    • @joedirt4804
      @joedirt4804 Před 2 lety

      Its out now for $4.99 in the PSN store i just got 1st and 2nd game. Its a REMASTERED BUT same game

  • @d00mf00d
    @d00mf00d Před 2 lety +11

    I really love the tank physics. Glad you went over the physics

  • @wardrich
    @wardrich Před 2 lety +13

    Man, it seems like so much work went into the simple act of rotating the tank along a platform. I can't even imagine how much time was spent on the code and logic, and it's something we all just took for granted. Kinda sad in a way.

  • @nickfarace9339
    @nickfarace9339 Před 2 lety +51

    I've put a ton of time into this game as it is one of my all time favorites. There are a few other oddities about it I wish there was time to look at.
    Brining up the jump animation reminds me of an easy bug to replicate, where if you pause the game as the tank is landing and is in that scrunched down animation, it will stay there when you unpause. This is notable because for some reason, in this state the tank acts like it is on ice almost, with almost no velocity change upon letting go of a direction.
    The other is when going through a tank mode door between screens, if you switch directions RIGHT as the animation starts for the screen transition, it can screw up the collision of the map and you will be inside of blocks. Usually moving collision down a few squares over the map tiles. It is possible to repeat this and I think eventually cause soft locks. I always wondered what was even going on in the door transition to cause such an odd change. Doors basically always go left to right, so a shift up and down made no sense.

    • @JB-mm5ff
      @JB-mm5ff Před 2 lety

      Do speed runners know the door glitch ?

    • @nickfarace9339
      @nickfarace9339 Před 2 lety +2

      @@JB-mm5ff I don't think it actually does anything beneficial. It's almost entirely visual. Even the door entrance is moved. Im fuzzy on the details now but it think that pausing fixed the collision but kept you in the same spot so that might be how you soft locked. If that is the case maybe it did something. It didn't seem consistent though. Might have only been certain doors and either rare or frame perfect. Because as a kid I just remember it getting me stuck and ruining a playthrough I just started avoiding it.
      Edit: actually since you brought it up i looked it up. I was off about a few things and it actually does get used in speedrunning.
      It shifts the collision and stuff sideways not up and down. Also it skips the room scrolling transition and just puts you on the other side of the current room. They use it to skip key doors in world 4 and get past the blocks the tank needs to shoot in world 5.

    • @JeanQPublique
      @JeanQPublique Před 2 lety +2

      @@JB-mm5ff I have seen a speed runner use it. I don't know if it was just for show or if it was actually useful. This might have been a GDQ run, so the stakes were low.

    • @Peter_Morris
      @Peter_Morris Před 2 lety +1

      You can also get that crouched look when going through the big doors between levels. If you jump, then hit down to go through the door, you’ll be stuck in the down position when you load in the other side.

    • @randomstarfighter9873
      @randomstarfighter9873 Před 2 lety

      @@nickfarace9339 When I was a kid, I was too nervous to fight the stage 5 boss, so I'd often bail at the last second before committing to the fight. Found the glitch by accident, and it broke the boss fight, making it super easy somehow, like it wouldn't fight back. Ever since, I always tried repeating the glitch on that boss.

  • @trinidad17
    @trinidad17 Před 2 lety +9

    2:25 So it's all a gigantic state machine, where enemies (hopefully) cannot change into player characters and vice versa. Seems like a very compact, simple and smart way to implement behavior in general.

  • @Choralone422
    @Choralone422 Před 2 lety +13

    Blaster Master was the 4th NES game I ever owned and one that I never completed. I remember learning about the grenade pause damage trick after owning the game for a while and I always seemed to manage to get myself killed while trying to pull it off. While it is an awesome game, the only thing I didn't like about it (and also Fester's Quest which I believe uses the same game engine) was losing your gun level whenever you took damage. In the later levels getting hit once or twice could easily kill the entire run which as a kid I was frustrated to no end by! Still a great game!

    • @heavysystemsinc.
      @heavysystemsinc. Před 2 lety +3

      This game could have definitely used a password feature. It's short to play through if you clear it once or twice (and is fun to do so, I owned it as a kid, but couldn't get to the crab with good enough gun, but then again, I never knew you could strafe until today...jeeze, talk about hidden features and I read the instruction book a ton of times when I defeated new bosses because the map in there told you where to look for new areas...anyway, yes...save states are a thing now, and it kind of ruins the flow, but a simple password to start you at the opening scene but with whatever bosses have been defeated seems like it would have been a simple thing to include. i.e. start with first weapon power up is a 4 letter password, start with 2 weapon power up is a 4 letter password, start with hover and 2nd power up is a 4 letter password...etc. etc. Just this alone would have been such a quality-of-life improvement for this game.

    • @andrewr.mcclellan4445
      @andrewr.mcclellan4445 Před rokem

      @@heavysystemsinc. The strafe function wasn't even covered in the manual. It was a hidden function that no one really knew about, even myself. I wondered often if there was a glitch when after I threw a grenade I would remain facing the direction. Now I know why.

  • @maxbrown4594
    @maxbrown4594 Před 2 lety +29

    Your skill at reverse engineering assembly code is astounding, and amazing to see it for one of my favourite NES games!
    I recently took at look at how NES Gradius aims/stores projectile's trajectory at the player position... but I'm sure it took me about 5X the time it would have taken you!

    • @xeridea
      @xeridea Před 2 lety

      6502 Assembler is relatively simple. You can use memory watchers in emulator to see what values are changing, making finding interesting values a lot easier, and NES system in general is pretty simple and static. If you want to see more difficult reverse engineering, watch x86 code disassembly, or malware deobfustication.
      czcams.com/video/Sv8yu12y5zM/video.html
      czcams.com/video/3Q9-X_NRlJc/video.html

  • @Peter_Morris
    @Peter_Morris Před 2 lety +3

    This is such a great video. I played the snot out of Blaster Master as a kid - so much so that when I fired it up on the Switch I didn’t need a map to get through the entire game.
    Sadly my kids were not impressed.
    The pause trick works on the bosses in Stages 2, 4, 6, and 7. I had Nintendo Power as a kid, and if I hadn’t, I probably would’ve pulled my hair out with Blaster Master.

  • @GeneralBolas
    @GeneralBolas Před 2 lety +8

    I find the state management logic for BM to be fascinating. In modern designs, entities might have individual states like whether it's on the ground or the side or ceiling. But the entity itself wouldn't change, and the set of states for an entity is a property of that *kind* of entity.
    The fact that you can change an entity's state to just become an enemy is really weird. But I imagine it reduces complexity, since you wouldn't have to jump to an entity subroutine, then jump to that entity's state subroutine. No need to keep multiple tables lying around.

    • @richardericlope3341
      @richardericlope3341 Před 2 lety +1

      That's what I did here:
      m.czcams.com/video/kncY-TcjN7U/video.html
      Though that ID trick is pure genius and would have been simpler for games with not a lot of object types.

  • @dionelr
    @dionelr Před 2 lety +7

    Woo! Blaster Master was a favorite of mine when I was young. The only thing that prevented us from finishing it was the lack of save slot or password system. It wasn’t until emulation gave us save states that I was finally able to finish it.

  • @HOWLWOLF
    @HOWLWOLF Před 2 lety +8

    Would love to see you tackle the glitch beam from Metroid!

  • @gordontaylor2815
    @gordontaylor2815 Před 2 lety +85

    The original Mega Man on NES has a similar "pause damage" trick, and I suspect a similar root cause behind it. Have you considered doing an episode on that?

    • @DisplacedGamers
      @DisplacedGamers  Před 2 lety +41

      Hmmm. That's a great point...

    • @EmApex
      @EmApex Před 2 lety +22

      It's not really the same thing from what I remember, the Mega Man glitch requires you to unpause and repause the game for damage to be dealt. I'm pretty sure it was caused by the invulnerability timer for enemies counting down even while the game is paused, so when it hits 0 you can unpause to deal damage again. Would still be cool to get a full video on it though, there's probably some other things that are worth taking a look at too (maybe how the magnet beam works or something)

    • @vineheart01
      @vineheart01 Před 2 lety +15

      The MM1 pause glitch revolves around damage immunity timers.
      In MM1, pausing does not remove on screen projectiles and also does not stop the timer that needs to go through before the boss can be hit again. So it holds the projectile in place, waits for the timer to expire, unpause/pause very rapidly to trigger damage (since that part IS paused properly), and rinse repeat.
      My bigger question involving that would be looking at the other 5 megaman games. They all do something to prevent that, either by removing projectiles or just not letting you pause. I wonder if the future megamans had the same issue if the pausing were allowed and w/o deleting projectiles.

    • @luisjogos821
      @luisjogos821 Před 2 lety +6

      @@vineheart01 Megaman 2 and 3 didn't let you switch weapons while their projectiles were on screen (with the exception of MM3's Rush Weapons,which took the properties of the selected weapon).
      MM4 onwards allows you to swap weapons,so not sure what made it work.

    • @TaelsDaFoox
      @TaelsDaFoox Před 2 lety +1

      This has already been explained in another reply, but to explain it simply, enemies have invincibility frames, but they can lose those invincibility frames while the game is paused, so you hit them, pause, wait for them to be hittable again, unpause, the same bullet hits them again, repeat.

  • @unvergebeneid
    @unvergebeneid Před 2 lety +5

    Man, this game has some sweet sprites and some impressive animation!

  • @catjesus812
    @catjesus812 Před rokem +1

    Dude you're breaking my brain, I don't understand a lot of what you said. I'm endlessly fascinated though.

  • @JeanQPublique
    @JeanQPublique Před 2 lety +4

    Great video! Thanks for covering my favorite game!
    If you ever do a second video (or maybe a series, fingers crossed) other things to consider might be: The disabled level select, the door entry glitch, the EU-only mid-air jump glitch, the incomplete SPIKE power-up, the intro music DCM channel mismatch, the oddly wrapping maps (see the ice level), the possibility of softlocking on the water level (maybe less interesting), the fact that inaccessible water tiles in the sewer level are actually water you can swim in... that's all I can remember off the top of my head, but this game has a bunch of fun stuff in it.
    Oh, and IIRC correctly, it's possible to play the overhead levels with the tank (and its side-scrolling physics) and vice-versa the side-scrolling levels with the top-down guy (and its physics). You just need to poke at the RAM. Probably object IDs as you've mentioned in this video. I did my research into this more than 20 years ago so I can't remember the details!

  • @Dorelaxen
    @Dorelaxen Před 2 lety +1

    Oh, man, that Roland remix of the stage 1 theme is absolutely badass.

  • @tatecheddar
    @tatecheddar Před rokem

    Holy shit! This is one of my favorite games, played it dozens of times and I never knew that A could be held down to strafe!! This changes everything!

  • @paulstevens1493
    @paulstevens1493 Před 2 lety +3

    YES, such an awesome video, you answered all my burning questions in detail!! I’m SO glad you looked at the Wall 1/Wall 2 code. As a game developer, I’ve always wondered how this was done.

  • @randomstarfighter9873
    @randomstarfighter9873 Před 2 lety +5

    I always thought the pause glitch was intentional. If I recall, the stage 5 boss closes its eyes when paused, and could only be damaged when opened. Seemed like an oddly specific detail, as if they were aware of it. Also had something similar with the stage 8 boss. I think its head disappeared when paused.

  • @saxxonpike
    @saxxonpike Před 2 lety +1

    Appreciate the Sound Canvas being used to render some of the music :)

  • @JulienNeel
    @JulienNeel Před 2 lety +3

    I thoroughly enjoyed this video of yours.
    Your code explanations are concise and clear, you make the programming intricacies seem like little works of art.

  • @awesomedata8973
    @awesomedata8973 Před 2 lety +4

    Keep it coming, man! -- I _love_ Blaster Master!!!
    Ever since I was a kid, I always secretly wondered what was in the magic of those corner rotations.
    I never could figure out if those were legit sprite frames or some amazing programming magic! -- Thanks for clearing that up for me!

    • @CarbonRollerCaco
      @CarbonRollerCaco Před 2 lety

      Never played it, but just looking at the video I figured the tank was made of separate smaller sprites. Why redraw a whole object if only certain parts change?

  • @JamesDziezynski
    @JamesDziezynski Před rokem

    Blaster Master is one of my favorite NES games, it's such a treat to see this breakdown. Displaced Gamers is one of my favorite CZcams channels - I love the focus on the subject and not the creator, no offense :)

  • @benjaminramsey4695
    @benjaminramsey4695 Před 2 lety +1

    Ah Blaster Master, my favorite NES game of all time!

  • @YourJoeForever
    @YourJoeForever Před 2 lety +1

    I've wondered about this glitch since I was a kid. I always thought it was related to even stage numbers. I never would have figured this out. Thanks for the explanation!

  • @jimmyhirr5773
    @jimmyhirr5773 Před 2 lety +1

    The Hydra address is really cool. It's an implementation of polymorphism in assembly language.

  • @kri249
    @kri249 Před 2 lety +1

    Unfortunately I only played this game once. It was a rental and I sucked at the bosses because I was too young.
    But the one thing I do remember and it always stuck with me to this day was how smooth the tank moved. And I always loved the bouncing detail as you jumped and landed.
    I'm glad you covered this because I'm really starting to appreciate the behind the scenes mechanics in games as much as the games themselves. And where gliches used to range from advantageous to game breaking they do tend to serve to help understanding the nature of those mechanics and provide opportunities for problem solvers who like a challenge.

  • @samusaran7319
    @samusaran7319 Před rokem

    A ahead of its time game that i loved and still do play!

  • @JohnSmith-xf1zu
    @JohnSmith-xf1zu Před 2 lety +6

    Amazing video! Always love seeing a detailed breakdown of how older systems did animation, sound, programming, etc. Not to mention, this looks like a fun game in its own right.
    On a side note, who legitimately takes half a second or longer to blink?

  • @jsd1982
    @jsd1982 Před 2 lety +1

    Awww yisss! Been waiting for this. Probably my favorite game ever. Excited to find out how the pause glitch works!

  • @Controllerhead
    @Controllerhead Před 2 lety +8

    Incredible content as always!
    Fun Fact: The NES / SNES controllers are actually pin compatible: only the plug shapes are different, and you can use one on the other with slight modification. So, an SNES port wouldn't be necessary to use an SNES controller on an NES, only 4 extra polling calls for X Y L and R at controller read time and a free byte (or nibble) to store the 4 extra buttons, and corresponding code to modify the game accordingly.
    There exists a golf game by Rainwarrior that uses the SNES mouse, and yes, it works on real hardware: rainwarrior(dot)itch(dot)io(slash)nesert-golfing

    • @boriscat1999
      @boriscat1999 Před 2 lety +2

      yea, I built an adapter from two extensions cables to connect SNES to NES. and I poll for them in my homebrew. Then I can put all my test code and cheats on the extra buttons :O

    • @knghtbrd
      @knghtbrd Před 2 lety

      shhhh! We want a Blaster Master SNES port.

  • @lin_lin_lin
    @lin_lin_lin Před 2 lety

    Love this series

  • @jasonminato8203
    @jasonminato8203 Před 2 lety

    Love your work m8, i look forward to all your videos

  • @mrghede
    @mrghede Před 2 lety +1

    Love your content, please keep it comming 😀

  • @blackdragongrief
    @blackdragongrief Před 2 lety +4

    I might not understand every bit of code logic talked about in these videos but I always enjoy them. This different kind of in depth look into so many classic games is really appreciated and learning reasons behind certain things like the pause glitch in this game is awesome. Has me wondering all sorts of new things. Does the character in LowgMan have his player ID changed whenever he picks up a jump powerup to allow him to jump higher?

    • @jimmyhirr5773
      @jimmyhirr5773 Před 2 lety +2

      Different games are implemented in different ways. It might be done that way, but it's also possible that getting the jump powerup sets a bit and the jump code checks that bit. Or there could be a jump force value in RAM that is changed when the powerup is picked up.

  • @knghtbrd
    @knghtbrd Před 2 lety

    Not discussed: Why Blaster Master's music is right up there with Mega Man 2 for the best sounds to ever come out of a NES/Famicom.
    Never bothered to disassemble the code-always loved the detail of the wheel physics in this game, and greatly appreciate the deep dive on how they did it.

  • @ClassicGameHacking
    @ClassicGameHacking Před 2 lety +1

    I love this type of videos! Very well explained, this is why I love old games, not only playing them but understand how they were programed and the logic behind it is just so fun! 10:00 I will make my own routine to toggle on and off the abilities, is a great idea!

  • @bdjeffyp
    @bdjeffyp Před 2 lety

    This was a fantastic dive into one of the greats! I really appreciated the detailed look at the Wall 1 & 2 functionality and animation involved. I really like the B button GG code you added. Also, TIL about the strafing! Holy cow that is a game changer!

    • @CarbonRollerCaco
      @CarbonRollerCaco Před 2 lety

      My question is is that strafe thing even mentioned in any of the game's manuals?

  • @_polpon
    @_polpon Před 2 lety

    Very interesting video!

  • @JamieBainbridge
    @JamieBainbridge Před 2 lety

    I've been looking at some SNES source to understand a game, it takes me hours to grasp what even a single function does. I can only imagine how many days of disassembly went into the explanations provided here. I love your "seems simple enough" - no it doesn't! 😄

  • @wompastompa3692
    @wompastompa3692 Před 2 lety +2

    Reminds me of the Microwave glitch in Super Metroid.

  • @natetheoracle
    @natetheoracle Před 2 lety

    Heck yeah! Great channel

  • @Arcticgreen
    @Arcticgreen Před rokem +1

    This video reminds me of something that several bosses/enemies have in common and I've wondered how they handle it... Chain-limbs.
    Area-2 boss has two limbs that act as a chain with a head (the claw at the end). Castlevania has those bone/long-neck enemies that spit occasional fireballs. And the original Legend of Zelda has multiple instances of a multi-headed dragon with independently moving heads.
    How is this done?! I mean, it's probably different code per each game, but it might make something worth looking into for a later video.

  • @justsomeperson5110
    @justsomeperson5110 Před 2 lety +1

    I miss Blaster Master. But that aside, as a software engineer, I love watching these videos now that I've stumbled across them. It certainly was a different era of gaming, where code had to be right the first time. So the published games were so much more polished. Yet bugs still happen, even to the best of us. LOL It makes me wonder where the legalities lie on playing old games on an emulator if you don't own the originals. And the legalities of releasing PATCHED old games.

  • @shadowhenge7118
    @shadowhenge7118 Před 11 měsíci

    Love this game. Even the 0 remakes were fun.

  • @SwordsmanOrion
    @SwordsmanOrion Před 2 lety

    One of my personal favorite NES games, and one of the NES I'm the most proud of being able to actually beat. But yes, of course I did use the pause trick. It doesn't work on several bosses, including either of the final bosses. Also, a button that toggled the WALL 1 and WALL 2 functions on and off would make Area 8 so much easier to get through.

  • @ObsidianContraption
    @ObsidianContraption Před rokem

    Haha, it's too funny. I learned the pause trick way before I realized you could strafe! However I did beat the game back when I was a kid before I knew you could pause damage on bosses. It took many plays, but I did it. I did however use pausing during the outer levels with the tank to bring blocks back. It was useful to prevent sliding off of ledges particularly in the ice area

  • @jeremysawa7075
    @jeremysawa7075 Před 2 lety +3

    THANKYOU!!! this was my request from a few shows back, and is one of my favorite games i replay often and just marvel at.

    • @jeremysawa7075
      @jeremysawa7075 Před 2 lety

      I'm a little sad you didn't cover the other tank functions of dive/water physics, and hover, and on the wall 1/2 part, you covered going around a floating ledge, but what about the corners of a box/floor/wall situation. its handled similarly, but would have been neat to see the object id phases on that- and what object id presents for the tank if you are out of it? i also always wondered how the gun power up bar is tabulated, it takes 8 gun power ups to be max, but the first time you fill it up, without taking any damage, it only actually takes 7 to reach rainbow beam full.... sometimes if you take damage it seems to decrease further levels than what you'd expect. and we didn't even get to subweapons yet! why does lightning break almost never seem to hit enemies below you, and how the homing function works would be great to explore, especially when you have multiple enemies, missles will go out for each one, but if the unintended missle hits the wrong target, the intended one will slowly float on, its neat to see.

  • @mresturk9336
    @mresturk9336 Před 2 lety

    Using what I learned about debugging from your videos and some info listed on The Cutting Room I was able to create a Game Genie code for Double Dragon 2 that makes the continue screen show up automatically after a Game Over. As opposed to having to input a clunky, stage based cheat code to get the continue option to appear, as was the default.
    Sadly I can't post the code here because it triggers CZcams's spam filter, yeeting my comment :P

  • @RahanPlays
    @RahanPlays Před 2 lety +1

    I can’t wait for you to someday start to poke around in SNES games. There’s an entire (tiny) speedrunning community around Drakkhen that, shy of an ambitious ASM wizard poking around in the game, operates under the assumption that the stats characters roll do nothing and combat is somewhat cursed. We have no way to explain it, other than “it’s drakkhen.” :p

  • @JohnRiggs
    @JohnRiggs Před 2 lety +1

    TIL you can strafe. Thanks!

  • @allinaxford
    @allinaxford Před 2 lety

    Good choice of bugs, keep the player benefiting pause trick, over removing a game play mechanic. Good call.

  • @Askanon
    @Askanon Před rokem

    Friggin' good game. Something that you might find interesting but this game actually got remade into Blaster Master Zero by Inti Creates on multiple platforms. They went on to make a trilogy and did in fact add QoL stuff to the original game. One of them being the ability to toggle wall grab on/off by holding a button much like your code does here.
    Is the remake/new trilogy worth checking out? You bet your ass it is. Stays VERY faithful to what you would expect from a BM game.

  • @wojciechmilczarek6051
    @wojciechmilczarek6051 Před 2 lety

    Absolutely incredible video, as always. Your videos are really underrated, you deserve at least 1000000 subs. Never played this game, but it looks really fun and I might just try it! Also, could you look into the level 100 glitch in duck hunt? I was trying to find an explanation for it but couldn't. Maybe you can find out if it's a glitch or if it was intentional.

  • @jamesflames6987
    @jamesflames6987 Před rokem

    Virtual functions on the NES. Amazing.

  • @kurovah5475
    @kurovah5475 Před 2 lety +7

    Huh, i've never really did look at the originals. They managed to keep the asethetic rather well

    • @darkelwin02
      @darkelwin02 Před 2 lety +1

      Played the Zero games then? I just finished 3 today, was a blast (pun not intended). I can recommend the NES one as well though, especially with a fairly recent overhaul hack

    • @DoomRater
      @DoomRater Před 2 lety

      @@darkelwin02 There's an overhaul hack? Where? Fester's Quest with the ability to shoot through walls is already game changing- I wanna see what peopl did to overhaul Blaster Master as when I replay the game, I get frustrated somewhere around obtaining Wall 1 and stop playing.

  • @krcsirke
    @krcsirke Před 2 lety +2

    WOW, new video! Possible one day, you will look on up how is some of famiclone multicart is working? Like famous 9999999 in 1?

    • @gordontaylor2815
      @gordontaylor2815 Před 2 lety

      That one is just a really long list of the same handful of games over and over again. See here -> czcams.com/video/mk1B_0rF5HQ/video.html

    • @krcsirke
      @krcsirke Před 2 lety +1

      @@gordontaylor2815 Not exactly. If ever played one of, you know they are somehow modified. For example Super Mario Bros first 256 elements on the list has got different world starting position (you heard it right, you can start from 9-1, A-1 and half cloud world), after some game physics change (like moon jump or no jump), other entries us like Battle City aka Tank 90 there one of pirate multiversion ones, that's why for me its an interesting topic, how they are do that.

  • @corkbulb2895
    @corkbulb2895 Před rokem +3

    This is off topic, but an *average* human blink is 100 ms. Depending on the person and conditions, a blink can last *up to* 400 ms. But that's not average.

  • @rrogersyt
    @rrogersyt Před 2 lety

    Seeing this glitch reminded me of the other great tricks you'd learn about (back before the Internet) through word of mouth on the playground/school. I'd like to see a deep dive on Super Mario Bros. glitches such as the negative levels and what was going on in the game when you collected so many lives (through the turtle/stair trick) that it would cycle through game graphics (we thought they were flags). I think if you collected too many lives, the game would somehow roll to zero lives and would be over if Mario dies... or that was a rumor.

    • @JawingSalamander
      @JawingSalamander Před 2 lety +1

      Because in those days of low-spec computers, it was all about "the smallest/quickest logic that works". They never expected someone to build up hundreds of lives.
      So, they just converted the number of remaining lives to a tile number, but there are only tile bitmaps for numbers 0-9, and another special case tile meaning 10 lives, but pretty soon it goes into other unrelated tile bitmaps.
      And also when you get killed, they just wait for the number of Rest lives (besides the Mario you're using at the time) to go negative and then ended the game, BUT byte range for integers is -128 to 127, once the number of lives get beyond that range the positive number/negative number test is no longer reliable, for instance the byte might contain 130 but it's going to come back as a negative number.

  • @jamesgoss1860
    @jamesgoss1860 Před 2 lety

    With these deep dives into glitches, I'd love if you could do an analysis of the Link's Awakening select button glitch and what is happening in the code when you walk out of bounds into different areas.

  • @thecryingsoul
    @thecryingsoul Před 2 lety +2

    I really do wish you would make ips patches for some of these fixes, so many fewer limitations than game genie codes, and much more widely used nowdays.

    • @CptJistuce
      @CptJistuce Před 2 lety +2

      I find the three-byte limit of a Game Genie interesting, personally. Yeah, a patch file is more powerful since you can make an unlimited number of completely arbitrary changes, but it's boring in this context for the same reason.

  • @nevyn
    @nevyn Před 2 lety +1

    Polymorphism in assembly! Nice 🤩 very modular code base, thanks for the run through! Is it common for NES games to have an architecture that is so modular and uses so much dynamic dispatch?

  • @Vistico93
    @Vistico93 Před 2 lety

    Blaster Master has one of the best final stage themes. Really feels creepy and like I've stepped into someplace terrible. I wonder what the full game would've looked like because I always thought the transition between the Area 8 boss and the final boss was weird and The Cutting Room Floor shows a tank power up that (presumably) would make the tank invulnerable to spikes suggesting we were supposed to go find the knight with the whip in some other part of Area 8
    And to this day I still haven't beaten the Area 6 boss without the pause trick. I've tried, but to no avail but the frog and the fire frog I was able to overcome

    • @Zye1984
      @Zye1984 Před 2 lety +1

      The what now..? Full game? I was unaware there was missing content..

    • @NeoGrifforzer
      @NeoGrifforzer Před rokem +1

      ​@@Zye1984 The cutting room explains there might have been planned 9 areas. After beating the Plutonium boss (Skeleton boss) you would get an item for your tank to drive on spikes. Skeleton boss and Emperor Goez weren't the same boss as many people thought the final boss had two forms.

    • @Zye1984
      @Zye1984 Před rokem

      @@NeoGrifforzer oooh, I thought it was just his pet. =x it's weird THAT one was used for the cartridge sticker.

  • @Aikisbest
    @Aikisbest Před 4 měsíci

    Being born in 1991, this was just before my time, but the two main consoles in my life where still the Nintendo 8-bits (as it was/is usually called in Sweden, "Nintendo Åttabitars") and the GameBoy and even though I play some new games (eating quite a lot of free time), I still find myself trying new games (that are actually old) from time to time, and the two main characteristics are usually that compared to newer games, the older one usually have a lot more thought put into the different senses, audio, imagination etc, while often severily lacking in QoL features we take for granted (and thankfully get to have) today. ...Im not sure how relevant my comment is to anything, but I just kind of started typing XD. (I blame it on having something sweet be the first thing I ate for breakfast).

  • @mwk1
    @mwk1 Před 2 lety

    JESTEŚ PRZECHUJEM!:-)

  • @Sinistar1983
    @Sinistar1983 Před 2 lety +1

    Coincidentally, I was just playing blaster master zero 3

  • @narayanbandodker5482
    @narayanbandodker5482 Před 3 měsíci

    3:51 haha "*head*ed", I get it

  • @HasekuraIsuna
    @HasekuraIsuna Před 11 měsíci

    Gotta love how Japanese IP names got _so_ different names in the rest of the world up until the naughties.
    超惑星戦記メタファイト _chou wakusei senki meta faito_ "Super Planetary War Chronicle Meta Fight" -> Blaster Master

  • @FlameUser64
    @FlameUser64 Před 10 měsíci

    Thought for fixing the pause damage: add a single line of code that, when the game is paused, sets the appearance timer to 1 on every frame. …Though, this _would_ let you break the appearance timer by pausing and unpausing the game during the boss intro.

  • @kyleolson8977
    @kyleolson8977 Před 2 lety

    "Hydra...where we are 'head'ed in the code."
    You are no longer allowed to name variables and functions.

  • @StormsparkPegasus
    @StormsparkPegasus Před 2 lety

    It's also a Metroidvania, from long before the term existed.

  • @otakubullfrog1665
    @otakubullfrog1665 Před 2 lety

    I loved the NES Advantage, but it's "slow motion" feature that simply kept pausing and unpausing games was usually useless. I guess fighting one of the affected bosses with that turned on would result in net double damage from each grenade since it would still deal damage during the half of the time the game is paused, but it would only count down to disappearing during the time the game would be unpaused.

    • @LeeorVardi
      @LeeorVardi Před 2 lety +1

      My brothers and I always used the NES advantage to beat boss 5 (the giant crab) because we didn’t know about the strafing, slow-mo was a god-send for that.

  • @DoomRater
    @DoomRater Před 2 lety

    "Why the pause trick only works on certain bosses" and also you! Edit: You DID cover it!

  • @heavysystemsinc.
    @heavysystemsinc. Před 2 lety

    I think the pause 'trick' is intended because it only works on bosses 2, 4, 6 and...7. It sets up a pattern then deliberately throws it out the window so the player can't cheese the final 2 bosses. Messing around with this is like sacrilege!

  • @commanderproton7763
    @commanderproton7763 Před 2 lety

    There was a race done of this game at AGDQ 2017 were for one of the runners, the Area 2 boss failed to spawn and he was just given the power-up. Is there anything in the code to explain why this could happen or is it just some sort of like glitch of the console or cart?

  • @konic40
    @konic40 Před 2 lety

    oh the pain of slow downs and getting lost

  • @madman13000
    @madman13000 Před 6 měsíci

    Huh, and I always thought that the pause glitch had something to do with the bosses that it worked on being palette swaps.

  • @intel386DX
    @intel386DX Před 10 měsíci

    I wish that I know about the that pouse glitch and strafing trick earlier 😅 I played the game mouth ago 😁 great game . Only annoying things are there are no password or save features for that long and hard game , and the continues are limited and even not showed how many arenremaning ....

  • @ezioauditore5616
    @ezioauditore5616 Před rokem

    Man, i subscribed to your channel, how do i start in videogames ???

  • @childofcascadia
    @childofcascadia Před rokem

    What was Sunsofts obsession with raspberry like balls, with or without tentacles coming out of them? Like at 0:43. Similar sprited enemies were in a LOT of Sunsoft games. Festers quest comes to mind, but I know Ive seen them in others too.

  • @therealsnowwhite1937
    @therealsnowwhite1937 Před 2 lety

    I love how Sunsoft was way ahead of Disney with Sofia the 3rd. :V

  • @NeoGrifforzer
    @NeoGrifforzer Před 29 dny

    appears that genie code to get prevent the pause glitch doesn't work with 4 and 7 bosses. Did it fix the zombie glitch for boss 6 though, the music didn't get changed when firing with max gun.

  • @duckhive
    @duckhive Před 2 lety

    Could you do a video on SNATCHER for Mega CD / PCE-CD ?

    • @jimmyhirr5773
      @jimmyhirr5773 Před 2 lety

      I don't know if Displaced Gamers has any low level knowledge of those systems. You might have better luck asking Coding Secrets. He programmed a lot of games for the Mega Drive/Genesis during the 90s.

  • @InsaneFirebat
    @InsaneFirebat Před 2 lety +1

    Is porting from NES to SNES a straightforward process, like updating a bunch of register addresses, or does ROM mapping or something else make it complicated?

    • @CptJistuce
      @CptJistuce Před 2 lety +1

      For the most part, it is trivial and can be automated. There's two major roadblocks.
      1. Sound hardware is completely unrelated. For a proper port, you need a totally new sound routine.
      2. Mappers. The plethora of Regular Nintendo mappers don't exist in Super Nintendo cartridges or emulators. Games that bankswitch CHR ROM would be an issue too, since the Super Nintendo uses a more conventional "copy tiles into VRAM" architecture and doesn't actually HAVE a CHR ROM bus.
      To my recollection, automated translation only works on "mapper 0" games.

    • @jimmyhirr5773
      @jimmyhirr5773 Před 2 lety +2

      Another issue is the "sprite zero flag." The NES has a feature where if a visible pixel of sprite zero touches a visible pixel of the background, a PPU status register flag will be set. This is used for scanline timing. As far as I know, the SNES does not have this feature. It does have a much better (but incompatible) way to do scanline timing though.

  • @MacReflections
    @MacReflections Před 2 lety

    I'm pretty sure this "bug" was an advertised tip on the box or in the manual, I think.

  • @dopy8418
    @dopy8418 Před 2 lety

    Hi, What is a safe site to het you game files from ?

  • @Zye1984
    @Zye1984 Před 2 lety

    I wonder why diagonal movement while strafing was completely unimplemented in BM: Enemy Below? (GBC) Was it the capability of the hardware or just laziness? Surely if they truly were lazy they would just have copied the coding over, though, to prevent the issue of being a thing in the first place.
    I wish someone would rebuild that game and use the original BM's physics and screen size to make it more...playable. some things in that game were just really unfair. The last boss was insane!!

  • @Applemangh
    @Applemangh Před rokem +3

    I've always thought the pause trick was intentional (or discovered accidentally but then reworked intentionally). It works specifically on even numbered bosses, but it does work on boss 7 and not on boss 8 (the final boss).
    It looks like it was set up to work on even numbered bosses, but since they didn't want you to be able to exploit the final boss, they took it off of him and applied it to boss 7 as a "replacement".

  • @MotiviqueStudio
    @MotiviqueStudio Před 2 lety

    It always drove me bats that the lines on the wheels didn't rotate at the same angle.

  • @Santiago-Farrell
    @Santiago-Farrell Před rokem

    Isn't it easier to remove grenades or grenade logic entirely during pause states?

  • @marscaleb
    @marscaleb Před 2 lety

    10:07 Okay, now I've become suddenly intrigued.
    If you have all the code for an NEW game extracted/recreated, just how much effort would it take to port a game to the SNES? Do the two use the same Assembly language? What kind of memory addresses are still used and available between the two consoles? I mean, I know that a lot of the workings under the hood are nearly the same but with more power and functionality for the SNES, but, just by how much? How much of the code from an NES game could run on a SNES?
    I know there are various aspects that need to be addressed; color data for graphics would need to be altered, some functions would need to point to new addresses to call their counterparts, and altogether the code might have problems running at a higher clockspeed, particularly any effect that was frame dependent.
    But overall, how much code would need to be changed to get a game to run and function on the SNES?

    • @jimmyhirr5773
      @jimmyhirr5773 Před 2 lety

      See the answer to InsaneFirebat, who asked a similar question. Apparently conversions of simple NES games can be automated, but they will lack sound.
      The instruction set of the SNES CPU is a superset of the NES CPU, so porting game logic is very easy. See Displaced Gamers's video about Super Mario Bros. 2. The SNES All-Stars version's code is clearly copied from the NES version.

  • @Nirakolov
    @Nirakolov Před 2 lety

    I am wondering if you'd do a sponsored code crawl... cuz I'd pay real money to figure out an ancient video game secret that's been bugging me (For the MSX)

  • @draketungsten74
    @draketungsten74 Před 2 lety

    I always figured the pause glitch was intentional because the game is too hard without it, lol.

  • @tomsko863
    @tomsko863 Před 2 lety

    Since Blaster Master has been ported to PC now. Any idea if they kept all of the same code?

    • @JeanQPublique
      @JeanQPublique Před 2 lety

      Are you referring to Blaster Master Zero?

    • @tomsko863
      @tomsko863 Před 2 lety

      @@JeanQPublique Yes. Admittingly I am completely ignorant how they fit with the original games as I have not played them so I cannot say anything about them.

    • @CptJistuce
      @CptJistuce Před 2 lety

      @@tomsko863 Blaster Master Zero 1 is a reasonable remake of Blaster Master 1.
      Canonically, it is a remake of the western Blaster Master, but a sequel to the japanese version, Metafight. Which is a HILARIOUS solution to the "game has a completely different plot in different regions" problem.
      Zero 2 and Zero 3 are unrelated to any previous games except Zero 1 and the original Metafight.

  • @retrogamestudios6688
    @retrogamestudios6688 Před rokem

    Can u ise gamecode to determine all passwords

  • @WhoIsRyanFox
    @WhoIsRyanFox Před 2 lety

    How many hours of staring at that code block did it take for you to come up with the hydra pun?

    • @DisplacedGamers
      @DisplacedGamers  Před 2 lety

      Well….. it hit me within a few seconds of locating the code. Not sure if I should smile or cringe at my own response, but there it is.

  • @fmsyntheses
    @fmsyntheses Před 2 lety

    It's interesting to look at this game, but I think that historically it will only ever be seen as the predecessor to Fester's Quest.

    • @geodescent
      @geodescent Před 2 lety

      I always considered it a successor because it was so polished by comparison

    • @CptJistuce
      @CptJistuce Před 2 lety

      Historically, Blaster Master is wildly important. There's several anecdotes of developers seeing it when it came out and reconsidering their in-development games.
      It caused a major shift in how games were made for the system, because it was so far beyond what the hardware was "capable of". It's impact is harder to appreciate from a western perspective, since it came over in '91, well after other games influenced by its japanese '88 release.
      It is also the origin of the now-standard "metroidvania" format, where free exploration is gated into discrete stages by powerups. Metroid wouldn't do that until Super Metroid(and Castlevania not until Symphony of the Night).

  • @MLBlue30
    @MLBlue30 Před 2 lety

    Still would like a proper game genie code for infinite energy and infinite gun energy which we never officially got.

  • @zerobyte802
    @zerobyte802 Před 4 měsíci

    The better question is not how to remove the glitch, but how to add it to the lobster boss.