hide results

    Save State Hacking Guide by mafafu

    Version: 1.0 | Updated: 06/13/04 | Search Guide | Bookmark Guide

    Final Fantasy Legend Save State Hacking Guide
    by mafafu (mafafu (at) hotmail (dot) com)
    
    Specifically listing offsets for SMYGB Emulator
    "Easily" modified for use with your favorite emulator
    
    
    Copyright Information
    ---------------------
    Copyright 2004 mafafu
    
    This file may be freely distributed as long as it remains unchanged and it is
    not used for profit (yeah, right). That is all.
    
    
    Version Information
    -------------------
    Version 1.0: Original Creation June 13, 2004
    
    
    Introduction
    ------------
    This is a savestate hacking guide for the game Final Fantasy Legend for the
    original Gameboy, published by Square/SquareSoft. This was the first RPG that
    really grabbed me, so it's a bit nostalgic. Just for old time's sake, I felt
    like playing it. I was interested after seeing the GameFAQs for the other FFLs
    to see that there was no savestate guide for the first FFL. So, I set about
    making it here. Included are the offsets for charcater information including
    HP, name, stats, and items/powers. Also listed are the byte values for items
    and powers.
    
    In order to hack a savestate, you need a hex editor and a bit of know-how
    that you will not find here. If you're trying to hack a savestate, then you
    probably already know how to do this. Otherwise, check out the intro to the
    save state hacking guide for Final Fantasy Legend 2 by Thundergod at GameFAQs.
    
    
    Specifics
    ---------
    These offsets are using SMYGB Emulator savestates. Other emulators will create
    save states differently and will not work with the offsets listed here.
    However, the item list below will still be correct regardless of emulator. See
    below for compatility issues for other emulators.
    
    Just as a warning, make sure to back up your save states before editing. These
    offsets will work for SMYGB. The savestate file type is .mgb
    
    
    SMYGB .sav issue with FFL1
    --------------------------
    I had a slight problem when running FFL with SMYGB. It seemed to incorrectly
    generate a .sav file upon program completion. It caused the emulator to crash
    on the next load of FFL. Simply deleting the FFL.sav file fixed the problem. I
    just had to do this each time before playing.
    
    
    Compatibility with other Emulators
    ----------------------------------
    It is unlikely that other emulators will have the exact same offsets listed
    here. I may later add offsets for BGB, but it is not to hard to figure out
    where they are. The most tedious part was determining what the object bytes
    were. That part will remain the same regardless of the emulator used.
    
    So, simply take note of, say, your hit points (covert this to hex) and what
    your weapon is and how many uses it has left (convert this to hex). Look up
    you weapon below for the hex value. Then use a hex editor to search for the
    hex value of the weapon, followed by the hex value for the number of uses
    left. You should likely only find one instance (make sure though). Now this
    is the offset for the character you are working with and you should see that
    the rest of the inventory is near this data. Now you should also see your hit
    points hex value near by. Play with the data until you get the desired effect
    and remember to make backups.
    
    
    Errata
    ------
    I have tried hard to put only correct information, but mistakes happen. I may
    have gone cross-eyed staring at the hex editor. If you see an error here, 
    please email me at the address above.
    
    
    Offsets in .MGB save files
    --------------------------
    Numeric data stored in multiple bytes is done so in reverse byte order.
    
    Items/Powers are stored in two bytes. The first is the hex value of the item/
    power listed in the table below. The second value is the number of uses. The
    value FE is used to denote infinite uses.
    
    I'm not sure what the encoding is for the names. It's not ASCII.
    
    
    First Character Offsets
    -----------------------
    Name: 56635-56638
    Race/Sex: 56639
    Current HP: 5663A-5663B
    Maximum HP: 5663C-5663D
    Strength: 5663F
    Defense : 56640
    Agility : 56641
    Mana    : 56642
    
    Items/Powers offset: 
    First Byte: 56643 
    Last Byte : 56652
    
    
    Second Character Offsets
    ------------------------
    Name: 56654-56657
    Race/Sex: 56658
    Current HP: 56659-5665A
    Maximum HP: 5663B-5663C
    Strength: 5665E
    Defense : 5665F
    Agility : 56660
    Mana    : 56661
    
    Items/Powers offset: 
    First Byte: 56662 
    Last Byte : 56671
    
    
    Third Character Offsets
    -----------------------
    Name: 56673-56676
    Race/Sex: 56677
    Current HP: 56678-56679
    Maximum HP: 5667A-5667B
    Strength: 5667D
    Defense : 5667E
    Agility : 5667F
    Mana    : 56680
    
    Items/Powers offset: 
    First Byte: 56681 
    Last Byte : 56690
    
    
    Fourth Character Offsets
    ------------------------
    Name: 56692-56695
    Race/Sex: 56696
    Current HP: 56697-56698
    Maximum HP: 56699-5669A
    Strength: 5669C
    Defense : 5669D
    Agility : 5669E
    Mana    : 5669F
    
    Items/Powers offset: 
    First Byte: 566A0 
    Last Byte : 566AF
    
    
    Inventory Offsets
    -----------------
    First byte: 566B0
    Last byte : 566BF
    
    
    Gold Offset
    -----------
    I couldn't seem to find the gold offset. If anyone happens to find it, feel
    free to email me and I will add it and credit you.
    
    
    Race/Sex/Monster Encodings
    --------------------------
    Listed are the encoding for the Humans and Mutants. You can edit this value to
    change your race and monster type. However, this will not really change
    anything. For instance, if you change the encoding for the weak monster Lizard
    to Athalot, you will not gain the abilities of the Athalot. Therefore, it is
    not necessary to list the full monster encodings here as all that will change
    is the character picture and character type text description.
    
    AD: Human Male
    AE: Human Female
    B3: Mutant Male
    B4: Mutant Female
    
    
    Item/Powers Byte List
    ---------------------
    IMPORTANT: If you want to hack in armor, you need to add it to your inventory,
    then equip in the game. The game will not give the armor bonuses when you hack
    in the armor. Furthermore, it subtracts the stats of the armor from your stats
    when you remove the armor. That should be obvious in normal play, but it will
    also happen here. So, if you leave your stats alone, then add some armor to a
    character, you will not get any stat bonus. When you remove the armor your
    stats will go down. This can also create a glitch, because it may subtract
    more from the stat than you really have. This will cause your stat to be well
    above 99 (it still reads as 99 however).
    
    Names are reproduced with the same spelling as those in the game with comments
    in parentheses.
    
    Some objects are listed more than once because the game uses multiple entries
    for powers with different numbers of uses.
    
    NOTE:"o" is used to denote the circle used in resistances
    NOTE:"x" is used to denote the cross used in weaknesses
    NOTE: -BLANK- is used to denote an entry that does not correspond to a game
    object. FF is listed as -NULLDATA- because the game seems to use FF to denote
    an empty object. They are included simply for completeness.
    
    
    00: Potion
    01: XPotion
    02: Cure Book
    03: Rod
    04: Needle
    05: Symbol
    06: Eyedrop
    07: Revive
    08: Elixir
    09: Heart (the symbol, i.e. the item to allows another revive)
    0A: Arcane
    0B: Door
    0C: Strong
    0D: Agility
    0E: HP200
    0F: HP400
    10: HP600
    11: King Sword
    12: King Armor
    13: King Shield
    14: Airseed
    15: Red Orb
    16: BlueOrb
    17: Erase99
    18: BlueKey
    19: JailKey
    1A: WhitKey
    1B: Rock
    1C: Light
    1D: Repent
    1E: Rom
    1F: Board
    20: Hammer
    21: Long Sword
    22: Axe
    23: Battle Sword
    24: Katana Sword
    25: Silver Sword
    26: Coral Sword
    27: Ogre Sword
    28: Dragon Sword
    29: Sun Sword
    2A: Flame Sword
    2B: Ice Sword
    2C: Elec Sword
    2D: Rapier
    2E: Sabre
    2F: L-Sabre
    30: CatCraw
    31: P-Knife
    32: P-Sword
    33: Revenge
    34: Vampic Sword
    35: Defend Sword
    36: Rune Sword
    37: Xclbr Sword
    38: Glass Sword
    39: Masmune
    3A: Bow
    3B: Long Bow
    3C: Gr. Bow
    3D: Colt
    3E: Musket
    3F: Magnum
    40: Whip
    41: E-Whip
    42: Saw
    43: SMG
    44: Grenade
    45: Bazooka
    46: Balkan
    47: Missile
    48: N. Bomb
    49: Laser
    4A: Hyper
    4B: Bronze Shield
    4C: Gold Shield
    4D: Silver Shield
    4E: Flame Shield
    4F: Ice Shield
    50: Dragon Shield
    51: Aezis Shield
    52: Bronze Helm
    53: Gold Helm
    54: Silver Helm
    55: Army Helm
    56: Band Helm
    57: Dragon Helm
    58: Bronze Armor
    59: Gold Armor
    5A: Silver Armor
    5B: Dragon Armor
    5C: Suit Armor
    5D: Arthur Armor
    5E: Bronze Gauntlet
    5F: Gold Gauntlet
    60: Silver Gauntlet
    61: Giant Gauntlet
    62: Ninja Gauntlet
    63: Hermes Shoe
    64: Geta Shoe
    65: Shoe (blank name)
    66: Power Armor
    67: Wand
    68: Staff
    69: Book
    6A: Fire Book
    6B: Ice Book
    6C: Elec Book
    6D: Fog Book
    6E: Flare Book
    6F: Sleep Book
    70: Stone Book
    71: Death Book
    72: Punch
    73: Kick
    74: Butt
    75: X-Kick
    76: Judo
    77: Karate
    78: Tempter
    79: Counter
    7A: Antdote
    7B: Bell
    7C: Pan
    7D: Shocker
    7E: Left
    7F: Right
    80: Honey
    81: Cure
    82: Heal
    83: Revive
    84: Care
    85: Raise
    86: Telepor
    87: Head
    88: Nose
    89: Pincher
    8A: Beak
    8B: Punch
    8C: Bite
    8D: Fin
    8E: Bone
    8F: Sword
    90: Hari-Te
    91: Bash
    92: Saw
    93: 2Pincer
    94: 4Heads
    95: Nail
    96: 8Legs
    97: 2Tusks
    98: 4Horns
    99: 2Swords
    9A: 6Arms
    9B: Poison
    9C: Poison
    9D: Tusk
    9E: P-Fangs
    9F: Strict
    A0: Petrify
    A1: D-Fangs
    A2: Sl-Gaze
    A3: Sleep
    A4: Blind
    A5: Flash
    A6: Ink
    A7: Horn
    A8: Gaze
    A9: Gaze
    AA: Riddle
    AB: Sing
    AC: Tail
    AD: Gaze
    AE: Gaze
    AF: Drain
    B0: Stench
    B1: Sand
    B2: Tremble
    B3: Electro
    B4: Bother
    B5: Web
    B6: Touch
    B7: Kiss
    B8: Kick
    B9: Flame
    BA: Ice
    BB: Thunder
    BC: Gas
    BD: Acid
    BE: Squirt
    BF: Quake
    C0: Tornado
    C1: Acid
    C2: Whirl
    C3: Steal
    C4: Tentacl
    C5: D-Beam
    C6: Fire
    C7: Ice
    C8: Elec
    C9: Flare
    CA: Stop
    CB: Sleep
    CC: Axe
    CD: S-Skin
    CE: P-Skin
    CF: P-Skin
    D0: Burning
    D1: oFire
    D2: oIce
    D3: oElec
    D4: oPoison
    D5: oStone
    D6: oPara
    D7: oWeapon
    D8: oQuake
    D9: Explode
    DA: oChange
    DB: oDamage
    DC: Stone
    DD: oIce/Wp
    DE: oAll
    DF: xFire
    E0: xElec
    E1: xIce
    E2: Shell
    E3: Shell
    E4: Drink
    E5: Chill
    E6: Pollen
    E7: Rocket
    E8: Beam
    E9: Melt
    EA: Sphere
    EB: Mirror
    EC: Kinesis
    ED: P-Blast
    EE: Leech
    EF: Uncurse
    F0: ESP
    F1: Hypnos
    F2: Barrier
    F3: Mirror
    F4: Power
    F5: Armor
    F6: Gaze
    F7: 3Heads
    F8: oPAR/WP
    F9: Stealth
    FA: Warning
    FB: Forseen
    FC: -BLANK-
    FD: -BLANK-
    FE: -BLANK-
    FF: -NULLDATA-
    
    
    Thanks
    ------
    Thanks indirectly go to Thundergod. After using his hacking guide for FFL2,
    I decided to make this one for FFL.

    FAQ Display Options: Printable Version