Juiced DAT: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks No edit summary |
imported>Ikskoks |
||
| (28 intermediate revisions by 2 users not shown) | |||
| Line 26: | Line 26: | ||
<font color="blue"> ''' // Directory ''' </font> <br> | <font color="blue"> ''' // Directory ''' </font> <br> | ||
: <font color="blue"> ''' // for each file ''' </font> <br> | : <font color="blue"> ''' // for each file ''' </font> <br> | ||
:: uint32 {4} - | :: uint32 {4} - File Hash<br> | ||
:: uint32 {4} - File Offset <br> | :: uint32 {4} - File Offset <br> | ||
:: uint32 {4} - Number of File Parts <br> | :: uint32 {4} - Number of File Parts <br> | ||
| Line 40: | Line 40: | ||
=== Notes and Comments === | === Notes and Comments === | ||
* Files are | * Files are compressed with ZLIB. | ||
* The files in the archive are in a different order to the files in the directory. eg File 1 in the directory may be File 523 in the archive. | * The files in the archive are in a different order to the files in the directory. eg File 1 in the directory may be File 523 in the archive. | ||
* Files are stored in sorted order of their original filenames, then in the directory entries are listed sorted by their file hash. | |||
* Each file can have multiple compressed parts. Each part is described at each file offset. To determine how many parts there are in a file, go to the file offset and read the first field (firstPartOffset). Then do (firstPartOffset-fileOffset)/8 and you have the number of parts. (or you can just read the field in the directory!) | * Each file can have multiple compressed parts. Each part is described at each file offset. To determine how many parts there are in a file, go to the file offset and read the first field (firstPartOffset). Then do (firstPartOffset-fileOffset)/8 and you have the number of parts. (or you can just read the field in the directory!) | ||
* Directory Entries which have NULLs after File Offset appear to be folders. | |||
<br><br> | <br><br> | ||
=== Compatible Programs === | === Compatible Programs === | ||
* [[Game Extractor|Game Extractor]]<br> | * [[Game Extractor|Game Extractor]] | ||
* [https://github.com/Ekey/JCED.DAT.Tool JCED.DAT.Tool / JCED.Unpacker (+ source code)] | |||
* [http://www.nfsunlimited.net/forum/download/file.php?id=15182&sid=285bb9d37ef4d4bc42c922bd3e000853 Juiced Archive Ripper (JAR)] | |||
* [https://drive.google.com/file/d/1vH2PiGGvRKZ3ubqVnREoWDZcAEK0x_ak/view?usp=sharing Juiced UnDAT] | |||
* [https://aluigi.altervista.org/mytoolz.htm#offzip Offzip] | |||
<br> | |||
=== See Also === | |||
* [https://discord.gg/pu2jdxR Juiced Modding Discord] | |||
* [https://github.com/Ekey/JCED.DAT.Tool/blob/main/JCED.Unpacker/JCED.Unpacker/Projects/FileNames.list Filenames for Juiced DAT archives] | |||
* [https://github.com/Ekey/JCED.DAT.Tool/blob/main/JCED.Unpacker/JCED.Unpacker/FileSystem/Package/DatHash.cs Juiced hash function implementation] | |||
==Gallery== | |||
<gallery bordercolor="transparent" spacing="small" orientation="landscape"> | |||
juiced_archive_ripper1.png | |||
</gallery> | |||
<br><br> | |||
[[Category:Complete Complete|Juiced DAT]] | |||
[[Category:Platform PC|Juiced DAT]] | |||
[[Category:CE Compressed|Juiced DAT]] | |||
[[Category:Format_Archive | Type: Archive]] | |||
[[Category:Extension_dat | Extension: dat]] | |||
[[Category:BMS_None | BMS: None]] | |||
[[Category:ZLIB compression]] | |||
[[Category:File Format]] | [[Category:File Format]] | ||
Latest revision as of 21:12, 3 December 2021
Choose archive extension:
DAT
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
uint32 {4} - Number Of Files
uint32 {4} - Directory Offset
// File Data
- // for each file
- // for each file part
- uint32 {4} - File Part Offset
- uint32 {4} - File Part Length
- uint32 {4} - File Part Offset
- // for each file part
- // for each file part
- byte {X} - File Part Data
- byte {X} - File Part Data
- // for each file part
// Directory
- // for each file
- uint32 {4} - File Hash
- uint32 {4} - File Offset
- uint32 {4} - Number of File Parts
- uint32 {4} - Compressed File Size
- uint32 {4} - Decompressed File Size
- uint32 {4} - File Hash
MultiEx BMS Script
Not written yet
Notes and Comments
- Files are compressed with ZLIB.
- The files in the archive are in a different order to the files in the directory. eg File 1 in the directory may be File 523 in the archive.
- Files are stored in sorted order of their original filenames, then in the directory entries are listed sorted by their file hash.
- Each file can have multiple compressed parts. Each part is described at each file offset. To determine how many parts there are in a file, go to the file offset and read the first field (firstPartOffset). Then do (firstPartOffset-fileOffset)/8 and you have the number of parts. (or you can just read the field in the directory!)
- Directory Entries which have NULLs after File Offset appear to be folders.
Compatible Programs
- Game Extractor
- JCED.DAT.Tool / JCED.Unpacker (+ source code)
- Juiced Archive Ripper (JAR)
- Juiced UnDAT
- Offzip
See Also
Gallery