Post: Fnal fantasy 13-2 item hacking through hex editing
02-14-2012, 06:57 AM #1
(adsbygoogle = window.adsbygoogle || []).push({}); Final Fantasy XIII-2 Save Hacking - Item Hacking Guide



I figured while Echelo and Genesis work out the finishing touches on their save editor, that I'd post the details of the hacks that were researched for people like me who are impatient and not afraid to use a hex editor.

Tools you will need:

Modio 4 beta

(not 3, unless you want to deal with it corrupting your saves randomly)
Jappi88's FFXIII-2 Save Editor (for APP.DAT decrypting/encrypting)
A good hex editor (I use the wonderful free tool, HxD)

.

BACK UP YOUR SAVE BEFORE EDITING! Its easy to end up with a corrupted save. Save yourself a headache and back up the save so you can restore if things break.
When loading the save, I advise highly saving again to a brand new save file and deleting your hacked save. This is due to the way the game handles saves. I've had problems with corrupted saves when I first started using Modio 3, and I also had a major headache when I first used Jappi's tool. I was able to load the save, but it couldn't save again over that save. In this particular case, it would fail silently. I couldn't figure out why I had cutscenes playing all over again when going from Historia Crux back into an area. And when I reset the game and tried to reload after playing for a few hours, I found myself with the original save I had hacked with all that time lost. I haven't had any problems since I started using Modio 4, but I would still recommend saving to a new save and deleting, since the game does not rewrite your entire save file when saving over an old file. So if the APP.DAT is loadable, but something else in the save is corrupted, it fails when it tries to save. Saving to a new file forces the game to rewrite everything.

1) Copy your save from your 360, either through USB, or FTP. You will find it in /Hdd1/Content/<Profile ID>/53510806/00000001
2) Open the Save in Modio 4. Right click on APP.DAT on the bottom and save the file.
3) open up the Save editor. Click on Tools-> Encryption -> Decrypt APP.DAT. Select your APP.DAT (be sure not to decrypt an already decrypted APP.DAT, or encrypt an already-encrypted one, I don't think the tool checks to see if it has been done already).
4) Open the APP.DAT in your hex editor. If you see semi-readable text on the bottom below the editor, you are golden. If you see jibberish on the bottom below the header, you didn't decrypt right.
5) Go to address 0x4A358. This should start regular items. Don't touch the number at 0x4A357, it won't be zero, but its not something we want to change. This goes the same for the other item sections.

Each item in the list is 18 bytes long. It starts with an ASCII identifier, and ends with a hex value for the number of that item you have, separated by zeroes. For example, potion is it_potion, and the hex you will see for it is "69 74 5F 70 6F 74 69 6F 6E 00 00 00 00 00 00 00 00 63". In this case, I have 0x63 of that item, or 99.

Click image for larger version Name: XIII-2-HxD.png Views: 71 Size: 76.8 KB ISad Awesome 5328

You CAN edit the number of items to be above 99, however the first time you get another of that item in battle, it will reset to 99. This is still desireable for batch levelling monsters. If you do this, and the number of items is more than 255, you use the last two bytes of the item, so there will be one less set of zeroes. This shows up in the above image for the last two items.

You can edit items in a few ways.
1) Change the quantity only. Change the last one (or two) bytes to the desired number. (The easiest method)
2) Add items to the end of the list. Make sure to start on the EXACT next byte after the number of the last item you have in that section.
3) Switch an undesireable item for one you want. Zero out the data on the left side/hex for that item, and rewrite the proper identifier in ascii on the right. Change the quantity, if desired.
4) If you're changing the list a lot, it may be easier to just make a list of only the items you want, and rewrite that section completely.

When you are done with the changes:

1) Save the file
2) Go back to the Save Editor, Tools -> Encryption -> Encrypt APP.DAT
3) Go back to Modio. Right-click on the file list on the bottom, select "Add File", select your APP.DAT, and select Yes when it asks you to overwrite the existing file in your save.
4) Copy your save back to your HD through usb or FTP.

Note about Accessories and Weapons: These don't have quantities, since multiples get their own listing. The quantity in the internal list is 0. These lists also lack the number that starts before the other lists, so you should have zeroed data up until these lists begin.

Item list start points (at least in my save);

Normal Items: 0x4A358
Components: 0x4CD94
Specialty Items: 0x524D4
Monster Materials: 0x527D8
Accessories: 0x59540
Weapons: 0x5AAE8


Here's a list of the item identifiers I have. This is merely those items that I personally wanted, feel free to add those you find.
Note: I'm not going to list identifiers for weapons and accessories. The internal lists for these are organized independent from what you see in the game. The list you see gets moved about as you equip items, and as you buy and sell, but the game never closes gaps on these lists when you rearrange the lists and just fills the gaps as items are added, making it a pain to confirm what items are which. I can say that accessories follow the format "acc_xxx_yyy" (like acc_000_000, which is probably the Iron Bangle). Weapons follow the format "wea_noe_xxx" and "wea_ser_xxx" (numbers for which start at 001 and end at ~029).


Normal Items

Potion: it_potion
Phoenix Down: it_phenxtal
Wound Potion: it_hpotion
Remedy: it_universal
Librascope: it_libra
Antidote: it_antidote
Holy Water: it_holywater
Wax: it_wax
Painkiller: it_sedative
Mallet: it_tonkati
Unicorn Horn: it_unico
Phoenix Blood: it_phenxbl
Elixir: it_elixir


Components

Shattered Bone: material_m004
Moistened Scale: material_m009
Abyssal Scale: material_m011
Iron Shell: material_m014
Monstrous Fang: material_m019
Sinister Fang: material_m020
Scaled Wing: material_m022
Abominable Wing: material_m023
Molted Tail: material_m025
Thickened Hide: material_m030
Fractured Horn: material_m049
Chocobo Plume: material_m061
Chocobo Tail Feather: material_m062
Enigmatic Fluid: material_m054
Transparent Ooze: material_m047
Sunpetal: material_m067
Moonblossom Seed: material_m074
Starblossom Seed: material_m075
Succulent Fruit: material_m072
Pot Shard: material_m077
Fractal Pot: material_m078
Analog Circuit: material_j014
Radial Bearing: material_j020
Thrust Bearing: material_j021
Cieth Tear: material_m057
Tear of Remors material_m059
Tear of Woe: material_m060
Superconductor: material_j042
Millerite: material_o000
Rhodochrosite: material_o001
Cobaltite: material_o002
Scarletite: material_o006
Adamantite: material_o007
Dark Matter: material_o008
Trapezohedron: material_o009
Gold Nugget: material_o011
Mutant Extract: material_b005


Specialty Items

Gysahl Greens: cc_gysahl
Casino Ticket: cs_chip_00
Gold Casino Ticket: cs_chip_01
Plat. Casino Ticket: cs_chip_02
Shuffle: cs_race_00
Shuffle (Common): cs_race_01
Shuffle (Graded): cs_race_02
Chocoboost: cs_cond_00
Chocobull: cs_cond_01


Monster Materials

Potent Droplet: material_a000
Potent Sliver: material_a001
Potent Orb: material_a002
Potent Essence: material_a003
Potent Crystal: material_a004
Potent Bolt: material_a035
Potent Chip: material_a036
Potent Engine: material_a037
Potent Booster: material_a038
Potent Generator: material_a039
Power Droplet: material_a005
Power Sliver: material_a006
Power Orb: material_a007
Power Essence: material_a008
Power Crystal: material_a009
Power Bolt: material_a020
Power Chip: material_a021
Power Engine: material_a022
Power Booster: material_a023
Power Generator: material_a024
Mana Droplet: material_a010
Mana Sliver: material_a011
Mana Orb: material_a012
Mana Essence: material_a013
Mana Crystal: material_a014
Mana Bolt: material_a025
Mana Chip: material_a026
Mana Engine: material_a027
Mana Booster: material_a028
Mana Generator: material_a029
Vitality Droplet: material_a015
Vitality Sliver: material_a016
Vitality Orb: material_a017
Vitality Essence: material_a018
Vitality Crystal: material_a019
Vitality Bolt: material_a030
Vitality Chip: material_a031
Vitality Engine: material_a032
Vitality Booster: material_a033
Vitality Generator: material_a034


Note: Bestiary info is recorded in 0x58242-0x58A84. Each entry is 9 bytes long. Writing FF to every entry here will complete your bestiary and let you complete the Monster Bestiary mission (just tested and confirmed this myself). Accessory Capacity is at 0x343E2 and 0x36D82. Two byte values won't work here, so the highest you can set this is 255(FF).
Last edited by damienx45 ; 02-14-2012 at 06:59 AM.
02-14-2012, 04:06 PM #2
Can anyone help me with this? I can get the save editor to work without any trouble but whenever I try to hex edit to get more items nothing changes... :(
02-14-2012, 06:08 PM #3
Thanks a lot man.

Any clues on which offset might be the one for Key Items?

Copyright © 2024, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo