Final Fantasy XII: The Zodiac Age
0 of 0

File information

Last updated

Original upload

Created by

ffgriever

Uploaded by

ffgriever

Virus scan

Safe to use

Tags for this mod

About this mod

Combo of module loader and a module that enables reading unpacked files from a directory instead of the VBF archive. This means your game files are always left unchanged, installing and uninstalling mods takes much less time, no filesize table modifications are needed and you can easily restore original game with a single click.

Requirements
Permissions and credits
Mirrors
Changelogs
Final Fantasy XII External File Loader

This is a new solution that enables reading unpacked files from a directory instead of the VBF archive. This means your game files are always left unchanged, installing and uninstalling mods takes much less time, no filesize table modifications are needed and you can easily restore original game with a single click.

In fact it consists of two separate applications bundled together for ease of use.

FF12 Module Loader

A library that allows native (.dll) modules to be loaded upon starting the game and enable various features that ease the usage, installation and management of mods (but modules are not limited to that).

Requirements: Microsoft Visual C++ 2015-2019 Redistributable (x64)

(If you have an older version installed, the package includes vcruntime140_1.dll now, but it's always best to just install it)

The module loader supports both dxgi.dll and dinput8.dll hijack, but dinput8.dll is default and recommended option. The dxgi.dll variant is there only if you have something else installed as dinput8.dll. So if you want to use it with SweetFX etc, it's possible (just note, that Nostalgia Colors Mod contains a version of sweetdx that causes unhandled exception when closing the game, thus calling exit(), thus terminating all threads, thus not allowing cleanup code to be executed, which leads to modules not receiving exit event). Just make sure the module loader is not loaded as both files simultaneously or some weird stuff might happen.


FF12 External File Loader

It's a new, improved way to install mods. It allows the game to read unpacked files from a directory instead of the VBF archive. It doesn't require any modifications to the big, 30GB VBF file, doesn't require modifications to file size tables and it's faster and safer. If needed, vanilla game state (including unmodified archives) can be restored within seconds. It is strongly recommended to use this method instead of traditional VBF repacking. The sizes are taken directly from the loaded files (still uses FST for files loaded from VBF, obviously). You can also literally unpack the whole VBF archive and then remove the VBF file if you want. This can slightly shorten loading times, even more so in combination with disabling auto-saves. It also comes with a few configuration settings like logging file access or a mod load order (see below for more details).

It's a module for the mentioned above module loader. It's been thoroughly tested and is stable. It's also probably the final version, unless some additional features will be needed.

Loading unpacked files
Starting with version 1.3.3 of the External File Loader, loading unpacked files is possible. Currently supported are:
  • EBP files
  • Battle pack and word.bin
  • Texture packs
  • Clut packs
  • Font packs
  • Mrp pack


In all cases loader will look for section_### (three digits with leading zeros) file in a directory with the name consisting of packed file name plus ".dir" extension. Extensions for sections vary depending on file. For texture packs and font packs it's ".tm2", for mrp pack it's ".mrp", for clut pack it's ".clt2", for everything else, it's ".bin". Whole unpacked files are supported as well as single sections (missing sections will be taken either from other mods, other directories, depending on priority or even VBF file if necessary).

E.g. you can distribute only:
ps2data/image/ff12/test_battle/us/binaryfile/battle_pack.bin.dir/section_061.bin.dir/section_000.bin
or
ps2data/image/ff12/myoshiok/us/packfiles/texpack_ys.bin.dir/section_004.tm2

How to Install:

  • Download, install and open the Vortex Mod Manager.
  • Select Games on the left side bar.
  • Search for Final Fantasy XII and select Manage.
  • Now simply go to files and install this mod (or use a popup that will be shown in Vortex).

Now you should be ready and able to install mods from either the Mods side bar of Vortex or by selecting the Mod Manager Download button in the files tab of a mod.

This module requires FF12 Vortex Game Support Extension version 0.8.0 or above (it should auto update in vortex).

Configuration

Adding configuration options directly in FF12 Vortex Extension is planned for the next update, but for now you'll have to do it manually, if you want to change anything. There are two configuration files:

{Game directory}/x64/hook.ini


; FF12 module loader configuration file. Only ANSI and UTF16 encoding supported!
; Unless specified otherwise, all relative paths start in game's x64 directory

[general]
; If set to true, [modules] section contains list of specific modules to load
; rather than list of directories
disableAutoLoad=false

; List of paths to autoload modules from. If no entry is specified or the config
; file is missing, defaults to single path "modules". If disableAutoLoad is set
; to true, it has to contain list of complete module paths rather than
; directories
[modules]
default=modules

[log]
; Do not allocate console nor send anything to stdout
disableConsole=true
; Disable creating and writing to a file log
disableFile=false
; Set log file path
logFile=hook.log


and {Game directory}/x64/modules/config/ff12-file-loader.ini

[Logging]
; Change this value, if you want the loader to print all files that are accessed
; by the game.
logAccess=false

; Simply add new paths here. Each causes additional IO, so try not to have too
; many of them. Key name doesn't matter. Both absolute and relative paths are
; supported. Relative paths start in game's main directory. Paths higher on the
; list have priority.
[Paths]
mods=mods\deploy\ff12data
; unpacked_vbf=FFXII_TZA