Important information: this site is currently scheduled to go offline indefinitely by end of the year.

Namco/Tecmo Root Archive [*.OLK | PS2/XBOX]

The Original Forum. Game archives, full of resources. How to open them? Get help here.
Post Reply
User avatar
TopazTK
beginner
Posts: 20
Joined: Thu Mar 21, 2019 6:26 pm
Has thanked: 2 times
Been thanked: 14 times

Namco/Tecmo Root Archive [*.OLK | PS2/XBOX]

Post by TopazTK »

This thread is a specification of the archive format used by Namco and Tecmo in game series like Soul Calibur and Dead or Alive respectively in the PS2/XBOX era, which have the ".olk" extension.

Format Specifications:
  • PS2/XBOX Checksum Enabled [Valid If: FileSize % 16 = 0]
  • 32-bit Format
  • Sub-File Offsets must be divisible by OffsetPad.
  • Maximum Capacity of over 2.000.000 Sub-files
  • Minimum Capacity of 0 Sub-files
  • Unused Section do NOT affect the game.
  • Value-Dependent Archive, any sections not declared by Offset+Size does NOT affect the game.
Format Structure:
The code given is a psuedo code inspired by 010 Editor's Template Language.

Code: Select all

struct FILE
{
	struct HEADER
	{
		int EntryCount;
		int MagicCode; // Always 0x6B6E6C6F
		int OffsetPad;
		int UNUSED;
		int ArchiveOffset;
		int ArchiveSize;
		time_t ArchiveDate;
		int UNUSED;
	} header;
	
	struct ENTRY
	{
		int FileOffset;
		int FileSize;
		time_t FileDate;
		int UNUSED;
	} entry[file.header.EntryCount];
	
	char DATA[];
} file;
Interesting Tidbits:
  • Format is Value-Dependent, it does not care what happens outside of it's declared offsets and unused offsets do not affect the game if changed. Meaning the format can be modified alongside with unused offsets to give it extra functionality with modding tools, such as sub-file names, etc.
Post Reply