The Broken Water Level of Teenage Mutant Ninja Turtles (NES) - Behind the Code

  Рет қаралды 193,281

Displaced Gamers

Displaced Gamers

Күн бұрын

Пікірлер: 776
@DisplacedGamers
@DisplacedGamers 2 жыл бұрын
Hope you enjoyed this release! The code of this one feels... rather rushed vs. other Konami entries. If I may - do any of you use channel memberships on other YT channels you watch? I do not currently have it enabled for Displaced Gamers, but I may enable it.
@Ragesauce
@Ragesauce 2 жыл бұрын
I sure did!
@anon_y_mousse
@anon_y_mousse 2 жыл бұрын
I don't subscribe to any of the channels I watch, so not me, but I'm sure others would. If you're wondering why, it's because I like to keep as low of a profile as I can while still being present. I watch, I like, I comment, but I do not subscribe. That's also why I bookmark the video page of those I watch, so most videos I see I'm days or more late.
@SianaGearz
@SianaGearz 2 жыл бұрын
@@anon_y_mousse You can hide your subscriptions. I am subscribed to several thousand channels - can you see which? Of course i'm not saying what you should do, everyone has their own level of privacy measures they're comfy with.
@anon_y_mousse
@anon_y_mousse 2 жыл бұрын
@@SianaGearz I'll look into it, didn't even know that was a feature they offered.
@Hattes
@Hattes 2 жыл бұрын
I didn't even know that channel memberships was a thing.
@SergeyLergDev
@SergeyLergDev 2 жыл бұрын
Programming was harder back then. Without all these debug visualization tools that we have today it was like swimming in a dark. As a turtle. In a seaweed tunnel.
@anon_y_mousse
@anon_y_mousse 2 жыл бұрын
The funny thing is, a lot of newbies now will just print messages to screen to "debug" their code, and as awful as that sounds, it still would've been better than whatever they did when they wrote this game.
@VinsCool
@VinsCool 2 жыл бұрын
I think tracking values on screen is incredibly useful and effective, much faster than using a debugger directly in some situations
@gizaha
@gizaha 2 жыл бұрын
No, assembly is easier, less rules. Just if you are half-noob, in high level you will not write anything, while at lower level you will write shitty code. You don't need today's debug visualisation tools to have correct clear code in this specific stage in this game. Simple physics, controls and hit detection. Also you need time, not deadlines.
@williamdrum9899
@williamdrum9899 2 жыл бұрын
It often helps to have a "testing grounds" which is basically a sibgle aspect of your game in isolation so you can see what the problem is
@SergeyLergDev
@SergeyLergDev 2 жыл бұрын
@@anon_y_mousse print debugging is a totally viable option today, nothing to be ashamed of.
@guaposneeze
@guaposneeze 2 жыл бұрын
If they just had good tools to visualize their hitboxes as overlays back in the 80's, they could have fixed a lot of those tricky collision bugs pretty quickly, and a generation of children would have been able to grow up happier.
@williamdrum9899
@williamdrum9899 2 жыл бұрын
Sadly it's really not possible on the NES itself, unless all your sprites' hitboxes are on an 8 pixel boundary. Emulation has made debugging MASSIVELY easier (if you don't believe me, try making a retro game on an emulator without a competent debugger)
@duuqnd
@duuqnd 2 жыл бұрын
If I didn't have half a million projects already I'd try to make a hitbox visualizer using only period correct hardware. Sounds like it could be an interesting (but tough) challenge.
@davidsburningdumpster8728
@davidsburningdumpster8728 2 жыл бұрын
@@williamdrum9899 I think rendering the game as only boxes, skipping the sprite proper might have been possible.
@beefquiche
@beefquiche 2 жыл бұрын
@@duuqnd that would be awesome man!
@crtxl
@crtxl 2 жыл бұрын
But a lot of youtubers in the last ten years less money 😄
@paulstevens1493
@paulstevens1493 2 жыл бұрын
The fractional current velocity is such a sinister bug that I'm sure has driven countless people crazy over the years. It's basically random ("I swear there was current... No there's not!"), and also subtle, yet it would definitely have an effect on that notorious seaweed screen. How crazy it is to finally learn what was going on after all these decades!
@audielavalos9619
@audielavalos9619 2 жыл бұрын
Exactly, there was no way to memorize your run through the seaweed, something always pulled you. As a kid I thought the seaweed was pulling you.
@chlorophil545
@chlorophil545 2 жыл бұрын
That level ALWAYS ended my run when I was a kid; even when I finally remembered where the bombs were, I was all over the place and it was ridiculous. Hell I don't think I knew you could switch turtles on that stage back then like you can on the other levels!
@justinbremer2281
@justinbremer2281 2 жыл бұрын
This explains so many weird things I noticed as a kid. I noticed the spinning thing was safer to go under than over, but I just thought that was because you were going with the flow, and I can remember devoting hours to testing the point where the seaweed actually gets you. Turtle life after turtle life after turtle life Turtles all the way down
@MrAntice
@MrAntice 2 жыл бұрын
I remember the transition mentioned in this video. When I played the game, I realized early that something was funky there, and tried a lot of things to unfunk it. The trick with getting the second electric trap offscreen got found out fairly quick.
@catsaretasty
@catsaretasty Жыл бұрын
😂
@KairuHakubi
@KairuHakubi 2 жыл бұрын
fun fact: water actually is an electrical insulator, just like it's a thermal insulator It's just that once anything is dissolved in it (which there always is), that changes hard.
@lasskinn474
@lasskinn474 2 жыл бұрын
there's no reason why the electricity would run through the turtles in the level tho is there?
@KairuHakubi
@KairuHakubi 2 жыл бұрын
​@@lasskinn474 well when you electrify a large body of water, it dissipates quite rapidly at a distance.. but I don't think it would stay so neatly columnated, that's for sure.
@chrismanuel9768
@chrismanuel9768 2 жыл бұрын
I do know that electricity prefers to travel over the surface of water rather than through it and you're generally safe from even lightning more than one foot underwater, but I don't know how electricity behaves in an underwater environment. I would assume it would prefer to stay attached to the surface it's on and not flow outward through water.
@jorymil
@jorymil 4 ай бұрын
There would need to be enough voltage to ionize pure water, but water near a dam probably has enough ions dissolved in it to conduct at a short distance. I would not want to go near that seaweed.
@nickfarace9339
@nickfarace9339 2 жыл бұрын
Once you got the visual vectors in there, it blew my mind. Holy crap the person who designed that code must have had zero communication with whoever designed that one seaweed screen. That has got to be the ugliest collision issues I think I ever saw in a game.
@DisplacedGamers
@DisplacedGamers 2 жыл бұрын
There are definitely some head-scratchers in the code. It is possible that one person started it and someone else took over. It just doesn't seem like some of the decisions made would come from the same programmer.
@JH-pe3ro
@JH-pe3ro 2 жыл бұрын
A lot of these issues look like one behavior was hacked over another to checklist a feature. The offset environmental collision, for example, immediately makes sense if you are trying to make, for example, conveyors work with no conscientiousness to any other collision feature(an incredibly common way of approaching exploratory gameplay prototyping). Likewise the mismanagement of current makes sense if we imagine that it was tested with a permanent current and then the checks for no current were added later and the resulting behavior wasn't tested and debugged by someone senior enough to understand the consequences of interleaving the dependencies through the logic like this. I've seen so many games from indie programmers that end up in a similar place where they don't know how to get to the bottom of their collision issues and just trial-and-error things until it seems to work. While I haven't tried to do the archeology to verify it, a lot of the game's engine seems to have been cribbed from previous Konami NES titles and roughly adapted and glued together, perhaps by new programmers. This would also account for some of the misunderstandings. While Jackal is the obvious pick for the map view, Bio Miracle Bokutte Upa is the best candidate for the side-scrolling sections - the HUD design, platforming features, and the presence of a swimming stage all hint at it.
@alexjackson7929
@alexjackson7929 2 жыл бұрын
@@JH-pe3ro I was gonna say myself, the environmental collision system that TMNT uses makes perfect sense as long as all your game's environmental features block movement (either by pushing the player away or by being instantly lethal on contact). It only gets wonky when your game has terrain that the player can move through but damages them (or affects them in some other way) while they're in contact with it. And that kind of terrain is fairly unusual in NES games.
@furiousapplesack
@furiousapplesack 2 жыл бұрын
And that is the reason that level is one of the most infamously despised in all of retro gaming.
@StevenVillman
@StevenVillman 2 жыл бұрын
@@furiousapplesack ...and is the reason why me, my older sister and her as-of-then boyfriend (he was living with us at the time) couldn't ever beat it and see/play the rest of the video game's levels past it way back in the early 19990's! What is needless to say here, we never bought the video game and only rented it, largely because we couldn't get past that stage/level.
@Patashu
@Patashu 2 жыл бұрын
What an interesting topic for a video! It turns out the reasons why people struggled with this level were both fractally complicated, and as a kid you had no chance of understanding what was going on.
@dmonee6196
@dmonee6196 2 жыл бұрын
Explains so much of my childhood frustration. I remember ONCE making it and just giving up on the game after.
@mcfartle9450
@mcfartle9450 2 жыл бұрын
This is such a fantastic video, and a revelation. When I was a kid, I always thought this level was intentionally programmed to be cheaply hard, but now i know it’s from programming errors probably due to a multitude of things (time, lack of playtesting, so on)
@makeitrein7366
@makeitrein7366 2 жыл бұрын
Now you'll need to talk about the jump code in turtles and how overly frustrating it is to get the proper jumps
@DisplacedGamers
@DisplacedGamers 2 жыл бұрын
I have a rather epic video planned that may lean on TMNT quite a bit, and jumping will likely be part of it.
@skins4thewin
@skins4thewin 2 жыл бұрын
Lol it's actually really easy once you DO know how the jumping works & that there are 3 potential heights to the jumps. Once you know this & know that you usually just need the short hop to easily clear all of the toughest jumps it becomes a cakewalk.
@B3Band
@B3Band 2 жыл бұрын
@@skins4thewin Yeah, that's why nobody has ever talked about the jumping being hard for the last 30 years. Because it's a cakewalk.
@skins4thewin
@skins4thewin 2 жыл бұрын
@@SirBuzz Yeah that one can be a lil tough specially on an Emulator w input lag. You have to wait til the very last second when you're basically falling off the ledge to jump. It is kind of tough for that part of the game. Even now I sometimes miss the jump, but if I do miss it I always get it on the 2nd try.
@skins4thewin
@skins4thewin 2 жыл бұрын
@@B3Band cus ppl suck that's why. Its really not that hard.
@mattduncan3869
@mattduncan3869 2 жыл бұрын
It's incredible actually seeing the reason why this level felt the way it did. After all these years it makes sense.
@AbdulRahmanNoor
@AbdulRahmanNoor Жыл бұрын
Never in my wildest dreams did I imagine that I'd be watching a video about code and physics flaws in a game I played more than 30yrs ago. Well done!
@JossCard42
@JossCard42 2 жыл бұрын
What I love about these videos is that, growing up, I really wanted to know how to "hack" my NES, but this was in the early days of the internet and I was a little kid so finding anything helpful was hard if you weren't already "in the scene". Watching these videos helps me understand how some of my favorite games work without losing me with a bunch of detailed "0x00AF is then switched to Memory Bus A and a call routine is accessed" programming language that means very little to me.
@DisplacedGamers
@DisplacedGamers 2 жыл бұрын
Thanks, JossCard42. I try to present the technical, behind the scenes stuff while constantly tying it back to the actual gameplay.
@williamdrum9899
@williamdrum9899 2 жыл бұрын
It is easy to get lost in the sauce for sure. There's a lot of things you just have to know what they mean, terms like "bit 7", "carry set", etc. And sometimes things aren't very well documented, or were poorly translated from Japanese to English... it becomes a mess.
@Kippykip
@Kippykip 2 жыл бұрын
I suppose with no easy way to visualise things or draw vectors back then for NES development, a bunch of hitbox bugs slipped into tonnes of releases. You're doing gods work
@JMFSpike
@JMFSpike 2 жыл бұрын
Lol, I assure you that this does absolutely nothing to benefit God.
@williamdrum9899
@williamdrum9899 2 жыл бұрын
Yeah you definitely would NOT be able to draw hitboxes like this natively on the NES. The hardware can't really handle it. Unless you limited yourself to a handful of possible hitboxes you'd easily need more sprite graphics than you had room for
@Phoboskomboa
@Phoboskomboa 2 жыл бұрын
The water level's got a fairly steep learning curve, but it comes so early in the game and it's quick enough that by the time you've played it 3 or 4 times, you shouldn't have trouble with it. I've often wondered why everyone makes a big deal out of it. I got stuck a lot longer in the next level when I was a kid. I could never figure out where to go.
@avalond1193
@avalond1193 2 жыл бұрын
Because the gamers complaining now are current gamers that didn't grow up on nes hard and are used to these casual games and are same ones that want and easy mode on souls games
@313Games
@313Games 2 жыл бұрын
Same here, I went back and forth for ages. The water section was fine for me. The worst part for me was my parents making me turn my NES off and loosing my progress, man they never seemed to get it.
@kablamborghini
@kablamborghini Жыл бұрын
The level right before the water level had a platform with a gap in it, but it was right up against the roof, so if you tried to jump over the gap, you would hit the roof, fall down, and have to repeat a chunk of the level. So basically you'd get stuck in a loop with respawning enemies until you figured out that you had to just walk across this gap instead of jumping (or you tried to jump but hit the button too late, I guess. I never knew you were supposed to walk over it until an AVGN video). A lot of times me and my brothers would never get to the water level because we'd just loop around that part of the level until we lost all our turtles. But then if we did get past it, we'd get punished with this water level, which we never really got a chance to get a lot of experience with.
@Phoboskomboa
@Phoboskomboa Жыл бұрын
@@kablamborghini The gap you're describing is in the building you spawn next to in level 3, right after the water level. I think you're remembering it backwards that you'd get past the water level and then die to that. But I do get how that's frustrating. I rarely got past that level as a kid. And I only got past the next and to the technodrome like twice. I never beat the long hallway with the jetpack guys.
@ryanpirosch3977
@ryanpirosch3977 2 жыл бұрын
I'm no programmer but this is explained so well that I can understand it! Learning the process raises your appreciation for any art form, so I appreciate this video
@Corey.Coolidge
@Corey.Coolidge 2 жыл бұрын
I never had much problem with the water level and thought its difficulty was overhyped. That doesn't mean I didn't think the controls were not clunky, they certainly were. Interesting to see why they were.
@ValkyrieTiara
@ValkyrieTiara 2 жыл бұрын
I always liked this level! As you said, a bit frustrating at first just due to the difficulty but not too bad once you have an idea what you're doing. I'm the weirdo who generally likes water levels in games lol This one in particular taught baby Tiara a few lessons in how video games are made, not least of which being how hit boxes work (the knowledge that you can often "cheat" damage zones a little bit has served me well in many games, and I definitely attribute that lesson to this particular stage lol) Also, it never occured to me that the current in that big seaweed screen was due to a bug. Once I mastered the water movement and learned the stage layout, quickly navigating that section became the "fun pat" of the level 😂 Anyway, great video as always! Really enjoyed this one!
@wulver810
@wulver810 2 жыл бұрын
I loved swimming as a turtle and never understood how people think it is so difficult. There are only a few obstacles to memorize. I went through this and landing a jet on Top Gun this year, having not played these games for decades, it's fun and challenging but it's not rage inducing.
@ValkyrieTiara
@ValkyrieTiara 2 жыл бұрын
@@wulver810 For TMNT, it's definitely the added pressure of the time limit that is the x factor in regards to the difficulty of the water stage. You have plenty of time to complete the mission, but not so much that you can screw around figuring out the controls or take your sweet time carefully making your way forward (and god forbid you miss a bomb). Landing in Top Gun is really easy! IF you know exactly what you're doing lol Unfortunately, that game is horrible at telling you what to do, and gamefaqs didn't exist in those days, so a lot of people were simply never able to figure it out. Personally, I feel both reputations are well-earned, even if their respective challenges are very surmountable given a little practice (and maybe a faq 😂)
@jameskrigney
@jameskrigney 2 жыл бұрын
This channel is so fascinating. I love that you trust the audience to figure out what you are talking about. I’m no programmer, but your explanations of the logic and logic bugs in these games make programming concepts much more intuitive-especially for those of us who grew up on these games.
@nilssonalex92
@nilssonalex92 2 жыл бұрын
As a speedrunner of this game, I have to say, interesting stuff. Good video.
@dkranda
@dkranda 2 жыл бұрын
I love this series. The production quality is outstanding and the in depth analysis is so interesting.
@BaronVonTeeVirus
@BaronVonTeeVirus 2 жыл бұрын
I understand most people didn’t make it past this level, but the game genuinely gets harder every level thereafter. 20 years later and I have still never beat Shredder.
@fatcerberus
@fatcerberus 2 жыл бұрын
Ironically enough, Shredder is the easiest boss in the game. He's the only boss that takes knockback, so you can just stand on the platform at the top of the screen and loop him to death. To be fair though, it's a lot harder if you try to do it legit, and the level leading up to the fight is hellish in any case.
@CarbonRollerCaco
@CarbonRollerCaco 2 жыл бұрын
TMNT's dam was Turbo Tunnel before there even was Battletoads. It's like Rare parodied more than just the TMNT characters and general world.
@fatcerberus
@fatcerberus 2 жыл бұрын
@@CarbonRollerCaco Turbo Tunnel was actually fun, though. It was just way too hard.
@erc0re526
@erc0re526 2 жыл бұрын
That's incredible!! This explains so much. And I love the code walkthroughs, I'd watch whole videos of that
@miguelsilveira6623
@miguelsilveira6623 2 жыл бұрын
I would def release ips patches for these games, The "Way they should be played" IPS patches, i would even flash dedicated cartridges in my collection for these. Once again, great video!
@paulstevens1493
@paulstevens1493 2 жыл бұрын
I love these videos about bugs and oddities in NES game code, it’s really cool to examine old classics in a totally new way that we would never have had access to as kids (let alone understand it)! Keep up the great work!
@PigeonHoledByYT
@PigeonHoledByYT 2 жыл бұрын
I worry that, at this point, if a patch was released to 'fix' the issues in this game, it would make it nearly unplayable for me. I'm so used to the mechanics as they currently stand that swimming any other way would have me flying around into obstacles and dying more.
@DisplacedGamers
@DisplacedGamers 2 жыл бұрын
Right? All that work dedicated to adapting to any game's difficulty establishes your instincts and becomes second nature.
@lukesomers2031
@lukesomers2031 2 жыл бұрын
All of the changes make the game strictly easier - the hitbox is moved in, and you can actually swim down. So it's really hard to see how it would make it harder.
@PigeonHoledByYT
@PigeonHoledByYT 2 жыл бұрын
@@lukesomers2031 Over time I could adjust to it but I'm so used to fighting the current moving into the seaweed tunnel and not being able to actively swim down that I would find some, albeit small, level of difficulty in not flying left into seaweed entering the tunnel and not flying down into seaweed exiting the tunnel. Would it break the game for me? Of course not. However I fight well.... in the old style. This new control scheme would cause me enough trouble.
@apollodash5912
@apollodash5912 2 жыл бұрын
Great stuff as always! This level gave so many of us nightmares! Would love to see a video on the code in Zelda 2 about how the enemy AI reads the player’s controller inputs! ⚔️
@BridgetGX
@BridgetGX 2 жыл бұрын
Wait until you see how fighting game AI was back then 😂
@benjaminyoung9694
@benjaminyoung9694 2 жыл бұрын
Everything seems so mysterious untill the code is explained, then its all I see now lol. Cant wait to impress my stream with this logic. Awesome video I never found the water level tough. All the kids on my block could pass it before I was old enough for school. I think it never had the reputation untill avgn. After that I think most every other influence just regurgitated avgn info without trying themselves and people latched to it.
@rapidfire187
@rapidfire187 2 жыл бұрын
That water level definitely had a reputation in my family way before the internet or the AVGN was even a thing. My older cousin couldn't even beat the stage which was when I realized just how ridiculously difficult it really was. To this day, we both say that this game is the reason we hate water levels lol
@JMFSpike
@JMFSpike 2 жыл бұрын
I agree, the water level was not that hard and I could beat it even as a young child. I was never able to beat the level after it though.
@TonyGearSolid
@TonyGearSolid 2 жыл бұрын
I was maybe 5 or 6 when the game came out and I don't recall any of my siblings having any issues with the water level, I'd always lose a turtle (usually Raphael, since he was my least favorite) but I was able to get through the level with minimal damage as I got older. The water level was my favorite level of the game and it wasn't until the old GameFAQs from the late 90s/early 00s that I learned people weren't able to get past it, then a few years later AVGN turned it into the meme it is today. The level afterwards is where the game ends for me, I could never get any further without using Game Genie and gave up on trying to beat the game even with cheats after my character fell in a fire pit and got locked in a damage loop because of the invincibility cheat code.
@skins4thewin
@skins4thewin 2 жыл бұрын
I agree it being a thing that the water level was hard is just plain stupid. I found it to be incredibly easy even as a 5 year old when I first played it. It was the next level when you have the Turtle Van that used to get me lost as a young kid.
@skins4thewin
@skins4thewin 2 жыл бұрын
@@TonyGearSolid Yup! My feelings exactly. And the next level was also where I would get stuck as a kid too because I didn't understand the jumping mechanics & couldn't get thru the sewer area. Would always fall in the water. I understand it now & how you simply need to just tap the jump button & it becomes super easy.
@JMFSpike
@JMFSpike 2 жыл бұрын
This will be immensely helpful for anyone who may decide they want to patch this to improve the game. Hopefully they would also change the color of Rocksteady and Shredder to grey, as other hacks have already done. There are probably some other minor tweaks that could be made too, most of them being perhaps hit box related. After all, if the dam level is this bad with hit boxes, then surely there is more hit box weirdness going on in other areas of the game.
@ShadowSumac
@ShadowSumac 2 жыл бұрын
Why Shredder should be grey? He is precisely the colors he should be, since this version of the Shredder's costume based on a OG comic book. As can be seen in the cutscene, after Splinter being kidnapped.
@rmyers99
@rmyers99 2 жыл бұрын
The main thing I remember about the US NES release of TMNT was the game breaking bug where you couldn't leap across this one bit of sewer due to a misplaced wall and the game was essentially unbeatable past that point. I think it was covered on this channel. But yeah would be nice to have a patched ROM with all of these bugs fixed just to be able to enjoy that.
@ShadowSumac
@ShadowSumac 2 жыл бұрын
@@rmyers99 It was not in any NES releases, but in EU PC port, I think. And later it was fixed with another revision.
@JMFSpike
@JMFSpike 2 жыл бұрын
@@ShadowSumac I looked into this and it looks like you're right about Shredder. The OG comic was black & white, but the colorized version has him red, as do all of his comic action figures.
@ShadowSumac
@ShadowSumac 2 жыл бұрын
@@JMFSpike Technically he appears in his cartoon-like colors in an intro of the game, but in the rest of the game he is modeled after OG comic book for some reason. On that note: creators of the game heavily borrowed not only from cartoon, but original comic book and got access to the script of the (than) upcoming movie, so they kind of mixed everything together, which is why there are OG Shredder, Splinter being kidnapped like in a movie and most of the other stuff is taken from the cartoon..
@LanceThumping
@LanceThumping 2 жыл бұрын
This makes me want to see a full fan "remake" that basically rewrites all the code to not be bad.
@GalileoAV
@GalileoAV 2 жыл бұрын
Love this episode. I think one of my favorite parts of old code is learning about archaic bugs lost to obscurity. Learning the solutions to a problem I'd never encounter
@Aoi84
@Aoi84 2 жыл бұрын
I know day 1 patches and known broken releases to fix later are the standard headache now, but it's a little bittersweet to know a few patches would have substantially increased my fun factor and ability to finish these games as a child.
@skins4thewin
@skins4thewin 2 жыл бұрын
While I don't agree w the whole Broken thing, this video was REALLY informative & helpful! Seeing the collision targets for the Turtles & the collision for the Seaweed will definitely help me get thru that area unscathed in the future. Thanks for that!
@feature-creature
@feature-creature 2 жыл бұрын
All your videos are awesome, but they're also just getting better and better. You've really found a terrific balance of making the code accessible while also getting into some real depth with it. Makes it super engaging, appreciate all the hard work!
@Athenor
@Athenor Жыл бұрын
This video pretty solidly answers why I felt like it was so useful to just let the current pull me through that seaweed area.
@otakubullfrog1665
@otakubullfrog1665 2 жыл бұрын
The strategy that me and pretty much everyone else used was just to try and play the rest of the level cleanly so that touching the seaweed there wasn't too much of a problem. I always just assumed my swimming was a little off if I brushed it and never realized that a current from another screen could randomly influence it. I'm sure that must be fun for speedrunners. Maybe they would want to inherit a current to move through it faster or, depending on whether a seaweed collusion slows you down and how much, maybe the fastest path actually involves damage boosting.
@mike2884
@mike2884 Жыл бұрын
It was a nice game. I applaud the programmers for trying and succeeding like hell to make a cool fun game. I'm sure this game had a quick deadline while trying to add a bunch of cool features like switching turtles, side scroll action, top down action, power ups, making graphics look decent , story, etc. This game pissed me off as a kid, but kept me coming back lol.... The seaweed level never gave me trouble....it was the last level that always got me :/ Great vid!
@TechInspected
@TechInspected 2 жыл бұрын
Great dissection and learning tool. As someone who tried to make games like this in the past, it's great to see how it's done albeit in this type of old game.
@williamdrum9899
@williamdrum9899 2 жыл бұрын
I played this game for the first time at a friends house, and I noticed that the status bar at the bottom of the screen is very glitchy and seems to disappear every other frame if too much stuff is going on (you can't see this on youtube because of video compression, you have to be playing the game in person.) I imagine it's some IRQ code not meeting its mark somehow. Which is weird because I thought that stuff HAD to happen. This is what I imagine is going on: Vblank: reload the NES's scroll registers so that the game world is on screen. Also set an IRQ to happen where we want to draw the status bar. Main program: Execute game logic etc IRQ: Alter the scroll registers to draw the status bar, and leave them that way until vblank
@mazionach
@mazionach 2 жыл бұрын
The mapper this game uses does not have a scanline counter to trigger IRQs, so the game has to use sprite 0 hit, which needs to be actively polled and can be missed
@MaxwelThuThu
@MaxwelThuThu 2 жыл бұрын
The same happens to Super Mario Bros. Just a sprite zero thing
@progrstick2966
@progrstick2966 2 жыл бұрын
New video from Displaced Gamers? What a nice day :D
@Choralone422
@Choralone422 2 жыл бұрын
I love breakdown of game code like this. This video perfectly illustrated why the water level felt so janky and why as a child I disliked it so much! Which was a shame cause most of the rest of the game was fairly well put together with a few other notable issues like jumping.
@heavysystemsinc.
@heavysystemsinc. 2 жыл бұрын
You're very skilled at breaking down these things and understanding the innerworkings of stuff most people playing the game simply experience viscerally. I do hope at some point you decide to do subtle hacks as a hobby. For instance, making TMNT here run at 60fps, and correcting the weirdness that's present in the entire game. The whole thing feels janky and felt that way even as a kid. I could clear the game with the jank, but it took a lot of 'feeling the game' which was deceptive to seeing the game. For instance, one of the most notorious parts of the game involved a 'one block jump' which wasn't a jump at all, you simply walk across the gap. There's a ton of this kind of jank in the game where the level designers tried in their own way to communicate the jank workaround to the player, but it really just didn't work.
@MelodicMizeryPs3Vids
@MelodicMizeryPs3Vids 2 жыл бұрын
its pretty awesome you showed the actual code. when i was 15 i use to program in visual basic 5. im 41 now. but nintendos programming wasnt far off from visual basics codes of using "if" "then" statements something like "if" turtle gets hit "then" deduct 1 bar of health. i never went past that phase in life as i destroyed my computer making a bad program that backfired lmao and learned i didnt have the money to keep buying new computers. but over the years it seems like most programming kind of has this same theory of if, then. and it helps me understand it more.
@Edzward
@Edzward 2 жыл бұрын
This series is a must for anyone interested in programming but specifically for those interested in game programming! To see some of the ingenious workarounds the programmers came up back in the day is really inspiring.
@nickwallette6201
@nickwallette6201 2 жыл бұрын
I've been a casual hobbyist coder since I was a kid, hacking away at BASIC on a TRS-80. Knowing a little bit about programming, I used to think about what it must take to pull off some of the things you have to do in game programming, like collision detection. But, it seemed like SO MUCH WORK that I assumed I just wasn't clever enough to understand how to do it correctly. Turns out, nope, it's actually a little more complex than I thought to get the details right. I still wonder how the larger organization of code is done. Like, what's the overall procedural structure of a game executable (or, just the ROM in this case)? You see all these breakdowns where a single part of the code lives, like how to move the turtle in water. But how does a game section off the intro title sequences, the cutscenes, levels, scoring screens, and so on? How do developers modularize that, and then build something that sequences all of it in the correct order? Is it hard-coded or does it follow a script? I've always been curious about that.
@NTSTS0
@NTSTS0 2 жыл бұрын
This is a really great explorative in-depth video. I think almost every kid who played this game back in the day wondered about the water level, come to find out it was even more jank than we imagined.
@TheNewRobotMaster
@TheNewRobotMaster 2 жыл бұрын
This explains why going through the seaweed tunnel was easier sometimes and harder other times. The randomness of the leftover current was the culprit.
@AdamEmond
@AdamEmond 2 жыл бұрын
6:45 now I know what gaslighting feels like
@JohnRiggs
@JohnRiggs 2 жыл бұрын
brilliant work. Thank you for this.
@ratone1983
@ratone1983 2 жыл бұрын
I always thought the seaweed screen had a current. Back in the '00s, I used to write 2D engines for fun. I always had to code hitboxes because otherwise it was madness. This video only raises my appreciation for those programmers who couldn't afford the luxury of adding those hitboxes, yet they delivered a playable product in a tight schedule. I love this channel.
@ekdavey
@ekdavey 2 жыл бұрын
This video was absolutely fascinating and I loved the use of visuals to explain all of this. That specific seaweed room was literally impossible to 5-year-old me. This video answered a question I never knew I had
@fgmenth
@fgmenth 2 жыл бұрын
Whenever I see a new video of yours on my feed I get all giddy inside. Getting all nerdy with retro games from a different era scratches a special kind of itch I can't quite explain.
@DisplacedGamers
@DisplacedGamers 2 жыл бұрын
Thanks!
@Toad64
@Toad64 2 жыл бұрын
Wow, great video. I felt like you really explained everything clearly, loved explaining the code and seeing the hitboxes like that. TMNT on NES is one of my favorite games, and it's weird, if you play it for long enough, you're just sort of used to the weirdness of those hitboxes and the current. But really interesting to see it all placed out like that. Also I never noticed the bubbles reacting to the current!
@SGFTI
@SGFTI 2 жыл бұрын
Inconsistent collision detection is one of the most frustrating things in gaming. Punches that go through a person, bullets that hit invisible walls, getting killed by seaweed you didn't even touch.
@KerynEverett
@KerynEverett 2 жыл бұрын
Well thanks for making me feel not so BAD at this level as a kid. This was a game that got rented for me many times and I never rage quit plays on a single level as much as this one, they tried for a dynamic swimming system and didn't quiet hit it in the way I think was intended.
@aner_bda
@aner_bda 2 жыл бұрын
It's funny how much I played this level as a kid trying to master it. I do remember how I found that going below the swirling gates was easier than going above, but never really put two and two together with the hitboxes being so off.
@diamondsmasher
@diamondsmasher 2 жыл бұрын
It would have been easier to go under regardless given you’re travelling with the blades (counter clockwise). To go above them guarantees you have less time to get past it.
@purplezebrahoover
@purplezebrahoover 2 жыл бұрын
I don’t know anything about coding but I watched this video in full and it was fascinating. This game still haunts my nightmares 30 years later 😳
@Artictoc
@Artictoc 2 жыл бұрын
Even as a kid I figured out how to manipulate the current and how to avoid triggering it all together (although I did it at a much earlier place than what's shown in this video which resulted in me not having to worry about current for the entirety of the stage). Interesting to see the code and the supposed "logic" behind it!
@SewerBushido
@SewerBushido 2 жыл бұрын
I love that this game is getting looked at more in-depth now
@TJ-vh2ps
@TJ-vh2ps 2 жыл бұрын
It is so validating to see this: playing TMNT as a kid, I could feel that the movement and hit boxes were off. It’s like being gaslighted your whole childhood and finally having the truth acknowledged. Even the specific offset of the hit boxes match up with my memory. So much weird stuff makes sense now. I wish the developers were able to spend more time working out the bugs and design issues in this. It was a great game in some ways (especially for the time), but the flaws and shortcomings made it deeply frustrating. I’d love to see an investigation of the first gameboy TMNT: that felt like it had even more issues, but was beautiful and challenging, even enjoyable for a one of the first gameboy releases
@JulienNeel
@JulienNeel 2 жыл бұрын
This was thoroughly enjoyable, thank you! Would you be OK with making a video that goes over the tools you use (NES emulator, Lua scripting, disassembly toolkit, etc.)?
@anon_y_mousse
@anon_y_mousse 2 жыл бұрын
This perfectly explains why that level was so difficult. I've never beaten that game and only twice gotten past that level. Now that I know up and down do nothing but change the animation, I understand better why.
@skins4thewin
@skins4thewin 2 жыл бұрын
It was never ever difficult at all.... Only those who really suck at games struggled with it.
@civildisorder
@civildisorder 2 жыл бұрын
Okay I saw the jump video for TMNT and this one, and now I'm hooking on this channel's content. This is fascinating stuff and excellent work.
@JanetStarChild
@JanetStarChild 2 жыл бұрын
Damn, I love all those Ninja Turtles vintage stuff you have; such rare and special treasures.
@BizarePlayer
@BizarePlayer 2 жыл бұрын
During the NES era, these kind of weird choices happened pretty often. Without proper testing, your game could have all kinds of awesome mechanics that either did something opposite than it was designed for, or didn't work at all. Good example is Pendant item in Faxanadu. It was suppose to make your character stronger, but because of a coding error, it makes you weaker. Sadly, these things got discovered when it was already too late to fix.
@kemy5368
@kemy5368 2 жыл бұрын
I have not played that game in 20 years and I still remember how frustrating that water level was...
@zachcrawford5
@zachcrawford5 2 жыл бұрын
That level was a gamekiller when I was little. One time I went to someone's house, I was probably five or so, and their adult son had this game and a game genie so he set me up with invincibility on it. So I could actually see what was past this level, something my older brothers hadn't even seen at the time, it was awesome. The one messed up part is the very last guy (super Shredder I think?) could still kill me! I remember this freaked me right out, I thought he broken the fourth wall, knew I cheated and was somehow going get out of the game and come after me for it. I remember running into where all the adults were hanging out and losing it because I was sure I was actually going to die. The adults (sortof) calmed me down and were starting to get mad at the guy who had set me up with "such a scary game". This guy stood up and said to me somthing like "well I guess you are just going to have to kick his butt in the game, then he can't come out and get you". It was a risky move but it worked, he hung out with me, giving me tips on what to do until I beat Shredder.
@MegaBleedman
@MegaBleedman 2 жыл бұрын
Videos like this makes me appreciate the people, time and effort it takes to create video games.
@bigvato
@bigvato 2 жыл бұрын
This was very enjoyable. I'm not a programmer but it's explained in a way I can generally follow along and understand.
@SireSquish
@SireSquish 2 жыл бұрын
Just chiming in that I like it when you do the code walking parts, and having the option to skip is great for those that don't.
@ProjectDevilEye
@ProjectDevilEye 2 жыл бұрын
How fascinating! I had no idea it was even possible to pass through the seaweed passage without any damage incurred, I think now with this new frame knowledge you've dropped an actual pass through there without a brush might just be doable. Your explanation of the code and how it works for those of us who aren't as knowledgeable was also very helpful. Definitely upset I've only now come across this, subbed from now on however.
@darkchiron
@darkchiron 2 жыл бұрын
9:40 I always thought the swimming on that screen was super weird. I'm glad to learn I wasn't just crazy.
@OrbGoblin
@OrbGoblin 2 жыл бұрын
lol oh man I just remember getting this as a rental and not being able to get passed this stage. It never occurred to me as a child it might just have bugs, but hey it's cool as an adult who does software to see this breakdown. Phenomenal work, just spectacular.
@Rationalific
@Rationalific 2 жыл бұрын
Finally, after 33 years, I finally know why I couldn't pass that stage as a kid. :) Fascinating. I even stayed through the code stuff because you kept the video interesting even though I can't read code.
@JohnSmith-zw8vp
@JohnSmith-zw8vp Жыл бұрын
You know back in the day I thought it was so strange that it was harder for the Turtles to swim than Mario! I mean, didn't Donatello once say that water is their natural habitat?
@thejonathandoan
@thejonathandoan 2 жыл бұрын
Outstanding video! Thanks for going into so much detail. I never got past this level when I was a kid, and it always super frustrated me! TMNT was my LIFE back in the day (late 80s/early 90s). The code walkthroughs in this video also remind me of why I never became a programmer. My cousin used to program his Commodore 64, and when I looked at the programming book, my inferior brain went NOPE. lol
@dkhepra2842
@dkhepra2842 2 жыл бұрын
Man this game is blast from the past, blessed yt channel.
@kanrakucheese
@kanrakucheese 2 жыл бұрын
When I heard the downward velocity from holding down wasn’t capped, I wondered how the collision physics worked and if they had a way to stop the player from gaining enough speed to phase through downward obstacles by just holding down for a while. I certainly wasn’t expecting to hear “The moving downward bit doesn’t actually work” as the first answer.
@FallenGemini
@FallenGemini 2 жыл бұрын
Even when I was a child, I never had too much if an issue with the water level. The issue that I had was the small gap where you have to press left rather than jump and long jump to the other platform in the 4th level.
@rmyers99
@rmyers99 2 жыл бұрын
Wow. This video was amazing. I don't even code but was able to follow it. I remember the frustration of playing this game so very well and it feels good to know WHY it was so messed up. I feel a sense of closure. All that said I was pretty good at getting through the water level just from trial and error after many frustrating attempts. I remember how you could brush against bits of the seaweed without taking damage and just tried to hit those spots. I was able to make it through the "infamous" screen with very little damage even with all of these ridiculous bugs.
@Fender178
@Fender178 2 жыл бұрын
This is very interesting indeed. I never really had any issues completing the dam level when I was a kid but my turtles would always have low health by the time I reached the end and I would always quit at the beginning of Stage 3. It is possible to complete Water level without getting hit it is very difficult to do but maybe with your Game Genie codes it might be a tad bit easier to do it. Also it explains on why it was difficult to swim in certain locations or why your turtle would speed up or slow down. It was very difficult to swim in that seaweed area because of how swimming downwards felt like you were a brick or had weights on. I never knew there was a bug in this Stage. Nicely done explaining the issues with this stage.
@Pooby1000
@Pooby1000 2 жыл бұрын
I could not have imagined watching a video about Ninja Turtles on NES would leave me feeling smarter.
@FoolsGil
@FoolsGil 2 жыл бұрын
I used to watch my older brother play this game constantly, and someway somehow he knew the water level like the back of his hand. Never any mistakes.
@blatinobear
@blatinobear 2 жыл бұрын
Thanks so much for this video, now my childhood can finally rest in peace
@Sonicgott
@Sonicgott 2 жыл бұрын
My childhood self would be pleased to know that my inability to pass certain parts of the stages were the result of shoddy code, and not my lack of skill.
@iamthem.a.n.middleagednerd1053
@iamthem.a.n.middleagednerd1053 2 жыл бұрын
I'm 39 and played this game as a kid. Once you got a feel for the level it actually went from being the hardest to the easiest in the game.
@Busker_3000
@Busker_3000 2 жыл бұрын
I remember this was probably my very first video game. Rented it w/ a NES from the video store when I got to stay home sick from kindergarten. That water level ruined my 5yo life, I could never get past it.
@sakazakijin
@sakazakijin 2 жыл бұрын
I could do this level without taking damage. Dying thousands of times likely helped with that. Very interesting and informative video. Subbed
@silentfanatic
@silentfanatic 2 жыл бұрын
Very elucidating! I guess this just goes to show that devs have always faced impossible deadlines.
@adamgustafsson7703
@adamgustafsson7703 Жыл бұрын
Man, these videos are next level trivia if you're in to retro 2d game dev
@dansmith1661
@dansmith1661 2 жыл бұрын
This and King Koopa's arm hitbox in SMB3 were my introduction to hitbox oddities.
@tiamatmichellehart6821
@tiamatmichellehart6821 2 жыл бұрын
Picture it: December, 1991. I'm at a friend's house when his sister comes back from the mall having *won a Game Genie.* My friend's other friend present wasn't impressed; he said, "What's the big deal? It's just a *cheating machine!"* I found myself rounded upon by them both when I tried to state otherwise, but I somehow could sense that there was vast, largely-untapped potential to the Game Genie.... Thank you for vindicating me in my forties!
@vollkommen1982
@vollkommen1982 2 жыл бұрын
Stumbled across this on my feed, very fun to watch, thank you!
@ghostoflazlo
@ghostoflazlo 2 жыл бұрын
I'm so happy this got recommended to me! Thank you for a great video!
@partlyawesome
@partlyawesome 2 жыл бұрын
Love these videos were you walk through the code. Very mini-"retro game mechanics explained", and i mean absolutely no disrespect.
@fbodirector7464
@fbodirector7464 2 жыл бұрын
Another awesome video from one of my favorite KZbin channels
@CarbonRollerCaco
@CarbonRollerCaco 2 жыл бұрын
I like how you showed the "forbidden" rows at the top to hint at why the environment's collision was off in the way it was. Anyway, DAMN. Even when this video makes clear only the tiles completely filled with 8×8 seaweed bits can zap you, the environmental collision checking process nearly destroys the leniency that grants compared to the sprite collision checking process. More dickish than intended, yet still miraculously beatable. SCREAMS "rushed to capitalize on a hot property". And it worked because the bugs were inobvious and we were far less experienced and cynical in those days, so we just assumed it was ALL intentional. Probably including the playtesters, too, if there WERE any. Of course, I'm not entirely sure the staff was complaining in the end. But the reason *I* hated the seaweed passage wasn't so much the difficulty as it was the punishment laid on top: THE SOUND. It was literally PAINFUL and SCARY to hear that sudden sharp *_BRZZT BRZZT BRZZT_* buzzing. I always had someone else do that part as a kid for that reason. Even today, when I can do the part myself, I shudder at the prospect. *_BRZZT BRZZT BRZZT_*
@solembum78
@solembum78 2 жыл бұрын
Just like always, amazing content! Thank you for this!
@spookydonkey42
@spookydonkey42 2 жыл бұрын
This video breakdown was CATHARTIC
@TheOriginalSentack
@TheOriginalSentack 2 жыл бұрын
What a fantastic video. Very interesting to see how odd a lot of hip boxes were. I agree with others that back in the day it was a lot harder to debug these things. So I give the developers a pass but wow it just sounds like they made things a lot more complicated than they need to be. Still a really impressive game. I would love to see somebody actually make a ROM hack patch using your suggestions.
@Alex_Valentine
@Alex_Valentine 2 жыл бұрын
Someone has to make this patch. Oh, and please continue dissecting this game. I never really like it but you sure do make it interesting.
The Bad Jump Design and 30 FPS Gravity of TMNT (NES) - Behind the Code
13:38
DID A VAMPIRE BECOME A DOG FOR A HUMAN? 😳😳😳
00:56
Não sabe esconder Comida
00:20
DUDU e CAROL
Рет қаралды 32 МЛН
Хасанның өзі эфирге шықты! “Қылмыстық топқа қатысым жоқ” дейді. Талғарда не болды? Халық сене ме?
09:25
Демократиялы Қазақстан / Демократический Казахстан
Рет қаралды 341 М.
How it feels when u walk through first class
00:52
Adam W
Рет қаралды 23 МЛН
The Awful Controls of Ikari Warriors for NES - Behind the Code
21:14
Displaced Gamers
Рет қаралды 46 М.
Contra - Behind the Code
23:02
Displaced Gamers
Рет қаралды 217 М.
The PS1 is better than the PS5 Pro!
11:42
Brayden Hanning
Рет қаралды 3,1 М.
Action 52 - A Bit of History & A Bit of ROM Archaeology
18:06
Displaced Gamers
Рет қаралды 187 М.
Huge New Findings About Doom's Graphics
13:10
decino
Рет қаралды 380 М.
7 Worst Guns in Videogames We Wouldn't Shoot Our Worst Enemy With
15:41
How Speedrunners BROKE Castlevania's Scrolling - Behind the Code
17:24
Displaced Gamers
Рет қаралды 96 М.
DID A VAMPIRE BECOME A DOG FOR A HUMAN? 😳😳😳
00:56