(Link to AcmlmWiki) Offline: thank ||bass
Register | Login
Views: 13,040,846
Main | Memberlist | Active users | Calendar | Chat | Online users
Ranks | FAQ | ACS | Stats | Color Chart | Search | Photo album
05-09-24 11:29 PM
0 users currently in ROM Hacking.
Acmlm's Board - I3 Archive - ROM Hacking - Cruelty to keys: Bizarre key behavior in SMB2... but why?
  
User name:
Password:
Reply:
 
Options: - -
Quik-Attach:
Preview for more options

Max size 1.00 MB, types: png, gif, jpg, txt, zip, rar, tar, gz, 7z, ace, mp3, ogg, mid, ips, bz2, lzh, psd

UserPost
Ice Ranger
Posts: 49/85
Originally posted by BMF54123
Heheh, interesting...I just looked into this, and apparently all sprites have "hit points," even though only bosses actually use them! Normally, all regular sprites set this value to zero. When a sprite is hit, its counter is decremented by one, and when it wraps around to FF (technically, whenever the N flag is set, between 80-FF), the sprite is killed. (With a little hacking, you can give regular sprites hit points, and they'll act just like Birdo when hit. )


Man, I wish I knew what I had stumbled across back whenever I was documenting SMB2 nonstop. Do you have any offsets, because it's been a long time since I looked at it. If I remember correctly, does it use an LDA op with several STA ops afterward? I really don't remember, it was this summer whenever I last looked into that type of stuff.

If not, how does it store the HP values?
The Kins
Posts: 181/352
Thanks for that, I was interested.
BMF54123
Posts: 283/876
Heheh, interesting...I just looked into this, and apparently all sprites have "hit points," even though only bosses actually use them! Normally, all regular sprites set this value to zero. When a sprite is hit, its counter is decremented by one, and when it wraps around to FF (technically, whenever the N flag is set, between 80-FF), the sprite is killed. (With a little hacking, you can give regular sprites hit points, and they'll act just like Birdo when hit. )

However, the key is a little different...instead of dying when its hit counter goes negative, it is merely bounced upwards a little. When hit with a mushroom block, its "death" code is repeatedly triggered (about 8 times per toss), which pushes the key up and out of the way of the falling block. Due to either laziness or an oversight on Nintendo's part, the key's hit counter is never reset to zero, and continues to decrement each time the key is hit. Once the counter reaches 7F and the N flag is cleared, the game suddenly thinks the key is "alive" and has 128 hit points, and starts treating it like an enemy (Birdo sound effects and all). If it is hit 128 more times, the counter will again wrap around to FF, and the key will return to its normal "dead" state.

I have a feeling Phanto's hit counter works in a similar way...
Dragonsbrethren
Posts: 282/442
I seem to remember this happening to me back in the day too.
HyperHacker
Posts: 1664/5072
They probably just forgot to set some flag in the key's sprite info, or never thought to (or just didn't care to) add code to prevent this.
Deleted User
Posts: 80/-7750
I remember doing this on the NES when I was younger. Me and my friends freaked out. I never knew how we did it tho. Thanks for pointing that out.
Dwedit
Posts: 53/116
You can also do it in Doki Doki Panic.
Reshaper256
Posts: 23/196
This is just off the top of my head, but from what was said about the key 'bouncing', it may have something to do with the game assuming the key is in the belly of a Birdo whenever it is at a certain height above ground and is struck by an object.

That's pretty vague though, I realize.
Disch
Posts: 134/202
I don't see how something like that could POSSIBLY be an emulator bug.

Of course it would happen on a real NES. =P Why is that so suprising?
Deleted User
Posts: 207/-7750
this.......work........on......real....nes!

download video:
http://85.157.68.87/legoman/strange.rar

this isin't not joke!
The Kins
Posts: 179/352
Originally posted by legoman
work tis ''tric/easter egg'' in real nes and smb 2? or only in emulator?
I don't think Shmorky uses emulators. I haven't tried it on an actual console, but I can't see why it wouldn't work.
Deleted User
Posts: 206/-7750
work tis ''tric/easter egg'' in real nes and smb 2? or only in emulator?


very strange...
The Kins
Posts: 178/352
Kinda strange that there are still some bugs in the Mario games that aren't mentioned on any websites. Shmorky mentioned this on the SA forums:
Originally posted by Shmorky
That reminds me, here's a trick (for Super Mario 2) I tell people about that I NEVER see posted ANYWHERE! Go into a world with a phanto key and mushroom blocks (like 1-3.) Put the key down and keep putting mushroom blocks on top of it. It will bounce up a bit. Keep doing this until you hear the key cry out in pain (like the Birdo dying sound.) The key will flash. Hit with the blocks again and again. The more times you hit it, the longer Phanto stays away. Why? WHY? I don't KNOW.

Here's a animated gif someone made of it:


So anyway, I was wondering if someone with experience with how SMB2 works (BMF?) knew why this happened. Does the key use Birdo code or something? Or is it just a really obscure easter egg?
Acmlm's Board - I3 Archive - ROM Hacking - Cruelty to keys: Bizarre key behavior in SMB2... but why?


ABII

Acmlmboard 1.92.999, 9/17/2006
©2000-2006 Acmlm, Emuz, Blades, Xkeeper

Page rendered in 0.017 seconds; used 357.34 kB (max 404.12 kB)