AuthorTopic: SMB2 stuffs  (Read 5963 times)

Offline Arne

  • 0010
  • *
  • Posts: 431
  • Karma: +1/-0
  • Panties.
    • View Profile
    • AndroidArts

SMB2 stuffs

on: May 22, 2013, 11:02:23 pm
I started looking at SMB2.

Interesting stuff:

Animation (dangling fruits, tufts of grass, flying vulture, POW, potion etc) is done by changing tile tables. The ending scene is about 8 full tile tables of Mario sleeping.

There are a few one bitplane sprites overlaying each other.

The eye-whites are a separate sprite.

Massive amounts of unused tile table space. Maybe because it was a conversion of Doki Doki Panic and stuff was erased, or they just felt they could afford the space.

Some of the sprites seem to have been rushed together. Look at shrunken forms, especially Toad. (Screenshot from my NES tile arrangement tool, the tiles are not ordered like this in the actual game data, but as far as I can tell my tile order corresponds to that of the game.)


Looks like they squandered the space for two complete head frames for running. The vulture probably isn't used, and I think the noise is the potion puff which could be optimized in size (if even used).

Anyways, fiddled some on my own versions. Haven't really tested the 2 frame animation yet. Tried to keep the legs a little ambiguous in Z-order.



Also some SMB1 fun. 4 colors is too tight. 5-6 is enough for almost anything, retro-look-wise.


« Last Edit: May 22, 2013, 11:14:04 pm by Arne »

Offline PypeBros

  • 0100
  • ***
  • Posts: 1220
  • Karma: +2/-0
  • Pixel Padawan
    • PypeBros
    • View Profile
    • Bilou Homebrew's Blog.

Re: SMB2 stuffs

Reply #1 on: May 23, 2013, 08:15:04 am
The big/small layout suggests a hardware with one ROM chip for all the heads and pair of ROM chips for the body/legs with bank switching depending on whether you're big or small. At any time in the game, only one bank is mapped by the CPU.

Offline ptoing

  • 0101
  • ****
  • Posts: 3063
  • Karma: +0/-0
  • variegated quadrangle arranger
    • the_ptoing
    • http://pixeljoint.com/p/2191.htm
    • View Profile
    • Perpetually inactive website

Re: SMB2 stuffs

Reply #2 on: May 23, 2013, 09:35:42 am
Very nice. No real crits on the SMB2 stuff. Are the walkcycles 2 frames only?

On the SMB1 Marina the transparent eye highlight will only work in some levels, and stuff like bushes/clouds/whatever will show through, but I guess being only a single pixel that should be ok. Looks good on the blue in any case.

I did some SMB stuff for a tentative C64 port, which might or might not happen. Was fun to do though.
Quite a bit more restricted than just 3 + trans as well.

There are no ugly colours, only ugly combinations of colours.

Offline Arne

  • 0010
  • *
  • Posts: 431
  • Karma: +1/-0
  • Panties.
    • View Profile
    • AndroidArts

Re: SMB2 stuffs

Reply #3 on: May 23, 2013, 12:32:45 pm
The big/small layout suggests a hardware with one ROM chip for all the heads and pair of ROM chips for the body/legs with bank switching depending on whether you're big or small. At any time in the game, only one bank is mapped by the CPU.
Shown in my gif are actually 2 different tile tables dumped from ROM (so, duplicates of those heads exist), but it's possible that they just do partial streaming. A lot of the tile banks are divided into 4 rows of characters however, so it seems mostly rows of 16*4 tiles are being streamed and not tiles here and there. A simple sprite edit test will verify if the heads of the small characters are used.

I think the white eyes are made by placing a white block behind the head. This means fewer blocks for the various eyes. Maybe they kept the big head because of eye-white compatibility but now I'm not so sure.

Walkcycles are 2 frames but these characters walk so fast it's hard to notice. Shows more in Doki Doki Panic where the leg frames are a little wonky. The stepping frame is displace 1px in-engine up giving the animation some more life.

Ptiong>That will get even harder when you try to squeeze in animation. With one frame you can make a readable/likable state, but with several frames you can not always use what you feel are pleasant/practical pixel positions because of pixel space competition and extreme poses.

Offline Arne

  • 0010
  • *
  • Posts: 431
  • Karma: +1/-0
  • Panties.
    • View Profile
    • AndroidArts

Re: SMB2 stuffs

Reply #4 on: May 23, 2013, 06:10:56 pm
Generalized my SML patcher so it can handle NES games. Did a very quick test.



As you can see, the eye-whites are done with a white square behind the head. Possibly the same tile for both versions of the head (verified here as two versions) and maybe for different characters as well.


I'll need to modify my Shygal standing frame as it's actually a standing frame as well as a legs-passing frame. Can't have any leaning forward.
« Last Edit: May 23, 2013, 06:31:05 pm by Arne »

Offline Arne

  • 0010
  • *
  • Posts: 431
  • Karma: +1/-0
  • Panties.
    • View Profile
    • AndroidArts

Re: SMB2 stuffs

Reply #5 on: May 23, 2013, 09:13:28 pm
She's got some readability issues (noise) I need to address, but my injection function is operational.



Edit: and an actual Shyguy
« Last Edit: May 23, 2013, 09:49:44 pm by Arne »

Offline Conzeit

  • 0100
  • ***
  • Posts: 1448
  • Karma: +3/-0
  • Camus
    • conzeit
    • View Profile
    • CONZEIT

Re: SMB2 stuffs

Reply #6 on: May 28, 2013, 12:30:47 am
What a neat idea, to reskin classic games burnt into your memory for kicks =) I cant really emulate them right now, do you have any plans whatsoever to maybe grab some video of the reskinned results? =O

How do these coincide with the SMB roles? obviously peach/pauline is the hovering one but I havent a clue otherwise

I like Pauline...her hat and pallete somehow makes me feel like she came out of a Miyazaki movie

Shygal is a neat idea...but she seems a bit too warrior-like for mario? I half expect her to do kung fu move...tho maybe you want that

Zizz (who is that BTW?) honestly I cant read very well..I think his collar calls too much attention and makes the whole head/froghat situation even more confusing. Does he have a cape? that seems a bit too ambitious for the amount of frames in SMB2

Peach...that squiggly line reminded me of Adventure time's Princess Bubblegum, and how relentless she can be when things go out of her control, maybe a constantly pissed off Peach would be a funny aproach to the princess character ?

Ptoing: Love the derpy star and the bandit Blooper...the Turtle is pretty damn abstract XD
« Last Edit: May 28, 2013, 01:42:12 am by Conceit »

Offline PypeBros

  • 0100
  • ***
  • Posts: 1220
  • Karma: +2/-0
  • Pixel Padawan
    • PypeBros
    • View Profile
    • Bilou Homebrew's Blog.

Re: SMB2 stuffs

Reply #7 on: May 28, 2013, 08:40:01 pm
Quote
Shown in my gif are actually 2 different tile tables dumped from ROM (so, duplicates of those heads exist)
That could still have happened, esp. if the price for ROMS have lowered between don don pachi and SMB2 ...
Yet it make me wonder how the ROM dumper operated, and to what extent the dump file format could take such scenarios into account. E.g. if the dumper is aware of location X in memory to be the ROM bank selection in the cartridge, it will likely go
Code: [Select]
for bank in (ALL_BANKS) :
   bank_selection_Register=bank
   dump_all_addresses(0, ROM_SIZE)
and that would make content of the 'heads' chip. appear duplicated on the dump while the bits were present only once on the cartridge.