+  RHDN Forum Archive
|-+  Romhacking
| |-+  ROM Hacking Discussion
| | |-+  my first rom hack (SMB2us) + a few questions.
Pages: [1]
Author Topic: my first rom hack (SMB2us) + a few questions.  (Read 1 times)
Simpli
Guest
« on: April 27, 2010, 07:06:37 am »

hello,
I've been looking for ROM hacks for many years but I've always been just looking and playing and I never tried ROM hacking myself.So this is my first ROM hack.I don't have any name yet for it,but the main goal of the hack is to make super mario bros 2 even more like a mario game,and even less like doki doki panic­.Somehow what smb2 in the us would have look like if nintendo would have push the concept of converting doki doki panic in a mario game.The way I see it is something similar to this: doki doki panic--->smb2 beta--->smb2 official us--->my smb2 hack  Grin

By now most of the change are graphic since I'm new in rom hacking and don't know anything about hex editing and asm coding.But I'm willing to learn.that's why I write this topic because there is things or ideas I want to do and I don't know how.

here's a list of a couple of things that i've done so far:
-mario,toad and princess will have smb3 sprites.

the princess's hair is thinner and her lower robe is less large in smb3.

this is toad's sprite from the mushroom house in smb3.we better see his pant and his hat is a bit smaller.All his other sprite will be edited with this in mind.

Mario's sprites from smb3.Is it possible to edit the blue in his palette to be black without altering all other objects in the game that uses this palette?how do I do this?
...the only character that stays the same is Luigi.
-the bg threes have been replace by the threes from SMB2j.
-the radish is the sprite from the bonus game because I found the original big one with eyebrows ugly.
-the mountain platforms are in the style of the platform boxes with screws in the corners like in smb3.
-energy diamonds have been replaced by hearts
-vines have the sprites from smb3 and are animated.
-the potion for sub-door is the sprite from zelda 3's red potion.
-small characters won't look like they are bubblehead!I'm editing smas sprites in 8-bit for this:


-the jar are now pipes,it would be cool if I could change the color of this to green.
-cherries are replace by red coins (I'll explain more about it further)
-the music in the underground levels are changed to the original underground theme song in SMBs (from smb2 beta)
-since shyguys are the more common enemies in the game I made them goomba.(however,it's weird to jump on a goomba and not stomp them.is there a way to hack it so jumping on an enemy would kill it?



-solid blocks are the one from smb3.
-mushrooms and 1up musrooms have smb3 sprites.
-birdo is a hammer bros
-clouds have eyes
-original brick sprites
-bombs use zelda 3 bomb sprites
-the cobrat are now walking pirana plants from smb3 (look pretty good when they come out of jars,now pipes)
-panser=ptooie plant,porcupo=spinys,beezos=flying buzzy beetles and bullet bills,fireballs=podoboos,mouser=giant hammer bothers,bob-ombs with smb3 sprites (no arms)...and a lot more I forget.I didn't know at all to wich enemy sprite change the tweeters,no similar enemies with similar behavior from the mario universe comes to my mind.and didn't find something for the snifits as well,the closest thing that came to my mind is octorocks from the side scrolling zelda 2.

mario's facing sprite from smb3,changed the border,the whole font is the one from smb3.
-about physics,(walking and running) mario is faster one notch,luigi stays the same (default speed for everyone in the original),toad is faster 2 notch,and princess is slowered one notch.everyone is slower one notch when carrying something (didn't affect in the original) and everyone jumps 1 tile lower when carrying something.
doors,logs and floor will be change in the future...

well that's a bout it,there may be more,and there will be more,but I don't want to write too long as this is already pretty long...

But here's the three most important things I need help for:
1-how can I change the behavior and effect of the cherries (now coins) so they add a coin to play the bonus game,and play the sound of when you get a coin intead the usual collect five and you get a star? (if possible i'd like to change the palette with yellow as well)
2-this one is probably going to be complicated.How can I change the default overworld music to the one that plays in the sub-space (smb1 theme song)?
3-how to change an object's default palette without altering all the other objects that use the same palette?

here's the .ips file for those who would like to test the game and see the progress:
http://www.filefactory.com/file/b154905/n/no_more_doki_panic_mario_ftw_by_simpli.ips
please may understand that this is a beta release.

thanks to anyone who takes time to help,leave comments,give feedback or bring ideas and suggestion.
Simpli


« Last Edit: April 27, 2010, 07:19:03 am by Simpli »
Dragoon ZERO
Guest
« Reply #1 on: April 27, 2010, 06:59:10 pm »

I just had a few minutes to spend on this, but I've got your 'red coins' adding to the coin total.

updated ips or just change 0x1024 from 2A to 2B

Looking good so far.
Simpli
Guest
« Reply #2 on: April 27, 2010, 08:34:21 pm »

@dragon zero woah man,thanks a lot! :thumbsup:
Dr. Floppy
Guest
« Reply #3 on: May 14, 2010, 03:25:33 am »

Quote from: Simpli on April 27, 2010, 07:06:37 am
1-how can I change the behavior and effect of the cherries (now coins) so they add a coin to play the bonus game,and play the sound of when you get a coin intead the usual collect five and you get a star? (if possible i'd like to change the palette with yellow as well)

I think someone else already helped you with this...

Quote
2-this one is probably going to be complicated.How can I change the default overworld music to the one that plays in the sub-space (smb1 theme song)?

You'll be amazed when you see how simple this actually is! SMB2 stores the "Song Currently Playing" byte at $600. Altering this is simply a matter of observing which values occupy that slot during Overworld and Subspace scenes (respectively), setting write breakpoints to determine what location in ROM is writing those values, then switching them.


Quote
3-how to change an object's default palette without altering all the other objects that use the same palette?

Not possible (at least not the way that sentence is literally construed). Nintendo graphics all fall into one of two categories: sprites & background images. The typical distinction between these ("the former move, the latter don't") is especially misleading when dealing with SMB2, as the game is chock-full of animated Background Tiles.

The NES has four palettes for BGI's and four palettes for sprites. BGI palettes contain four colors apiece; the only catch is that the first entry in all four BG palettes is identical (usually blue or black for "sky"). Sprite palettes only consist of three colors apiece (the first entry is hardwired transparency). Again, SMB2 raises a notable "exception" in that the main characters' eye whites appear to create impossible four-colored sprites. As you've probably already noticed in your graphics editing, Mario/Luigi/Toad/Peach's eyes are actually drawn transparent; they all have a unique white sprite (layered underneath their heads) which "follows" them at all times.

tl; dr- Altering one color in a Sprite Palette is going to result in every character assigned to that palette reflecting that change.

Hope this is of some assistance...
 
Simpli
Guest
« Reply #4 on: May 18, 2010, 06:02:54 pm »

for those who are curious to see the progress:
http://www.filefactory.com/file/b1bgdf1/n/no_more_doki_panic_smb2.ips
it's beginning to look more and more like a smb game.there are some fucked up sprites though,hopefully this will be fixed in the future.Remember that this is my very first rom hack attempt.

I don't get this thing about the adress and value for the music.What is the dollar in front is supposed to mean?what program would you recommend me to mess up with this?I tried to change some value at 600 with windHEX and it just screwed up some palettes.I'd need better explanations.Sorry for my n00biness.

simpli
Dr. Floppy
Guest
« Reply #5 on: May 19, 2010, 01:09:05 am »

Quote from: Simpli on May 18, 2010, 06:02:54 pm
I don't get this thing about the adress and value for the music. What is the dollar in front is supposed to mean? what program would you recommend me to mess up with this? I tried to change some value at 600 with windHEX and it just screwed up some palettes.I'd need better explanations.Sorry for my n00biness.
simpli

Addressing your queries one at a time:

1) The dollar-sign is shorthand for "the number immediately following this symbol is in base-sixteen (i.e., hexadecimal) format". (It can also be used to denote data addresses within a ROM, which are also in base-sixteen.)

2) I like Translhextion myself. (You can find it in the Utilities section of this site.)

3) You know, that occurred to me just the other day. "I didn't specify that the $600 was in RAM instead of ROM! Bad Floppy, BAD!!!"

ROM & RAM are the "Nature & Nurture" of video games. Like us, all games are born with a predetermined, hardwired code (humans = DNA; games = ROM). This code is executed to create the entity in question.

Both entities tend to change and evolve over the course of their executions; for video games, the real-time status of these fluctuations is stored in RAM. You won't find RAM data anywhere in the ROM file (i.e., the stuff you see when you open up Mario 2 in Translhextion) because RAM consists solely of temporary values produced *by* carrying out the instructions in ROM. It only exists while the ROM is being executed, much like your vital signs only exist while your body is in the "alive" mode. Post-mortem analysis of your DNA will not give the researchers any idea as to what your systolic blood pressure was at 11AM PST on May 19th, 2010. That value only existed for a fleeting instant, as is the nature of information stored in RAM.

If you play your hack in FCEUxD_SP (my recommended program for both play-testing and just plain playing), you can view the RAM by hitting the F6 button. (Only the stuff from $0000 to $07FF is relevant.) Whenever I begin pre-production on a hack, I like to just fuck around within the game (while watching how my antics affect the info-slots in RAM, if at all). A lot can be discerned by mere observation, trial-and-error, etc.

In the meantime, you'll probably find this helpful: http://www.datacrystal.org/wiki/Super_Mario_Bros._2:RAM_map#Music_and_Sound_Properties
Pages: [1]  


Powered by SMF 1.1.4 | SMF © 2006-2007, Simple Machines LLC