Live data from Hacker News

Metroid Source Code Expanded

romhacking.net

61–64 of 64 posts

Re: Metroid Source Code Expanded

#62
Reading through source code for old games is always fascinating. Any developer worth his salt should take the time to explore this area. The tricks that the engine programmers used to squeeze every last ounce out of the hardware are truly inspiring.

I can appreciate how much effort has gone into this project. For years, I've been working on disassembling and commenting the Sonic 2 Master System engine (https://www.sonicretro.org/asm_svn/Sonic%202%20SMS%20Disasse...) and it's still only about 80% complete.

Re: Metroid Source Code Expanded

#63

I looked for JUSTIN BAILEY, couldn't find it - but I discovered NARPASSWORD! ValidatePassword: L8DDE: LDA NARPASSWORD ; L8DE1: BNE ++ ;If invincible Samus already active, branch. L8DE3: LDY #$0F ; L8DE5:* LDA PasswordChar00,Y ; L8DE8: CMP NARPASSWORDTbl,Y ;If NARPASSWORD was entered at the--> L8DEB: BNE + ;password screen, activate invincible--> L8DED: DEY ;Samus, else continue to process password.

JUSTIN BAILEY is not hardcoded; it is an emergent property of the password system: http://www.metroid-database.com/faq_metroid.php#metfaq35

Re: Metroid Source Code Expanded

#64

This is great stuff. When I was working on a platformer I'd read a lot of the code for these classic games (Mario, Metroid, Sonic, Megaman, etc.) to see how they did platforming and what the character physics tuning numbers looked like. I've been meaning to do a series of articles that break down games, focusing mostly on gameplay code, enemy behavior and physics. The only comprehensive article I've found like this i…

Sonic Retro has a writeup of the physics behind Sonic 2. Check it out, it's exactly what you're looking for and would be a good template to follow for other games. http://info.sonicretro.org/Sonic_Physics_Guide

Yeah I've seen that and it's excellent. My idea was basically to expand on that sort of stuff.
Post reply on HN