FFXII Editor

Introduction

FFXII Editor is a savegame/memory editor for Final Fantasy XII. FFXII Editor enables you to do the following:

FFXII Editor works with NTSC-U/C version and it might not work with PAL or NTSC-J versions of Final Fantasy XII. Also, please keep in mind the editor is not supposed to work with Final Fantasy XII International Zodiac Job System, there is FFXII IZJS Editor for that.

Requirements

FFXII Editor requires Microsoft .NET Framework 2.0 or higher installed on your system. You can download the latest version here: http://www.microsoft.com/net/download.aspx.

Please note: FFXII Editor has been tested only on Windows 7 x86 (32-bit) and I don't know whether its Memory Editor feature will work on 64-bit systems.

Working with savegame files

FFXII Editor supports the following save file formats: AR MAX (.pws and .max), CodeBreaker (.cbs), Memory Linker (.psu) and, of course, RAW save format too. You can export your FFXII savegame files from PCSX2 emulator memory cards using mymc utility. For the information on how to use it see the mymc documentation or check this link: How to use the myMC tool to import/export saves from PCSX2.

To export savegame files from the PlayStation 2 memory cards you can use uLaunchELF utility. Check these links for more information:

If your savegame files are not supported by the editor, try to use PS2 Save Converter or PS2 Save Builder utilities to convert your savegame files to a supported format. Here are some useful links:

Before editing a savegame, make sure you have a backup copy of the savegame file, in case Final Fantasy XII rejects the changes, then click File > Open SaveGame and open your savegame file.

Working with PS2 emulator memory

I tried to make FFXII Editor to be emulator-independent memory editor, and hopefully it will work with any version of PCSX2 or any other PS2 emulators. By default FFXII Editor is configured to work with PCSX2 version 0.9.7 r4029 or higher, since they use static memory address for allocating PS2 RAM. But if you're using an earlier version or another PS2 emulator, the editor will request you to adjust Gil Address. Gil Address is a pointer to Gil field of Final Fantasy XII in the PS2 emulator memory. FFXII Editor requires the Gil Address to compute addresses for the other fields. I chose the Gil field as orientation for the other fields, because it is available from the beginning of the game and it can be easily found by memory scanners. FFXII Editor is also able to perform search for the Gil Address, so I hope you won't face any problems here.

Before opening PS2 emulator memory for editing, make sure it has running Final Fantasy XII and you have loaded previously saved game or started a new game, then click File > Open Process and select your running PS2 emulator from the Process List.

Natural, Temporary and Permanent effects

While researching Final Fantasy XII data, I have discovered three types of Status Effects, and according to their properties, I have classified them into the following groups:

Forcing changes take effect

Some fields in FFXII Editor require additional actions from the user in order to changes take effect. Here are some of them:

Fields: Required actions:
Characters HP, MP, equipment, License Tree, etc... Touch a Save Crystal. Final Fantasy XII will recalculate the characters stats.
Characters EXP Kill a foe to update the EXP-dependent data.
Party Editor and Equipments. Change or re-enter your current area.
Gil, Clan Points, Inventory, etc... Reopen the Party Screen.

Limitations and known issues:

From the Author

For those who have never played the game before I don't recommend using this editor to make your game easier, since too easy gameplay can cause a loss of interest in the game itself.
But if you find the game too easy, you can make your game harder, for example by lowering your characters stats and activating the Weak-Mode feature which prevents gaining EXP for defeating foes.
Another interesting use of the editor is to customize the Battle Menu by disabling unwanted Magicks and Technicks. :P

I hope this document was clear to understand, if not I apologize for my English, I live in Kazakhstan. :)
I want to thank the following people for their direct/indirect contributions:

Author: Contribution:
tyreafus for the FFXII savegame checksum info
ZERO369 for giving some useful info
Aten Guest character editor idea was stolen from Aten's Ivalice SE editor, and it developed into Party Editor :)
ffgriever for the PSU format info, source codes and especially for FFXII English conversion patch
gothi for the AR Max save format specification
[)amien for the article: Calculating CRC-32 in C# and .NET
PCSX2 team for the great PS2 emulator :)

Thanks for reading,
_DTG_