Language…
6 users online: Dagobert, Dispace, PyroKastrix, ShadowTheHedgehog, TheOrangeToad, Zavok - Guests: 116 - Bots: 86
Users: 69,216 (2,357 active)
Latest user: aazz

Posts by SmashNcrab

SmashNcrab's Profile → Posts

  • Pages:
  • 1
  • 2
  • 3
Hey there! I would really love it if someone could port this song for me! It really is a hidden gem of a track and I can't wait to use it in my SMW hack. Let me know if there's anything else you would need to get this for me. Thanks in advance!

Round Game - MIDI

Round Game - Youtube
I was wanting to replace the 4 Switch Palace "!" blocks to contain a yoshi according to the color of the block (Green Block gives you a Green Yoshi, Yellow Block for Yellow Yoshi, Blue Block for Blue Yoshi, Red for Red Yoshi). Like a standard yoshi “?” Block, I want these to give you a 1-up if you are already riding a Yoshi. I also want these blocks to function like a standard Switch Palace block, beings outlines until the corresponding Switch Palace is beaten.

This seems like a simple request, but I'm still pretty new to this, so I'm not quite ready to do it myself. Thank you in advance for your help!
Originally posted by MarioFanGamer
That one can be done in two ways:
  • Add in additional blocks which require custom question mark blocks and ObjecTool whith a custom object code which sets a different Map16 tile depending on whether the corresponding !-switch is activated.
  • Create a patch which replaces the existing blocks.
The former only requires some minor tweaks with the ?-blocks and an object code which may or may not be easy to insert but a patch is easier to insert... I'll make it as requested.

tl;dr I'll claim this.


I think I’d prefer just a patch replacing the current blocks. Thank you so much!
Originally posted by MarioFanGamer
Apologies for taking so long but I was busy with more important stuff so I hat put your request on hold. Either way, your request just has been finished.


Thank you so much!!
I want dragon coins to be worth collecting in the hack I'm working on. I really like Jump 1/2's dragon coin reward system and I want to implement something similar. Simply put, I want "coin gates" that are unlocked the more levels you get all the Dragon Coins in (you can pass this gate/block when you collect all the coins in 5 levels, this one 10 levels' coins, 20 levels' coins, etc...). I've been eyeing a lot of patches that should help me get there, but I'm pretty new to asm, so I thought I'd ask your opinions on the best/easiest way to implement this?
Been wanting each of the 4 Yoshi (Green, Red, Yellow, & Blue) to have more distinction from each other, ability-wise. In fact, the hack I'm working on kinda depends on it. The "Super Mario Maker 2 Red Yoshi UberASM" by KevinM has helped things get closer to what I want. Now, I think it would be very interesting if someone made a similar UberASM patch with the Yellow Yoshi. Here's what I'm requesting:
Give Yellow Yoshi have the ability to ground pound without a shell in his mouth by holding 'down' while landing from a jump. I would also like to take away his ability to use his tongue (Pressing Y/X will have no function other than running). I'm sure most people would want an option to still use the tongue, so keeping that as an option in the patch would be great. I think "walk-by" eating fruit off bushes should still there as well.

The most important thing for my specific needs would be compatibility with KevinM's Super Mario Maker 2 - Red Yoshi and MarioFanGamer's Switch Blocks with Yoshi.
Let me know if you are interested or need more info! Thank you in advance!
I'm currently working on a level with Puntin' Chucks, and I can't seem to get their punt timing to be consistent (I'm more than okay with the football bounces being random, but I need punts to happen at a more consistent rate).
Here's what I got going on: My level starts with a Puntin' Chuck on the first screen, he always punts after 1 second on my first level try. If I die and re-enter the level, his Punt will then be after 2-3 seconds after the level starts (setting off a chain reaction that effects flow of the entire level). He even sometimes immediately does a punt animation without a football in front of him, delaying him even more.

What would be the best way to fix this? Would using a custom sprite be my best option?
Here's what I'm wanting:
(1) A powerup that Mario acquires whenever he gets a red Mushroom
when he's already in his "Super Mario" state
(Already powered up by mushroom, I mean.)
(2) The powerup changes Mario's palette and allows Mario to take
an extra hit. Think of it as a nerfed fire flower that
doesn't let Mario throw fire.
(3) Nothing additional happens if Mario acquires 3rd or more
Mushrooms (other than putting a red mushroom in the item box,
I guess)
(4) Red mushrooms acts as it does in vanilla SMW if Mario is
small, has Fire Flower, or has Cape.
(5) Compatibility with MarioFanGamer's "Better Powerdown" patch.
(When Mario gets hit while using this Double Mushroom, I want
him to go back to his Super Mario state)
(6) I want to keep all other powerups "as is" in the game.

The big reason I want this is to help with early game balance in the hack I'm working on. I am going to introduce the fire flower and cape later on, but I wanted a way for the player earn more health in the first world.

Let me know if you any questions or suggestions for me!
I'm still pretty new to ASM and my brain is a little fried, so forgive me if this is obvious... But I want to give this custom Porcupuffer sprite HP (Say 5 shell hits or so) and make it drop an Goal Sphere/Orb on death. What would the easiest/best way to do so?
(restricted)
Forgive me if this is not a feasible task (which it may be since I can’t find anything about it around here)… I want to make it so that every time you earn score points, you earn a coin instead(or in addition to the score.)
For instance: if I kill a koopa with a spin jump, instead of 100 points going to my score counter, it sends a coin to my coin counter.

I would like it to be 1 coin every time, regardless of what the score would of been (100, 200, 2000, etc… all give you 1 coin).

Let me know if you need more details! Thanks!! :)
Originally posted by Kevin
I have a patch that does exactly that and it spawns a little coin sprite instead of the score sprite, here. It was made a while ago for the hack GARLIC, I might submit it to the patches section if I remember (might need a bit of cleanup).

This works perfectly! Thank you for sharing!!! This community is so awesome
I just recently installed 2 patches in my hack and have noticed 1up Mushrooms don't add a 1up to the life counter anymore. But you can still get 1ups from 100 coins or 5 dragon coins (as seen here).

The 2 patches I used were "Give coin instead of points" patch by KevinM & "Spinning Coin on Fireball Kill" by RussianMan. Both were patch in an effort entirely replace score with coins, and both work well outside of this 1up issue. to Below are the respective codes.

"Give coin instead of points"
Code
if read1($00FFD5) == $23        ; check if the rom is sa-1
    sa1rom
    !addr = $6000
    !D8 = $3216
    !E4 = $322C
    !14D4 = $3258
    !14E0 = $326E
else
    lorom
    !addr = $0000
    !D8 = $D8
    !E4 = $E4
    !14D4 = $14D4
    !14E0 = $14E0
endif

org $02ACE6
autoclean JSL GiveCoin
PLX
RTL

freedata

GiveCoin:
    INC $13CC|!addr     ; Give 1 coin
    LDA $0DC0|!addr     ;\ Update the green star block counter
    BEQ +               ;|
    DEC $0DC0|!addr     ;/
+   LDA !14E0,x         ;\ If the sprite is offscreen, don't spawn the spinning coin
    XBA                 ;|
    LDA !E4,x           ;|
    REP #$20            ;|
    SEC                 ;|
    SBC $1A             ;|
    CLC                 ;|
    ADC #$0010          ;|
    CMP #$0120          ;|
    SEP #$20            ;|
    BCS .Return         ;/
;    LDA #$01           ;\ Play coin sfx
;    STA $1DFC|!addr    ;/
    PHY                 ; Save Y for later
    LDY #$03            ;\ Find free spinning coin slot (and overrite if necessary)
-   LDA $17D0|!addr,y   ;|
    BEQ +               ;|
    DEY                 ;|
    BPL -               ;|
    INY                 ;/
+   LDA #$01            ;\ Set slot as taken
    STA $17D0|!addr,y   ;/
    LDA !E4,x           ;\ Position of coin = position of sprite
    STA $17E0|!addr,y   ;|
    LDA !14E0,x         ;|
    STA $17EC|!addr,y   ;|
    LDA !D8,x           ;|
    STA $17D4|!addr,y   ;|
    LDA !14D4,x         ;|
    STA $17E8|!addr,y   ;/
    LDA #$00            ;\ Set spawned from layer 1
    STA $17E4|!addr,y   ;/
    LDA #$D0            ;\ Y speed
    STA $17D8|!addr,y   ;/
    PLY                 ; Restore Y
.Return
    RTL                 ; Return


"Spinning Coin on Fireball Kill"
Code
!bank = $800000
!addr = $0000
!D8 = $D8
!E4 = $E4
!14D4 = $14D4
!14E0 = $14E0
!14C8 = $14C8
if read1($00FFD5) == $23
sa1rom
!bank = $000000
!addr = $6000
!D8 = $3216
!E4 = $322C
!14D4 = $3258
!14E0 = $326E
!14C8 = $3242
endif

org $02A124
autoclean JML TurnIntoSpinningCoin

freecode
TurnIntoSpinningCoin:
LDA #$03			;restore sound effect
STA $1DF9|!addr			;

STZ !14C8,x			;the sprite is dead, really dead

SpawnSpinningCoin:
LDY #$03			;all spinning coin sprite slots

.Loop
LDA $17D0|!addr,y		;
BEQ .Spawn			;
DEY				;
BPL .Loop			;

DEC $1865|!addr			;if no slot is free, replace one of them
BPL .UseDisAddr			;

LDA #$03			;
STA $1865|!addr			;

.UseDisAddr
LDY $1865|!addr			;

.Spawn
LDA #$01			;
STA $17D0|!addr,y		;
DEC				;process on layer 1
STA $17E4|!addr,y		;

JSL $05B34A|!bank		;add a single coin

LDA !D8,x			;set position, Y
STA $17D4|!addr,y		;

LDA !14D4,x			;high byte
STA $17E8|!addr,y		;

LDA !E4,x			;set position, X
STA $17E0|!addr,y		;

LDA !14E0,x			;high byte
STA $17EC|!addr,y		;

LDA #$D0			;coin timer
STA $17D8|!addr,y		;
JML $02A143|!bank		;next slot and stuff


Any ideas on what the problem may be?
Hey there!

After some consideration on how to use lives in my hack, I've decided to use them more as a currency/collectable to let you pass certain areas. I've also decided that game overs are not something I'm interested in having.

I want to be able to earn/lose lives in my hack. In addition, I want the life counter to never drop below "1" (no "game over"). So, how would I set the minimum life limit to "1"?

(I did see plenty of options for infinite lives & raising the maximum lives, but nothing for setting a minimum)
Originally posted by Thomas
Don't think that really does waht they want to have happen (which is never drop below 1, not start at 1).

Instead, you probably want a patch like this:

Code
org $00D0D8
	LDA $0DBE
	BEQ NotGameOver
	DEC $0DBE
	BRA NotGameOver

org $00D0E6:
  NotGameOver:


Precisely. I just want lives to never go below 1 + no game overs ever.

Unfortunately, this patch didn't work for me, Thomas. I tried it again on squeaky clean rom too. I end up getting this error in asar:

error: (E5050): Unknown operator. [org $00D0E6:]
Originally posted by smwln
Originally posted by SmashNcrab
Originally posted by Thomas
Don't think that really does waht they want to have happen (which is never drop below 1, not start at 1).

Instead, you probably want a patch like this:

Code
org $00D0D8
	LDA $0DBE
	BEQ NotGameOver
	DEC $0DBE
	BRA NotGameOver

org $00D0E6:
  NotGameOver:


Precisely. I just want lives to never go below 1 + no game overs ever.

Unfortunately, this patch didn't work for me, Thomas. I tried it again on squeaky clean rom too. I end up getting this error in asar:

error: (E5050): Unknown operator. [org $00D0E6:]


Remove the : after "org $00D0E6". That fixes it.

Oh, I didn't even notice that. Awesome! It works! I appreciate the help from you both! My systems are coming together nicely now
Hey guys,


The hack I'm working on will let you switch between Mario & Luigi using the Press R to Switch Mario and Luigi Overworld Uberasm. I am also applying the SMB2/SMA Style Luigi Scuttle & a modified version of this Luigi Physics patch. In addition to making these changes, I want to disable Air Flight/Max Speed:
Code
org $00D66F|
	db $80 ; Disable air flight/max speed.

The code above achieves exactly what I want, but I want its effect to only apply to Luigi (leaving Mario in his Vanilla state). As far I can tell, in order to apply something only to Luigi, I should use the RAM address below:
Code
$0DB3

I've been messing around with it a little, but I'm still learning to make patches and my Brain's pretty shot, so please be patient with me. Your help would be greatly appreciated!

*Post Edited multiple times (because I'm a dumb-dumb)
Edit: deleted this reply because it wasn't relevant. Decided to edit original thread post instead.
Originally posted by spooonsss
How about this:
Code

assert read1($00FFD5) == $20
!bank = $800000

org $00D66F
autoclean JML hijack

freecode
hijack:
    LDA $0DB3
    BNE CODE_00D67D
	BCC CODE_00D67D				;$00D66F	||/
	LDA.w $149F					;$00D671	||\ Don't reset the takeoff timer if it's already set.
	JML $00D674|!bank
	; BNE CODE_00D67B				;$00D674	||/
	; LDA.b #$50					;$00D676	||\\ Set the takeoff timer.
	; STA.w $149F					;$00D678	||/


CODE_00D67D:
LDA.b #$0B					;$00D668
JML $00D67D|!bank


Hmm, I wasn't able to get this to work. Any changes I would need to make before inserting?
Originally posted by spooonsss
Seems to work fine for me, Mario can fly but Luigi can't. Did you try on a clean rom?

Finally was able to try it on a clean rom. Worked perfectly! Now the fun begins finding the conflict...
  • Pages:
  • 1
  • 2
  • 3