Condensed equipment lists for Final Fantasy IV, specifically the Super Nintendo release ("Final Fantasy II") 0 80% FireClaw (Fire) 0 80% IceClaw (Ice) 0 80% Thunder [Claw] (Lit) (bonus v. Mech) 0 50% Charm [Claw] (Charm) (bonus v. Giant) Agil +3 0 90% Poison [Claw] (Poison) Str +3 0 99% CatClaw (Sleep) Str/Agil +5 3 40% Rod (use for non-elemental damage) 5 45% IceRod (Ice) (bonus v. Lizard) (use for Ice-1) 7 45% FlameRod (Fire) (use for Fire1) Wis +3 10 50% Thunder [Rod] (Lit) (use for Lit-1) Wis +3 15 50% Change [Rod] (use for Pig) Wis +5 30 55% Charm [Rod] (use for Charm) Wis +10 45 60% Stardust [Rod] (use for Comet) Wis +15 13 10% Lilith [Rod] (Drain) (bonus v. Undead) (use: Psych) Wis +5 4 45% Staff (use to remove poison) 8 50% Cure [Staff] (use to restore HP to all party members) M 12 55% Silver [Staff] (bonus v. Undead) (use v. Charm &c) Will +3 30 99% Power [Staff] (Bersk) Str +10 36 60% Lunar [Staff] Will +10 48 65% Life [Staff] (use for Life1) Will +15 C 52 60% Silence [Staff] (Mute) (bonus v Mage) (use: Mute) Will +10 M 10 80% Shadow [Sword] (Dark) M 20 85% Darkness [Sword] (Dark) M 30 90% Black [Sword] (Dark, Death) Str/Agil/Vit/Wis +5, Will -10 M 40 99% Legend [Sword] (White) Will +3 MT 99 99% Light [Sword] (White) Str/Will +3 MT 160 99% Excalbur (White) Str +10 M 65 80% Fire [Sword] (Fire) M 75 80% IceBrand (Ice) MT 105 90% Defense [Sword] Vit +15 MT 45 50% Drain [Sword] (Drain) (bonus: Undead, Slime, Giant) All -5 MT 35 77% Ancient [Sword] (Curse) (bonus v. Spirit) MT 55 77% Slumber [Sword] (Sleep) (use for Sleep) MT 77 66% Medusa [Sword] (Stone) M 9 99% Spear (Wind) M 55 80% Wind [Spear] (Wind) M 66 80% Flame [Spear] (Wind, Fire) (use for Fire2) M 77 80% Blizzard [Spear] (Wind, Ice) (use for Ice-2) MT 99 80% Dragoon [Spear] (Wind) (bonus v. Dragon) MT 109 80% White [Spear] (Wind, White) (bonus v. Spirit) (use: White) MT 88 22% Drain [Spear] (Drain) (bonus Undead, Slime, Giant) All -10 MT 92 80% Gungnir [Spear] (Wind) Vit +15 MT 25 90% Short [Katana] M 32 90% Middle [Katana] M 40 90% Long [Katana] MT 48 90% Ninja [Katana] Str +5 MT 55 90% Murasame [Katana] Str/Vit/Wis +5, Agil/Will -5 MT 65 99% Masamune [Katana] (use for Fast) Agil +3 MT 29 55% Assassin [Knife] (Death) Str/Agil/Vit +5, Wis/Will -10 MT 35 75% Mute [Knife] (Mute) (bonus v. Mage) Wis +5 RC 20 50% Whip (Hold) M RC 30 55% Chain [Whip] (Hold) RC 40 60% Blitz [Whip] (Hold, Lit) RC 50 65% Flame [Whip] (Hold, Fire) Str/Agil/Vit +5, Wis/Will -5 RC 55 75% Dragon [Whip] (Hold) (bonus v. Dragon) S/A/V +5, W/W -5 MT 35 50% HandAxe Str +3 M RC 62 69% Dwarf [Axe] Str/Vit +5, Agil/Wis/Will -5 M C 80 85% Ogre [Axe] (bonus v. Giant) MT 20 99% Silver [Knife] (bonus v. Spirit) MT 28 94% Dancing [Knife] (use for non-elemental damage) M 50 80% Silver [Sword] (bonus v. Spirit) MT 255 99% Spoon M C 200 99% Crystal [Sword] (White) (bonus v. Undead) Str/Vit/Will +15 MTR 40 99% Shuriken [Star] (Wind) MTRC 80 99% Ninja [Star] (Wind) R 20 80% Boomrang (Wind) R 40 85% FullMoon [Boomerang] (Wind) R W 8 85% Dreamer [Harp] (Sleep) R W 18 90% Charm [Harp] (Charm) M W 95 60% Poison [Axe] (Poison) (bonus v. Giant) (use for Venom) M W 100 60% RuneAxe (bonus v. Mage) W 45 75% Wooden [Wrench] (bonus v. Mech) M W 55 75% Silver [Wrench] (bonus v. Spirit, Mech) M W 65 75% Earth [Wrench] (Fire) (bonus v Mech) (use: Quake) Str +5 MT W 80 95% Avenger [Sword] Str/Agil/Vit +10, Wis/Will -10 R 10 30% ShortBow (Wind) R 20 35% CrossBow (Wind) R 30 40% GreatBow (Wind) Str +3 R 40 50% Archer [Bow] (Wind) Str +5 R 50 75% ElvenBow (Wind) (bonus v. Mage) Wis +5 R 60 60% Samurai [Bow] (Wind) Str +10 R 80 70% Artemis [Bow] (Wind) Str/Agil/Vit +10, Wis/Will -10 M R 5 Iron [Arrow] R 10 White [Arrow] (White) (bonus v. Undead, Spirit) R 15 Fire [Arrow] (Fire) R 15 Ice [Arrow] (Ice) R 15 Lit [Arrow] (Lit) (bonus v. Mech) R 20 Darkness [Arrow] (Blind) R 30 Poison [Arrow] (Poison) R 35 Mute [Arrow] (Mute) (bonus v. Mage) R 40 Charm [Arrow] (Charm) (bonus v. Giant) R 50 Samurai [Arrow] R 1 Medusa [Arrow] (Stone) R 75 Artemis [Arrow] (bonus v. Dragon) M: metallic/magnetic (relevant for Cave Magnes) T: throwable R: ranged weapon (can be used from the back row without penalty) C: capped (no critical hits) W: two-handed Who can equip what? * Bows can be equipped by women and children and, uh, Edward, as well as Cecil after class change. All are right-handed, which means the arrows should go in the right hand and the bow in the left; otherwise it's less damage. * Knives can be equipped by several characters: Kain, Rydia, Edward, Palom, Edge, and Cecil. * Rods can be equipped by anyone with access to black magic. * Staves can be equipped by anyone with access to white magic except that Cecil can't equip the more powerful ones (Power, Lunar, Life, or Silence). * The unspecialized swords (Fire, Silver, and so on) can be equipped by Cecil or Kain. * Axes can be equipped by Cecil, Kain, or Cid. * The projectiles (shuriken, ninja stars, and the spoon) can't be equipped; they're just for throwing. *** M 1 20% 0 Iron [Shield] M 1 22% 0 Shadow [Shield] M 2 24% 0 1% Black [Shield] M 2 24% 1 1% Paladin [Shield] (bonus v. Undead) Will +3 M 3 26% 2 2% Silver [Shield] (bonus v. Spirit) M 3 28% 2 2% Fire [Shield] (Ice) M 3 30% 2 2% Ice [Shield] (Fire) (bonus v. Lizard) 4 32% 2 3% Diamond [Shield] (Lit) M 4 34% 5 4% Aegis [Shield] (Stone) (bonus v. Mage) Wis +3 M 5 36% 3 4% Samurai [Shield] 6 38% 3 5% Dragoon [Shield] (Fire, Ice, Lit) (bonus v. Dragon) 7 40% 4 6% Crystal [Shield] (bonus v. Undead) Will +3 M 3 0 Iron [Helmet] M 4 0 Shadow [Helmet] M 5 1 Darkness [Helmet] M 6 1 1% Black [Helmet] M 7 2 1% Paladin [Helmet] (bonus v. Undead) Will +3 M 8 2 2% Silver [Helmet] (bonus v. Spirit) 9 2 2% Diamond [Helmet] (Lit) 10 6 3% Samurai [Helmet] 11 7 4% Dragoon [Helmet] (Fire/Ice/Lit) (bonus v. Dragon) 12 8 5% Crystal [Helmet] (F/I/L) (bonus v. Undead) Will +3 1 5% 1 1% Cap 2 6% 3 3% Leather [Helmet] 3 7% 5 5% Gaea [Helmet] Wis/Will +3 5 8% 7 7% Wizard [Helmet] (bonus v. Undead) Will +5 M 7 10% 10 9% Tiara (Lit) (bonus v. Dragon) Wis +10 9 12% 12 12% Ribbon (Fire, Ice, Lit, *) (bonus v. Mage) 1 10% 1 1% Headband (Charm) Str +5 3 12% 1 1% Bandanna Str/Vit +5 5 14% 1 1% Ninja [Helmet] (Sleep) Str/Agil/Vit +3 30 99% 0 Glass [Helmet] M 4 1 Iron [Armor] M 5 1 Shadow [Armor] M 7 2 Darkness [Armor] M 9 3 Black [Armor] M 11 3 1% Paladin [Armor] (bonus v. Undead) Will +3 M 13 4 2% Silver [Armor] (bonus v. Spirit) M 15 4 2% Fire [Armor] (Ice) M 17 4 2% Ice [Armor] (Fire) 19 4 2% Diamond [Armor] (Lit) 21 7 4% Samurai [Armor] 23 8 5% Dragoon [Armor] (Fire, Ice, Lit) (bonus v. Dragon) 25 10 6% Crystal [Armor] (*) (bonus v. Undead) Will +3 1 10% 0 Cloth [Robe] 2 10% 1 1% Leather [Robe] 3 10% 3 3% Gaea [Robe] (Stone) 5 10% 5 5% Wizard [Robe] Will +5 8 10% 7 7% Black [Robe] Will +5 12 10% 9 9% Sorcerer [Robe] (Lit) (bonus v. Undead) Wis/Will +5 18 10% 10 6% White [Robe] (Blind) (bonus v. Undead, Spirit) Will +15 15 10% 0 Power [Robe] Str +15 20 40% 5 5% Heroine [Robe] (Hold) Str/Agil/Vit +15, Wis/Will -15 1 10% 1 Prisoner [Robe] (Sleep) 2 10% 1 Bard [Robe] (Mute) 5 20% 2 1% Karate [Robe] Str +3 10 30% 3 2% Bl.Belt [Robe] Str/Vit +5 100 99% 20 12% Adamant [Armor] (F/I/L, Charm, Hold, Sleep, *) All +15 24 70% 15 8% Ninja [Robe] Agil +3 M 2 0 Iron [Glove] M 2 0 Shadow [Glove] M 3 0 Darkness [Glove] M 4 0 Black [Glove] M 5 1 1% Paladin [Glove] (bonus v. Undead) Will +3 M 6 2 2% Silver [Glove] (bonus v. Spirit) 7 3 3% Diamond [Glove] (Lit) 10 0 Zeus [Glove] (Mini) (bonus v. Giant) Str/Vit +10 8 5 3% Samurai [Glove] 9 6 3% Dragoon [Glove] (Fire, Ice, Lit) (bonus v. Dragon) 10 7 4% Crystal [Glove] (bonus v. Undead) Will +3 M 2 10% 2 1% IronRing 0 10% 3 2% RubyRing (Pig) M 4 10% 4 4% Silver [Ring] (bonus v. Spirit) M 2 10% 2 2% Strength [Ring] Str +5 5 10% 8 8% Rune [Ring] (Mute) (bonus v. Mage) Wis/Will +3 20 15% 12 10% Crystal [Ring] (Charm/Hold/Sleep) (bonus Dragon) Agi +5 6 10% 8 6% Diamond [Ring] (Lit) 10 15% 12 10% Protect [Ring] (Fire, Ice, Lit) Vit +15 0 0 Cursed [Ring] (absorbs elemental damage) All -15 (*) The Ribbon, Crystal armor, and Adamant armor all protect against various status ailments: Blind, Mute, Pig, Mini, and Toad. In addition, the Crystal armor protects against Bersk, while the Ribbon and Adamant armor confer immunity to Poison, Stone, Curse, and Death. Who can equip what? * Anyone can equip the Adamant armor. * The Tiara and the Heroine robe can be equipped by women only. * Shields, heavy armor, and gauntlets can be equipped by Cecil, Kain, or Cid. A few are reserved for Cecil alone, e.g., the Paladin and Crystal set. The Samurai series (except for the shield) is open to Edge, who can also wear the Iron and Silver gauntlets and (with Yang and Rydia) the Zeus gauntlet and the Strength Ring. * Certain rings are off limits to Cecil, Kain, and Cid: Iron, Silver, Rune, and Diamond. * There are three main classes of headgear, unfortunately all with the same icon: heavy helmets for Cecil, Kain, and Cid (Silver, Diamond, Dragoon); magical hats for mages (Gaea, Wizard); and light hats for anyone (from the Cap and Leather hat at the game's beginning to the Ribbon at its end, as well as the Headband, Bandanna, and even the Ninja hat). * Similarly, some robes (Gaea, Wizard, Sorcerer) are just for mages. The White and Black robes are further specialized. *** Replaying FF4 for the first time in many years, I searched the web for a refresher on the various equipment options and found myself bewildered at the profusion of releases. By the early '90s there were already three competing versions, and in the meantime there have been so many ports and reissues, each tinkering with the formula, that it was hard to find a source. Not that there aren't comprehensive guides on virtually every aspect of every version, but I was hoping for an at-a-glance reference to my version rather than an exhaustive collation. I decided to "quickly" dump the data I cared about from the ROM and got a little carried away. *** Item data begins at 0x79100 (no header). There are 96 weapons followed by 80 pieces of armor (some blank or unused). 00: Metallic flag packed with weapon flags or MAG DEF% hi 7 metallic lo 6-0 MAG DEF% or . . . 6 throwable 5 long-range 0 critical hits disabled (other bits unused or unknown) 01: ATTACK or DEFENSE power 02: Unknown flag (high bit) packed with ATTACK% or DEFENSE% 03: Spell number (for the spellcasting items) or MAG DEF 04: Shield flag (high bit) packed w/ element, status attribute code 05: Monster bitmask (if set, especially effective against . . .) hi 7 Undead 6 Mage 5 Slime 4 Giant 3 Spirit 2 Lizard 1 Mech lo 0 Dragon 06: Weapon-type flags packed with eligibility (who can equip) hi 7 Bow 6 Arrow 5 Two-handed lo 4-0 Eligibility code (table lookup) 07: Stat bonus(es) hi 7-3 Str. Agil. Vit. Wis. Will: if set, add A; if clear, deduct B. lo 2-0 A B 000 3 0 001 5 0 010 10 0 011 15 0 100 5 5 101 10 10 110 15 15 111 5 10 *** Deathlike2's Item/Equipment Guide on GameFAQs https://gamefaqs.gamespot.com/mobile/974825-final-fantasy-iv/faqs/79748 was helpful for confirming the effects of the item-only spells. Where the tables above are a crude summary, this guide is the whole story. Also useful for spot checks was Inven's equipment spreadsheet linked from the Free Enterprise wiki: https://wiki.ff4fe.com/doku.php?id=guides_resources *** I don't expect to revisit it and haven't bothered to clean it up -- it was written in haste -- but here's the code for the table dump. The output will differ a bit from the above because I spent some time editing it to fit within 72 columns and to expand on special properties and custom resistances. *** (use srfi.13) (use gauche.uvector) (define (main args) (cond ((not (length=? args 2)) (print #"Usage: ~(sys-basename (car args)) ROMFILE")) (else (with-input-from-file (cadr args) (lambda () (load-item-names) (load-spell-names) (weapon-table) (armor-table))))) 0) (define item-icon-codes (make-vector 176)) (define item-names (make-vector 176)) (define spell-names (make-vector 72)) (define (load-item-names) (port-seek (current-input-port) #x78000) (dotimes (i 176) (vector-set! item-icon-codes i (read-byte)) (vector-set! item-names i (encode (read-bytevector 8))))) ;; Offsets assume an unheadered ROM file. (define (encode v) (string-trim-right (list->string (map (cut alist-ref text-table <> eqv?) (u8vector->list v))))) ;; TEXT-TABLE and ICON-TABLE were taken from ;; https://datacrystal.tcrf.net/wiki/Final_Fantasy_IV_(SNES)/TBL ;; They're defined at the end of this file. (define (load-spell-names) (port-seek (current-input-port) #x78900) (dotimes (i 72) (read-byte) (vector-set! spell-names i (encode (read-bytevector 5))))) (define (weapon-table) (port-seek (current-input-port) #x79100) (let loop ((i 0)) (if (<= 96 i) 'done (let* ((record (read-bytevector 8)) (weapon-flags (u8vector-ref record 0))) (format #t "~a~a~a~a~a ~3@a ~a ~a~a~a~a~a\n" (if (logbit? 7 weapon-flags) "M" " ") (if (logbit? 6 weapon-flags) "T" " ") (if (logbit? 5 weapon-flags) "R" " ") (if (logbit? 0 weapon-flags) "C" " ") (if (logbit? 5 (u8vector-ref record 6)) "W" " ") (u8vector-ref record 1) (hit% (logand #x7F (u8vector-ref record 2))) (item-name i) (attribute (logand #x7F (u8vector-ref record 4))) (monster (u8vector-ref record 5)) (spell (u8vector-ref record 3)) (stat-summary (u8vector-ref record 7))) (loop (+ 1 i)))))) (define (hit% c) (if (zero? c) " " (format "~a%" c))) (define (item-name i) (let ((body (vector-ref item-names i)) (icon (alist-ref icon-table (vector-ref item-icon-codes i)))) (if (and icon (string-scan body icon)) body (format "~a [~a]" body icon)))) (define (attribute n) (fmt " (~a)" (alist-ref element-table n eqv? "Cust."))) ;; ELEMENT-TABLE is defined below. It was adapted from the highly ;; educational FFIV Disassembly project: ;; https://github.com/everything8215/ff4 (define (fmt template value) (if (zero? (string-size value)) "" (format template value))) (define (spell n) (fmt " (use for ~a)" (vector-ref spell-names n "Custom"))) (define (monster c) (fmt " (bonus v. ~a)" (string-join (filter-map (lambda (b) (and (logbit? b c) (case b ((0) "Dragon") ((1) "Mech") ((2) "Lizard") ((3) "Spirit") ((4) "Giant") ((5) "Slime") ((6) "Mage") ((7) "Undead")))) '(7 6 5 4 3 2 1 0)) ", "))) (define (stat-summary c) (define (plus n) (case n ((0) 3) ((1 4 7) 5) ((2 5) 10) ((3 6) 15))) (define (minus n) (case n ((4) 5) ((5 7) 10) ((6) 15))) (define (stat n) (case n ((7) "Str") ((6) "Agil") ((5) "Vit") ((4) "Wis") ((3) "Will"))) (let ((lo (bit-field c 0 3)) (pos (filter (cut logbit? <> c) '(7 6 5 4 3))) (neg (if (logbit? 2 c) (remove (cut logbit? <> c) '(7 6 5 4 3)) '()))) (let ((spos (and (pair? pos) (string-join (map stat pos) "/"))) (sneg (and (pair? neg) (string-join (map stat neg) "/")))) (cond ((and spos sneg) (format " ~a +~a, ~a -~a" spos (plus lo) sneg (minus lo))) (spos (format " ~a +~a" spos (plus lo))) (sneg (format " ~a -~a" sneg (minus lo))) (else ""))))) (define (armor-table) (port-seek (current-input-port) #x79400) (let loop ((i 96)) (if (<= 176 i) 'done (let1 record (read-bytevector 8) (format #t "~a ~3@a ~3@a ~2@a ~3@a ~a~a~a~a\n" (if (logbit? 7 (u8vector-ref record 0)) "M" " ") (u8vector-ref record 1) (hit% (logand #x7F (u8vector-ref record 2))) (u8vector-ref record 3) (hit% (logand #x7F (u8vector-ref record 0))) (item-name i) (attribute (logand #x7F (u8vector-ref record 4))) (monster (u8vector-ref record 5)) (stat-summary (u8vector-ref record 7))) (loop (+ 1 i)))))) (define text-table '((#x42 . #\A) (#x43 . #\B) (#x44 . #\C) (#x45 . #\D) (#x46 . #\E) (#x47 . #\F) (#x48 . #\G) (#x49 . #\H) (#x4A . #\I) (#x4B . #\J) (#x4C . #\K) (#x4D . #\L) (#x4E . #\M) (#x4F . #\N) (#x50 . #\O) (#x51 . #\P) (#x52 . #\Q) (#x53 . #\R) (#x54 . #\S) (#x55 . #\T) (#x56 . #\U) (#x57 . #\V) (#x58 . #\W) (#x59 . #\X) (#x5A . #\Y) (#x5B . #\Z) (#x5C . #\a) (#x5D . #\b) (#x5E . #\c) (#x5F . #\d) (#x60 . #\e) (#x61 . #\f) (#x62 . #\g) (#x63 . #\h) (#x64 . #\i) (#x65 . #\j) (#x66 . #\k) (#x67 . #\l) (#x68 . #\m) (#x69 . #\n) (#x6A . #\o) (#x6B . #\p) (#x6C . #\q) (#x6D . #\r) (#x6E . #\s) (#x6F . #\t) (#x70 . #\u) (#x71 . #\v) (#x72 . #\w) (#x73 . #\x) (#x74 . #\y) (#x75 . #\z) (#x80 . #\0) (#x81 . #\1) (#x82 . #\2) (#x83 . #\3) (#x84 . #\4) (#x85 . #\5) (#x86 . #\6) (#x87 . #\7) (#x88 . #\8) (#x89 . #\9) (#xC0 . #\') (#xC1 . #\.) (#xC2 . #\-) (#xC3 . #\…) (#xC4 . #\!) (#xC5 . #\?) (#xC6 . #\%) (#xC7 . #\/) (#xC8 . #\:) (#xC9 . #\,) (#xFF . #\space))) (define icon-table '((#x29 . "Claw") (#x2A . "Rod") (#x2B . "Staff") (#x2C . "Sword") (#x2D . "Sword") (#x2E . "Sword") (#x2F . "Spear") (#x30 . "Knife") (#x31 . "Katana") (#x32 . "Star") (#x33 . "Boomerang") (#x34 . "Axe") (#x35 . "Wrench") (#x36 . "Harp") (#x37 . "Bow") (#x38 . "Arrow") (#x39 . "Hammer") (#x3A . "Whip") (#x3B . "Shield") (#x3C . "Helmet") (#x3D . "Armor") (#x3E . "Glove") (#x7B . "Robe") (#x7C . "Ring"))) (define element-table '((0 . "") (1 . "Fire") (2 . "Ice") (3 . "Lit") (4 . "Dark") (5 . "White") (6 . "Wind") (7 . "Drain") (10 . "Bersk") (11 . "Charm") (12 . "Sleep") (13 . "Hold") (14 . "Float") (15 . "Curse") (16 . "Poison") (17 . "Blind") (18 . "Mute") (19 . "Pig") (20 . "Mini") (21 . "Toad") (22 . "Stone") (23 . "Death")))