Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

Yggdra Union: We'll Never Fight Alone (PlayStation Portable)/ROM map

From Data Crystal
Jump to navigation Jump to search

Chip tiny.png The following article is a ROM map for Yggdra Union: We'll Never Fight Alone (PlayStation Portable).

General

This game uses CRIWARE. It is unknown if .afs files are CRIWARE archives.

The main archive file is data0.afs. The full path is PSP_GAME\USRDIR\Data\data0.afs.

All offsets below are absolute (i.e., relative to the start of the file) unless otherwise noted.

AFS Files (main game data archives)

This fork of Puyo Tools will extract the files using the format INDEX-FILENAME (where INDEX is the zero-padded index of the file) when the "Prepend" option is checked. As an alternate method, the Python 3 code on the notes page can be used.

File List

Files in folder PSP_GAME\USRDIR\Data on the UMD or game image. data0 contains most game data, voiceDataEng and voiceDataJpn contain voice clips, 0flist function is unknown and bgmData contains music data.

Subfile Naming Convention

Some files in the data0 archive have the same name and other files have no name at all. Files will be referred to using one of three options:

  • A four-digit file number indexed by the order they appear in the archive (example: 0000 for the first file)
  • The same four digit number plus a dash plus the file name (example: 0000-ExiData.zlb)
  • The same four digit number plus a false extension based on the file type (example: 0354-Br.fct, note that the data0 file name for this file is simply Br)

File Format

Header
Offset What
0x0 IDSTRING = "AFS\x00" (hex: 41 46 53 00)
0x4 Number of files
File offsets table
Offset What
Entry size 0x8. Offsets below are offsets within each entry.
0x0 Offset
0x4 File size

After this is 0x8 bytes with the location and size of the file information table.

Offset What
0x0 Position of file information table
0x4 Size of file information table
File information table
Offset What
Entry size 0x30. Offsets below are offsets within each entry.
0x0 File name and extension padded with nulls. Some files don't have a name.
0x20 File information. The function of the values is unknown.

There are some PNG files in here that will not be described further. PNG files are specified by Sony for PSP save file icons.

File ID
1325 through 1336 (filename = SaveDataIco)


FCT (archive file)

File List

The following list is not complete and counts only files whose top-level format is FCT. Additional FCT files are present within ZLB archives.

File ID
0001-SoundPack.fct
0354 through 0409 (filename = "Br")
0524-B
0614 through 0682
0614 through 0682
0826 through 0850 (filename = "Char_Status")
0852 through 0855 (filename = "Endi")
0856-Even
1309 through 1324 (various filenames)

File Format

Samples:

  • data0.afs/0000-ExiData.zlb (after decompressing)
  • data0.afs/0524-B
Header
Offset What
0x0 IDSTRING = "FCT\x00" (hex: 70 67 84 00)
0x4 Number of files
0x8 File offsets table offset
0xC 0
File offsets table
Offset What
Entry size 0x8. Offsets below are offsets within each entry.
0x0 Offset
0x4 File size

CNS Files (unknown)

Unknown function and format. The ID string is "@CNS" (hex: 40 43 4E 53).

List of Files

File ID
0121 through 0194 (filename = "btlc")
1411-Char

PTX File (image)

PTA, PTG and PTP all contain PTX as part of their format.

List of Files

File ID
0006 through 0063 (filename = AtkSideBelt)
0195 through 0280 (filename = btl_)
0281 through 0313 (filename = Gaug)
0315 through 0351 (filename = None)
0410 through 0455 (filename = Fa)
0456 through 0460 (filename = Wo)
0858 through 0924 (filename = e)
0983 through 0996 (filename = None)
0997 through 1059 (filename = un
1123-bt

File Format

Offset What
0x0 ID string = "PTX@" (hex: 50 54 58 40)
0x4 Texture size X. For example, 0x9 would specify a tex width of 29 or 512 pixels.
0x5 Texture size Y. See above.
0x6 Unknown
0x8 Image size X
0xA Image size Y
0xC Color bits. 0x4 for 4-bit color. 0x5 for 8-bit color.
0xD through 0x18 Unknown
0x18 Offset to color table
0x1C Offset to pixels

Color format RGBA.

PTG File (image archive)

Contains multiple PTXs.

File List

Need example of PTG using more than two PTX.

File ID
0064 through 0092 (filename = AtkSideBelt)
0093 through 0120(filename = None)
0525 through 0613 (filename = bust)
0683 through 0719 (filename = Card_0, Card_1, Card_2 or Card_3)
0801through 0825 (various filenames)
1063 through 1121 (filename = Field_UnitL)
1124 through 1146 (filename = bu)

File Format

Offset What
Header
0x0 ID string = "PTG@" (hex: 50 54 47 40)
0x4 Table offset? Usually 0x20.
0x8 First PTX
0xC Second PTX
0x10 Canvas width
0x12 Canvas height
0x14 Count of pieces using first PTX
0x16 Count of pieces using second PTX.
0x18 through 0x20 Zeros.
0x20 Start of tables

The number of draw data table records equals the sum of piece counts of the first and second PTX from the header.

Offset What
Draw Data Table
Entry Size 0x14. Offsets below are within each entry.
0x0 Horizontal read start offset
0x2 Vertical read start offset
0x4 Horizontal write start offset
0x6 Vertical write start offset
0x8 0
0xA Horizontal read end offset
0xC Vertical read end offset
0xE Horizontal write end offset
0x10 Vertical write end offset
0x12 0

The second PTX shares the color table of the first PTX. Second PTX is always 8 pixels tall?