Electronic Arts LIB Game Archive

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
m (Add Electronic Arts category)
m (Wording fixes)
 
Line 5: Line 5:
 
}}
 
}}
  
'''Electronic Arts LIB Game Archive''' is an archiving format used in some video games, add-ons and toolings released by Electronic Arts during the 1990s.
+
'''Electronic Arts LIB Game Archive''' is an archiving format used in some video games, add-ons and toolkits released by Electronic Arts during the 1990s.
  
 
== Identification ==
 
== Identification ==
Line 30: Line 30:
 
| 1  || [[LZSS]]-style compression, probably [[LZSS_(Haruhiko_Okumura)|Okumura's LZSS]]
 
| 1  || [[LZSS]]-style compression, probably [[LZSS_(Haruhiko_Okumura)|Okumura's LZSS]]
 
|-
 
|-
| 3  || Looks like an special mode for pictures (data starts with <code>PXPK</code>)
+
| 3  || Looks like a special mode for pictures (data starts with <code>PXPK</code>)
 
|-
 
|-
 
| 4  || [[PKWARE DCL Implode]]
 
| 4  || [[PKWARE DCL Implode]]
 
|}
 
|}
 
|-
 
|-
| 14 || 4 bytes  || Absolute offset of the file data inside the archive
+
| 14 || 4 bytes  || Absolute offset of the file data in the archive
 
|}
 
|}
  
Line 44: Line 44:
 
== Software ==
 
== Software ==
  
* https://aluigi.altervista.org/bms/ealib.bms - Script for [https://aluigi.altervista.org/quickbms.htm QuickBMS] that extracts and decompresses, when possible, files from an EALIB archive
+
* https://aluigi.altervista.org/bms/ealib.bms - Script for [https://aluigi.altervista.org/quickbms.htm QuickBMS] that extracts and, when possible, decompresses files from an EALIB archive
 
* https://www.watto.org/extract - Watto's Game Extractor supports EALIB archives (although extraction might be buggy)
 
* https://www.watto.org/extract - Watto's Game Extractor supports EALIB archives (although extraction might be buggy)
  

Latest revision as of 06:05, 27 November 2025

File Format
Name Electronic Arts LIB Game Archive
Ontology
Released 1990

Electronic Arts LIB Game Archive is an archiving format used in some video games, add-ons and toolkits released by Electronic Arts during the 1990s.

Contents

[edit] Identification

Archives begin with the ASCII string EALIB (hexadecimal 45 41 4c 49 42).

[edit] Format details

Byte order is little-endian. The count of file records in the archive follows the EALIB signature as a 2-byte integer. This count does not include the unnamed final record. Each record has a fixed length of 18 bytes.

[edit] File record

Offset Size Description
0 13 bytes File name (up to 8+3 characters, plus dot), null-terminated and padded
13 1 byte Compression method
Value Meaning
0 Uncompressed (stored)
1 LZSS-style compression, probably Okumura's LZSS
3 Looks like a special mode for pictures (data starts with PXPK)
4 PKWARE DCL Implode
14 4 bytes Absolute offset of the file data in the archive

Records appear sorted by their offset fields in ascending order, so the size allocated to extract any file can be calculated from two consecutive records. A special record with an empty file name follows the last valid file. The offset field in this record should be the whole size of the archive.

When the compression method is 1 or 4, the uncompressed size immediately precedes the compressed stream as a 4-byte integer.

[edit] Software

[edit] Sample files

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox