Users browsing this thread: 1 Guest(s)
Reverse actors HP MP progression

#21
Posts: 1,633
Threads: 56
Thanks Received: 13
Thanks Given: 84
Joined: Apr 2014
Reputation: 12
Status
Atma
Just to be sure, you(Synchysi) said if you're working with a headered ROM, you'll need to add 0x200 to your result... you mean adding 0x200000, or 0x000200? probably a stupid question... Laugh


THE GREATEST CHALLENGE OF ALL TIMES AWAITS:
http://www.ff6hacking.com/forums/showthr...p?tid=2593
DO YOU HAVE WHAT IT TAKES TO SLAY A GOD?
------------------------------------------------------------------------
Tenkarider's project #2 is started: FF6 Curse of the Madsiur Joke (CotMJ)
http://www.ff6hacking.com/forums/showthr...p?tid=2755
What happens when Madsiur tweaks your account? This full game hack will show that!
  Find
Quote  

#22
Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(06-14-2014, 06:33 PM)Tenkarider Wrote: Just to be sure, you(Synchysi) said if you're working with a headered ROM, you'll need to add 0x200 to your result... you mean adding 0x200000, or 0x000200?

You add 0x000200.
  Find
Quote  
[-] The following 1 user says Thank You to madsiur for this post:
  • Tenkarider (06-14-2014)

#23
Posts: 1,633
Threads: 56
Thanks Received: 13
Thanks Given: 84
Joined: Apr 2014
Reputation: 12
Status
Atma
They also said there's plenty of space on bank C2, but actually checking the disassembly file, according to what i understand about this stuff, i see that the addresses of each C2/ instruction are really near, if not attached... Probably i need of a different point of view... Could you please tell me an example of a C2/ address that leads to 8/10 bytes of empty space? thanks Smile


THE GREATEST CHALLENGE OF ALL TIMES AWAITS:
http://www.ff6hacking.com/forums/showthr...p?tid=2593
DO YOU HAVE WHAT IT TAKES TO SLAY A GOD?
------------------------------------------------------------------------
Tenkarider's project #2 is started: FF6 Curse of the Madsiur Joke (CotMJ)
http://www.ff6hacking.com/forums/showthr...p?tid=2755
What happens when Madsiur tweaks your account? This full game hack will show that!
  Find
Quote  

#24
Posts: 3,969
Threads: 279
Thanks Received: 236
Thanks Given: 57
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
There's some free space starting at C2/6469.
  Find
Quote  
[-] The following 1 user says Thank You to madsiur for this post:
  • Tenkarider (06-14-2014)

#25
Posts: 1,633
Threads: 56
Thanks Received: 13
Thanks Given: 84
Joined: Apr 2014
Reputation: 12
Status
Atma
I heard about 2 possible instructions to change the increase into a decrease:
- C2/6105
- C2/618F

What's the difference between them, especially the difference in what it changes after i change ADC into SBC between both the commands?

Should i change just one of them or what?

PS. i'm almost there... if you answer me quickly, i may even be able to finish the hack!!! Wink (maybe) Laugh


THE GREATEST CHALLENGE OF ALL TIMES AWAITS:
http://www.ff6hacking.com/forums/showthr...p?tid=2593
DO YOU HAVE WHAT IT TAKES TO SLAY A GOD?
------------------------------------------------------------------------
Tenkarider's project #2 is started: FF6 Curse of the Madsiur Joke (CotMJ)
http://www.ff6hacking.com/forums/showthr...p?tid=2755
What happens when Madsiur tweaks your account? This full game hack will show that!
  Find
Quote  

#26
Posts: 290
Threads: 3
Thanks Received: 40
Thanks Given: 1
Joined: Apr 2012
Reputation: 9
Status
None
You can ignore my suggestion. GrayShadows was on the mark. C2/6105 is the one you're looking for.

The block I pointed out applies only to bonus HP from espers at level up.

In theory, changing ADC to SBC should simply change the arithmetic from (max HP + HP gain at level) to (max HP - HP gain at level).

Edit: Upon further consideration and without being able to test it myself, you may need to change both of them.


GET A SILK BAG FROM THE GRAVEYARD DUCK TO LIVE LONGER.

Brave New World
  Find
Quote  
[-] The following 1 user says Thank You to Synchysi for this post:
  • Tenkarider (06-15-2014)

#27
Posts: 1,633
Threads: 56
Thanks Received: 13
Thanks Given: 84
Joined: Apr 2014
Reputation: 12
Status
Atma
Do i need to use JSR long(22), instead of JSR addr(20), in order to jump from C0 bank to C2 bank?


THE GREATEST CHALLENGE OF ALL TIMES AWAITS:
http://www.ff6hacking.com/forums/showthr...p?tid=2593
DO YOU HAVE WHAT IT TAKES TO SLAY A GOD?
------------------------------------------------------------------------
Tenkarider's project #2 is started: FF6 Curse of the Madsiur Joke (CotMJ)
http://www.ff6hacking.com/forums/showthr...p?tid=2755
What happens when Madsiur tweaks your account? This full game hack will show that!
  Find
Quote  

#28
Posts: 290
Threads: 3
Thanks Received: 40
Thanks Given: 1
Joined: Apr 2012
Reputation: 9
Status
None
It'd be more efficient to use some free space in bank C0.

http://slickproductions.org/docs/FF6/Ban...sembly.txt

A decent-sized block of free space starts at C0/D613.


GET A SILK BAG FROM THE GRAVEYARD DUCK TO LIVE LONGER.

Brave New World
  Find
Quote  

#29
Posts: 1,633
Threads: 56
Thanks Received: 13
Thanks Given: 84
Joined: Apr 2014
Reputation: 12
Status
Atma
I see... anyway i was wondering... is it really better to use JSR instead of JMP? I'm afraid i may mess with stuff if i call a subroutine, i think it's better to simply go to the free space without call any subroutines, if i have to do a simple operation... am i wrong? Huh


THE GREATEST CHALLENGE OF ALL TIMES AWAITS:
http://www.ff6hacking.com/forums/showthr...p?tid=2593
DO YOU HAVE WHAT IT TAKES TO SLAY A GOD?
------------------------------------------------------------------------
Tenkarider's project #2 is started: FF6 Curse of the Madsiur Joke (CotMJ)
http://www.ff6hacking.com/forums/showthr...p?tid=2755
What happens when Madsiur tweaks your account? This full game hack will show that!
  Find
Quote  

#30
Posts: 290
Threads: 3
Thanks Received: 40
Thanks Given: 1
Joined: Apr 2012
Reputation: 9
Status
None
JSR and JMP are identical instructions, except JSR allows you to easily return to the point you jumped from (with an RTS instruction). Since you're interrupting an existing routine for a bit of custom code (and not writing a brand new, custom subroutine), you'll definitely want to RTS afterward.

For example, here's a section of the block the Edrin pasted above:

Code:
C0/A286:    8D0342      STA $4203      (save as a multiplier)
C0/A289:    B90816      LDA $1608,Y    (character level)
C0/A28C:    851B        STA $1B        (save it for now)
C0/A28E:    641F        STZ $1F        (zero out upper HP byte)
C0/A290:    AE1642      LDX $4216
C0/A293:    BFA07CED    LDA $ED7CA0,X  (Initial HP)
C0/A297:    851E        STA $1E        (save initial HP)
C0/A299:    A600        LDX $00        (X = #$0000)

Wherever you interrupt this routine, you're going to want to finish executing it after your custom subroutine has run, which is where the RTS instruction would come into play.


GET A SILK BAG FROM THE GRAVEYARD DUCK TO LIVE LONGER.

Brave New World
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite