City Interactive DPK: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
imported>Ikskoks
imported>Ikskoks
 
(10 intermediate revisions by the same user not shown)
Line 3: Line 3:
* ''' Format Type ''':    Archive <br>  
* ''' Format Type ''':    Archive <br>  
* ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br>  
* ''' [http://en.wikipedia.org/wiki/Endianness Endian Order] ''': Little Endian <br>  
* ''' Signature ''':    DPK4 <br>




Line 8: Line 9:


<tt><b>
<tt><b>
uint32 {4}&nbsp;&nbsp; - Header <font color="purple">(DPK4)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Signature <font color="purple">(DPK4)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Archive Size <font color="purple">(in bytes)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Archive Size <font color="purple">(in bytes)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Directory Length <font color="purple">(not including these 4 fields)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Directory Size <font color="purple">(not including these 4 fields)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Number of Files in the Archive <br>  
uint32 {4}&nbsp;&nbsp; - Number of Files in the Archive <br>  
<br>
<br>
<font color="blue"> ''' // for each file ''' </font> <br>  
<font color="blue"> ''' // for each file ''' </font> <br>  
: uint32 {4}&nbsp;&nbsp; - File Entry Length <br>  
: uint32 {4}&nbsp;&nbsp; - File Entry Size <br>  
: uint32 {4}&nbsp;&nbsp; - Decompressed File Size <br>  
: uint32 {4}&nbsp;&nbsp; - Decompressed File Size <br>  
: uint32 {4}&nbsp;&nbsp; - Compressed File Size <br>  
: uint32 {4}&nbsp;&nbsp; - Compressed File Size <br>  
Line 59: Line 60:


* [http://aluigi.altervista.org/bms/xentax_cs/Project_Eearth_DPK.bms Project_Eearth_DPK.bms]
* [http://aluigi.altervista.org/bms/xentax_cs/Project_Eearth_DPK.bms Project_Eearth_DPK.bms]
* [https://github.com/bartlomiejduda/Tools/blob/master/NEW%20Tools/City%20Interactive%20Games/City_Interactive_DPK_script.bms City_Interactive_DPK_script.bms]


=== Supported Programs ===  
=== Supported Programs ===  
Line 73: Line 75:
* Space Interceptor *.dpk
* Space Interceptor *.dpk
* Starmageddon *.dpk
* Starmageddon *.dpk
* Starmageddon 2 *.dpk
* Starmageddon 2 / Space Interceptor *.dpk
* Terrorist Takedown *.dpk
* Terrorist Takedown *.dpk
* Wings of Honour *.dpk
* Wings of Honour *.dpk

Latest revision as of 18:06, 25 June 2023

DPK

  • Format Type : Archive
  • Endian Order : Little Endian
  • Signature : DPK4


Format Specifications

uint32 {4}   - Signature (DPK4)
uint32 {4}   - Archive Size (in bytes)
uint32 {4}   - Directory Size (not including these 4 fields)
uint32 {4}   - Number of Files in the Archive

// for each file

uint32 {4}   - File Entry Size
uint32 {4}   - Decompressed File Size
uint32 {4}   - Compressed File Size
uint32 {4}   - File Offset
char {X}     - Filename
byte {1}     - null Filename Terminator
byte {0-3}   - null padding to a multiple of 4 bytes


byte {X}     - File Data

MultiEx BMS

IDString 0 DPK4 ;
ComType ZLib1 ;
ImpType Standard ;
Get ASize Long 0 ;
Get HSize Long 0 ;
Get FNum Long 0 ;
For T = 1 To FNum ;
SavePos TJ 0 ;
Get ESize Long 0 ;
SavePos UCSOff 0 ;
Get UCSize Long 0 ;
SavePos CSizeOff 0 ;
Get CSize Long 0 ;
SavePos OOF 0 ;
Get Offset Long 0 ;
Get FN String 0 ;
Math TJ += ESize ;
GoTo TJ 0 ;
CLog FN Offset CSize OOF CSizeOff UCSize UCSOff ;
Next T ;

Notes and Comments

  • This file format occurs in many games from City Interactive S.A. / CI Games S.A.
  • File format uses ZLIB compression for the files.


QuickBMS Scripts

Supported Programs


Other Games

These games also use this file format

  • Battle Strike - The Road To Berlin *.dpk
  • Project Earth *.dpk
  • Space Interceptor *.dpk
  • Starmageddon *.dpk
  • Starmageddon 2 / Space Interceptor *.dpk
  • Terrorist Takedown *.dpk
  • Wings of Honour *.dpk