Users browsing this thread: 1 Guest(s)
A Guide to Ability Learning

#32
Posts: 35
Threads: 2
Thanks Received: 0
Thanks Given: 0
Joined: Apr 2018
Reputation: 2
Status
Afterglow
(07-10-2020, 10:46 PM)madsiur Wrote:
(07-09-2020, 03:00 PM)Mutteo Wrote: Is there a way to set Dance Learning by Level Up ONLY?  I wanted to give this ability to Locke, but I didn't want him to learn them via the Battle Maps.

Yes. You would need to check if the character is Mog in the natural magic/swtech/blitz learning function ($C0A17F) then add some code somewhere where is free space where you would jump to if the character is mog. Basically it would work like natural magic but you have two tables of 8 entries, one for the levels where the dance are learned and one for the dances IDs. You first check mog's level, if it match to one of the levels in the table you load the corresponding dance and turn the corresponding bit of that dance ID in $7E1D4C (in a similar way to $C25EED). You'd also need to NOP $C25EE5-$C25EFA to not learn dances the normal way.
So I have been at this for a week, and I.....have no idea what I'm doing.  I appreciate your help on this, but I don't think I made much leeway on this.

I actually did not know of a NOP command.  Honestly I tend to glance over words like BEQ or JSR in the coding.  Anyway I was trying to do research on NOP commands and from my observation the byte is $EA.  So I started by trying to change the first byte in every code of the Mog Dances, since commands strings I saw started with that byte.
Code:
C2/5EE5: EA 0A 30 LDA $300A
C2/5EE8: EA 16 BMI $5F00
C2/5EEA: EA E2 11 LDX $11E2 (get combat background)
C2/5EED: EA 5B 8E ED LDA $ED8E5B,X (get corresponding dance #)
And....I broke he game.  I tried adding the byte to a couple of the strings, and it either broke the game or defaulted to the "Wind Song" learned.  I tried to replace the codes with FF to all of them and it resulted in him learning ALL the songs.  So clearly I'm not understanding these command prompts like I thought I did.

Of course even if I did manage it correctly, I was unable to figure out how to change the dances to level up.  The first problem is adding a new line of code to this
Code:
Who learns what at level up
C0/A182: C900 CMP #$00 (is character Terra? note there's no need for this CMP here)
C0/A184: F010 BEQ $A196 (branch if so)
C0/A186: C906 CMP #$06 (is character Celes?)
C0/A188: F02E BEQ $A1B8 (branch if so)
C0/A18A: C902 CMP #$02 (is character Cyan?)
C0/A18C: F04C BEQ $A1DA (branch if so)
C0/A18E: C905 CMP #$05 (is character Sabin?)
C0/A190: D003 BNE $A195 (branch if not)
C0/A192: 4C01A2 JMP $A201
C0/A195: 60 RTS
I thought that maybe I could try to divert one of these branches to some free space then bounce back to this code afterwards so I can add an extra line of code for Mog, though I wasn't sure if I could do that properly.  I found using a Hex calculator IF you take the last byte and add it to the Next offset, gives you the correct branch,  (IE: C0/A184: F010 BEQ $A196 [Take 10 from F010 and add to A186, which is the code after this and it works) However with Sabin's code it's not a branch, it's a jump, and not only do I not know how those work, I don't know where Sabin's leveling code is since his codes says "Branch if NOT"  Of course there's also the problem of the recruitment strings.
Code:
Who learns what at recruitment
C2/61B9: C9 00 CMP #$00 (is it character #0, Terra?)
C2/61C0: C9 06 CMP #$06 (is it character #6, Celes?)
C2/61C7: C9 02 CMP #$02 (if it character #2, Cyan?)
C2/61E3: C9 05 CMP #$05 (is it character #5, Sabin?)
and I have no idea what CMP commands do, let alone how to make room to add and extra line of code for Mog.  So by now I'm just lost.

I was able to find Terra's natural magic data at ECE3C0-ECE3DF as well as Celes's, Sabin's, and Cyan's.  Using FF3USME I was able to make the comparison about each byte controlling the Level and Magic ID, which was about the only thing I was able to understand, though finding out which line of code is supposed to direct to this code of magic data I couldn't say.  Even if I did, I am also left with the issue that Dance Abilities are different from individual spells so I could not find where the index is kept on them.  

You mentioned to me the Dance ID is $7E1D4C, but when I went to look for it on HXD, the number was too high.  So then I thought maybe I need to subtract $C00000 to it and it's I found the number to be $-41E2B4, and that can't be right.

Sigh, I am the fails...

(07-11-2020, 10:39 PM)GrayShadows Wrote: If dances are listed in the order they're learned, as with Blitz and SwdTech, it's doable with only one 8-entry table of levels at which you learn a new dance. Blitz and SwdTech reference only their level-at-which-learned table in C2, for leveling up after combat, and the recruitment/level averaging code in C0 references that same table and a shared bitfield table (C0/A22C) that you could also use for learning Dances.
I think so?  I know the dances are organized in the same place in the command window.  Of course knowing where anything is located is another story.
  Find
Quote  



Messages In This Thread
A Guide to Ability Learning - by Sutebenukun - 10-18-2010, 05:10 PM
RE: Hacking: A Guide to Ability Learning - by Mudkippower1 - 02-05-2012, 07:05 PM
RE: Hacking: A Guide to Ability Learning - by Mudkippower1 - 02-06-2012, 08:57 AM
RE: Hacking: A Guide to Ability Learning - by Mudkippower1 - 02-06-2012, 05:26 PM
RE: Hacking: A Guide to Ability Learning - by Mudkippower1 - 02-07-2012, 07:57 AM
RE: Hacking: A Guide to Ability Learning - by Mudkippower1 - 02-07-2012, 08:48 AM
RE: A Guide to Ability Learning - by Mutteo - 07-09-2020, 03:00 PM
RE: A Guide to Ability Learning - by madsiur - 07-10-2020, 10:46 PM
RE: A Guide to Ability Learning - by GrayShadows - 07-11-2020, 10:39 PM
RE: A Guide to Ability Learning - by Mutteo - 07-18-2020, 08:40 PM
RE: A Guide to Ability Learning - by C-Dude - 07-19-2020, 01:49 PM
RE: A Guide to Ability Learning - by Mutteo - 07-19-2020, 08:52 PM
RE: A Guide to Ability Learning - by C-Dude - 07-20-2020, 12:56 AM
RE: A Guide to Ability Learning - by Mutteo - 07-20-2020, 09:55 PM
RE: A Guide to Ability Learning - by C-Dude - 07-20-2020, 10:57 PM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite