Language…
8 users online: crocodileman94, isaix, Jordan, Maw, obiet,  patcdr, Shiki_Makiro, underway - Guests: 253 - Bots: 357
Users: 64,795 (2,377 active)
Latest user: mathew

SMB3 Status Bar v1.51 [released]

Patch

Top of screen problem when the game lags+ screen scrolls up:


Not sure if its caused by adding 17 8x8 tiles for bar tiles.
Give thanks to RPG hacker for working on Asar.
yeah lag is a big issue (when it happens). i recommend going with fastrom or sa1rom. actually, the whole reason i added sa1 support in the first place was due to potential lag issues
I've found a bug. Any time the level ends with $13C6 getting set (such as with the vanilla boss battles and custom goal sprites that prevent the player from walking), the player gets stuck in the level because $1493 never decrements. I assume this has something to do with the changes made to the level end/fading routine. The code starting around $00C926 should be relevant.

(The status bar also disappears whenever the music changes mid-level, but I assume there's nothing that can be done about that due to limited NMI time.)

----------------

I'm working on a hack! Check it out here. Progress: 64/95 levels.
f, ok ill look into it (in bed on phone rn)

the latter is because music uploads disable interrupts (so that nothing potentially corrupts the upload), and since the status bar runs in irq, it disappears (the irq doesnt fire)
so it turns out the issue (multiple issues actually, such as path fading for some reason) lied with Lui37's minimalist course clear patch. whether they are present in his original patch or they appeared when i copypasted, idk, but now i changed it to something similar to how it was before (colors fade to black, no fading back in, no scorecard, and after the peace image it does a normal brightness fade)

i submitted the update, so just bug the mods... owait you are one #w{=P}
I may add these after I upgrade and retest them for a new potental version:

1- Better Player Name Tiles and Attributes Expansion (Freespace required)

2- Rename all ".PAL"s (means Generic Palette format) to ".MW3"s (means Lunar Magic Palette format)

3- Adding a SMB1 Styled Status Bar (Planned, Just need prior permission for the former two)

Here is an example for number 1: If I had a name, "MARIO", and wanted seperate letters, "M" can be = $16, "A" = $0A, and so on)

Can I have permission to add these improvements to your hack soon, Ladida? If not #2, Maybe just #1+#3, then?
Originally posted by Hamtaro126
1- Better Player Name Tiles and Attributes Expansion (Freespace required)
...
Here is an example for number 1: If I had a name, "MARIO", and wanted seperate letters, "M" can be = $16, "A" = $0A, and so on)

are you talking about how most the counters rely on tiles being adjacent in the gfx? since most are variable width via define, adjusting the individual tiles would require a table (variable width) rather than a simple starting tile define, and overall complicate the asm (most of it sans the nmi/irq shitshow is running in original rom space)


Originally posted by Hamtaro126
2- Rename all ".PAL"s (means Generic Palette format) to ".MW3"s (means Lunar Magic Palette format)

there are no .pal files.... everything is binary. and they import fine into LM (assuming you want to edit them there. i personally recommend swr's generic palette editor)


Originally posted by Hamtaro126
3- Adding a SMB1 Styled Status Bar (Planned, Just need prior permission for the former two)

i mean you're free to make a smb1 style. i personally think there's enough defaults included (too many, actually). all of the included ones are a demonstration of certain things you can do with the status bar, and i dont think smb1's status bar is unique enough to warrant inclusion

it's not like you're limited to the selection i've included. i designed the patch to make it easy to configure and build your own status bar
Originally posted by Ladida
are you talking about how most the counters rely on tiles being adjacent in the gfx? since most are variable width via define, adjusting the individual tiles would require a table (variable width) rather than a simple starting tile define, and overall complicate the asm (most of it sans the nmi/irq shitshow is running in original rom space)


1: Just move some of the process (mostly just the data used) into the freespace, and create "Filler Bytes" of $FF from where the data was:

Code
;... ... ...

;replaces old "chartable" data with padding so
;no crashes will ever happen!!!
db $FF,$FF,$FF,$FF

;... ... ...


Then to split the Name data, do these steps:

2: Modify the status bar write code to this:

Code
org $008F84|!bank	;near end of status bar routine, let's overwrite everything

LDX $0DB3|!addr

if !player
	LDY #$00
	LDA.w attrtable,x
	XBA
	LDA.w chartable,x
	-
	STA !player,y
	XBA
	STA !player+$80,y
	XBA
	INC
	INY
	CPY #!SIZE_player
	BCC -
endif


3: Add this line before "Worlds:", like this:

in (SMB3_Status.asm)
Code
;... ... ...

incsrc !Names

Worlds:
;... ... ...


in others, add "[dir]/smb3_status_names.asm", [dir]/ is a directory of choice (optional)...

4: Create each ASM file for each directory, and call it smb3_status_names.asm, Open and write in the data (for a plain SMB3 SMAS Status bar example):

Code
chartable:
db !player_1_TILE,!player_1_TILE+1
db !player_2_TILE,!player_2_TILE+1
attrtable:
db !player_1_PROP,!player_1_PROP
db !player_2_PROP,!player_2_PROP


I think this is it, but just to make sure, Be careful, thank you!

Originally posted by Ladida
everything is binary. and they import fine into LM (assuming you want to edit them there. i personally recommend swr's generic palette editor)


Thank you for the Utility recommendation, Will try right away!

I was using a similar utility in the Utilities section, BTW

Originally posted by Ladida
i mean you're free to make a smb1 style. i personally think there's enough defaults included (too many, actually). all of the included ones are a demonstration of certain things you can do with the status bar, and i dont think smb1's status bar is unique enough to warrant inclusion


Ok, But just in case it's needed, See me!

Originally posted by Ladida
it's not like you're limited to the selection i've included. i designed the patch to make it easy to configure and build your own status bar


I know, I'm being a bit too nice. But I'm also trying to get use to myself being nice.
Originally posted by Hamtaro126
I think this is it, but just to make sure, Be careful, thank you!

again, this is a lot of smoke for just not wanting to put the characters sequentially in the gfx file (or wanting to give each tile different properties or something). you can easily just disable the default player icon code, and run different code in counters.asm (that would make for nice example code)
Can you make the SMB3 Status Bar work with the SMB3 goal card?
At the bottom right corner of the status bar, the items on the goal card you collect means how much 1up you get if you collect 3.

1 of each = 1up
3 Mushrooms = 2up
3 Flowers = 3up
3 Feathers = 4up
3 Stars = 5up
Originally posted by CalHal
Can you make the SMB3 Status Bar work with the SMB3 goal card?
At the bottom right corner of the status bar, the items on the goal card you collect means how much 1up you get if you collect 3.

1 of each = 1up
3 Mushrooms = 2up
3 Flowers = 3up
3 Feathers = 4up
3 Stars = 5up


Can't you just reuse the OAM features in the SMB3 Status bar (assuming they are still there) and use your RAM there?

Otherwise you should make your own ASM routines for 16x16 tiles instead of OAM as a last resort.

Just make sure to place it in where Ladida last told me to place custom names in, in this case, in counters.asm...

Forgetting this step makes me start over, and also makes me feel like a dummy.
$25 to whoever updates this piece of shit to work with lm3.0/pixi/whatever else it supposedly breaks (also levelheight)

via paypal, once the patch gets accepted
Originally posted by Ladida
$25 to whoever updates this piece of shit to work with lm3.0/pixi/whatever else it supposedly breaks (also levelheight)

via paypal, once the patch gets accepted


to whoever does this:
add custom powerups/item box special support as well pls
$30 special deal to Ladida so he changes it to use 24bits addressing instead.
Your layout has been removed.
i want the money

also adding more fluff to this post to make it more Meaningful(tm) so it doesnt get erased for shitposting:

i need testers

e: link for those who get lost on github

e2: also feel free to join sneslab, that's where i talk about the stuff i make and i post my rants about stuff not working as expected (like a bunch of things related to this patch)
Originally posted by lx5
i want the money

also adding more fluff to this post to make it more Meaningful(tm) so it doesnt get erased for shitposting:

i need testers

e: link for those who get lost on github


SMB3 Status Bar tested with LM 3.00 or newer, Powerups 3.3.4, and Snes9x 1.60. ROM was successfully works fine #smw{:peace:}
My released ROM hack: Yoshi Saves Summer Vacation
Originally posted by Ladida
yeah lag is a big issue (when it happens). i recommend going with fastrom or sa1rom. actually, the whole reason i added sa1 support in the first place was due to potential lag issues
no SA 1 please no.no..no!!

Patch