Vicarious Visions GOB GFC: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks |
imported>Ikskoks |
||
| (23 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 \ Big Endian<br> | ||
* ''' Signature ''': 00 00 80 08 | * ''' Signature ''': 00 00 80 08 \ 0x8008 <br> | ||
| Line 11: | Line 11: | ||
<div class="toccolours mw-collapsible" id="mw-customcollapsible-myDivision" style="width:800px; overflow:auto;"> | <div class="toccolours mw-collapsible" id="mw-customcollapsible-myDivision" style="width:800px; overflow:auto;"> | ||
<pre> | <pre> | ||
// GFC file | // GFC file format (based on "Jedi Academy" Goblib source code) | ||
// header | // header | ||
| Line 18: | Line 18: | ||
4 bytes (uint32) - number of blocks | 4 bytes (uint32) - number of blocks | ||
4 bytes (uint32) - number of files | 4 bytes (uint32) - number of files | ||
// block table | |||
num_of_blocks * | |||
{ | |||
4 bytes (uint32) - compressed file size | |||
4 bytes (uint32) - file offset | |||
4 bytes (uint32) - next | |||
} | |||
// block CRCs | |||
num_of_blocks * | |||
{ | |||
4 bytes (uint32) - block CRC | |||
} | |||
// basic file table | |||
number_of_files * | |||
{ | |||
4 bytes (uint32) - file hash | |||
4 bytes (uint32) - decompressed file size | |||
4 bytes (uint32) - block (file ID?) | |||
} | |||
// extended file table | |||
number_of_files * | |||
{ | |||
96 bytes (char) - file name | |||
4 bytes (uint32) - CRC | |||
4 bytes (uint32) - time | |||
} | |||
</pre> | |||
</div> <br> | |||
<div class="toccolours mw-collapsible" id="mw-customcollapsible-myDivision" style="width:800px; overflow:auto;"> | |||
<pre> | |||
// GOB file format (based on "Jedi Academy" Goblib source code) | |||
num_of_files * | |||
{ | |||
x bytes - ZLIB compressed file data | |||
} | |||
</pre> | </pre> | ||
</div> | </div> | ||
| Line 24: | Line 65: | ||
* This file format occurs in games made by '''Vicarious Visions'''. | * This file format occurs in games made by '''Vicarious Visions'''. | ||
* '''GFC''' is an index file and '''GOB''' holds all the data. | |||
* File format may have some differences between games. | |||
=== Games === | === Games === | ||
| Line 43: | Line 86: | ||
* [https://jkhub.org/files/file/3234-unofficial-vicarious-visions-gob-tools/ GOB Tools] | * [https://jkhub.org/files/file/3234-unofficial-vicarious-visions-gob-tools/ GOB Tools] | ||
* Goblib (from Jedi Academy source code) [https://github.com/jedis/jediacademy/blob/master/code/goblib/goblib.h goblib.h] / [https://github.com/jedis/jediacademy/blob/master/code/goblib/goblib.cpp goblib.cpp] | |||
* Jedi Academy source code [https://github.com/jedis/jediacademy/blob/master/code/goblib/goblib.h goblib.h] / [https://github.com/jedis/jediacademy/blob/master/code/goblib/goblib.cpp goblib.cpp] | |||
<br/><br> | <br/><br> | ||
| Line 60: | Line 100: | ||
[[Category:Extension_gob | Extension: gob]] | [[Category:Extension_gob | Extension: gob]] | ||
[[Category:Extension_gfc | Extension: gfc]] | [[Category:Extension_gfc | Extension: gfc]] | ||
[[Category:ZLIB compression]] | |||
[[Category:File Format]] | [[Category:File Format]] | ||
Latest revision as of 15:57, 20 March 2022
Back to index | Edit this page
GOB, GFC
- Format Type : Archive
- Endian Order : Little Endian \ Big Endian
- Signature : 00 00 80 08 \ 0x8008
Format Specifications
// GFC file format (based on "Jedi Academy" Goblib source code)
// header
4 bytes (uint32) - signature // 00 00 80 08
4 bytes (uint32) - GOB archive size
4 bytes (uint32) - number of blocks
4 bytes (uint32) - number of files
// block table
num_of_blocks *
{
4 bytes (uint32) - compressed file size
4 bytes (uint32) - file offset
4 bytes (uint32) - next
}
// block CRCs
num_of_blocks *
{
4 bytes (uint32) - block CRC
}
// basic file table
number_of_files *
{
4 bytes (uint32) - file hash
4 bytes (uint32) - decompressed file size
4 bytes (uint32) - block (file ID?)
}
// extended file table
number_of_files *
{
96 bytes (char) - file name
4 bytes (uint32) - CRC
4 bytes (uint32) - time
}
// GOB file format (based on "Jedi Academy" Goblib source code)
num_of_files *
{
x bytes - ZLIB compressed file data
}
Notes and Comments
- This file format occurs in games made by Vicarious Visions.
- GFC is an index file and GOB holds all the data.
- File format may have some differences between games.
Games
List of games using this file format:
- Crash Nitro Kart (XBOX / Gamecube / Playstation 2)
- Crash Team Racing (XBOX / Gamecube / Playstation 2)
- Doom 3 (XBOX)
- Over the Hedge (Nintendo DS) (*.GOB / *.GFC)
- Star Wars Jedi Knight: Jedi Academy (XBOX)
- Star Wars Jedi Knight II: Jedi Outcast (XBOX)
- Tony Hawk’s American Sk8land (Nintendo DS) (*.GOB / *.GFC)
- Transformers Decepticons (Nintendo DS)
QuickBMS Script
Compatible Programs
- GOB Tools
- Goblib (from Jedi Academy source code) goblib.h / goblib.cpp