IFF format - Galaxy1036/AL-Assets-RE GitHub Wiki

IFF format is widely by the game, it's actually a known format (see here), but Arcane Legends is using custom IFF file format for their assets

Format

IFF FourCC (4 char)

Can be either "PIFF" (probably means PakIFF) or "IFF2"

Block of data

Blocks can be either FORM or CHUNK and use the following structures

Data type Length Purpose
UINT24 3 Block data size
UINT8 1 Block Type, either 0x43 ('C' as ascii, which means CHUNK) or 0x46 ('F' as ascii, which means FORM)
FourCC (4 char) 4 Block tag
Raw bytes Block data size Block data

Chunks block data only contains raw binary data where form only contains nested FORMS or chunks. Note: the IFF always start with a ROOT form that contains all others forms & chunks.

Representation

IFF format can easily be represented using xml:

<?xml version="1.0" ?>
<form tag="ROOT">
   <form tag="GEOM">
      <form tag="0000">
         <form tag="PRIM">
            <form tag="0002">
               <chunk tag="SHDR"/>
               <form tag="VBF ">
                  <chunk tag="0003"/>
               </form>
               <chunk tag="VRTX"/>
               <chunk tag="INDX"/>
               <chunk tag="BOX "/>
            </form>
         </form>
      </form>
   </form>
</form>
⚠️ **GitHub.com Fallback** ⚠️