Users browsing this thread: 1 Guest(s)
Expanding Names and Renaming

#1
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
[Incomplete!]

I will use this thread to share information to those who wish to have a guide to hex hacking - specifically to do the task of renaming spells, esper names, attacks, lores, and items, among other things. I've always been bothered by the translation of spells, espers and everything else in the game, but it wasn't until this summer that I decided to learn hex myself and start doing these changes after seeing metroidquest's hack "the eternal crystals". Though I'm far from finished, I believe people should have easy access to this data.

Helpful information:
--Final Fantasy 6 Banks (Some information as of the location of the data you need is located here: )
http://slickproductions.org/docs.php?id=FF6

Before I start, please keep the following detail in mind:

1- If you wish to edit something IN BATTLE, then you'd best look for the disassembly banks "C1" and "C2", as the battle data is contained in these files.

2 - If you wish to edit something in the MENUS, then look for the disassembly bank "C3".

This means that the game is accessing data for battles and menus from one address.

1 - Magic Spells in the game

In Menu:
C3/4FA1:   A20300   LDX #$0003   (X position of left half of spells)
C3/4FAC:   A21000   LDX #$0010   (X position of right half of spells)
C3/4FB5:   A00700   LDY #$0007   (spell letter length)
C3/4FBA:   A067F5   LDY #$F567   (spell name address)
C3/4FBF:   A9E6     LDA #$E6      (spell name bank)
C3/5052:   A2929E   LDX #$9E92   (position of spell progress)
C3/5AF9:   A2929E   LDX #$9E92   (space between spell name and ':')
C3/87CB:   AE3421   LDX $2134

In Battle:
C1/601A:   A907     LDA #$07 (7 = spell name length)
C1/6031:   BF68F5E6 LDA $E6F568,X (Load Spell name X)
C1/65E8:   A907     LDA #$07 (from C1/65AA)(7 = spell name length)
C1/65F3:   BF67F5E6 LDA $E6F567,X (Load Spell name X)
C1/6B1D:   A907     LDA #$07
C1/6B2E:   BF67F5E6 LDA $E6F567,X (Load spell name X)

In simpler words, the "address" E6 F5 67 contains the spell names in the ROM (that is, using the HIROM notation).

Spells are limited to 7 characters, including the icon that specifies whether it's a healing, attack or support spell. So if you'd like to expand the spell names in battle, for example, to 10 characters, you would need to replace the "07" bytes in the C1 bank (addresses C1/601A, C1/65E8 and C1/6B1D) to "0A".

When increasing the number of characters from 7 to 10 in the example, you will run into a problem: you will see that to successfully rename the spells you will need to overwrite some data from other parts of the game, which will in turn screw up your ROM. You will need to make some space in your ROM to create the new spell names.

That is where the addresses C1/6031 , C1/65F3 , and C1/6B2E come into play. When you create the new spell names, you will need to "tell the ROM" to "look for the new spell names" in the address you've created them. If the spell data is created at "F0 11 03", then I would need to change the three locations above mentioned from the old address to "F0 11 03".

2 - Lore Names:

In Menu:

C3/525D:   A20300      LDX #$0003    (Starting position of Lore list in menu)
C3/5266:   A00A00   LDY #$000A   (lore name length)
C3/526B:   A0FDF9   LDY #$F9FD   (lore name address)
C3/5270:   A9E6     LDA #$E6      (lore name bank)
C3/5295:   A2959E   LDX #$9E95   (position of ... in lore menu)  
C3/5C91:   B7818BA8AB9E00             (position of and word "Lore")

In Battle:
C1/6665:   A90A     LDA #$0A      (from C1/665E)(10 = lore name length)
C1/6670:   BFFDF9E6 LDA $E6F9FD,X (Load Lore name X)

Lore Names are 10 characters long (both in battle and in the menu). You will need to create the new lore names in a new address and tell the rom to look for the new names.

3 -Esper Names:

In MENU:
C3/34F4:   A00800   LDY #$0008     (esper name length)
C3/34F7:   BFE1F6E6 LDA $E6F6E1,X  (Load Esper name)
C3/34F0:   0A       ASL A
C3/34F1:   0A       ASL A
C3/34F2:   0A       ASL A
C3/3508:   A00800   LDY #$0008
C3/54E6:   A20300   LDX #$0003      (X position of left half of espers)
C3/54F1:   A21100   LDX #$0011      (X position of right half of espers)
C3/54FA:   A00800   LDY #$0008      (esper name length)
C3/54FF:   A0E1F6   LDY #$F6E1      (esper name address)
C3/5504:   A9E6     LDA #$E6        (esper name bank)
C3/5539:   A2939E   LDX #$9E93
C3/555D:   A00C00   LDY #$000C     (esper name is 8 letters, 1 for space, 3 more for MP cost)
C3/59BD:   0A       ASL A
C3/59BE:   0A       ASL A
C3/59BF:   0A       ASL A
C3/59C0:   AA       TAX
C3/59C1:   A00800   LDY #$0008 (Indirectly says below is 8 chars long)
C3/59C4:   BFE1F6E6 LDA $E6F6E1,X (Load Esper X's name)

In BATTLE:
C1/5FF3:   A908     LDA #$08 (8 = Esper name length)
C1/6007:   BFE1F6E6 LDA $E6F6E1,X (Load Esper name X)
C1/65D0:   A908     LDA #$08 (8 = Esper name length)
C1/65DB:   BFE1F6E6 LDA $E6F6E1,X (Load Esper name X)
C1/668D:   A908     LDA #$08 (from C1/6686)(Sets name length?)
C1/6698:   BFE1F6E6 LDA $E6F6E1,X (Loads Esper name X)
C2/E091:   04 03       TSB $03        (Change the 04 bit)

For esper names, the easy part comes in editing the names in battle.

4- Item Names

In Menu:

C3/2714:   A90D        LDA #$0D (13 = item name length)
C3/271F:   BF00B3D2    LDA $D2B300,X (Get letter at D2B300 + (index * 13) of item name)
C3/80D4:   A90D        LDA #$0D
C3/80DF:   A00D00     LDY #$000D     (Start the count of letters at 13)
C3/80E2:   BF00B3D2 LDA $D2B300,X  (Load letter X of item name)
C3/85BC:   BF348DC3    LDA $C38D34,X  (grab " can be used by:")
C3/85C7:   C01100      CPY #$0011     (length of " can be used by:" ??)
C3/85CE:   E00D00   CPX #$000D      (at most, uses the full item name length before putting in "can be used by:")
C3/900D:   A00D00   LDY #$000D
C3/9010:   BF00B3D2 LDA $D2B300,X  (load item X name)
C3/901F:   A00D00   LDY #$000D     (item name length)
C3/9D3D:   A00D00   LDY #$000D     (in equip screen, when manually equipping)
C3/9D40:   BF00B3D2 LDA $D2B300,X  (item name)
C3/9D4F:   A00D00      LDY #$000D    (write 13 blank spaces)
C3/C07D:   A90D     LDA #$0D
C3/C088:   A00D00   LDY #$000D    (item name length in shops)
C3/C08B:   BF00B3D2 LDA $D2B300,X (item name)
C3/80ED:   A9C1        LDA #$C1      (colon in the font)
C3/80F6:   A01000   LDY #$0010    (blank out item name, colon, and quantity)
C3/93FF:   A21B7A   LDX #$7A1B     (position of the R-hand slot)
C3/9411:   A29B7A   LDX #$7A9B     (position of the L-hand slot)
C3/9451:   A21B7B   LDX #$7B1B     (accessory, slot 1)
C3/945F:   A29B7B   LDX #$7B9B     (accessory, slot 2)

In Battle:
C1/6052:   A90D     LDA #$0D (13 = item name length)
C1/6069:   BF01B3D2 LDA $D2B301,X (Load item name X)
C1/6527:   A90D     LDA #$0D (13 = item name length)
C1/6530:   BF00B3D2 LDA $D2B300,X (Loads Item name X)
C1/653D:   A907     LDA #$07
C1/654B:   BF006FD2 LDA $D26F00,X (Loads Weapon/Armor type word X)
C1/6561:   A90D     LDA #$0D
C1/6568:   A90D     LDA #$0D
C1/6574:   A90D     LDA #$0D (13 = item name length)
C1/6578:   BF00B3D2 LDA $D2B300,X (Loads Item name X)
C1/6A47:   A90D     LDA #$0D (13 = item name length)
C1/6A58:   BF00B3D2 LDA $D2B300,X (Loads Item name X)
C1/6A91:   A90D     LDA #$0D (13 = item name length)
C1/6AA2:   BF00B3D2 LDA $D2B300,X  (Loads Item name X)
Quote  

#2
Posts: 2,768
Threads: 88
Thanks Received: 24
Thanks Given: 87
Joined: Jun 2009
Reputation: 25
Status
None
hey I've been meaning to tell u, I spoke with Lord J about your findings and if u are able to finish (char names, spell names, esper names etc.) he is going to make his new editor compatible with those changes, as well as apply a patch within his editor to add these changes as well (he will obviously give u the credit seeing as how I gave him your name lolz)


"Sometimes ninjas do wrong to each other, and in dat way the force of tha earf' comes around da moon - and at that presence, da dirt, it overshadows the grass, so you're like, I can't cut dis grass, there's no sun comin' through. So in order to enable each other the two fruits have to look each other in da eye and understand we can only be right, as da ripe is wrong, you know what I mean?"

-HNIC
Quote  

#3
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
My progress is:

Spell Names - 100% Menu, 100% Battle
Esper Names - 80% Menu, 95% Battle - Problems in displaying correct esper names in menu and status window. In battle, found a glitch for MP display after the esper's name.
Esper Attack Names - 100% Battle
Dance - 100% Battle, 100% Menu
Magitek Attacks - 100% Battle
Lore Names - 100% Battle, 100% Menu
Item Names - 95% Battle, 0% Menu - There's a glitch in battle that omits the first three letters of a weapon and I'm not sure how to fix. This distorts the Tools names as well.
Enemy Attacks - 100% Battle

But thanks a lot for doing that first step! Maybe I can contact Lord J now, but you must get some credit as well as you went ahead and told him about the improvements I'm working on.

I wasn't thinking about editing the character's names, mainly because I doubt they will fit in battle (they may go out of the borders). That may cause problems in the menu (main window and status window) as well. I may give it a try sometime (maybe that way we can play as "orthros").
Quote  

#4
Posts: 2,768
Threads: 88
Thanks Received: 24
Thanks Given: 87
Joined: Jun 2009
Reputation: 25
Status
None
actually the minimum letters 4 a character's name without it going over the menu is 8 or 9 (I think 9 but some1 else said 8)

but it can be fixed, Metroid Quest and the Pandora's Box team know how to go about it

but there is nothing wrong with sending them a PM and showing them what u got

MQ however does not seem to like to share his knowledge like that (I could be wrong but I just haven't seen it like that)


"Sometimes ninjas do wrong to each other, and in dat way the force of tha earf' comes around da moon - and at that presence, da dirt, it overshadows the grass, so you're like, I can't cut dis grass, there's no sun comin' through. So in order to enable each other the two fruits have to look each other in da eye and understand we can only be right, as da ripe is wrong, you know what I mean?"

-HNIC
Quote  

#5
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
Heh, I agree that MQ does not reveal his findings at all. He will only hints to what you should do next, but finding the data is up to you.
Quote  

#6
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
Poco, I wonder if you could move this thread to hex editing? I lost the file where I documented all the findings and i for sure don't wanna lose this thread
Quote  

#7
Posts: 2,768
Threads: 88
Thanks Received: 24
Thanks Given: 87
Joined: Jun 2009
Reputation: 25
Status
None
np man consider it moved, srry that u guys cant post it up there yet, the site is under construction


"Sometimes ninjas do wrong to each other, and in dat way the force of tha earf' comes around da moon - and at that presence, da dirt, it overshadows the grass, so you're like, I can't cut dis grass, there's no sun comin' through. So in order to enable each other the two fruits have to look each other in da eye and understand we can only be right, as da ripe is wrong, you know what I mean?"

-HNIC
Quote  

#8
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
Thanks Thanks bro
Quote  

#9
Posts: 2,768
Threads: 88
Thanks Received: 24
Thanks Given: 87
Joined: Jun 2009
Reputation: 25
Status
None
np man :p


"Sometimes ninjas do wrong to each other, and in dat way the force of tha earf' comes around da moon - and at that presence, da dirt, it overshadows the grass, so you're like, I can't cut dis grass, there's no sun comin' through. So in order to enable each other the two fruits have to look each other in da eye and understand we can only be right, as da ripe is wrong, you know what I mean?"

-HNIC
Quote  

#10
Posts: 831
Threads: 41
Thanks Received: 16
Thanks Given: 12
Joined: Nov 2009
Reputation: 18
Status
None
(10-13-2010, 10:46 AM)Poco Loco Wrote: actually the minimum letters 4 a character's name without it going over the menu is 8 or 9 (I think 9 but some1 else said 8)

but it can be fixed, Metroid Quest and the Pandora's Box team know how to go about it

but there is nothing wrong with sending them a PM and showing them what u got

MQ however does not seem to like to share his knowledge like that (I could be wrong but I just haven't seen it like that)

I saw that on Pandora's Box the actor names are up to 8-9 letters long:
http://www.youtube.com/watch?v=HYIUWCKGe...re=related

But in battle the names are cut off to 6 letters:
http://www.youtube.com/watch?v=lY7qfHaH_Hc

That should be interesting, I'll take a look at it in these days.
Poco, for the summon command in the improvement patch, if you go to the address

C2/4E49 00

and replace 00 by 02 you'll fix the aiming problems with the summon command (and it works properly). The only problem is that the command is enabled even when you have no espers equipped, I'm taking a second look at the fix lenophis made to make it compatible with the improvement patch.
Quote  



Forum Jump:

Users browsing this thread: 1 Guest(s)


Theme by Madsiur2017Custom Graphics by JamesWhite