« on: March 10, 2012, 07:11:09 pm »
I've been fiddling with Final Fantasy 3 (with A.W. Jackson et al patch) in a hex editor, but I'm having trouble figuring out how a weapon or armour determines which classes can equip it.
Each piece of equipment has a byte which tells the game which classes can equip it. Fists have a value of 00, but a Claw-type weapon has a value of 38. It can be wielded by the Karateka (who can only use claws) and Ninjas (who can equip almost anything). I thought that it may have something to do with the first byte of the classes' base stat data (at$7201), but the Karateka has 28, and the Ninja, FF in these bytes - I don't see how those combine to get 38.
As another example, the Headband (9E) can be equipped by those two classes plus the Monk, who has an "ID value" of 77. All equipment is grouped by the slot that you equip it with (hands, head, etc), so I don't think where you can equip something affects its class byte. I'll continue to experiment with this, but in the meantime I'd appreciate it there was somebody who could enlighten me on this.
Edit: Well, I've made lots of progress in other areas, such as filling out the addresses for the stat growth of all classes. Each class has two bytes for every level: one for primary stats, and another for spell charges. There's actually 2156 bytes devoted just to stat growths, making it a very flexible system. I've also discovered that spells have a class equip byte, just like weapons and armor. I still haven't understood this byte, though, so I may have to bite the bullet and start experimenting with it.
Maybe I could upload my notes on addresses and what they do to the site. I have a decent list of the things.