"This style of programming is called 'absolutely terrible.'" I love this line. I have this on while working. I'm a software engineer. So, that line caught me off guard, and I had to stop to laugh.
In truth this was endemic to a _lot_ of NES games. Very few developers were actually super clever and in tune with the hardware, 90s era CAPCOM was one example of someone who pulled lots of fantastic tricks. I don't know if I can fully blame these old devs; computer science was kind of in its infancy, and programming an NES was an esoteric experience. Can't utilize high level programming languages here like we can easily do today, with tons of resources, autocomplete, prepackaged libraries, etc. You not only had to know how to "talk" to the hardware, but also speak the CPU's native language while trying to figure it out. And it's not like there were infinite resources on game programming, and UA-cam was only a thing of sci-fi imagination. They're still terrible games often not fun to play, however I kind of understand why they were the way they were.
@@CaptainSouthbirdThis is more true for game development than computing more generally. By the late 80s, many home computer programs were developed in high level languages. HLLs were even more common for minicomputer and mainframe programs.
@@HowManyRobot Storing data in CHR ROM was actually a pretty common technique in early NES games (up to 1986 or so) and was still used in a few later games (such as every game Culture Brain developed). The first bankswitched cartridges available only bankswitched the CHR ROM, not PRG ROM. I think Dragon Quest has a higher ratio of data to actual graphics in CHR ROM than any other game, though--more than half the CHR ROM is data.
Aww. That is never my intention. I've made mistakes, felt the crunch of deadlines, had last second changes asked of me that I didn't implement well - we all have. I might make jokes about the code here or there, but I'll always defend the programmers.
@@DisplacedGamers Haha, I know it's all in good jest. I'd be so blessed if anyone ever cared enough to reverse engineer the code I've written, yet alone talk about it!. Your videos are the best man, keep it up 💜
@@DisplacedGamers True, but I believe the point is that it serves as healthy motivation to not forget about the details (as opposed to the kind of unhealthy motivation many employers use that increases stress and often leads to mistakes like this in the first place). “Not a big deal, but still something to keep in mind,” sort of thing.
Well, I can't confirm (no interest in playing the game, haha), but I heard some people in other videos mention you can use the cane attack to diffuse the bombs...
The thing I find incredibly fascinating about this game is that when it “lags”, the game actually speeds up. I have no idea what could possibly cause this, but it’s most apparent in the city stage when a woman is singing while there are barrels. The more sprites on screen, the faster everything moves.
Game trying to compensate for CPU slowdown by upping the speed per cycle, to try and make the speed per delta time stay the same? Later games like Rare's N64 games pulled that trick off.
Some older games were programmed to detect if things were starting to run slowly and speed up *everything* to compensate. This can lead to funny things when running on much stronger hardware.
There is a decentish game hidden behind the final, shoddy product. Your suggestions would make it more playable (especially the smaller bomb blast radius)...and possibly even enjoyable.
How random is this! I just played through this whole game, US and the Japanese versions, and I was really thinking the same thing. "Is it fun?" Because in the abstract it's really a brilliant game. It even has multiple endings, the hidden one accessed by avoiding being struck by lightning for venturing past Jekyll as Hyde by using the rooftops of the final level. So many small and just bizarre changes in localization too, multiple levels removed and enemies as well. Really interesting stuff for game grognards like me.
I've always liked what this game is TRYING to do. Honestly it needs so much work under the hood it'd probably be better to remake it from scratch. I'd make the bomb radius smaller, the bomb timer longer and have it knock you away from the bomb instead of to the left regardless.
Heck, if we are remaking it, scrap bombs altogether. Make it so you have to avoid the people because they shove you, or something. Give the player more ground to go around things with, like a Double Dragon style ground. etc.
You are thinking of the game strictly as a game and not as a piece of art. By which I mean that making the bomb knock you to the right in any circumstance is antithetical to the point of the game.
This game really kind of shows how game programming was evolving back then. And even more, how much of a huge leap games like SMB1 were. Standards for scrolling and hitboxes just weren't there yet, everyone was finding out what they thought the best way to do it was. Trying to fit a puzzle piece in the large puzzle of gaming history.
The cane attack wouldn't be missed that much anyway, even for the bees, as, if you duck at the right time, you can actually headbutt the bees, and not take damage. Yes, this works....assuming the bees fly low enough. Anyway, nice dissection of the code! I haven't really seen anybody else tackle Jekyll and Hyde's code like this before.
Great video! The code reminds me of the first game I made in university, where everything moved in lockstep because I was a new programmer. Refactoring that sort of thing into something dynamic is very satisfying. If it were me, I'd make a run mechanic add to your stress. He's going to be late for the wedding! It would let you run as much as you want at the risk of taking self-damage, basically.
Would be interesting to tie the run to the stress meter. Have it increase slightly as you run. Using the run to dodge things that will significantly increase stress, at the cost of a little stress.
What brilliant timing, I just played through this whole game, and was wondering pretty hard about how the bizarre and infuriating bomb collisions worked! This channel always answers my most burning questions. The spiders are definitely one of the most maddening enemies ever conceived.
2:59 I’ve watched this video about five times in the past month, and this part cracks me up every single time. I love your videos. I only wish they were longer.
Reprogramming the cane "attack" button would almost make this game fun to play if it actually becomes useful, for example, pushing bombs away, killing enemies, breaking obstacles, etc. As for the jerky walking speed, having a subpixel and velocity counter would go a long way over the arguably disgusting movement code in place, lots of things could make this game almost good lol
every time this channel uploads i get excited. i love these code dives on games you wouldn't immediately think about. we've beaten SMB1-3 to death, let's bring on dissecting the regrettable rentals we all made at Blockbuster
I would like to see the logic of using the cane. Why does it only work on bees. is that by design or bug. I've also seen from one source the can can be used to defuse the bomb. Again, it would be good to see if that is true. There is also a bug seen in AVGN videos of this where if you fall off a wall instead of jumping off, you die. I think this happens as Jekyll Again love to see the logic there.
It’s always interesting to see what kind of improvements can be made by just a few tweaks. Makes me wonder how they landed on certain decisions they made
yeah honestly this game is so close to being decent. it's a game that absolutely deserves a remake or reimagining. a jekyll/hyde game where you can only get the good ending if you manage to balance good/evil is such a good idea imo.
An interesting mechanic with the bombs in that running to the left means the bomb will knock you out of range if you get caught. Running to the right basically guarantees full damage if you get caught. Might be why the damage range to the right is shorter.
Awesome video. Whenever a new video comes out I always make sure to take time to pay 100% attention. Some videos I just let play in the background, not these. Thanks !
I always thought this game was a masterpiece in disguise because of how deep the symbolism is-Jekyll can’t attack people because he’s the “good guy”-he doesn’t have it in him to act violently towards another human being or animal. When playing as him, the game world is bright and colorful, representing an optimistic outlook. When Jekyll turns into Hyde, he acts violently and the world around him looks dark and depressing, representing the fact that his emotions have gotten the better of him and shifted his personality and outlook on life. The demons Hyde must battle to turn back into Jekyll represent Jekyll’s “inner demons”, and the game can only be won with the best ending if you take a hidden path that leads to a boss battle where you confront the “leader”, or the “source” of these demons. The goal being to marry your fiancée represents how romantic relationships can be negatively affected by a pessimistic mindset, but thrive when both partners are in good mental health; Jekyll gets the girl after battling his personal demons, ensuring that he can be emotionally mature enough to handle a committed marriage that may include occasional conflict. Honestly, I kinda wanna write a whole essay on this and post it somewhere, as I feel like many people see this game as just a video game and don’t notice the symbolism and deeper meanings.
Bad Game Hall of Fame has a pretty good article on this game where they tackle this aspect of it actually, though I'd be interested in a dedicated essay since BGHoF's was more of a review.
So that's why the bombs do varying amounts of damage. They have a big damage area that lingers for 15 frames, and you take damage every frame you're inside it. If you try to run back left away from the bomb but don't make it, you'll get sent flying left and out of danger so you won't take much damage. If you try to run right past it but don't make it, you'll be bounced left back into the danger zone and take maximum damage...
I've heard some people mention that the cane can also be used to diffuse the bombs (by hitting the wick), I've never played the game to say if that's true though, haha...
Another awesome episode!! Would be cool to make a Game Genie code to damage all enemies with that useless cane 😂😂 Are you familiar with the Famicom exclusive Sweet Home? There's a super crazy glitch that breaks the game in multiple ways, such as moving at 2x speed. I've even done some speedruns using it. I know how to do the glitch, but I'd love a technical explanation of exactly what is happening.
16:10 "This method of programming is what we call..." ...Terrible? "...Absolutely terrible." Ah, right, I forgot to account for making negative values still count toward the same direction.
ok this last change the code looks actually awesome, it's v cool to have a notion on how this game loads in VRAM by seeing it... Not being able to load properly due to speedy scrolling
"Let's double Jekyll's walking speed from 2 pixels to 4 pixels...." should NOT have to be followed with "This is the most reprogramming work I've done for Behind the Code so far."
Aww I was hopeing you were gonna make the cane not useless. But i doubt the jekyll sprites had collision and that would have been some massive reprogramming. So i get why not, but still would have been cool.
2:32 I don't understand what he means the by increment the sprites x position in RAM? Does he mean that each sprite has an address in RAM to store its x position, dont all NES sprites have that data for sprites? How's this different from say how SMB draws mario at a certain position. doesn't SMB update the sprites' position data to draw him at the correct location?
Do an isometric game, like Racing Destruction Set on the C64 or something like that. I'm curious how they went about programming the movement regarding the slopes and whatnot. Same with Marble Madness! Your vids are awesome
I speedrun this game from time to time and have noticed on parts with too many sprites (mainly the final level) that game speedsup on its own about 300% for a duration until you turn into Hyde or you can wait it out. Any idea how this game does reverse slowdown from too many sprites.
I would add paralax scrolling. I think it can be done when the foreground moving twice the speed of the midground Hyde is on and the background moving half that.
y'know, i was gonna comment on that recent avgn vid something along the lines of "welp, can't wait for the behind the code followup vid!" i should've known to commit to the bit
I think AVGN said it best, if you want an example of a game that does nothing to explain its rules and boundaries, this is a great case study. Less RNG would probably help a lot, as I think its also a great showcase of randomness is not more fun as it leads to frustrating waits and enemy patterns that feel unfair. Reducing that would likely make the game much more playable.
amazing work as always, not a fan of these infamous nes games, but quite nice to fix some of those weird behaviours. Would you consider doing a video explaining how the scenes load in The last ninja games for C64 ? that was super advanced, and uses the same cpu as the NES
@@DisplacedGamers hey ! thanks for reading me legend ! yes, in fact they are very similar to NES ones in terms of showing raster position, audio debugging, sprites, etc. The most complete one is C64 65XE Debugger, you can see in real time all the memory and video working. I managed to reverse engineer Battleship and Tapper with it and no other emu. Let me know if I can give you more info or help in any way. And thanks again
I live when a new BTC video cones up. I like the idea of using pixels regarding hit detection I don't know why it isn't implemented more with early games. Also, I love how self reflecting this video is. The more you tinker with the code the more warped and horrendous the game becomes. As if you're turning the game into an NES version of Mr Hyde itself.
As an avid fan of the original novel and of the general concept of JnH, i can confirm that this game is about as well held together as the main man himself, which fittingly means it's on the constany verge of breaking down entirely
Great video! Has an original game developer ever commented on one of your videos about their work? This one especially I'd love to hear the background story to the development.
I just found out your channel, you have a new sub! Maybe the cane could be reprogrammed to be useful against other enemies? But perhaps that goes against the idea that Jekyll is peaceful and Hyde is violent, I don't know.
It's almost like, conceptually, the game is trying to be Postal 2 if it were made on 8-bit hardware and set in Victorian England. All Dr.Jekyll wants to do is go about his business peacefully, but the rest of the game is (literally) designed to _ruin his day..._
Great video! You truly have content unlike anything else on this platform, and it's amazing! Also quick question, I wanted to try out dissecting games, and I was wondering what program do you use to see all the machine code and the sprites in the ROM?
I'd probably add some type of meter for Hyde that lets you know how close you are to getting out of the Hyde state or failing. And make the cane more useful.
Very interesting channel. Glad I checked it out. I wish you would do the SNES game of Lord of the Rings. I feel that game has the potential to be great, if fixed.
I am super interested in why running into elevated ground with the increased walking speed causes the level to change. That's such an odd bug. Wonder if it's possible to trigger under normal circumstances?
Perhaps the end of the level check is implemented by an object that doesn't trigger the normal hit detection, so when Jekyll clips into it the level is ended. However the faster walking speed means that you clip into all solid objects, triggering the end of the level, which only checked to see if you were clipping into an object.
If you wanted to do a stamina mechanic for running, the Stress meter sounds like a perfect candidate. Slowly drop the meter from J(ekyll) to H(yde) the more the run is relied on.
I unironically love this game and wouldn’t change a thing about it. Yeah it’s a bizarre, cryptic, frustrating, slow mindfuck that seems to actively have it out for the player but it’s such a unique and one of a kind game that tries something different; with a lot of genuinely cool symbolism and imagery. While changing some of the design to make it more “game-like” is a cool concept that would probably make it more accessible to others, I think it also takes away a lot of the game’s alien charm. That’s just my two cents at least
What if an added run mechanic adds to Jekylls stress? So yeah you can outrun a bomb to dodge a big stress hit but run too much and you still turn into Hyde?
Given that the Hyde portions of the game are auto-scrolling with automatic death if Hyde gets too close to Jekyll that would make the Run function too dangerous to actually use since stress can change so dramatically due to just one bomb blast (and the bombs are relentlessly being placed). Plus there would always be the issue of having only a little stress to go and accidentally hitting the run button. The only way I can see that possibly working is if there was a delay before stress started changing. Better to have a separate stamina better. Someone else mentioned Clocktower 1 and yeah I totally understand. In that game Jennifer's health and stamina are the same value and she too is slow-moving so there's always an impetus to run. You can stop and rest but this requires you to stop and its rather slow and cumbersome. There's a reason later games in the series have health and stamina as different values.
I think I would have jumped to an "island routine", most games have garbage data and I would replace that with the routine. The code I replace with the jump to that routine (JSR....) I will of course have at the routine I jump to so that nothing is really changed. That way I could just check for the B button and increase the X position and decrease the scrolling in the island routine then RTS out of it to continue where it left off.
Now let's see you dissect Clash at Demonhead, I want to know if it's possible to beat the demon without the Sword of Apollo. You die in one hit during that boss fight so let's see if you can reprogram it where it can be beaten.
You need to send this to James Rolfe. I am sure he has plenty of ideas to fix the game after you get pass number 1 on the list which is to break the game entirely.
The AVGN is rising from his exorcised body to shake your hand
Didn't James even complete the game eventually?
@@WikiHL newest avgn ep
Whats avgn
@@serbonkers4130angry video game nerd
@@serbonkers4130 You poor soul...
"This style of programming is called 'absolutely terrible.'" I love this line. I have this on while working. I'm a software engineer. So, that line caught me off guard, and I had to stop to laugh.
It made me smile as well.
In truth this was endemic to a _lot_ of NES games. Very few developers were actually super clever and in tune with the hardware, 90s era CAPCOM was one example of someone who pulled lots of fantastic tricks. I don't know if I can fully blame these old devs; computer science was kind of in its infancy, and programming an NES was an esoteric experience. Can't utilize high level programming languages here like we can easily do today, with tons of resources, autocomplete, prepackaged libraries, etc. You not only had to know how to "talk" to the hardware, but also speak the CPU's native language while trying to figure it out. And it's not like there were infinite resources on game programming, and UA-cam was only a thing of sci-fi imagination.
They're still terrible games often not fun to play, however I kind of understand why they were the way they were.
@@CaptainSouthbird all true. I wasn't laughing at their coding skills, though. It was just his comment and delivery.
@@CaptainSouthbirdThis is more true for game development than computing more generally. By the late 80s, many home computer programs were developed in high level languages. HLLs were even more common for minicomputer and mainframe programs.
@@HowManyRobot Storing data in CHR ROM was actually a pretty common technique in early NES games (up to 1986 or so) and was still used in a few later games (such as every game Culture Brain developed). The first bankswitched cartridges available only bankswitched the CHR ROM, not PRG ROM. I think Dragon Quest has a higher ratio of data to actual graphics in CHR ROM than any other game, though--more than half the CHR ROM is data.
As a programmer, these videos remind me to not be lazy with my code because in 30 years or so someone might dig through it and roast me posthumously.
Aww. That is never my intention. I've made mistakes, felt the crunch of deadlines, had last second changes asked of me that I didn't implement well - we all have. I might make jokes about the code here or there, but I'll always defend the programmers.
@@DisplacedGamers Haha, I know it's all in good jest. I'd be so blessed if anyone ever cared enough to reverse engineer the code I've written, yet alone talk about it!. Your videos are the best man, keep it up 💜
@@DisplacedGamers
True, but I believe the point is that it serves as healthy motivation to not forget about the details (as opposed to the kind of unhealthy motivation many employers use that increases stress and often leads to mistakes like this in the first place). “Not a big deal, but still something to keep in mind,” sort of thing.
Whoever made this game is probably still alive.
..."And it's only useful against bees." Makes as much sense as any other decision made in this game.
Well, I can't confirm (no interest in playing the game, haha), but I heard some people in other videos mention you can use the cane attack to diffuse the bombs...
@@mikeluna2026 I remember trying that trick after I heard that rumor - it doesn't seem to work.
I don't think this is the "deadly bee weapon" Batman was thinking of in Amazons Attack...
This game is the programming equivalent of outsider art. It's fascinating how strangely implemented every mechanic is.
"Oh damn you got blown up are you hurt?"
Jekyll: "I guess. Mostly mad though. >:("
that's a mood.
The stress meter could have doubled as a stamina meter for a run function.
Stressing out about making your suit all sweaty before you get married.
I had the same thought.
It would add a risk/reward mechanic which is always interesting.
That's what I was thinking! Sprinting to outrun a bomb can be stressful in of itself.
That's perfect
Was gonna say the same thing.. Works conceptually, imagining Jekyll breaking into a brisk “gentlemanly” speed walk to get to the chapel on time :p
The thing I find incredibly fascinating about this game is that when it “lags”, the game actually speeds up. I have no idea what could possibly cause this, but it’s most apparent in the city stage when a woman is singing while there are barrels. The more sprites on screen, the faster everything moves.
Game trying to compensate for CPU slowdown by upping the speed per cycle, to try and make the speed per delta time stay the same? Later games like Rare's N64 games pulled that trick off.
More sprites onscreen means more update calls to the main game loop?
Some older games were programmed to detect if things were starting to run slowly and speed up *everything* to compensate. This can lead to funny things when running on much stronger hardware.
This channel has a new video describing the real reason just went up 2 week ago
There is a decentish game hidden behind the final, shoddy product. Your suggestions would make it more playable (especially the smaller bomb blast radius)...and possibly even enjoyable.
How random is this! I just played through this whole game, US and the Japanese versions, and I was really thinking the same thing. "Is it fun?" Because in the abstract it's really a brilliant game. It even has multiple endings, the hidden one accessed by avoiding being struck by lightning for venturing past Jekyll as Hyde by using the rooftops of the final level. So many small and just bizarre changes in localization too, multiple levels removed and enemies as well. Really interesting stuff for game grognards like me.
"I just played through this whole game, US and the Japanese versions" Damn man, self harm is a serious issue.
I've always liked what this game is TRYING to do. Honestly it needs so much work under the hood it'd probably be better to remake it from scratch. I'd make the bomb radius smaller, the bomb timer longer and have it knock you away from the bomb instead of to the left regardless.
Heck, if we are remaking it, scrap bombs altogether. Make it so you have to avoid the people because they shove you, or something. Give the player more ground to go around things with, like a Double Dragon style ground. etc.
You are thinking of the game strictly as a game and not as a piece of art. By which I mean that making the bomb knock you to the right in any circumstance is antithetical to the point of the game.
This game really kind of shows how game programming was evolving back then. And even more, how much of a huge leap games like SMB1 were. Standards for scrolling and hitboxes just weren't there yet, everyone was finding out what they thought the best way to do it was. Trying to fit a puzzle piece in the large puzzle of gaming history.
it was the dark ages and we learned a lot by doing things we shouldn't have, lol.
This channel is truly in a league of extraordinary gentlemen!
Thanks, Ben!
The cane attack wouldn't be missed that much anyway, even for the bees, as, if you duck at the right time, you can actually headbutt the bees, and not take damage. Yes, this works....assuming the bees fly low enough. Anyway, nice dissection of the code! I haven't really seen anybody else tackle Jekyll and Hyde's code like this before.
Great video! The code reminds me of the first game I made in university, where everything moved in lockstep because I was a new programmer. Refactoring that sort of thing into something dynamic is very satisfying.
If it were me, I'd make a run mechanic add to your stress. He's going to be late for the wedding! It would let you run as much as you want at the risk of taking self-damage, basically.
Would be interesting to tie the run to the stress meter. Have it increase slightly as you run. Using the run to dodge things that will significantly increase stress, at the cost of a little stress.
The only thing I don't like about your videos is that there can't be a new one every single day. Seriously my favorite thing in all of UA-cam.
Thank you!
What brilliant timing, I just played through this whole game, and was wondering pretty hard about how the bizarre and infuriating bomb collisions worked! This channel always answers my most burning questions.
The spiders are definitely one of the most maddening enemies ever conceived.
2:59 I’ve watched this video about five times in the past month, and this part cracks me up every single time.
I love your videos. I only wish they were longer.
17:46 - Watching you outrun the bird poop was giving me flashbacks to outrunning Robotnik's bomber at the end of Act 1 of Sonic 3. It made me laugh.
18:29 I love Jekyll’s 40 foot long jump while he was booking it at 16 pixels per second lol
he's absolutely GOING
This and The Terminator are my favourite videos you've done. Please, keep explaining the code behind why the AVGN is so angry.
Most of humanities problems can be traced back to this one game. Imagine what life would be like if they would have gotten it right.
Reprogramming the cane "attack" button would almost make this game fun to play if it actually becomes useful, for example, pushing bombs away, killing enemies, breaking obstacles, etc.
As for the jerky walking speed, having a subpixel and velocity counter would go a long way over the arguably disgusting movement code in place, lots of things could make this game almost good lol
every time this channel uploads i get excited. i love these code dives on games you wouldn't immediately think about. we've beaten SMB1-3 to death, let's bring on dissecting the regrettable rentals we all made at Blockbuster
Lol more like Video Paradise for me. That was my 80s and 90s NES era rental store.
Same. It always feels like Christmas came early every time I see the notification.
I would like to see the logic of using the cane. Why does it only work on bees. is that by design or bug. I've also seen from one source the can can be used to defuse the bomb. Again, it would be good to see if that is true.
There is also a bug seen in AVGN videos of this where if you fall off a wall instead of jumping off, you die. I think this happens as Jekyll Again love to see the logic there.
It’s always interesting to see what kind of improvements can be made by just a few tweaks. Makes me wonder how they landed on certain decisions they made
Probably ran out of time/money. That's the usual reason 😂
Running should perhaps fill the stress meter?
Edit: I guess I mean deplete, since it drains when you get hit and you turn when it empties.
oh god clock tower 1 flashbacks
Nah man, its that runner's high.
Thanks for having proper captions on your videos 😊
The nerd needs to see this.
Man, this is one of the best UA-cam channels. I can’t thank you enough for sharing your knowledge.
yeah honestly this game is so close to being decent. it's a game that absolutely deserves a remake or reimagining. a jekyll/hyde game where you can only get the good ending if you manage to balance good/evil is such a good idea imo.
Holy moly! Someone who says “composed of” instead of “comprised of”. Finally! 😂
An interesting mechanic with the bombs in that running to the left means the bomb will knock you out of range if you get caught. Running to the right basically guarantees full damage if you get caught. Might be why the damage range to the right is shorter.
This dude is brilliant. He knows his shit
AVGN GOT HIS CHRISTMAS PRESENT EARLY
Awesome video. Whenever a new video comes out I always make sure to take time to pay 100% attention. Some videos I just let play in the background, not these. Thanks !
I always thought this game was a masterpiece in disguise because of how deep the symbolism is-Jekyll can’t attack people because he’s the “good guy”-he doesn’t have it in him to act violently towards another human being or animal. When playing as him, the game world is bright and colorful, representing an optimistic outlook. When Jekyll turns into Hyde, he acts violently and the world around him looks dark and depressing, representing the fact that his emotions have gotten the better of him and shifted his personality and outlook on life. The demons Hyde must battle to turn back into Jekyll represent Jekyll’s “inner demons”, and the game can only be won with the best ending if you take a hidden path that leads to a boss battle where you confront the “leader”, or the “source” of these demons. The goal being to marry your fiancée represents how romantic relationships can be negatively affected by a pessimistic mindset, but thrive when both partners are in good mental health; Jekyll gets the girl after battling his personal demons, ensuring that he can be emotionally mature enough to handle a committed marriage that may include occasional conflict. Honestly, I kinda wanna write a whole essay on this and post it somewhere, as I feel like many people see this game as just a video game and don’t notice the symbolism and deeper meanings.
Well said. Just a shame they didn’t execute on getting the gameplay right.
Symbolism, when things mean whatever you want them to.
Bad Game Hall of Fame has a pretty good article on this game where they tackle this aspect of it actually, though I'd be interested in a dedicated essay since BGHoF's was more of a review.
@@ricochetpig I like to think the gameplay is purposely going for an early "Eurojank" feel just because it's a British character.
Nicely done. If you write the essay, I will read it.
So that's why the bombs do varying amounts of damage. They have a big damage area that lingers for 15 frames, and you take damage every frame you're inside it.
If you try to run back left away from the bomb but don't make it, you'll get sent flying left and out of danger so you won't take much damage. If you try to run right past it but don't make it, you'll be bounced left back into the danger zone and take maximum damage...
This is the perfect companion channel to the excellent "Retro game Mechanics Explained" if you're into retro games, their code and their quirks.
Oh good grief, Jekyll is hitting _ludicrous speed_ in that outro sequence! D:
Even though it breaks a lot of things, it was satisfying to see!
I've heard some people mention that the cane can also be used to diffuse the bombs (by hitting the wick), I've never played the game to say if that's true though, haha...
I'd love for you to go into detail about how the Supersonic Jekyll causes memory underruns due to oversped scrolling.
Displaced Gamers made a video about a similar bug in Castlevania. You might want to check that out.
"'Supersonic Jekyll causes memory underruns" is a sentence I didn't know needed to be said until now.
@@LonelySpaceDetective That's what we're here for brother
Nice.. I was waiting for another DG video!
Another awesome episode!! Would be cool to make a Game Genie code to damage all enemies with that useless cane 😂😂
Are you familiar with the Famicom exclusive Sweet Home? There's a super crazy glitch that breaks the game in multiple ways, such as moving at 2x speed. I've even done some speedruns using it. I know how to do the glitch, but I'd love a technical explanation of exactly what is happening.
I know of it, but I haven't investigated it. Moving at 2x speed sounds... interesting.
16:10 "This method of programming is what we call..." ...Terrible? "...Absolutely terrible." Ah, right, I forgot to account for making negative values still count toward the same direction.
ok this last change the code looks actually awesome, it's v cool to have a notion on how this game loads in VRAM by seeing it... Not being able to load properly due to speedy scrolling
3:00 that startled me cus I was standing 😆
Ha!
It really is a good day when a new DG video comes out.
I love this channel
When I was watching the AVGN followup last week I actually thought for a moment he was going to call on you in the episode.
Ha!
You're assuming he already knows about this channel, which he may not.
Babe wake up, new Displaced Gamers just dropped
"Let's double Jekyll's walking speed from 2 pixels to 4 pixels...." should NOT have to be followed with "This is the most reprogramming work I've done for Behind the Code so far."
Ha!
Fantastic! Glad you pointed out the genius behind the concept.
You press the bee button to attack bees. Seems reasonable to me.
Yes. Everyone knows you never turn your back on a detonating bomb.
AVGN would be proud of this dissection.
Very enjoyable video, as always.
Aww I was hopeing you were gonna make the cane not useless.
But i doubt the jekyll sprites had collision and that would have been some massive reprogramming. So i get why not, but still would have been cool.
Love your videos, always learn something interesting
2:32 I don't understand what he means the by increment the sprites x position in RAM? Does he mean that each sprite has an address in RAM to store its x position, dont all NES sprites have that data for sprites? How's this different from say how SMB draws mario at a certain position. doesn't SMB update the sprites' position data to draw him at the correct location?
I think it was a general explanation for how that was done, not specific for this game
finally uploaded again. my will to live has been restored
Do an isometric game, like Racing Destruction Set on the C64 or something like that. I'm curious how they went about programming the movement regarding the slopes and whatnot. Same with Marble Madness! Your vids are awesome
love your content!
Doing the lords work my friend!!!
Running increasing the stress meter would probably make sense.
Perfect.
I speedrun this game from time to time and have noticed on parts with too many sprites (mainly the final level) that game speedsup on its own about 300% for a duration until you turn into Hyde or you can wait it out. Any idea how this game does reverse slowdown from too many sprites.
:( I wish you made videos more often, but since your videos are so awesome I'm willing to wait.... You're awesome.
Thanks. It takes a long time to crank out each one of them.
I would add paralax scrolling. I think it can be done when the foreground moving twice the speed of the midground Hyde is on and the background moving half that.
the NES only has 1 background layer. there is no foreground and background, just one background
y'know, i was gonna comment on that recent avgn vid something along the lines of "welp, can't wait for the behind the code followup vid!"
i should've known to commit to the bit
I think AVGN said it best, if you want an example of a game that does nothing to explain its rules and boundaries, this is a great case study. Less RNG would probably help a lot, as I think its also a great showcase of randomness is not more fun as it leads to frustrating waits and enemy patterns that feel unfair. Reducing that would likely make the game much more playable.
amazing work as always, not a fan of these infamous nes games, but quite nice to fix some of those weird behaviours. Would you consider doing a video explaining how the scenes load in The last ninja games for C64 ? that was super advanced, and uses the same cpu as the NES
I have a C64, but I haven't messed with the emulators for it. Are they pretty good as far as debugging?
@@DisplacedGamers hey ! thanks for reading me legend ! yes, in fact they are very similar to NES ones in terms of showing raster position, audio debugging, sprites, etc. The most complete one is C64 65XE Debugger, you can see in real time all the memory and video working. I managed to reverse engineer Battleship and Tapper with it and no other emu. Let me know if I can give you more info or help in any way. And thanks again
someone should 100% send this video to cinemassacre
There is always danger on the left
I live when a new BTC video cones up. I like the idea of using pixels regarding hit detection I don't know why it isn't implemented more with early games.
Also, I love how self reflecting this video is. The more you tinker with the code the more warped and horrendous the game becomes. As if you're turning the game into an NES version of Mr Hyde itself.
As an avid fan of the original novel and of the general concept of JnH, i can confirm that this game is about as well held together as the main man himself, which fittingly means it's on the constany verge of breaking down entirely
Great video! Has an original game developer ever commented on one of your videos about their work? This one especially I'd love to hear the background story to the development.
Excellent explanation.
Glad you understood it man
I just found out your channel, you have a new sub! Maybe the cane could be reprogrammed to be useful against other enemies? But perhaps that goes against the idea that Jekyll is peaceful and Hyde is violent, I don't know.
That's the struggle, right? Would adding the mechanic go against the intended gameplay as Jekyll?
It's almost like, conceptually, the game is trying to be Postal 2 if it were made on 8-bit hardware and set in Victorian England. All Dr.Jekyll wants to do is go about his business peacefully, but the rest of the game is (literally) designed to _ruin his day..._
Using the games code itself for an rng seed is so nifty
But running would be too unseemly for a proper gentleman such as Dr. Jekyll.
great video!
Great video! You truly have content unlike anything else on this platform, and it's amazing! Also quick question, I wanted to try out dissecting games, and I was wondering what program do you use to see all the machine code and the sprites in the ROM?
Thanks! I use an emulator called Mesen.
@@DisplacedGamers Thank you! This is more than what I was looking for!
I'd probably add some type of meter for Hyde that lets you know how close you are to getting out of the Hyde state or failing. And make the cane more useful.
Very interesting channel. Glad I checked it out. I wish you would do the SNES game of Lord of the Rings. I feel that game has the potential to be great, if fixed.
I am super interested in why running into elevated ground with the increased walking speed causes the level to change. That's such an odd bug. Wonder if it's possible to trigger under normal circumstances?
Perhaps the end of the level check is implemented by an object that doesn't trigger the normal hit detection, so when Jekyll clips into it the level is ended. However the faster walking speed means that you clip into all solid objects, triggering the end of the level, which only checked to see if you were clipping into an object.
Now Jekyll is the fastest thing alive.
banked bytes to get RNG? wild!
I love that in the first example, with bank 6, LDA RNG_1DF is used as RNG data.
If you wanted to do a stamina mechanic for running, the Stress meter sounds like a perfect candidate. Slowly drop the meter from J(ekyll) to H(yde) the more the run is relied on.
I love these videos
I unironically love this game and wouldn’t change a thing about it. Yeah it’s a bizarre, cryptic, frustrating, slow mindfuck that seems to actively have it out for the player but it’s such a unique and one of a kind game that tries something different; with a lot of genuinely cool symbolism and imagery. While changing some of the design to make it more “game-like” is a cool concept that would probably make it more accessible to others, I think it also takes away a lot of the game’s alien charm. That’s just my two cents at least
"Well, fun if you're a programmer that likes random number generation routines, I suppose" oh shoot, you found me
"It's x-position, it has to go somewhere!"
What if an added run mechanic adds to Jekylls stress? So yeah you can outrun a bomb to dodge a big stress hit but run too much and you still turn into Hyde?
Given that the Hyde portions of the game are auto-scrolling with automatic death if Hyde gets too close to Jekyll that would make the Run function too dangerous to actually use since stress can change so dramatically due to just one bomb blast (and the bombs are relentlessly being placed). Plus there would always be the issue of having only a little stress to go and accidentally hitting the run button. The only way I can see that possibly working is if there was a delay before stress started changing.
Better to have a separate stamina better. Someone else mentioned Clocktower 1 and yeah I totally understand. In that game Jennifer's health and stamina are the same value and she too is slow-moving so there's always an impetus to run. You can stop and rest but this requires you to stop and its rather slow and cumbersome. There's a reason later games in the series have health and stamina as different values.
@@ladyabaxa great reference to another game with a mechanic like this. Thanks!
With how much you know 650s Assembly, I bet you could make your own NES game lol
of course he can
I think I would have jumped to an "island routine", most games have garbage data and I would replace that with the routine. The code I replace with the jump to that routine (JSR....) I will of course have at the routine I jump to so that nothing is really changed. That way I could just check for the B button and increase the X position and decrease the scrolling in the island routine then RTS out of it to continue where it left off.
that 8 pixel scrolling is great. Someone make a Rom and call it Jekyll and Hyde Turbo. I bet Mike Metai would live stream it
Now let's see you dissect Clash at Demonhead, I want to know if it's possible to beat the demon without the Sword of Apollo. You die in one hit during that boss fight so let's see if you can reprogram it where it can be beaten.
You need to send this to James Rolfe. I am sure he has plenty of ideas to fix the game after you get pass number 1 on the list which is to break the game entirely.