Users browsing this thread: 1 Guest(s)
Class Names function

#21
Posts: 617
Threads: 49
Thanks Received: 0
Thanks Given: 7
Joined: Feb 2017
Reputation: 25
Status
None
NECROPOST! One year or another, we'll finally figure this out!  Laugh

I did a bit of a re-arranging of the Skills screen. The old screen had this layout:
Esper Name..LV ##
Class Name..HP ####/####
...................MP   ###/  ###

This had 2 problems: First, the class name was given the wrong priority. Wraparound position DD on line 42 (A0 DD 42) put it in the background layer. Second, even when it was given the correct priority (A0 9D 42), it was overflowing over the HP.

I have rearranged the skills screen to match what is shown on the party select screen. Then, on both the skills screen and the party select screen, I have indented the "LV 99" to make it appear right-justified, giving space for the full 12-character class name. I have included 2 versions of the change. The first puts the Esper on the 2nd line (in line with HP) and does not re-arrange any data. The second adds in the Character Name on line 2, and shifts the Esper to line 3, just like on the party select screen. This requires 10 bytes of data elsewhere in C3 (defaultd to C3/F0F0). I have personally always wanted the character's name on the skill screen, since the windows cover up the portrait. So, the layout is now one of the following:
(VERSION 1)
Class Name...................LV ##
Esper Name..HP ####/####
...................MP   ###/   ###

(VERSION 2)
Class Name...................LV ##
Name...........HP ####/####
Esper Name..MP   ###/   ###

One side-effect of this is that the Esper now displays on the status screen for some reason. Also, one thing I didn't figure out is the finger positioning data for the blinking finger when you're choosing an esper. Since I moved the Esper to line 2 or 3, that finger now points to the class name.

Here's the code. Note that I do hex editing, not ASM, so if anyone wants to convert this, feel free.

Code:
VERSION 1 (With No Character Name)
* Asterix indicates a changed line

Data: Positioning for the Main Menu
*    C3/3306 :  A0 59 39    LDY #$3959     (position of character 1's status)
*    C3/3352 :  A0 D9 3A    LDY #$3959     (position of character 2's status)
*    C3/339E :  A0 59 3C    LDY #$3959     (position of character 3's status)
*    C3/33EA :  A0 D9 3D    LDY #$3959     (position of character 4's status)

Data: Positioning for the Skills Menu
*    C3/4EED:    A0 1D 42      LDY #$421D
*    C3/4EF0:    A2 50 2F      LDX #$4F50
    C3/4EF3:    20 27 34      JSR $3427      (display current status ailments)
    C3/4EF6:    A0 D1 5C      LDY #$5CD1
    C3/4EF9:    20 F9 02      JSR $02F9      (draw HP's "/")
    C3/4EFC:    A0 D5 5C      LDY #$5CD5
    C3/4EFF:    20 F9 02      JSR $02F9      (draw MP's "/")
    C3/4F02:    A2 12 4F      LDX #$4F12
    C3/4F05:    20 6C 0C      JSR $0C6C      (display HP, MP, etc)
    C3/4F08:    A9 20        LDA #$20
    C3/4F0A:    85 29        STA $29        (set text color to white)
*    C3/4F0C:    A0 9D 42      LDY #$421D
    C3/4F0F:    4C E6 34      JMP $34E6      (display currently equipped esper name)

Data: Positioning for Level, HP, MP for skills menu
*    C3/4F12:    41 42            (level's position)
    C3/4F14:    B3 42            (current HP's position)
    C3/4F16:    BD 42            (max HP's position)
    C3/4F18:    33 43            (current MP's position)
    C3/4F1A:    3D 43            (max MP's position)

*    C3/5CC2:    3B 42 8B 95 00                    (position of and word "LV")
    C3/5CC7:    AD 42 87 8F 00                    (position of and word "HP")
    C3/5CCA:    2D 43 8C 8F 00                    (position of and word "MP")

Data: Positioning for Level, HP, MP for party select screen
*    C3/79CF:    7B 3A 8B 95 00    (position of and word "LV")
    C3/79D4:    ED 3A 87 8F 00    (position of and word "HP")
    C3/79D9:    6D 3B 8C 8F 00    (position of and word "MP")
    C3/79DE:    FB 3A C0 00    (position of and character "/")
    C3/79E2:    7B 3B C0 00    (position of and character "/")
*    C3/79E6:    81 3A            (level's position)
    C3/79E8:    F3 3A            (current HP's position)
    C3/79EA:    FD 3A            (max HP's position)
    C3/79EC:    73 3B            (current MP's position)
    C3/79EE:    7D 3B            (max MP's position)

Code:
VERSION 2 (With Character Name)
* Asterix indicates a changed line
    
Data: Positioning for the Main Menu
*    C3/3306 :  A0 59 39    LDY #$3959     (position of character 1's status)
*    C3/3352 :  A0 D9 3A    LDY #$3959     (position of character 2's status)
*    C3/339E :  A0 59 3C    LDY #$3959     (position of character 3's status)
*    C3/33EA :  A0 D9 3D    LDY #$3959     (position of character 4's status)

Data: Positioning for the Skills Menu
*    C3/4EED:    A0 1D 42      LDY #$421D
*    C3/4EF0:    A2 50 2F      LDX #$4F50
    C3/4EF3:    20 27 34      JSR $3427      (display current status ailments)
    C3/4EF6:    A0 D1 5C      LDY #$5CD1
    C3/4EF9:    20 F9 02      JSR $02F9      (draw HP's "/")
    C3/4EFC:    A0 D5 5C      LDY #$5CD5
    C3/4EFF:    20 F9 02      JSR $02F9      (draw MP's "/")
*    C3/F0F0:    A2 F0 F0      LDX #$F0F0
    C3/4F05:    20 6C 0C      JSR $0C6C      (display HP, MP, etc)
    C3/4F08:    A9 20        LDA #$20
    C3/4F0A:    85 29        STA $29        (set text color to white)
*    C3/4F0C:    A0 9D 42      LDY #$429D
*    C3/4F0F:    20 CF 34      JSR $34CF      (display character name)
*    C3/4F12:    A0 1D 43      LDY #$431D
*    C3/4F15:    4C E6 34      JMP $34E6      (display currently equipped esper name)
*    C3/4F18:    FF            NOP
*    C3/4F1A:    FF            NOP

Note: The following table was relocated to make room for the caracter name.
Data: Positioning for Level, HP, MP for skills menu
*    C3/F0F0:    41 42            (level's position)
*    C3/F0F2:    B3 42            (current HP's position)
*    C3/F0F4:    BD 42            (max HP's position)
*    C3/F0F8:    33 43            (current MP's position)
*    C3/F0FA:    3D 43            (max MP's position)

*    C3/5CC2:    3B 42 8B 95 00                    (position of and word "LV")
    C3/5CC7:    AD 42 87 8F 00                    (position of and word "HP")
    C3/5CCA:    2D 43 8C 8F 00                    (position of and word "MP")

Data: Positioning for Level, HP, MP for party select screen
*    C3/79CF:    7B 3A 8B 95 00    (position of and word "LV")
    C3/79D4:    ED 3A 87 8F 00    (position of and word "HP")
    C3/79D9:    6D 3B 8C 8F 00    (position of and word "MP")
    C3/79DE:    FB 3A C0 00    (position of and character "/")
    C3/79E2:    7B 3B C0 00    (position of and character "/")
*    C3/79E6:    81 3A            (level's position)
    C3/79E8:    F3 3A            (current HP's position)
    C3/79EA:    FD 3A            (max HP's position)
    C3/79EC:    73 3B            (current MP's position)
    C3/79EE:    7D 3B            (max MP's position)


Projects:
FFVI: Divergent Paths (Completed) - a complete storyline and gameplay hack of FF6 that adds Leo as a playable character
  Find
Quote  
[-] The following 5 users say Thank You to PowerPanda for this post:
  • C-Dude (11-11-2019), DrakeyC (08-10-2018), h.carrell (04-26-2022), madsiur (08-10-2018), Warrax (08-09-2018)



Messages In This Thread
Class Names function - by madsiur - 04-28-2012, 04:39 PM
RE: Class Names function - by pjmcphee87 - 05-17-2012, 11:02 AM
RE: Class Names function - by madsiur - 05-17-2012, 12:43 PM
RE: Class Names function - by Catone - 08-09-2012, 08:28 PM
RE: Class Names function - by madsiur - 12-30-2012, 11:27 PM
RE: Class Names function - by Rodimus Primal - 06-13-2013, 02:39 PM
RE: Class Names function - by madsiur - 06-13-2013, 08:01 PM
RE: Class Names function - by Rodimus Primal - 06-14-2013, 09:20 AM
RE: Class Names function - by madsiur - 06-14-2013, 07:59 PM
RE: Class Names function - by Rodimus Primal - 06-15-2013, 02:13 AM
RE: Class Names function - by madsiur - 06-15-2013, 03:49 PM
RE: Class Names function - by Gi Nattak - 10-07-2013, 04:07 PM
RE: Class Names function - by ShinMrKarate - 11-20-2014, 02:35 AM
RE: Class Names function - by seibaby - 04-06-2016, 01:50 PM
RE: Class Names function - by madsiur - 04-07-2016, 05:25 PM
RE: Class Names function - by B-Run - 04-08-2016, 07:34 AM
RE: Class Names function - by seibaby - 09-14-2017, 10:13 AM
RE: Class Names function - by Warrax - 09-14-2017, 03:44 PM
RE: Class Names function - by Warrax - 10-02-2017, 07:39 PM
RE: Class Names function - by assassin - 10-02-2017, 10:20 PM
RE: Class Names function - by PowerPanda - 08-09-2018, 02:31 PM
RE: Class Names function - by DrakeyC - 08-09-2018, 09:58 PM
RE: Class Names function - by madsiur - 08-10-2018, 12:21 AM
RE: Class Names function - by Warrax - 08-10-2018, 09:48 AM
RE: Class Names function - by DrakeyC - 08-10-2018, 12:27 AM
RE: Class Names function - by DrakeyC - 08-10-2018, 08:46 PM
RE: Class Names function - by PowerPanda - 08-10-2018, 11:51 PM
RE: Class Names function - by DrakeyC - 08-11-2018, 12:30 AM

Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite