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

  Рет қаралды 189,009

Displaced Gamers

Displaced Gamers

Күн бұрын

What collision detection? Code investigation into the velocity and collision logic in the water level as well as some hitbox mistakes.
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 by:
/ hariboosx
/ @wolfandraven
[0:00] Opening
[0:49] Level setup
[1:10] Basic Object Collision
[2:40] Bubbles and Current
[4:33] Code Walk: Controller Input and Velocity Application
[10:57] Code Change Proposal
[12:41] Environmental Collision Detection
[17:39] Conclusion and Outro
#TMNT #Turtles #NES

Пікірлер: 765
@DisplacedGamers
@DisplacedGamers Жыл бұрын
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 Жыл бұрын
I sure did!
@anon_y_mousse
@anon_y_mousse Жыл бұрын
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 Жыл бұрын
@@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 Жыл бұрын
@@SianaGearz I'll look into it, didn't even know that was a feature they offered.
@Hattes
@Hattes Жыл бұрын
I didn't even know that channel memberships was a thing.
@SergeyLergDev
@SergeyLergDev Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
I think tracking values on screen is incredibly useful and effective, much faster than using a debugger directly in some situations
@gizaha
@gizaha Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@anon_y_mousse print debugging is a totally viable option today, nothing to be ashamed of.
@guaposneeze
@guaposneeze Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@williamdrum9899 I think rendering the game as only boxes, skipping the sprite proper might have been possible.
@beefquiche
@beefquiche Жыл бұрын
@@duuqnd that would be awesome man!
@crtxl
@crtxl Жыл бұрын
But a lot of youtubers in the last ten years less money 😄
@justinbremer2281
@justinbremer2281 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
😂
@paulstevens1493
@paulstevens1493 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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!
@KairuHakubi
@KairuHakubi Жыл бұрын
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 Жыл бұрын
there's no reason why the electricity would run through the turtles in the level tho is there?
@KairuHakubi
@KairuHakubi Жыл бұрын
​@@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 Жыл бұрын
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 Ай бұрын
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.
@Patashu
@Patashu Жыл бұрын
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 Жыл бұрын
Explains so much of my childhood frustration. I remember ONCE making it and just giving up on the game after.
@nickfarace9339
@nickfarace9339 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@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 Жыл бұрын
And that is the reason that level is one of the most infamously despised in all of retro gaming.
@StevenVillman
@StevenVillman Жыл бұрын
@@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.
@AbdulRahmanNoor
@AbdulRahmanNoor 10 ай бұрын
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!
@makeitrein7366
@makeitrein7366 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@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 Жыл бұрын
@@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 Жыл бұрын
@@B3Band cus ppl suck that's why. Its really not that hard.
@mcfartle9450
@mcfartle9450 Жыл бұрын
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)
@JossCard42
@JossCard42 Жыл бұрын
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 Жыл бұрын
Thanks, JossCard42. I try to present the technical, behind the scenes stuff while constantly tying it back to the actual gameplay.
@williamdrum9899
@williamdrum9899 Жыл бұрын
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.
@mattduncan3869
@mattduncan3869 Жыл бұрын
It's incredible actually seeing the reason why this level felt the way it did. After all these years it makes sense.
@BaronVonTeeVirus
@BaronVonTeeVirus Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@CarbonRollerCaco Turbo Tunnel was actually fun, though. It was just way too hard.
@Phoboskomboa
@Phoboskomboa Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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.
@nilssonalex92
@nilssonalex92 Жыл бұрын
As a speedrunner of this game, I have to say, interesting stuff. Good video.
@benjaminyoung9694
@benjaminyoung9694 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@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.
@Corey.Coolidge
@Corey.Coolidge Жыл бұрын
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.
@Kippykip
@Kippykip Жыл бұрын
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 Жыл бұрын
Lol, I assure you that this does absolutely nothing to benefit God.
@williamdrum9899
@williamdrum9899 Жыл бұрын
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
@ryanpirosch3977
@ryanpirosch3977 Жыл бұрын
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
@PigeonHoledByYT
@PigeonHoledByYT Жыл бұрын
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 Жыл бұрын
Right? All that work dedicated to adapting to any game's difficulty establishes your instincts and becomes second nature.
@lukesomers2031
@lukesomers2031 Жыл бұрын
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 Жыл бұрын
@@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.
@RobMKeh
@RobMKeh Жыл бұрын
Your code change proposal is how code reviews go when you make 1 minor edit to a 10 year old system. "Since you're here, mind fixing all this other stuff?" Yes Gary, I mind.
@LanceThumping
@LanceThumping Жыл бұрын
This makes me want to see a full fan "remake" that basically rewrites all the code to not be bad.
@erc0re526
@erc0re526 Жыл бұрын
That's incredible!! This explains so much. And I love the code walkthroughs, I'd watch whole videos of that
@dkranda
@dkranda Жыл бұрын
I love this series. The production quality is outstanding and the in depth analysis is so interesting.
@miguelsilveira6623
@miguelsilveira6623 Жыл бұрын
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!
@ValkyrieTiara
@ValkyrieTiara Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@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 😂)
@paulstevens1493
@paulstevens1493 Жыл бұрын
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!
@progrstick2966
@progrstick2966 Жыл бұрын
New video from Displaced Gamers? What a nice day :D
@feature-creature
@feature-creature Жыл бұрын
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!
@jameskrigney
@jameskrigney Жыл бұрын
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.
@JMFSpike
@JMFSpike Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
@@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 Жыл бұрын
@@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 Жыл бұрын
@@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..
@otakubullfrog1665
@otakubullfrog1665 Жыл бұрын
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.
@GalileoAV
@GalileoAV Жыл бұрын
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
@apollodash5912
@apollodash5912 Жыл бұрын
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 Жыл бұрын
Wait until you see how fighting game AI was back then 😂
@NTSTS0
@NTSTS0 Жыл бұрын
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.
@Aoi84
@Aoi84 Жыл бұрын
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.
@civildisorder
@civildisorder Жыл бұрын
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.
@ekdavey
@ekdavey Жыл бұрын
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
@ghostoflazlo
@ghostoflazlo Жыл бұрын
I'm so happy this got recommended to me! Thank you for a great video!
@fgmenth
@fgmenth Жыл бұрын
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 Жыл бұрын
Thanks!
@vollkommen1982
@vollkommen1982 Жыл бұрын
Stumbled across this on my feed, very fun to watch, thank you!
@Athenor
@Athenor 9 ай бұрын
This video pretty solidly answers why I felt like it was so useful to just let the current pull me through that seaweed area.
@mike2884
@mike2884 11 ай бұрын
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!
@dkhepra2842
@dkhepra2842 Жыл бұрын
Man this game is blast from the past, blessed yt channel.
@gedowski1
@gedowski1 Жыл бұрын
I really enjoy your videos and look forward to the next one. Thanks for taking the time to do these
@AdamEmond
@AdamEmond Жыл бұрын
6:45 now I know what gaslighting feels like
@fbodirector7464
@fbodirector7464 Жыл бұрын
Another awesome video from one of my favorite KZbin channels
@SGFTI
@SGFTI Жыл бұрын
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.
@thejonathandoan
@thejonathandoan Жыл бұрын
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
@Toad64
@Toad64 Жыл бұрын
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!
@TKnightcrawler
@TKnightcrawler Жыл бұрын
Great video. So much work to fix this section!
@Rationalific
@Rationalific Жыл бұрын
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.
@TechInspected
@TechInspected Жыл бұрын
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.
@sagacious03
@sagacious03 Жыл бұрын
Great analysis video! Thanks for uploading!
@skins4thewin
@skins4thewin Жыл бұрын
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!
@bigvato
@bigvato Жыл бұрын
This was very enjoyable. I'm not a programmer but it's explained in a way I can generally follow along and understand.
@ProjectDevilEye
@ProjectDevilEye Жыл бұрын
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.
@MegaBleedman
@MegaBleedman Жыл бұрын
Videos like this makes me appreciate the people, time and effort it takes to create video games.
@solembum78
@solembum78 Жыл бұрын
Just like always, amazing content! Thank you for this!
@JanetStarChild
@JanetStarChild Жыл бұрын
Damn, I love all those Ninja Turtles vintage stuff you have; such rare and special treasures.
@rmyers99
@rmyers99 Жыл бұрын
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.
@purplezebrahoover
@purplezebrahoover Жыл бұрын
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 😳
@Pooby1000
@Pooby1000 Жыл бұрын
I could not have imagined watching a video about Ninja Turtles on NES would leave me feeling smarter.
@williamdrum9899
@williamdrum9899 Жыл бұрын
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 Жыл бұрын
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 Жыл бұрын
The same happens to Super Mario Bros. Just a sprite zero thing
@Edzward
@Edzward Жыл бұрын
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 Жыл бұрын
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.
@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?
@ratone1983
@ratone1983 Жыл бұрын
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.
@EspireMike
@EspireMike Жыл бұрын
Such an awesome, detailed video. This channel rules!
@OrbGoblin
@OrbGoblin Жыл бұрын
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.
@jojst1
@jojst1 Жыл бұрын
Nice! Very nostalgic. Subscribed.
@Deus69xxx1
@Deus69xxx1 Жыл бұрын
i was nostalgia starting a play through that the other night on emulator, and i'm saved just before the dam. this'll be interesting going through that with knowledge of the hit boxes and vectors.
@spookydonkey42
@spookydonkey42 Жыл бұрын
This video breakdown was CATHARTIC
@PKspectre
@PKspectre Жыл бұрын
I'll never get tired of these videos
@KerynEverett
@KerynEverett Жыл бұрын
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.
@blatinobear
@blatinobear Жыл бұрын
Thanks so much for this video, now my childhood can finally rest in peace
@NavJack27gaming
@NavJack27gaming Жыл бұрын
awesome video! i always look forward to these!
@partlyawesome
@partlyawesome Жыл бұрын
Love these videos were you walk through the code. Very mini-"retro game mechanics explained", and i mean absolutely no disrespect.
@KorenLesthe
@KorenLesthe Жыл бұрын
Wow, hearing your voice while being away from my monitor I thought you were Chris Stuckmann ^^; Also finally a video about collisions in NES TMNT !
@LatestGameReviews
@LatestGameReviews Жыл бұрын
Very nice! Thank you for uploading!
@Choralone422
@Choralone422 Жыл бұрын
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.
@adamgustafsson7703
@adamgustafsson7703 Жыл бұрын
Man, these videos are next level trivia if you're in to retro 2d game dev
@JohnRiggs
@JohnRiggs Жыл бұрын
brilliant work. Thank you for this.
@Ragesauce
@Ragesauce Жыл бұрын
This is so cool, I didn't realize I wanted this until I saw it, awesome.
@MelodicMizeryPs3Vids
@MelodicMizeryPs3Vids Жыл бұрын
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.
@Artictoc
@Artictoc Жыл бұрын
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!
@josephsilberstein1577
@josephsilberstein1577 Жыл бұрын
8yr old me is so vindicated right now. thanks for the amazing DIVE into the code.
@renakunisaki
@renakunisaki Жыл бұрын
That misplaced target seems entirely redundant. Is it even supposed to exist?
@DisplacedGamers
@DisplacedGamers Жыл бұрын
It is interesting how often your question can be applied to a lot of the code I saw! "Is it even supposed to exist?" seemed to be a recurring theme for me.
@rynobehnke8289
@rynobehnke8289 Жыл бұрын
It seems to kinda a line with the turtles arm at its out most position during the swimming animation so perhaps that was the reason?
@MrMarket1987
@MrMarket1987 Жыл бұрын
First time stumbling on this channel, and you got me onboard with this old pain in the ass level being dissected to alleviate some of my old grudges with it in such a detailed manner... Also, your voice just kinda reminds me a little of the fella that plays Sun Jian in the later PS2 Dynasty Warrior games, so that's an amusing bonus to have along narrating.
@tiamatmichellehart6821
@tiamatmichellehart6821 Жыл бұрын
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!
@Alex_Valentine
@Alex_Valentine Жыл бұрын
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.
@darkchiron
@darkchiron Жыл бұрын
9:40 I always thought the swimming on that screen was super weird. I'm glad to learn I wasn't just crazy.
@8BitCrypt
@8BitCrypt Жыл бұрын
Very interesting. Great editing too.
@patrickreed2786
@patrickreed2786 Жыл бұрын
This is amazing. Well done!
@SewerBushido
@SewerBushido Жыл бұрын
I love that this game is getting looked at more in-depth now
@Corsuwey
@Corsuwey Жыл бұрын
Thanks for the Game Genie codes. I was never able to finish this game when it first came out. My brother did completed it once and we were like, "Welp! That's it! No more!!!"
@iamthem.a.n.middleagednerd1053
@iamthem.a.n.middleagednerd1053 Жыл бұрын
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 Жыл бұрын
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.
@Fender178
@Fender178 Жыл бұрын
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.
@obsidiansands
@obsidiansands Жыл бұрын
Take note; this "long-standing frustration" is also what helped The *"ANGRY VIDEO GAME NERD"* skyrocket to geek stardom and legendary pop culture phenomena. And the rest was history.
The Bad Jump Design and 30 FPS Gravity of TMNT (NES) - Behind the Code
13:38
100❤️
00:19
MY💝No War🤝
Рет қаралды 23 МЛН
One moment can change your life ✨🔄
00:32
A4
Рет қаралды 31 МЛН
Contra - Behind the Code
23:02
Displaced Gamers
Рет қаралды 212 М.
Doom didn't kill the Amiga...Wolfenstein 3D did
16:58
Modern Vintage Gamer
Рет қаралды 692 М.
GOLDEN AXE GRAPHICS COMPARISON | Arcade VS Genesis VS 32X
16:58
Playnalisis
Рет қаралды 7 М.
Super Metroid's Greatest Moment
15:10
i am a dot.
Рет қаралды 49 М.
DOS Gaming Aspect Ratio - 320x200
13:06
Displaced Gamers
Рет қаралды 137 М.
MMC2 Magic - How Punch-Out's Graphics Work
14:57
Displaced Gamers
Рет қаралды 52 М.
What was the N64 Expansion Pak actually used for?
15:03
Modern Vintage Gamer
Рет қаралды 1 МЛН
skibidi toilet 76 (part 2)
4:28
DaFuq!?Boom!
Рет қаралды 15 МЛН