Chicken Little HOG: Difference between revisions

From XentaxWiki
Jump to navigation Jump to search
imported>WATTO
No edit summary
imported>Ikskoks
No edit summary
 
(5 intermediate revisions by 3 users not shown)
Line 14: Line 14:
uint16 {2}&nbsp;&nbsp; - Version Major <font color="purple">(2)</font> <br>  
uint16 {2}&nbsp;&nbsp; - Version Major <font color="purple">(2)</font> <br>  
uint16 {2}&nbsp;&nbsp; - Version Minor <font color="purple">(1)</font> <br>  
uint16 {2}&nbsp;&nbsp; - Version Minor <font color="purple">(1)</font> <br>  
uint32 {4}&nbsp;&nbsp; - <font color="red"> '' Number Of Files? '' </font> <br>  
uint32 {4}&nbsp;&nbsp; - Number Of Files <br>  
uint32 {4}&nbsp;&nbsp; - Directory Length <br>  
uint32 {4}&nbsp;&nbsp; - Directory Length <br>  
uint32 {4}&nbsp;&nbsp; - Padding Size <font color="purple">(2048)</font> <br>  
uint32 {4}&nbsp;&nbsp; - Padding Size <br>  
byte {2032}&nbsp; - null Padding to offset 2048 <br>  
byte {0-x}&nbsp;&nbsp; - null Padding to offset ''<font color="green">"Padding Size"</font>'' <br>  
<br>
<br>
<font color="blue"> ''' // for each file ''' </font> <br>  
<font color="blue"> ''' // for each file ''' </font> <br>  
Line 28: Line 28:
: byte {1}&nbsp;&nbsp;&nbsp;&nbsp; - null Filename Terminator <br>  
: byte {1}&nbsp;&nbsp;&nbsp;&nbsp; - null Filename Terminator <br>  
<br>
<br>
byte {0-2047}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - null Padding to a multiple of 2048 bytes <br>  
byte {0-(''<font color="green">"Padding Size"-1</font>'')}&nbsp; - null Padding to a multiple of ''<font color="green">"Padding Size"</font>'' bytes <br>  
<br>
<br>
<font color="blue"> ''' // for each file ''' </font> <br>  
<font color="blue"> ''' // for each file ''' </font> <br>  
: byte {X}&nbsp;&nbsp;&nbsp;&nbsp; - File Data <br>  
: byte {X}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - File Data <br>  
: byte {0-2047}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; - null Padding to a multiple of 2048 bytes <br>  
: byte {0-(''<font color="green">"Padding Size"-1</font>'')}&nbsp; - null Padding to a multiple of ''<font color="green">"Padding Size"</font>'' bytes <br>  
</b></tt>
</b></tt><br>


=== MultiEx BMS ===  
=== MultiEx BMS ===  
<pre>ImpType Standard ;
Get FOOBAR Long 0 ;
Get FILENUM Long 0 ;
Get DIRSIZE Long 0 ;
Get PADSIZE Long 0 ;
Set TEMP Long PADSIZE ;
GoTo TEMP 0 ;
SavePos ENTOFF 0 ;
For Z = 1 To FILENUM ;
GoTo TEMP 0 ;
Math TEMP += 12 ;
Next Z ;
GoTo TEMP 0 ;
SavePos FNAMEOFF 0 ;
For X = 1 To FILENUM ;
GoTo ENTOFF 0 ;
Get FOOBAR Long 0 ;
SavePos FOFFSETX 0 ;
Get FOFFSET Long 0 ;
SavePos FSIZEX 0 ;
Get FSIZE Long 0 ;
SavePos ENTOFF 0 ;
GoTo FNAMEOFF 0 ;
Get FNAME String 0 ;
SavePos FNAMEOFF 0 ;
Log FNAME FOFFSET FSIZE FOFFSETX FSIZEX ;
Next X ;</pre>
=== Other Games ===
These games also use this format...
* Chicken Little *.hog
* Tak 3: The Great Juju Challenge (XBox) *.hog


Not written yet<br><br>
<br>
=== Supported Programs ===  
=== Supported Programs ===  


* [[Game Extractor|Game Extractor]]<br>
* [[Game Extractor|Game Extractor]]<br>
* [[MultiEx Commander|MultiEx Commander]]<br>
[[Category:File Format]]

Latest revision as of 12:00, 4 January 2021

Choose archive extension:

HOG


Format Specifications

uint16 {2}   - Version Major (2)
uint16 {2}   - Version Minor (1)
uint32 {4}   - Number Of Files
uint32 {4}   - Directory Length
uint32 {4}   - Padding Size
byte {0-x}   - null Padding to offset "Padding Size"

// for each file

uint32 {4}   - File ID?
uint32 {4}   - File Offset
uint32 {4}   - File Length


// for each file

char {X}     - Filename
byte {1}     - null Filename Terminator


byte {0-("Padding Size"-1)}  - null Padding to a multiple of "Padding Size" bytes

// for each file

byte {X}                     - File Data
byte {0-("Padding Size"-1)}  - null Padding to a multiple of "Padding Size" bytes


MultiEx BMS

ImpType Standard ;
Get FOOBAR Long 0 ;
Get FILENUM Long 0 ;
Get DIRSIZE Long 0 ;
Get PADSIZE Long 0 ;
Set TEMP Long PADSIZE ;
GoTo TEMP 0 ;
SavePos ENTOFF 0 ;
For Z = 1 To FILENUM ;
GoTo TEMP 0 ;
Math TEMP += 12 ;
Next Z ;
GoTo TEMP 0 ;
SavePos FNAMEOFF 0 ;
For X = 1 To FILENUM ;
GoTo ENTOFF 0 ;
Get FOOBAR Long 0 ;
SavePos FOFFSETX 0 ;
Get FOFFSET Long 0 ;
SavePos FSIZEX 0 ;
Get FSIZE Long 0 ;
SavePos ENTOFF 0 ;
GoTo FNAMEOFF 0 ;
Get FNAME String 0 ;
SavePos FNAMEOFF 0 ;
Log FNAME FOFFSET FSIZE FOFFSETX FSIZEX ;
Next X ;

Other Games

These games also use this format...

  • Chicken Little *.hog
  • Tak 3: The Great Juju Challenge (XBox) *.hog

Supported Programs