Conn I need help please

Go down

Conn I need help please Empty Conn I need help please

Post by Erockbrox on Fri 9 Jan 2015 - 2:32

Okay if you don't already know I have been working on a Super Mario World puzzle hack for around 4 years and this mairo hack means a heck of a lot to me and I am very passionate about finishing it.

All of the levels have been designed already. Now its just a matter of actually making the game.

I've been working on this and things are going okay. I finally got the NO OVERWORLD patch to work. This cuts my work down because now I don't have to build an overworld, however this makes two of my working patches not work anymore.

I have posted help threads on smwcentral.net but nobody seems to want to help me with this ASM stuff.

Here is my thread over there.

http://www.smwcentral.net/?p=viewthread&t=76608

In that link I provide my ips patch of my game at its current state.

One problem that I need to fix may be simple. There is a patch that resets yoshi, powerup and coins when you return to the overworld, but because i never return to the overworld in my game this patch no longer works. What I need is to make this patch work when the player sees the MARIO START screen instead of the OVERWORLD.

Here is the patch that resets yoshi, powerup and coins.

http://www.smwcentral.net/?p=section&a=details&id=4226

I am not asking for someone to do the whole thing for me, but just need a little help and guidance because I am stuck and nobody on smwc.net will help me.

Thanks!!!
Erockbrox
Erockbrox

Conn I need help please Image214

Since : 2013-02-06

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Conn on Fri 9 Jan 2015 - 16:07

Maybe you have an idea how much I am keen after hacking bszelda 10 years and ALTTP 2-3 years to start with SMW? Yes, right - no Motivation at all Wink

But since I use to be a nice Person, here's your request. Hope everything works:

http://bszelda.zeldalegends.net/stuff/Con/erock1.ips



edit,

Sure enough it works, but there is one exception. If you enter level 0 and then restart the game, the game thinks that you have beaten level 0 and thus starts you off at level 1.

This isn't that big of a deal because not many people would want to restart the system on level 0 in my mario hack since level 0 is the easiest level of them all.

Just wanted to let you know.
You can solve this through
Code:

.Init
LDA #$69
STA $700000,x
LDA #$01
STA $700003,x
make the
LDA #$01 -> LDA #$00
or simply at with Header 02/da73: 01 -> 00

You will see *96 in the start menu then but well. Nothing is perfect.
Conn
Conn

Conn I need help please Image212

Since : 2013-07-01

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Erockbrox on Sat 10 Jan 2015 - 16:40

Conn I appreciate your desire to help me and I thank you for your efforts so thank you for that.

However, this starting at level 0 thing already was kind of fixed in my other thread. Even though you can skip level 1 with a restart who will restart on level 1 because my level 1 is so easy. So i can live with this.

What I need help on is this patch. It normally resets Yoshi, powerup and coin counter when you return to overworld however i need it to reset everything when you see the MARIO START screen at the beginning of each level.  

Also I don't want you to just do it for me but instead TEACH me so I can do other asm hacks on my own and not have to ask you for help each time.

Here is the patch code

Code:
header
lorom

org $00A0CA
STZ $19          ; Powerup = Small
STZ $0DB8,x      ; Mario / Luigi powerup = Small.
BRA CycleSave1   ; Save 3 cycles.
NOP

CycleSave1:
STZ $0DB6,x      ; Mario / Luigi coins = 00.
BRA CycleSave2   ; Save 13 cycles.
NOP              
NOP            
NOP
NOP
NOP
NOP

CycleSave2:
STZ $0DBA,x      ; Mario / Luigi Yoshi colour = 00.
BRA CycleSave3   ; Save 3 cycles.
NOP

CycleSave3:
STZ $0DBC,x      ; Mario / Luigi item box = 00.

org $0491B8
BRA CycleSave4   ; Save 3 cycles.
NOP

CycleSave4:
STZ $0DBF        ; Coins = 00.

org $0491C4
BRA CycleSave5   ; Save 3 cycles
NOP

CycleSave5:
STZ $19          ; Powerup = Small
BRA CycleSave6   ; Save 3 cycles
NOP

CycleSave6:
STZ $0DC1        
STZ $13C7        ; Yoshi Colour = 00.
STZ $187A        ; Mario on Yoshi = 00.
STZ $0DC2        ; Reserve item = 00.
BRA CycleSave7   ; Save 3 cycles
NOP
CycleSave7:

THANK YOU!!
Erockbrox
Erockbrox

Conn I need help please Image214

Since : 2013-02-06

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Conn on Sat 10 Jan 2015 - 21:40

Could you please again read my post above, this time maybe more careful? Or promise me to read the following with your full Attention?

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

- If you set the value:

LDA #$01
STA $700003,x
make the
LDA #$01 -> LDA #$00
Means

LDA #$00
STA $700003,x
or simply at with Header 02/da73: 01 -> 00
You can also restart in Level 0!

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

- Then, I also gave you there the link to a ips patch that fulfilles your request resetting the coins, yoshi, stuff; here is it again:

Apply this patch to have only the resetting
http://bszelda.zeldalegends.net/stuff/Con/erock1.ips

Apply this patch to have both the resetting AND the possibility to restart in Level 0:
http://bszelda.zeldalegends.net/stuff/Con/erock2.ips


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

Here's what I did in above posted ips:
Code:

original:
$00/A0AA 8D 00 01    STA $0100
$00/A0AD   4C F7 93 JMP $0093F7

I changed this to a Long JUMP to an unused region:
              
$00/A0AA 5C 00 BD 03 JMP $03BD00
$00/A0AE EA NOP
$00/A0AF EA NOP

$03/BD00 8D 00 01    STA $0100  ; repeat deleted code to have place for Long jump
$03/BD03 64 19       STZ $19       ; now this is the code by original coder to reset items
$03/BD05 AE B3 0D    LDX $0DB3  ; this gets the X value (Mario/Luigi?)
$03/BD08 9E B8 9D    STZ $9DB8,x
$03/BD0B 9E B6 0D    STZ $0DB6,x
$03/BD0E 9E BA 0D    STZ $0DBA,x
$03/BD11 9E BC 0D    STZ $0DBC,x
$03/BD14 9E BF 0D    STZ $0DBF,x
$03/BD17 9C C1 0D    STZ $0DC1
$03/BD1A 9C C7 13    STZ $13C7  
$03/BD1D 9C 7A 18    STZ $187A  
$03/BD20 9C C2 0D    STZ $0DC2
$03/BD23 5C F7 93 00 JMP $0093F7  ; this leads to the original code where I hooked


Trace it with Geiger. All I did is examining the changes done in original coder's code and wrote pasted this to an unused Rom Region where I hooked to.
Conn
Conn

Conn I need help please Image212

Since : 2013-07-01

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Erockbrox on Sat 10 Jan 2015 - 23:49

omg I so sorry. I didnt think you actually fixed the whole thing! :cheers:

I didnt realize that you had fixed more than just the reset thing since I hadn't tested it yet.

I will test it out right now. Thank you as this is a BIG help. Only reason I ask you is because I asked on SMWC and they didnt or couldnt help me.

When I am finished with the hack you will get a free copy of the cart for sure! Smile

Now time to test out!
Erockbrox
Erockbrox

Conn I need help please Image214

Since : 2013-02-06

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Erockbrox on Fri 16 Jan 2015 - 7:26

So far everything is working quite well with the patch you made me.

I don't know if I have shown anyone here a preview of the game but in case I didn't you can see it here.



I will release a beta for anyone who wants to test it out here once it gets more finalized.

Also Conn do you have a copy of the patch in an .asm file format?

For example, what if there is a small change that I need to make to the patch. I think it would be much easier to do if I could edit the .asm file.

Thanks again for your help since nobody at the other site would help me. Smile
Erockbrox
Erockbrox

Conn I need help please Image214

Since : 2013-02-06

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Conn on Fri 16 Jan 2015 - 10:55

Sure, you can always turn a disassemble into a asm (compare with the disassemble to learn what I do):

Code:


header
lorom

org $00a0aa

JMP $03BD00
NOP
NOP

org $03BD00
STA $0100  ; repeat native code to have place for Long jump
STZ $19      ; power-up small
LDX $0DB3  ; Mario/Luigi?
STZ $9DB8,x ;Mario/Luigi power-up=small
STZ $0DB6,x; Mario / Luigi coins = 00
STZ $0DBA,x ; Mario / Luigi Yoshi colour = 00
STZ $0DBC,x ; Mario / Luigi item box = 00
STZ $0DBF    ; coins=00 (did a mistake in last code, there was,x)
STZ $0DC1
STZ $13C7  ; yoshi Color=00
STZ $187A  ; Mario on Yoshi=00
STZ $0DC2; reverse item=00
JMP $0093F7  ; jump back


As you see I only execute in my hook the code Glyph Phoenix has in his patch. The only new code I wrote was
LDX $0DB3 ; Mario/Luigi as this was stored to X before his asm code by native code
Conn
Conn

Conn I need help please Image212

Since : 2013-07-01

Back to top Go down

Conn I need help please Empty Re: Conn I need help please

Post by Erockbrox on Fri 16 Jan 2015 - 18:55

Thanks! Smile
Erockbrox
Erockbrox

Conn I need help please Image214

Since : 2013-02-06

Back to top Go down

Back to top


 
Permissions in this forum:
You cannot reply to topics in this forum