Users browsing this thread: 1 Guest(s)
MP Cost - The Lost 3rd digit

#21
Posts: 2,548
Threads: 98
Thanks Received: 147
Thanks Given: 156
Joined: Aug 2009
Reputation: 52
Status
Nattak\'d
Menu/window stuff is taken care of in C3 bank.

C3/5203: A0915C LDY #$5C91 (Address at which you find the word "Lore")
C3/52E8: A0B85C LDY #$5CB8 (Address at which you find the word "SwdTech")
C3/539B: A0985C LDY #$5C98 (Address at which you find the word "Rage")
C3/5460: A0A75C LDY #$5CA7 (Address at which you find the word "Espers")
C3/55DE: A0B05C LDY #$5CB0 (Address at which you find the word "Blitz")
C3/577E: A09F5C LDY #$5C9F (Address at which you find the word "Dance")

Those are the pointers to that small mp cost/ability name window where the text overflow can happen. You'll just need to re-point those to free space at the end of C3 so you can then add 'FF' byte(s) after the names that are not 7 characters max as a buffer to prevent the 3rd digit text overflow issue. Normally the ability names are directly back to back despite how many characters they use, which is the reason for needing to relocate them.

You'll need to use the 'battle' table file to view the names correctly in the hex editor. They are normally located at C3/5C91, starting with Lore, you'll see all the ability names that go in that small window there, starting with a '3B' right before them.

You can/should still only use 7 characters max, yes, unless you plan to modify and move that little window to allow it, or it will just bleed over the little window on the 8th character you see.

This is more or less how the names should look once relocated. Note the $3B before the names, and the $00 before the start of a new name to tell it to stop/start a new name, and the space of 7 characters for each using FF for buffer if needed... The pointers are all pointing to these, and that's all there is to it!

[Image: PitCXMP.png]


We are born, live, die and then do the same thing over again.
Quote  
[-] The following 2 users say Thank You to Gi Nattak for this post:
  • DrakeyC (08-27-2016), Tenkarider (08-06-2015)

#22
Posts: 732
Threads: 36
Thanks Received: 12
Thanks Given: 41
Joined: Jan 2016
Reputation: 6
Status
None
Trying this out. Not only does the little window not display anything, but trying to view the Magic menu crashes the game.

[Image: Menu_zpsxnmduv5m.png]
  Find
Quote  

#23
Posts: 3,966
Threads: 279
Thanks Received: 234
Thanks Given: 56
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(08-19-2016, 07:39 AM)DrakeyC Wrote: Trying this out. Not only does the little window not display anything, but trying to view the Magic menu crashes the game.

You got another entry here (and its pointer at C3/4D00). It's for the main skill menu. What you've changed is for the sub-skill menu.

Code:
C3/5C63:    0D7B 81A5A2ADB300              ; Blitz

Your screenshot seems fine. One problem could be 8 letters is not legit for a reason. Otherwise you'll need to do some tracing in C3/02F9 to see if it is executed properly.
  Find
Quote  

#24
Posts: 732
Threads: 36
Thanks Received: 12
Thanks Given: 41
Joined: Jan 2016
Reputation: 6
Status
None
Yes, that's what I want. I have the new skill name appearing fine in the skill menu, what I want is to fix is this with regards to the small window. But somehow along the way my new Blitz skill name never worked right in the first place so trying to fix that first.

Also, it's not eight letters? Alicorn is seven. B781 is the positioning.
  Find
Quote  

#25
Posts: 3,966
Threads: 279
Thanks Received: 234
Thanks Given: 56
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
Change your pointer to its original location, this way you'll know if it's something else that bugs. Make sure you got a valid string at that address. This is how you debug:

Code:
C3/55DE:    A0B05C      LDY #$5CB0     ; Text pointer

Also for shorter ability names, I think padding with $FF after the name up to 7 letter will erase any undesirable letter.
  Find
Quote  

#26
Posts: 732
Threads: 36
Thanks Received: 12
Thanks Given: 41
Joined: Jan 2016
Reputation: 6
Status
None
Well, feeling supremely dumb again. C3/55DE, the A0 had been changed to an A2. Changed it to A0, there's "Alicorn" in the smaller window. Changed to the original pointer to check that, it's Blitz.

On the other hand, now when selecting the Magic command in the skills menu, everyone shows up as having 80% learned in all spells, and when starting a new game trying to open the menu crashes it.

With the FFs for blank spaces, yes, that is the intent.
  Find
Quote  

#27
Posts: 3,966
Threads: 279
Thanks Received: 234
Thanks Given: 56
Joined: Oct 2011
Reputation: 65
Status
Tissue-aware
(08-19-2016, 11:24 PM)DrakeyC Wrote: On the other hand, now when selecting the Magic command in the skills menu, everyone shows up as having 80% learned in all spells, and when starting a new game trying to open the menu crashes it.

You are like an elderly that comes back to the hospital with another health problem the day after he got his ok to go home. Tongue

Is magic replaced by "Alicorn"?
Is "magic" renamed in any way?
What is the last time it was working properly? (before which change)
  Find
Quote  

#28
Posts: 732
Threads: 36
Thanks Received: 12
Thanks Given: 41
Joined: Jan 2016
Reputation: 6
Status
None
It was working properly right before I made the change. The smaller window still displays MP costs and the Magic command is still named as such properly.

And I know. I'm sorry. Sad
  Find
Quote  

#29
Posts: 732
Threads: 36
Thanks Received: 12
Thanks Given: 41
Joined: Jan 2016
Reputation: 6
Status
None
So, anyone have ideas on this problem and how to fix it?

EDIT - Just to recheck the fix, I changed the pointer at C3/55DE to "A0B05C" then tried again as "A0C0F0" with the latter being my new name. Both Blitz and "Alicorn" show up in the small window, respectively, but both fixes cause the game to crash when clicking the Magic menu. It is only Magic that crashes - viewing other skill menus including Espers works fine, and the game crashes when opening Magic regardless of if any other skill menus were viewed first.

As further bugtexts, changed the pointer to point to SwdTech which is at its original location entirely unchanged - still crashes. Erased the new name entry entirely even when the pointer isn't looking at it, in case that somehow did something - still crashes. Then loaded a back-up rom where no attempts to fix this error had been done. Pointed the error at both Blitz and SwdTech - worked fine with both. Put my new ability name at C3/F0D0 incase of F0C0, just in case - the game didn't crash, but the skill menus were entirely screwed up, like the text had been scrolled up the screen. Changed the pointer back to Blitz, all is well again.

EDIT x2 - And now... I don't know. It's working. At last. I did the D0 fix again, this time it works. I have no clue why. Not gonna question it though. Now all ability names are working, everything is fine. I won but I have no idea how.
  Find
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite