hide results

    Magic Hacking Guide by Dark Penguin

    Version: 1.0 | Updated: 12/30/03 | Printable Version | Search This Guide

    Final Fantasy V
    Magic Hacking Guide for ZSNES save states
    By Dark Penguin (penguin_821@yahoo.com)
    Version 1.0
    Last Update: 12/30/03
    
    Greetings, and welcome to the Final Fantasy V Magic Hacking Guide. I
    decided to write this guide when, after reading the available FF5
    hacking guides, I found that there was little to no information
    available about hacking your characters' magic spells. Note that
    this guide assumes you have some basic knowledge about the
    hexadecimal system, and hex editing in general.
    
    Obviously, this info only applies to the SNES ROM version of FF5,
    and not the Playstation remake. Though if you want to try and hex
    edit your PSX saves, go right ahead. ^_^
    
    If you wish to learn a little about how the spells are stored within
    the game, keep reading. Otherwise, feel free to skip to the
    "instructions" section below.
    
    You may wonder just why information concerning magic hacking is
    so scarce. Well, the data concerning which spells your party
    possesses is stored in a much different way than, say, the data
    for your items is. All 125 spells are stored in just 16 bytes.
    How, you ask? Well, suppose each spell had its own byte. If the
    byte read "00", the spell would be "off", or unavailable. If the
    byte read "01", then the spell would be "on" and ready for use.
    But wait! Each byte has 256 different possible values, right?
    Only using two of those values is such a waste of space.
    
    Somewhere along the line, someone came up with a great idea: since
    each item has only two possible values, why not store a whole bunch
    of them in one byte? Eight of them, to be exact. (There are 8 items
    and two values for each; 2 to the 8th power is 256. See? It works!)
    Stored this way, one byte holds the on/off info for eight different
    spells, and has a value to represent any possible combination of
    those spells. Fun, eh? (Don't worry if you didn't understand a word
    of that. I've never been good at explanations. >_<)
    
    ~Instructions for 1337 magic hacking:~
    
    The setup here is pretty basic. Each byte of info holds eight spells.
    The value of that byte determines which, if any, of the spells are
    currently active in your FF5 game. Each spell occupies a predefined
    "position" within the byte, and each position has a hex value
    associated with it. I'll use the byte holding the first 8 spells as
    an example.
    
    BYTE 1563 (Sword Magic)
     -----------------------
    |Spells     |Hex Value  |
    |-----------|-----------|
    |1. Ice 2   | 01        |
    |2. Fire 2  | 02        |
    |3. Sleep   | 04        |
    |4. Mute    | 08        |
    |5. Venom   | 10        |
    |6. Bolt    | 20        |
    |7. Ice     | 40        |
    |8. Fire    | 80        |
     -----------------------
    
    To determine what the value of the byte should be, simply add up the
    values of all the spells that you want to have. If you only want
    Ice 2, and you don't want to have any of the other spells, then just
    open your saved state in a hex editor, go to byte 1563, and input the
    value "01". If you want both Ice 2 and Fire 2, then add the numbers
    together. 01 plus 02 equals 03. Input that number, load your game,
    and the first two spells will be active. But remember! You're working
    in hexadecimal here. 8 + 4 is NOT equal to twelve, it's equal to C.
    If you're not a hex master, note that most calculators -- including
    the Windows Calculator -- have hexadecimal modes that can be used for
    this sort of thing. If you want ALL the spells in a particular byte,
    I'll save you some math: all of the numbers added together equal FF,
    the highest possible value. So if you want all of the spells, just
    type FF at each byte.
    
    Now that you're a master hacker, I present you with the bytes
    containing all of Final Fantasy V's magic spells. Note that if a
    spell slot reads [Nothing], it means just that -- activating that
    slot does not activate a spell. I haven't seen any glitches or
    problems caused by activating these slots, but if you want to be
    safe I would suggest leaving them off.
    
    BYTE 1563 (Sword Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Ice 2   |Sword      | 01        |
    |2. Fire 2  |Sword      | 02        |
    |3. Sleep   |Sword      | 04        |
    |4. Mute    |Sword      | 08        |
    |5. Venom   |Sword      | 10        |
    |6. Bolt    |Sword      | 20        |
    |7. Ice     |Sword      | 40        |
    |8. Fire    |Sword      | 80        |
     -----------------------------------
    
    BYTE 1564 (Sword Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Holy    |Sword      | 01        |
    |2. Bolt 3  |Sword      | 02        |
    |3. Ice 3   |Sword      | 04        |
    |4. Fire 3  |Sword      | 08        |
    |5. Bio     |Sword      | 10        |
    |6. Break   |Sword      | 20        |
    |7. Drain   |Sword      | 40        |
    |8. Bolt 2  |Sword      | 80        |
     -----------------------------------
    
    BYTE 1565 (White/Sword Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Size    |White      | 01        |
    |2. Armor   |White      | 02        |
    |3. Mute    |White      | 04        |
    |4. Antdt   |White      | 08        |
    |5. Scan    |White      | 10        |
    |6. Cure    |White      | 20        |
    |7. Psych   |Sword      | 40        |
    |8. Flare   |Sword      | 80        |
     -----------------------------------
    
    BYTE 1566 (White Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Wall    |White      | 01        |
    |2. Cure 3  |White      | 02        |
    |3. Heal    |White      | 04        |
    |4. Shell   |White      | 08        |
    |5. Image   |White      | 10        |
    |6. Charm   |White      | 20        |
    |7. Life    |White      | 40        |
    |8. Cure 2  |White      | 80        |
     -----------------------------------
    
    BYTE 1567 (Black/White Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Venom   |Black      | 01        |
    |2. Bolt    |Black      | 02        |
    |3. Ice     |Black      | 04        |
    |4. Fire    |Black      | 08        |
    |5. Dispel  |White      | 10        |
    |6. Holy    |White      | 20        |
    |7. Life 2  |White      | 40        |
    |8. Berserk |White      | 80        |
     -----------------------------------
    
    BYTE 1568 (Black Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Bio     |Black      | 01        |
    |2. Break   |Black      | 02        |
    |3. Drain   |Black      | 04        |
    |4. Bolt 2  |Black      | 08        |
    |5. Ice 2   |Black      | 10        |
    |6. Fire 2  |Black      | 20        |
    |7. Toad    |Black      | 40        |
    |8. Sleep   |Black      | 80        |
     -----------------------------------
    
    BYTE 1569 (Time/Black Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Slow    |Time       | 01        |
    |2. Drag*   |Time       | 02        |
    |3. Psych   |Black      | 04        |
    |4. Doom    |Black      | 08        |
    |5. Flare   |Black      | 10        |
    |6. Bolt 3  |Black      | 20        |
    |7. Ice 3   |Black      | 40        |
    |8. Fire 3  |Black      | 80        |
     -----------------------------------
    *Also known as 'Speed' in some versions.
    
    BYTE 156A (Time Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Comet   |Time       | 01        |
    |2. Exit    |Time       | 02        |
    |3. Stop    |Time       | 04        |
    |4. Demi    |Time       | 08        |
    |5. Float   |Time       | 10        |
    |6. Haste   |Time       | 20        |
    |7. Void    |Time       | 40        |
    |8. Regen   |Time       | 80        |
     -----------------------------------
    
    BYTE 156B (Time Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. X-Zone  |Time       | 01        |
    |2. Quick   |Time       | 02        |
    |3. Meteo   |Time       | 04        |
    |4. Old     |Time       | 08        |
    |5. Haste 2 |Time       | 10        |
    |6. Quarter |Time       | 20        |
    |7. Reset   |Time       | 40        |
    |8. Slow 2  |Time       | 80        |
     -----------------------------------
    
    BYTE 156C (Summon Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Golem   |Summon     | 01        |
    |2. Titan   |Summon     | 02        |
    |3. Ifrit   |Summon     | 04        |
    |4. Ramuh   |Summon     | 08        |
    |5. Shiva   |Summon     | 10        |
    |6. Remora  |Summon     | 20        |
    |7. Sylph   |Summon     | 40        |
    |8. Chocobo |Summon     | 80        |
     -----------------------------------
    
    BYTE 156D (Song/Summon Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Power   |Song       | 01        |
    |2. Bahamut |Summon     | 02        |
    |3. Levia.  |Summon     | 04        |
    |4. Phoenix |Summon     | 08        |
    |5. Odin    |Summon     | 10        |
    |6. Syldra  |Summon     | 20        |
    |7. Carbuncl|Summon     | 40        |
    |8. Shoat   |Summon     | 80        |
     -----------------------------------
    
    BYTE 156E (Songs)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1.[Nothing]|           | 01        |
    |2. Charm   |Song       | 02        |
    |3. Love    |Song       | 04        |
    |4. Requiem |Song       | 08        |
    |5. Heroic  |Song       | 10        |
    |6. Magic   |Song       | 20        |
    |7. Vitality|Song       | 40        |
    |8. Speed   |Song       | 80        |
     -----------------------------------
    
    BYTE 1573 (Blue Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. L2 Old  |Blue       | 01        |
    |2. L4Quartr|Blue       | 02        |
    |3. L5 Doom |Blue       | 04        |
    |4. AquaRake|Blue       | 08        |
    |5. Roulette|Blue       | 10        |
    |6. Condemn |Blue       | 20        |
    |7.[Nothing]|           | 40        |
    |8.[Nothing]|           | 80        |
     -----------------------------------
    
    BYTE 1574 (Blue Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Aero    |Blue       | 01        |
    |2. DeathClw|Blue       | 02        |
    |3. MoonFlt |Blue       | 04        |
    |4. TimeSlip|Blue       | 08        |
    |5. Flash   |Blue       | 10        |
    |6. TinySong|Blue       | 20        |
    |7. FrogSong|Blue       | 40        |
    |8. L3 Flare|Blue       | 80        |
     -----------------------------------
    
    BYTE 1575 (Blue Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. MndBlast|Blue       | 01        |
    |2. Fusion  |Blue       | 02        |
    |3. GuardOff|Blue       | 04        |
    |4. DrkShock|Blue       | 08        |
    |5. GobPunch|Blue       | 10        |
    |6. Emission|Blue       | 20        |
    |7. Aero 3  |Blue       | 40        |
    |8. Aero 2  |Blue       | 80        |
     -----------------------------------
    
    BYTE 1576 (Blue Magic)
     -----------------------------------
    |Spells     |Spell Type |Hex Value  |
    |-----------|-----------|-----------|
    |1. Missle  |Blue       | 01        |
    |2. WhiteWnd|Blue       | 02        |
    |3. BlowFish|Blue       | 04        |
    |4. ????    |Blue       | 08        |
    |5. Exploder|Blue       | 10        |
    |6. BigGuard|Blue       | 20        |
    |7. Hammer  |Blue       | 40        |
    |8. Vampire |Blue       | 80        |
     -----------------------------------
    
    And there you are. If you have any questions, or need any help,
    feel free to drop me a line at penguin_821@yahoo.com. I only check
    my mail about once a week, though, so don't expect a reply fifteen
    minutes after you send a message.
    
    ---------------
    Version History
    ---------------
    
    Why did I put this at the bottom? Because it's not at the top.
    
      v1.0 -- First version. I probably won't make any further updates,
              unless mistakes turn up. In the future, though, I may add
              info on editing SRAM files, so that people who aren't using
              ZSNES can still make use of the guide.
    
    -------
    Credits
    -------
    
    Dark Penguin (myself):
    --wrote the guide, did the research, etc.
    The folks at RPGe:
    --translated FF5, and did a better job than Square, IMHO.
    Square:
    --They still made the game, though. Gotta give 'em some credit for
      that.
    The ZSNES Team:
    --Made a GREAT SNES emulator, the best out there.
    The Save the Whales Foundation:
    --Someone has to save some whales while I'm sitting here writing
      guides for old video games.
    
    ----------
    Disclaimer
    ----------
    
    Don't use this guide for anything bad. Don't sell the guide, don't use the
    guide commercially, don't steal the guide, don't eat the guide, don't set the
    guide on fire, don't print out the guide and use it as birdcage lining, and
    don't use the guide to take over the world. Keep out of reach of children, the
    elderly, and sixteenth century witches. If guide comes into contact with eyes,
    rinse with water and cotton candy. The surgeon general has determined that the
    amounts of carcinogenic compounds in the guide are well below
    federal standards.
    
    >-End of File-<