• Welcome to Final Fantasy Hacktics. Please login or sign up.
 
March 28, 2024, 05:33:03 am

News:

Use of ePSXe before 2.0 is highly discouraged. Mednafen, RetroArch, and Duckstation are recommended for playing/testing, pSX is recommended for debugging.


FFT Patcher (.497)

Started by formerdeathcorps, May 14, 2011, 03:57:55 am

Glain

Strange. Textboxes should allow that by default. It works for me.
  • Modding version: Other/Unknown

MysticKnightFF5

No, in FFTPatcher itself, for the cloning and pasting, not for FFTactext.

formerdeathcorps

Can't you just right click on a selection and select copy difference / copy all?  I recall that working for spells and ENTDs.
The destruction of the will is the rape of the mind.
The dogmas of every era are nothing but the fantasies of those in power; their dreams are our waking nightmares.

Choto

I have a question about XML and the patcher resources files.

About the resource files, i know you can generate a resources.zip, and then edit the words contained in those files, but then what do you have to do to apply those changes to the patcher. Where does the patcher application look to display that information?

About XML, I was wondering how they work in general. All I know is that they follow a certain format and apply changes, but i have no clue actually what they are or how they're used in a general sense. I'm guessing they're used by the main program, be it patcher, fftorgasm, etc.?

Thanks!

MysticKnightFF5

You can, but did I say you couldn't? It's too slow to do that in masses.

Glain

April 15, 2012, 04:59:21 pm #105 Last Edit: April 15, 2012, 05:04:43 pm by Glain
I see what you mean now about copy/paste. For the record, it helps to be specific about these things.

I might be able to implement that... it comes down to trapping ctrl+c and ctrl+v and calling the appropriate copy/paste functions in the various tabs. Abilities have multiple paste options though... so I'd probably make ctrl+v be Paste All.

For the resource files, I believe all you have to do is re-zip your edits into Resources.zip and make sure it's in the same directory as the executable. FFTP looks for a Resources.zip in its main directory, and if it finds one, uses that instead of the standard naming.

XML is just a convenient format to represent data as a string of characters ("string" data type). Since it's a standard format, there are common functions already written that can be used by programs to parse XML and to return the data inside of it. There really isn't anything more to it than that. It's simply data. It's up to the program to use that data for something. FFTorgASM is set up to look at all *.xml files in a directory and load in everything in a <Patch> tag as a patch. It parses the tags to figure out what needs to be patched in the disc image and where.
  • Modding version: Other/Unknown

Choto

exactly what I was looking for, thanks much Glain!

Pickle Girl Fanboy

@Glain:
Could you add the ability to edit things that don't matter in the game, to FFTPatcher?  Like the unused ability data for R/S/M abilties, as well as HP and MP bonuses to Shields?

Because a lot of that stuff depends on hard-coded offsets (and tables), and as those offsets are discovered and documented, we gain the ability to trade R/S/M abilities for more Action abilities, and the ability to modify the mechanics of the abilities in hard-coded skillsets (such as Item, Charge, Jump, Throw, Draw Out, and Math Skill).

Glain

That data doesn't exist, as far as I'm aware. The ability bytes mean different things based on what kind of ability you're looking at. Some have less data than others. (See SA's Data Locations.txt)

FFTPatcher generally presents all the data it can pull in for a specific item, whether we know what it means or not. It wouldn't really know how to hide 'irrelevant' data.
  • Modding version: Other/Unknown

Pickle Girl Fanboy

I know that the HP and MP bonuses exist for shields, because someone talked about it, and about how you can edit them via hex editor.  I don't know about the rest - I simply assumed that the R/S/M and Item/Charge/Jump/Throw/Math Skill were the same.

If you can give me an address for where these things are in Battle.bin or SCUS, then I can check for myself.

Pride

80062eb8 - Item Data Start (12 bytes each)

   0x00 - Palette
   0x01 - Sprite ID
   0x02 - Required Level (for random generation)
   0x03: Type Flags
      0x80 - Weapon
      0x40 - Shield
      0x20 - Headgear
      0x10 - Armor
      0x08 - Accessory
      0x04 -
      0x02 - Rare
      0x01 -
   0x04 - Second Table ID
   0x05: Item Type
      01 - Knife
      02 - Ninja Blade
      03 - Sword
      04 - Knight Sword
      05 - Katana
      06 - Axe
      07 - Rod
      08 - Staff
      09 - Flail
      0a - Gun
      0b - Crossbow
      0c - Bow
      0d - Instrument
      0e - Book
      0f - Polearm
      10 - Pole
      11 - Bag
      12 - Cloth
      13 - Shield
      14 - Helmet
      15 - Hat
      16 - Hair Adornment
      17 - Armor
      18 - Clothing
      19 - Robe
      1a - Shoes
      1b - Armguard
      1c - Ring
      1d - Armlet
      1e - Cloak
      1f - Perfume
      20 - Throwing
      21 - Bomb
      22 - Chemist Item
   0x06 -
   0x07 - Item Attributes
   0x08 - Price
   0x0a - Shop Availability
   0x0b -

Correct me if I'm wrong, but I'm pretty sure bytes x06 and x0b are not found in the patcher?

Edit: You can search PGF but the data does not exist to give HP/MP bonus to shields.
The information above and below is the entire weapon data you can find, which after it starts the Inflict Status data. Minus -0xf800 to get to the SCUS offset.

80063ab8 - Weapon Secondary Data
   0x00 - Range
   0x01 - Attack Flags
      0x80 - Striking
      0x40 - Lunging
      0x20 - Direct
      0x10 - Arc
      0x08 - 2 Swords
      0x04 - 2 Hands
      0x02 - Throwable
      0x01 - Forced 2 Hands
   0x02 - Formula
   0x03 -
   0x04 - Weapon Power
   0x05 - Evade
   0x06: Element
      0x80 - Fire
      0x40 - Lightning
      0x20 - Ice
      0x10 - Wind
      0x08 - Earth
      0x04 - Water
      0x02 - Holy
      0x01 - Dark
   0x07 - Inflict Status/Cast Spell

80063eb8 - Shield Secondary Data
   0x00 - Physical Evade
   0x01 - Magical Evade

80063ed8 - Helm/Armor Secondary Data
   0x00 - HP Bonus
   0x01 - MP Bonus

80063f58 - Accessory Secondary Data
   0x00 - Physical Evade
   0x01 - Magical Evade

80063f98 - Item Secondary Data
   0x00 - Formula
   0x01 - Z value
   0x02 - Inflict Status ID
  • Modding version: PSX
Check out my ASM thread. Who doesn't like hax?

Pickle Girl Fanboy

April 16, 2012, 03:36:16 pm #111 Last Edit: April 16, 2012, 03:45:08 pm by Pickle Girl Fanboy
RAM to SCUS_942.21: Subtract 0xF800
RAM to BATTLE.BIN: Subtract 0x67000

I ssume that is SCUS_942.21, correct?

0x536B8 in SCUS, if correct.
341688 in decimal.

12 offsets
256 entries
3072 bytes total

341688 in decimal.  First byte.
344760 in decimal.  Last byte.

0x536B8
0x542B8

Wait a minute, why am I doing this when I can look up the Gameshark Handbook by Aerostar?

Pride

  • Modding version: PSX
Check out my ASM thread. Who doesn't like hax?

Pickle Girl Fanboy

-===============-
EQUIPMENT BYTES I
-===============-

Thanks to NeoKamek for figuring a lot of these out, especially the
graphics!

BASEADDR +0 :  palette \  Best to just look these up in the table to
BASEADDR +1 :  graphic /  get the custom palette and graphic you want.

BASEADDR +2 :  weapon power / predicted evade%
                again, each weapon has its own entry so you can just
                look in the table to mimic any weapon you want.

BASEADDR +3 :  equipment type graphic:
               01 = Dagger           12 = Cloth
               02 = Ninja Sword      13 = Shield
               03 = Sword            14 = Helmet
               04 = Knight Sword     15 = Hat
               05 = Katana           16 = Ribbon
               06 = Axe              17 = Armor
               07 = Rod              18 = Clothes
               08 = Staff            19 = Robe
               09 = Flail            1A = Shoes
               0A = Gun              1B = Gauntlet
               0B = Crossbow         1C = Ring
               0C = Bow              1D = Armlet
               0D = Harp             1E = Mantle
               0E = Dictionary       1F = Perfume
               0F = Spear            20 = Shuriken
               10 = Stick            21 = Ball
               11 = Bag              22 = Chemist item

BASEADDR +4 :  identification number

BASEADDR +5 :  type of equipment (same digits as BASEADDR +3)

BASEADDR +6 :  always 0

BASEADDR +7 :  extra effects (again, just look in the table
               at the item whose effect you want to mimic)
               Some new ones discovered by NeoKamek:
               73 = Move +1, Jump +2
               84 = Move +2, Jump +9, PA +92
               85 = Move +2, Jump +3
               89 = Move +6, Jump +7, PA +92
               8F = Move +0
               91 = Move +8

BASEADDR +8 :  price, low byte
BASEADDR +9 :  price, high byte

BASEADDR +A :  when enemies start to carry the item
               01 - 0E = at progressive points through the game
               14 = never

BASEADDR +B :  always 0


(weapons I)

  BASEADDR   +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B
+------------------------------------------------+-----------------+
| 30062EB8 | 00 00 00 80 00 00 00 00 00 00 00 00 | <BLANK>         |
+----------+-------------------------------------+-----------------+
| 30062EC4 | 00 01 01 80 01 01 00 00 64 00 01 00 | Dagger          |
| 30062ED0 | 00 02 03 80 02 01 00 00 F4 01 02 00 | Mythril Knife   |
| 30062EDC | 00 04 07 80 03 01 00 00 20 03 03 00 | Blind Knife     |
| 30062EE8 | 02 06 0B 80 04 01 00 00 DC 05 04 00 | Mage Masher     |
| 30062EF4 | 04 01 0E 80 05 01 00 00 08 07 06 00 | Platina Dagger  |
| 30062F00 | 00 03 15 80 06 01 00 00 B8 0B 0A 00 | Main Gauche     |
| 30062F0C | 04 05 19 80 07 01 00 00 A0 0F 0B 00 | Orichalcum      |
| 30062F18 | 00 06 1D 80 08 01 00 00 88 13 0C 00 | Assassin Dagger |
| 30062F24 | 04 02 21 80 09 01 00 00 40 1F 0E 00 | Air Knife       |
| 30062F30 | 02 04 5F 82 0A 01 00 00 E0 2E 14 00 | Zorlin Shape    |
+----------+-------------------------------------+-----------------+
| 30062F3C | 00 07 0A 80 0B 02 00 00 B8 0B 09 00 | Hidden Knife    |
| 30062F48 | 00 09 0D 80 0C 02 00 00 88 13 0A 00 | Ninja Knife     |
| 30062F54 | 00 08 0F 80 0D 02 00 00 58 1B 0B 00 | Short Edge      |
| 30062F60 | 02 07 16 80 0E 02 00 00 10 27 0C 00 | Ninja Edge      |
| 30062F6C | 04 08 1B 80 0F 02 00 00 80 3E 0D 00 | Spell Edge      |
| 30062F78 | 04 07 5F 82 10 02 00 00 0A 00 14 00 | Sasuke Knife    |
| 30062F84 | 0D 0A 60 82 11 02 00 00 0A 00 14 00 | Iga Knife       |
| 30062F90 | 0B 0B 60 82 12 02 00 00 0A 00 14 00 | Koga Knife      |
+----------+-------------------------------------+-----------------+
| 30062F9C | 00 0C 01 80 13 03 00 00 C8 00 01 00 | Broad Sword     |
| 30062FA8 | 00 0D 04 80 14 03 00 00 F4 01 02 00 | Long Sword      |
| 30062FB4 | 02 0E 07 80 15 03 00 00 84 03 03 00 | Iron Sword      |
| 30062FC0 | 02 0F 09 80 16 03 00 00 40 06 04 00 | Mythril Sword   |
| 30062FCC | 03 0E 0C 82 17 03 00 00 C4 09 05 00 | Blood Sword     |
| 30062FD8 | 01 10 0F 80 18 03 00 00 E4 0C 06 00 | Coral Sword     |
| 30062FE4 | 03 0F 15 80 19 03 00 00 88 13 09 00 | Ancient Sword   |
| 30062FF0 | 04 0C 17 80 1A 03 00 00 88 13 0A 00 | Sleep Sword     |
| 30062FFC | 04 11 1C 80 1B 03 00 00 F8 2A 0C 00 | Platinum Sword  |
| 30063008 | 00 12 1A 80 1C 03 00 00 40 1F 0B 00 | Diamond Sword   |
| 30063014 | 01 0D 22 80 1D 03 00 00 B0 36 0D 00 | Ice Brand       |
| 30063020 | 04 13 25 80 1E 03 00 01 20 4E 0E 00 | Rune Blade      |
| 3006302C | 03 14 5F 82 1F 03 00 00 0A 00 14 00 | Nagrarock       |
| 30063038 | 01 15 60 82 20 03 00 00 0A 00 14 00 | Materia Blade   |
+----------+-------------------------------------+-----------------+
| 30063044 | 03 16 5C 82 21 04 00 00 40 9C 14 00 | Defender        |
| 30063050 | 00 17 5F 82 22 04 00 02 0A 00 14 00 | Save the Queen  |
| 3006305C | 03 18 60 82 23 04 00 03 0A 00 14 00 | Excalibur       |
| 30063068 | 04 19 61 82 24 04 00 04 0A 00 14 00 | Ragnarok        |
| 30063074 | 04 16 62 82 25 04 00 05 0A 00 14 00 | Chaos Blade     |
+----------+-------------------------------------+-----------------+
| 30063080 | 00 1A 09 80 26 05 00 00 40 06 07 00 | Asura Knife     |
| 3006308C | 01 1B 0C 80 27 05 00 00 B8 0B 07 00 | Koutetsu Knife  |
| 30063098 | 01 1C 0F 80 28 05 00 00 88 13 08 00 | Bizen Boat      |
| 300630A4 | 04 1A 15 80 29 05 00 00 58 1B 09 00 | Murasame        |
| 300630B0 | 04 1D 18 80 2A 05 00 00 40 1F 0A 00 | Heaven's Cloud  |
| 300630BC | 05 1C 1B 80 2B 05 00 00 10 27 0C 00 | Kiyomori        |
| 300630C8 | 03 1E 1E 80 2C 05 00 00 98 3A 0D 00 | Muramasa        |
| 300630D4 | 05 1F 21 80 2D 05 00 00 F0 55 0E 00 | Kikuichimoji    |
| 300630E0 | 05 1B 5F 82 2E 05 00 00 0A 00 14 00 | Masamune        |
| 300630EC | 03 1A 60 82 2F 05 00 00 0A 00 14 00 | Chirijiraden    |
+----------+-------------------------------------+-----------------+
| 300630F8 | 00 20 04 80 30 06 00 00 DC 05 04 00 | Battle Axe      |
| 30063104 | 0F 21 0C 80 31 06 00 00 A0 0F 07 00 | Giant Axe       |
| 30063110 | 05 22 1F 80 32 06 00 00 E0 2E 0A 00 | Slasher         |
+----------+-------------------------------------+-----------------+
| 3006311C | 05 23 01 80 33 07 00 00 C8 00 01 00 | Rod             |
| 30063128 | 02 25 05 80 34 07 00 06 90 01 03 00 | Thunder Rod     |
| 30063134 | 06 24 05 80 35 07 00 07 90 01 03 00 | Flame Rod       |
| 30063140 | 01 25 05 80 36 07 00 08 90 01 03 00 | Ice Rod         |
| 3006314C | 06 24 0C 80 37 07 00 00 F4 01 06 00 | Poison Rod      |
| 30063158 | 00 26 17 80 38 07 00 09 40 1F 0B 00 | Wizard Rod      |
| 30063164 | 07 24 5F 82 39 07 00 00 E0 2E 14 00 | Dragon Rod      |
| 30063170 | 03 25 60 82 3A 07 00 49 0A 00 14 00 | Faith Rod       |
+----------+-------------------------------------+-----------------+
| 3006317C | 03 27 01 80 3B 08 00 00 78 00 01 00 | Oak Staff       |
| 30063188 | 02 27 05 80 3C 08 00 00 20 03 03 00 | White Staff     |
| 30063194 | 00 28 09 82 3D 08 00 00 A0 0F 04 00 | Healing Staff   |
| 300631A0 | 01 27 0C 80 3E 08 00 00 98 08 06 00 | Rainbow Staff   |
| 300631AC | 03 29 0F 80 3F 08 00 0A A0 0F 08 00 | Wizard Staff    |
| 300631B8 | 02 29 18 80 40 08 00 00 58 1B 0B 00 | Gold Staff      |
| 300631C4 | 00 2A 5F 82 41 08 00 0B 0A 00 14 00 | Mace of Zeus    |
| 300631D0 | 02 2A 60 82 42 08 00 00 0A 00 14 00 | Sage Staff      |
+----------+-------------------------------------+-----------------+
| 300631DC | 02 2B 0A 80 43 09 00 00 B0 04 08 00 | Flail           |
| 300631E8 | 01 2B 14 80 44 09 00 00 A0 0F 0A 00 | Flame Whip      |
| 300631F4 | 00 2B 20 80 45 09 00 00 28 23 0C 00 | Morning Star    |
| 30063200 | 03 2B 5A 82 46 09 00 00 40 9C 14 00 | Scorpion Tail   |
+----------+-------------------------------------+-----------------+
| 3006320C | 05 2C 0B 82 47 0A 00 00 88 13 07 00 | Romanda Gun     |
| 30063218 | 07 2C 0F 82 48 0A 00 00 98 3A 0A 00 | Mythril Gun     |
| 30063224 | 00 2D 5F 82 49 0A 00 48 0A 00 14 00 | Stone Gun       |
| 30063230 | 03 2E 5B 82 4A 0A 00 00 0A 00 14 00 | Blaze Gun       |
| 3006323C | 05 2E 5C 82 4B 0A 00 00 0A 00 14 00 | Glacier Gun     |
| 30063248 | 07 2E 5D 82 4C 0A 00 00 0A 00 14 00 | Blast Gun       |
+----------+-------------------------------------+-----------------+
| 30063254 | 03 2F 01 80 4D 0B 00 00 90 01 01 00 | Bow Gun         |
| 30063260 | 01 2F 05 82 4E 0B 00 00 DC 05 04 00 | Night Killer    |
| 3006326C | 07 2F 0B 80 4F 0B 00 00 D0 07 07 00 | Cross Bow       |
| 30063278 | 06 30 0E 80 50 0B 00 00 A0 0F 09 00 | Poison Bow      |
| 30063284 | 07 30 18 80 51 0B 00 00 40 1F 0B 00 | Hunting Bow     |
| 30063290 | 02 30 21 82 52 0B 00 00 20 4E 0E 00 | Gastrafitis     |
+----------+-------------------------------------+-----------------+
| 3006329C | 03 31 02 80 53 0C 00 00 20 03 03 00 | Long Bow        |
| 300632A8 | 02 31 06 80 54 0C 00 00 DC 05 04 00 | Silver Bow      |
| 300632B4 | 05 31 0B 80 55 0C 00 00 D0 07 05 00 | Ice Bow         |
| 300632C0 | 00 32 0F 80 56 0C 00 00 B8 0B 07 00 | Lightning Bow   |
| 300632CC | 07 31 1B 80 57 0C 00 00 40 1F 0B 00 | Windslash Bow   |
| 300632D8 | 07 33 14 80 58 0C 00 00 88 13 09 00 | Mythril Bow     |
| 300632E4 | 01 33 25 80 59 0C 00 00 F0 55 0E 00 | Ultimus Bow     |
| 300632F0 | 03 34 34 82 5A 0C 00 00 0A 00 14 00 | Yoichi Bow      |
| 300632FC | 05 35 35 82 5B 0C 00 00 0A 00 14 00 | Perseus Bow     |
+----------+-------------------------------------+-----------------+
| 30063308 | 03 36 0D 80 5C 0D 00 00 88 13 07 00 | Ramia Harp      |
| 30063314 | 06 36 19 80 5D 0D 00 00 10 27 0B 00 | Bloody Strings  |
| 30063320 | 02 36 24 82 5E 0D 00 00 30 75 14 00 | Fairy Harp      |
+----------+-------------------------------------+-----------------+
| 3006332C | 02 37 0D 80 5F 0E 00 00 B8 0B 07 00 | Battle Dict     |
| 30063338 | 07 37 17 80 60 0E 00 00 70 17 0A 00 | Monster Dict    |
| 30063344 | 05 37 22 80 61 0E 00 00 10 27 0B 00 | Papyrus Plate   |
| 30063350 | 03 37 5F 82 62 0E 00 00 30 75 14 00 | Madlemgen       |
+----------+-------------------------------------+-----------------+
| 3006335C | 02 38 0C 80 63 0F 00 00 E8 03 05 00 | Javelin         |
| 30063368 | 01 3B 10 80 64 0F 00 00 D0 07 07 00 | Spear           |
| 30063374 | 04 39 15 80 65 0F 00 00 94 11 09 00 | Mythril Spear   |
| 30063380 | 07 3B 19 80 66 0F 00 00 58 1B 0B 00 | Partisan        |
| 3006338C | 04 3A 1D 80 67 0F 00 00 10 27 0E 00 | Oberisk         |
| 30063398 | 02 3C 5F 82 68 0F 00 00 A0 8C 14 00 | Holy Lance      |
| 300633A4 | 05 38 60 82 69 0F 00 00 E0 AB 14 00 | Dragon Whisker  |
| 300633B0 | 06 3C 61 82 6A 0F 00 00 E8 03 14 00 | Javelin         |
+----------+-------------------------------------+-----------------+
| 300633BC | 00 3D 09 80 6B 10 00 00 E8 03 06 00 | Cypress Rod     |
| 300633C8 | 07 3E 0D 80 6C 10 00 00 78 05 07 00 | Battle Bamboo   |
| 300633D4 | 02 3D 15 80 6D 10 00 00 60 09 09 00 | Musk Rod        |
| 300633E0 | 01 3E 18 80 6E 10 00 00 A0 0F 0A 00 | Iron Fan        |
| 300633EC | 03 3F 1B 80 6F 10 00 00 4C 1D 0B 00 | Gokuu Rod       |
| 300633F8 | 06 40 5F 82 70 10 00 00 10 27 14 00 | Ivory Rod       |
| 30063404 | 00 3F 28 80 71 10 00 00 20 4E 0E 00 | Octagon Rod     |
| 30063410 | 03 41 60 82 72 10 00 00 88 90 14 00 | Whale Whisker   |
+----------+-------------------------------------+-----------------+
| 3006341C | 02 42 50 82 73 11 00 0C 08 CF 09 00 | C Bag           |
| 30063428 | 07 42 51 82 74 11 00 00 60 EA 14 00 | FS Bag          |
| 30063434 | 05 42 52 82 75 11 00 0D 20 CB 0B 00 | P Bag           |
| 30063440 | 01 42 53 82 76 11 00 0E 90 E2 0E 00 | H Bag           |
+----------+-------------------------------------+-----------------+
| 3006344C | 05 43 18 80 77 12 00 00 58 1B 0A 00 | Persia          |
| 30063458 | 07 44 1D 80 78 12 00 00 98 3A 0C 00 | Cashmere        |
| 30063464 | 06 43 5F 82 79 12 00 00 40 9C 14 00 | Ryozan Silk     |
+----------+-------------------------------------+-----------------+
| 30063470 | 00 45 01 80 7A 20 00 00 32 00 05 00 | Shuriken        |
| 3006347C | 03 45 12 80 7B 20 00 00 2C 01 0A 00 | Magic Shuriken  |
| 30063488 | 01 45 21 80 7C 20 00 00 E8 03 0D 00 | Yagyu Darkness  |
+----------+-------------------------------------+-----------------+
| 30063494 | 03 46 01 80 7D 21 00 00 FA 00 07 00 | Fire Ball       |
| 300634A0 | 05 46 12 80 7E 21 00 00 FA 00 07 00 | Water Ball      |
| 300634AC | 02 46 1D 80 7F 21 00 00 FA 00 07 00 | Lightning Ball  |
+----------+-------------------------------------+-----------------+


(shields I)

  BASEADDR   +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B
+----------+-------------------------------------+-----------------+
| 300634B8 | 00 47 01 40 00 13 00 00 90 01 01 00 | Escutcheon      |
| 300634C4 | 02 4C 03 40 01 13 00 00 BC 02 03 00 | Buckler         |
| 300634D0 | 01 48 06 40 02 13 00 00 B0 04 04 00 | Bronze Shield   |
| 300634DC | 07 4C 09 40 03 13 00 00 40 06 05 00 | Round Shield    |
| 300634E8 | 05 4A 0C 40 04 13 00 00 C4 09 06 00 | Mythril Shield  |
| 300634F4 | 00 4E 0F 40 05 13 00 00 AC 0D 07 00 | Gold Shield     |
| 30063500 | 01 49 16 40 06 13 00 0F 70 17 09 00 | Ice Shield      |
| 3006350C | 03 4F 16 40 07 13 00 10 64 19 09 00 | Flame Shield    |
| 30063518 | 03 49 16 40 08 13 00 11 10 27 0A 00 | Aegis Shield    |
| 30063524 | 05 4D 19 40 09 13 00 00 E0 2E 0B 00 | Diamond Shield  |
| 30063530 | 01 4A 1D 40 0A 13 00 00 80 3E 0D 00 | Platina Shield  |
| 3006353C | 01 4D 24 40 0B 13 00 00 08 52 0E 00 | Crystal Shield  |
| 30063548 | 05 49 24 42 0C 13 00 00 0A 00 14 00 | Genji Shield    |
| 30063554 | 01 4C 27 42 0D 13 00 12 0A 00 14 00 | Kaiser Plate    |
| 30063560 | 03 4B 28 42 0E 13 00 13 0A 00 14 00 | Venetian Shield |
| 3006356C | 07 4E 32 42 0F 13 00 00 90 01 14 00 | Escutcheon      |
+----------+-------------------------------------+-----------------+


(armor I)

  BASEADDR   +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B
+----------+-------------------------------------+-----------------+
| 30063578 | 00 50 01 20 00 14 00 00 C8 00 01 00 | Leather Helmet  |
| 30063584 | 0D 51 04 20 01 14 00 00 F4 01 02 00 | Bronze Helmet   |
| 30063590 | 09 51 07 20 02 14 00 00 E8 03 03 00 | Iron Helmet     |
| 3006359C | 0B 52 09 20 03 14 00 00 DC 05 05 00 | Barbuta         |
| 300635A8 | 0A 53 0C 20 04 14 00 00 34 08 06 00 | Mythril Helmet  |
| 300635B4 | 00 53 0F 20 05 14 00 00 F0 0A 07 00 | Gold Helmet     |
| 300635C0 | 0D 54 11 20 06 14 00 00 A0 0F 08 00 | Cross Helmet    |
| 300635CC | 0C 55 16 20 07 14 00 00 70 17 0A 00 | Diamond Helmet  |
| 300635D8 | 0A 56 19 20 08 14 00 00 40 1F 0C 00 | Platina Helmet  |
| 300635E4 | 0B 57 1D 20 09 14 00 00 10 27 0C 00 | Circlet         |
| 300635F0 | 09 55 1B 20 0A 14 00 00 B0 36 0E 00 | Crystal Helmet  |
| 300635FC | 0C 58 24 22 0B 14 00 00 0A 00 14 00 | Genji Helmet    |
| 30063608 | 09 59 28 22 0C 14 00 14 0A 00 14 00 | Grand Helmet    |
+----------+-------------------------------------+-----------------+
| 30063614 | 0B 5A 01 20 0D 15 00 00 96 00 01 00 | Leather Hat     |
| 30063620 | 0D 5B 04 20 0E 15 00 00 5E 01 02 00 | Feather Hat     |
| 3006362C | 0C 5C 07 20 0F 15 00 00 20 03 03 00 | Red Hood        |
| 30063638 | 0A 5D 0A 20 10 15 00 15 B0 04 05 00 | Headgear        |
| 30063644 | 0C 5E 0D 20 11 15 00 16 08 07 06 00 | Triangle Hat    |
| 30063650 | 0B 5F 10 20 12 15 00 17 B8 0B 07 00 | Green Beret     |
| 3006365C | 02 60 15 20 13 15 00 18 88 13 09 00 | Twist Headband  |
| 30063668 | 0B 61 18 20 14 15 00 19 70 17 0A 00 | Holy Miter      |
| 30063674 | 0F 5C 1B 20 15 15 00 00 58 1B 0B 00 | Black Hood      |
| 30063680 | 0B 62 20 20 16 15 00 1A E0 2E 0C 00 | Golden Hairpin  |
| 3006368C | 0D 63 26 20 17 15 00 1B 80 3E 0E 00 | Flash Hat       |
| 30063698 | 09 5F 2E 20 18 15 00 1C B8 88 0F 00 | Thief Hat       |
+----------+-------------------------------------+-----------------+
| 300636A4 | 0B 64 32 22 19 16 00 45 20 4E 14 00 | Cachusha        |
| 300636B0 | 0C 65 33 22 1A 16 00 46 20 4E 14 00 | Barette         |
| 300636BC | 0B 66 34 22 1B 16 00 47 60 EA 14 00 | Ribbon          |
+----------+-------------------------------------+-----------------+
| 300636C8 | 00 6A 01 10 1C 17 00 00 C8 00 01 00 | Leather Armor   |
| 300636D4 | 0B 6B 04 10 1D 17 00 00 58 02 02 00 | Linen Cuirass   |
| 300636E0 | 0E 67 06 10 1E 17 00 00 20 03 03 00 | Bronze Armor    |
| 300636EC | 03 6C 08 10 1F 17 00 00 14 05 04 00 | Chain Mail      |
| 300636F8 | 09 67 0B 10 20 17 00 00 D0 07 05 00 | Mythril Armor   |
| 30063704 | 00 68 0E 10 21 17 00 00 B8 0B 06 00 | Plate Mail      |
| 30063710 | 02 68 11 10 22 17 00 00 10 0E 07 00 | Gold Armor      |
| 3006371C | 0A 69 16 10 23 17 00 00 70 17 0A 00 | Diamond Armor   |
| 30063728 | 08 6D 1A 10 24 17 00 00 28 23 0C 00 | Platina Armor   |
| 30063734 | 08 6E 1E 10 25 17 00 00 C8 32 0D 00 | Carabini Mail   |
| 30063740 | 05 69 25 10 26 17 00 00 38 4A 0E 00 | Crystal Mail    |
| 3006374C | 03 6F 25 12 27 17 00 00 0A 00 14 00 | Genji Armor     |
| 30063758 | 03 70 27 12 28 17 00 1D 50 46 0E 00 | Reflect Mail    |
| 30063764 | 0D 71 2D 12 29 17 00 00 0A 00 14 00 | Maximillian     |
+----------+-------------------------------------+-----------------+
| 30063770 | 06 74 01 10 2A 18 00 00 96 00 01 00 | Clothes         |
| 3006377C | 03 75 03 10 2B 18 00 00 2C 01 02 00 | Leather Outfit  |
| 30063788 | 02 76 05 10 2C 18 00 00 F4 01 03 00 | Leather Vest    |
| 30063794 | 06 77 07 10 2D 18 00 00 84 03 04 00 | Chain Vest      |
| 300637A0 | 04 73 0A 10 2E 18 00 00 DC 05 05 00 | Mythril Vest    |
| 300637AC | 0B 73 0C 10 2F 18 00 00 40 06 06 00 | Adaman Vest     |
| 300637B8 | 03 78 0E 10 30 18 00 00 6C 07 07 00 | Wizard Outfit   |
| 300637C4 | 01 79 11 10 31 18 00 00 C4 09 08 00 | Brigandine      |
| 300637D0 | 00 7A 15 10 32 18 00 1E A0 0F 0A 00 | Judo Outfit     |
| 300637DC | 03 7B 19 10 33 18 00 1F 58 1B 0B 00 | Power Sleeve    |
| 300637E8 | 0B 7C 1D 10 34 18 00 20 10 27 0D 00 | Earth Clothes   |
| 300637F4 | 03 72 23 12 35 18 00 21 0A 00 14 00 | Secret Clothes  |
| 30063800 | 0B 72 25 10 36 18 00 22 E0 2E 0E 00 | Black Costume   |
| 3006380C | 03 7D 32 12 37 18 00 23 80 BB 14 00 | Rubber Costume  |
+----------+-------------------------------------+-----------------+
| 30063818 | 06 7E 03 10 38 19 00 00 B0 04 03 00 | Linen Robe      |
| 30063824 | 01 7E 05 10 39 19 00 00 60 09 04 00 | Silk Robe       |
| 30063830 | 0B 7F 0B 10 3A 19 00 24 A0 0F 07 00 | Wizard Robe     |
| 3006383C | 0B 80 10 12 3B 19 00 25 88 13 0A 00 | Chameleon Robe  |
| 30063848 | 0C 81 1A 10 3C 19 00 26 28 23 0B 00 | White Robe      |
| 30063854 | 0C 82 1F 10 3D 19 00 27 C8 32 0C 00 | Black Robe      |
| 30063860 | 0D 83 26 10 3E 19 00 28 30 75 0E 00 | Light Robe      |
| 3006386C | 0D 7F 2D 12 3F 19 00 29 0A 00 14 00 | Robe of Lords   |
+----------+-------------------------------------+-----------------+


(accessories I)

  BASEADDR   +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B
+----------+-------------------------------------+-----------------+
| 30063878 | 00 84 0A 08 00 1A 00 2A E8 03 02 00 | Battle Boots    |
| 30063884 | 00 85 14 08 01 1A 00 2B B0 04 05 00 | Spike Shoes     |
| 30063890 | 01 86 1E 08 02 1A 00 2C 88 13 0A 00 | Germinas Boots  |
| 3006389C | 01 87 05 0A 03 1A 00 2D DC 05 07 00 | Rubber Shoes    |
| 300638A8 | 02 88 32 0A 04 1A 00 2E C4 09 09 00 | Feather Boots   |
| 300638B4 | 05 89 1E 0A 05 1A 00 2F 58 1B 0C 00 | Sprint Shoes    |
| 300638C0 | 03 8A 28 0A 06 1A 00 30 10 27 0E 00 | Red Shoes       |
+----------+-------------------------------------+-----------------+
| 300638CC | 00 8B 14 08 07 1B 00 31 88 13 06 00 | Power Wrist     |
| 300638D8 | 03 8C 32 0A 08 1B 00 32 0A 00 14 00 | Genji Gauntlet  |
| 300638E4 | 03 8D 23 08 09 1B 00 33 20 4E 09 00 | Magic Gauntlet  |
| 300638F0 | 04 8E 3C 08 0A 1B 00 34 50 C3 0C 00 | Bracer          |
+----------+-------------------------------------+-----------------+
| 300638FC | 00 8F 32 0A 0B 1C 00 35 10 27 09 00 | Reflect Ring    |
| 30063908 | 06 8F 19 08 0C 1C 00 36 88 13 07 00 | Defense Ring    |
| 30063914 | 00 90 19 08 0D 1C 00 37 10 27 0B 00 | Magic Ring      |
| 30063920 | 04 90 05 0A 0E 1C 00 38 0A 00 14 00 | Cursed Ring     |
| 3006392C | 08 91 19 0A 0F 1C 00 39 20 4E 0D 00 | Angel Ring      |
+----------+-------------------------------------+-----------------+
| 30063938 | 04 92 1A 08 10 1D 00 3A 88 13 08 00 | Diamond Armlet  |
| 30063944 | 0B 93 19 08 11 1D 00 3B 10 27 0A 00 | Jade Armlet     |
| 30063950 | 00 94 19 08 12 1D 00 3C 98 3A 0B 00 | 108 Gems        |
| 3006395C | 0B 95 19 08 13 1D 00 3D 10 27 09 00 | N-Kai Armlet    |
| 30063968 | 06 96 19 08 14 1D 00 3E 58 1B 07 00 | Defense Armlet  |
+----------+-------------------------------------+-----------------+
| 30063974 | 09 97 0A 08 15 1E 00 00 2C 01 03 00 | Small Mantle    |
| 30063980 | 0E 98 14 08 16 1E 00 00 20 03 05 00 | Leather Mantle  |
| 3006398C | 0D 99 1E 08 17 1E 00 3F D0 07 07 00 | Wizard Mantle   |
| 30063998 | 0B 9A 28 08 18 1E 00 00 40 1F 0A 00 | Elf Mantle      |
| 300639A4 | 0E 9B 31 08 19 1E 00 00 98 3A 0C 00 | Dracula Mantle  |
| 300639B0 | 0D 9C 32 08 1A 1E 00 00 20 4E 0E 00 | Feather Mantle  |
| 300639BC | 0E 9D 05 0A 1B 1E 00 40 0A 00 14 00 | Vanish Mantle   |
+----------+-------------------------------------+-----------------+
| 300639C8 | 0B 9E 05 0A 1C 1F 00 41 60 EA 14 00 | Chantage        |
| 300639D4 | 0D 9F 05 0A 1D 1F 00 42 60 EA 14 00 | Cherche         |
| 300639E0 | 02 A0 05 0A 1E 1F 00 43 60 EA 14 00 | Setiemson       |
| 300639EC | 08 A1 05 0A 1F 1F 00 44 60 EA 14 00 | Salty Rage      |
+----------+-------------------------------------+-----------------+


(items I)

  BASEADDR   +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B
+----------+-------------------------------------+-----------------+
| 300639F8 | 0D A2 01 02 00 22 00 00 32 00 01 00 | Potion          |
| 30063A04 | 0D B0 02 02 01 22 00 00 C8 00 03 00 | Hi-Potion       |
| 30063A10 | 0D B1 03 02 02 22 00 00 BC 02 09 00 | X-Potion        |
| 30063A1C | 0B A5 04 02 03 22 00 00 C8 00 07 00 | Ether           |
| 30063A28 | 0B A6 05 02 04 22 00 00 58 02 0B 00 | Hi-Ether        |
| 30063A34 | 0B A7 0E 02 0D 22 00 00 0A 00 14 00 | Elixir          |
| 30063A40 | 0C A8 06 02 05 22 00 00 32 00 01 00 | Antidote        |
| 30063A4C | 0E A9 07 02 06 22 00 00 32 00 01 00 | Eye Drop        |
| 30063A58 | 0B AA 08 02 07 22 00 00 32 00 02 00 | Echo Grass      |
| 30063A64 | 09 AB 09 02 08 22 00 00 32 00 02 00 | Maiden's Kiss   |
| 30063A70 | 0D AC 0A 02 09 22 00 00 64 00 02 00 | Soft            |
| 30063A7C | 09 AD 0B 02 0A 22 00 00 D0 07 05 00 | Holy Water      |
| 30063A88 | 0B AE 0C 02 0B 22 00 00 5E 01 07 00 | Remedy          |
| 30063A94 | 0E AF 0D 02 0C 22 00 00 2C 01 01 00 | Phoenix Down    |
+----------+-------------------------------------+-----------------+
| 30063AA0 | 00 00 00 02 00 00 00 00 00 00 00 00 | <BLANK>         |
| 30063AAC | 00 00 00 02 00 00 00 00 00 00 00 00 | <BLANK>         |
+----------+-------------------------------------+-----------------+


-=============-
SHIELD BYTES II
-=============-

BASEADDR +1 : Physical S-Evade
BASEADDR +2 : Magical S-Evade

  BASEADDR   +0 +1
+----------+-------+-----------------+
| 30063EB8 | 0A 03 | Escutcheon      |
| 30063EBA | 0D 03 | Buckler         |
| 30063EBC | 10 00 | Bronze Shield   |
| 30063EBE | 13 00 | Round Shield    |
| 30063EC0 | 16 05 | Mythril Shield  |
| 30063EC2 | 19 00 | Gold Shield     |
| 30063EC4 | 1C 00 | Ice Shield      |
| 30063EC6 | 1F 00 | Flame Shield    |
| 30063EC8 | 0A 32 | Aegis Shield    |
| 30063ECA | 22 0F | Diamond Shield  |
| 30063ECC | 25 0A | Platina Shield  |
| 30063ECE | 28 0F | Crystal Shield  |
| 30063ED0 | 2B 00 | Genji Shield    |
| 30063ED2 | 2E 14 | Kaiser Plate    |
| 30063ED4 | 32 19 | Venetian Shield |
| 30063ED6 | 4B 32 | Escutcheon      |
+----------+-------+-----------------+


-============-
ARMOR BYTES II
-============-

BASEADDR +0 :  HP to add
BASEADDR +1 :  MP to add

  BASEADDR   +0 +1
+----------+-------+-----------------+
| 30063ED8 | 0A 00 | Leather Helmet  |
| 30063EDA | 14 00 | Bronze Helmet   |
| 30063EDC | 1E 00 | Iron Helmet     |
| 30063EDE | 28 00 | Barbuta         |
| 30063EE0 | 32 00 | Mythril Helmet  |
| 30063EE2 | 3C 00 | Gold Helmet     |
| 30063EE4 | 46 00 | Cross Helmet    |
| 30063EE6 | 50 00 | Diamond Helmet  |
| 30063EE8 | 5A 00 | Platina Helmet  |
| 30063EEA | 64 00 | Circlet         |
| 30063EEC | 78 00 | Crystal Helmet  |
| 30063EEE | 82 00 | Genji Helmet    |
| 30063EF0 | 96 00 | Grand Helmet    |
+----------+-------+-----------------+
| 30063EF2 | 08 00 | Leather Hat     |
| 30063EF4 | 10 05 | Feather Hat     |
| 30063EF6 | 18 08 | Red Hood        |
| 30063EF8 | 20 00 | Headgear        |
| 30063EFA | 28 0C | Triangle Hat    |
| 30063EFC | 30 00 | Green Beret     |
| 30063EFE | 38 00 | Twist Headband  |
| 30063F00 | 40 14 | Holy Miter      |
| 30063F02 | 48 00 | Black Hood      |
| 30063F04 | 50 32 | Golden Hairpin  |
| 30063F06 | 58 0F | Flash Hat       |
| 30063F08 | 64 00 | Thief Hat       |
+----------+-------+-----------------+
| 30063F0A | 14 00 | Cachusha        |
| 30063F0C | 14 00 | Barette         |
| 30063F0E | 0A 00 | Ribbon          |
+----------+-------+-----------------+
| 30063F10 | 0A 00 | Leather Armor   |
| 30063F12 | 14 00 | Linen Cuirass   |
| 30063F14 | 1E 00 | Bronze Armor    |
| 30063F16 | 28 00 | Chain Mail      |
| 30063F18 | 32 00 | Mythril Armor   |
| 30063F1A | 3C 00 | Plate Mail      |
| 30063F1C | 46 00 | Gold Armor      |
| 30063F1E | 50 00 | Diamond Armor   |
| 30063F20 | 5A 00 | Platina Armor   |
| 30063F22 | 64 00 | Carabini Mail   |
| 30063F24 | 6E 00 | Crystal Mail    |
| 30063F26 | 96 00 | Genji Armor     |
| 30063F28 | 82 00 | Reflect Mail    |
| 30063F2A | C8 00 | Maximillian     |
+----------+-------+-----------------+
| 30063F2C | 05 00 | Clothes         |
| 30063F2E | 0A 00 | Leather Outfit  |
| 30063F30 | 12 00 | Leather Vest    |
| 30063F32 | 18 00 | Chain Vest      |
| 30063F34 | 1E 00 | Mythril Vest    |
| 30063F36 | 24 00 | Adaman Vest     |
| 30063F38 | 2A 0F | Wizard Outfit   |
| 30063F3A | 32 00 | Brigandine      |
| 30063F3C | 3C 00 | Judo Outfit     |
| 30063F3E | 46 00 | Power Sleeve    |
| 30063F40 | 55 0A | Earth Clothes   |
| 30063F42 | 14 00 | Secret Clothes  |
| 30063F44 | 64 00 | Black Costume   |
| 30063F46 | 96 1E | Rubber Costume  |
+----------+-------+-----------------+
| 30063F48 | 0A 0A | Linen Robe      |
| 30063F4A | 14 10 | Silk Robe       |
| 30063F4C | 1E 16 | Wizard Robe     |
| 30063F4E | 28 1C | Chameleon Robe  |
| 30063F50 | 32 22 | White Robe      |
| 30063F52 | 3C 1E | Black Robe      |
| 30063F54 | 4B 32 | Light Robe      |
| 30063F56 | 64 50 | Robe of Lords   |
+----------+-------+-----------------+]


Looks like I was wrong about shields boosting HP and MP.

Glain

Pride, I think you're right about the 7th and 12th bytes in the item data... they're not in FFTP. Although those bytes always seem to be zero anyway, it seems that there is indeed some data not in FFTP...

...but the data PGF's talking about really doesn't exist. I just checked the ability data and found...

0x5fbf0 - Ability data 2 (normal abilities)
0x61010 - Item ability data

After the item data are data for other abilities (such as R/S/M, which have only one byte). That means that the abilities that have the "full" information are the ones between 0x5fbf0 and 0x61010. That section is 14 (0x0E) bytes per ability.

Byte length = 0x61010 - 0x5fbf0 = 0x1420 bytes
Number of abilities in section = 0x1420 / 0x0E = 0x170 abilities

That's exactly the number of abilities that have the "full" data in FFTP (0x000 Attack - 0x16F Frog Attack). That section isn't big enough to store any more. So... R/S/M doesn't have that data.
  • Modding version: Other/Unknown

Pride

Would it be difficult to add those two bytes in the patcher? Always 0 but its nice to have something free located in the data itself to add something custom, such as an item defense system.
  • Modding version: PSX
Check out my ASM thread. Who doesn't like hax?

Pickle Girl Fanboy

I was wrong in the specifics, but the reason why I wanted it was so this stuff could be used for ASM hacks, and be easily editable in FFTPatcher, without requiring a custom table.

Glain

Right, I understand. Unfortunately there's no ability data for R/S/M to put into FFTPatcher, but it is a good idea to add things into Patcher where we can, if the data exists and Patcher isn't showing it.

To that end... I did wire up Unknown1 (0x06) and Unknown2 (0x0B) as spinners (textboxes with up/down arrows) into the Item section. melonhead had already accounted for their existence (even came up with the awesome names for them), but just didn't show them and/or make them changeable on the form.
  • Modding version: Other/Unknown

Eternal

I know we discussed this before about the items having two bytes or however they're hardcoded, but I can't recall exactly if you said someone could make the Patcher place WotL Multiplayer items inside ENTDs/Move-Finds/Poaches. If that could be done, I think it's something that should be looked into.
  • Modding version: PSX & WotL
"You, no less human than we? Ha! Now there's a beastly thought. You've been less than we from the moment your baseborn father fell upon your mother in whatever gutter saw you sired! You've been chattel since you came into the world drenched in common blood!"
  • Discord username: eternal248#1817

Glain

April 17, 2012, 01:02:40 am #119 Last Edit: April 17, 2012, 01:09:19 am by Glain
No, it's not that easy. The data fields are only one byte big. Therefore, they can't accept WotL exclusive items.

The only way you could do it is through ASM hacking... and you'd probably have to use kanji space to redo the item ID arrays for all of those sections. Either that, or find a flag to set that means "This item ID is actually 0x100 + whatever it says!"
  • Modding version: Other/Unknown