Users browsing this thread: 1 Guest(s)
Esper Learning Rate HELP!

#1
Posts: 17
Threads: 5
Thanks Received: 0
Thanks Given: 4
Joined: Oct 2013
Reputation: 0
Status
None
It looks like I have everything setup in FF6usME right for spell learning with equipped espers, but when I play the game the characters do not learn the spells properly.

Ramuh for Example:
Bolt x15
Bolt 2 x5
Bolt 3 x1

In battle every spell is learned at 15.

I did some more testing.

All espers spells are learned at the first spell for Ramuh. Let's say the first spell for Ramuh is Bolt set to x15. Every spell from any esper will be learned at 15x. If I change it to 10x, I get the same thing happening with every spell learned at x10.

This is not effecting spells learned by items. It has something to do with that first spell spot on the Ramuh esper.

The only other thing I did was use the Restrict Esper asm. I did it just like the readme says and everything works except for the spell learning. Could that have caused the bug?

More testing.
It's not the Restrict Esper asm. It does it on a backup I had before I applied the Restrict Esper asm.

Where do I look to find out what's going on?
  Find
Quote  

#2
Posts: 3,971
Threads: 279
Thanks Received: 238
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
This is the spell learning routine.

You could check:

A) If the code of your hack is the same as the disassembly (most likely yes, but we never know).

B) If the data starting at D8/6E00 is correct (I'm pretty sure it would show up in FF3usME if it was incorrect).

C) Set a breakpoint in the routine using Geiger's debugger and see what goes wrong.

I would personally go as A-C-B since B can be done in step C.



Code:
C2/602A: DA           PHX
C2/602B: 20 93 62     JSR $6293     (Multiply A by #$0B and store in X)
C2/602E: A0 05 00     LDY #$0005    (Do for each spell taught by esper)
C2/6031: 7B           TDC           (Clear A)
C2/6032: BF 01 6E D8  LDA $D86E01,X (Spell taught)
C2/6036: C9 FF        CMP #$FF
C2/6038: F0 0A        BEQ $6044     (Branch if no spell taught)
C2/603A: 5A           PHY
C2/603B: A8           TAY
C2/603C: BF 00 6E D8  LDA $D86E00,X (Spell learn rate)
C2/6040: 20 4B 60     JSR $604B     (Add amount to known% for spell)
C2/6043: 7A           PLY
C2/6044: E8           INX
C2/6045: E8           INX
C2/6046: 88           DEY
C2/6047: D0 E8        BNE $6031     (Check next spell taught)
C2/6049: FA           PLX
C2/604A: 60           RTS
  Find
Quote  

#3
Posts: 17
Threads: 5
Thanks Received: 0
Thanks Given: 4
Joined: Oct 2013
Reputation: 0
Status
None
Checked everything. It's all correct. It works perfectly in the debugger.

I was running the latest version zsnes. When I used an older version, it worked properly.

There was something in the new version of zsnes that was stopping it from running correctly.

Ever here of anything like that before?
  Find
Quote  

#4
Posts: 3,971
Threads: 279
Thanks Received: 238
Thanks Given: 58
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
I have read a thread on RHDN about a hack who was crashing in ZSNES because of a JSL instruction and it was not the case in SNES9x or bsnes. The guy didn't stated which version of ZSNES he was using though.
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite