Skip to main content

RPKG

RPKGs (Resource Packages) are the archive format Glacier 2 Engine games use.

HITMAN 3

Base archive structure

TypeDescription
string2KPR
uint32_tunknown (always seems to be 0x1)
uint8_tchunk number
uint8_tchunk type (0x00 standard, 0x01 addon)
uint8_tchunk patch number
uint8_tunknown (always seems to be 0x78)
uint8_tunknown (always seems to be 0x78)
uint32_tresource count
uint32_tresource data table size
resource data table, per entry:
TypeDescription
uint64_tresource hash value (runtimeID)
uint64_tresource data offset
uint32_tresource (compressed) data size
resource meta data table, per entry:
TypeDescription
unsigned char[4]type extension
uint32_tresource references table size
uint32_tresource states table size (unused)
uint32_tresource (uncompressed) size final
uint32_tresource size requirement inside memory
uint32_tresource size requirement inside video memory
if the resource references table size is > 0 and there are hash references
TypeDescription
uint32_tresource reference count
reference flags, per entry:
TypeDescription
uint8_treference's flag
reference RuntimeIDs, per entry:
TypeDescription
uint64_treference's runtimeID

Patch archive structure

TypeDescription
string2KPR
uint32_tunknown (always seems to be 0x1)
uint8_tchunk number
uint8_tchunk type (0x00 standard, 0x01 addon)
uint8_tchunk patch number
uint8_tunknown (always seems to be 0x78)
uint8_tunknown (always seems to be 0x78)
uint32_tresource count
uint32_tresource data table size
uint32_tpatch deletion entry count
patch entries (if patch deletion entry count > 0):
TypeDescription
uint64_tresource hash value (runtimeID)
resource data table, per entry:
TypeDescription
uint64_tresource hash value (runtimeID)
uint64_tresource data offset
uint32_tresource (compressed) data size
resource meta data table, per entry:
TypeDescription
unsigned char[4]type extension
uint32_tresource references table size
uint32_tresource states table size (unused)
uint32_tresource (uncompressed) size final
uint32_tresource size requirement inside memory
uint32_tresource size requirement inside video memory
if the resource references table size is > 0 and there are hash references
TypeDescription
uint32_tresource reference count
reference flags, per entry:
TypeDescription
uint8_treference's flag
reference RuntimeIDs, per entry:
TypeDescription
uint64_treference's runtimeID