GiantsWD Forum Index GiantsWD
Party House Forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
Giants File Structures

 
Post new topic   Reply to topic    GiantsWD Forum Index -> Mods
View previous topic :: View next topic  
Author Message
Vankerkom
Kabuto's Playtoy


Joined: 02 Jun 2018
Posts: 4


PostPosted: Mon Jun 04, 2018 5:39 pm    Post subject: Giants File Structures Reply with quote

Want to reply to this thread? -> Feedback & Questions thread

This is work in progress documentation for the files located in the Giants Bin folder.
All of the information is acquired by reverse engineering the file format.

File format Basics
All giant files contain a magic version number to recognize the file type. The version number of a file is stored in little endian order in the first 4 bytes of the content.

Files
All files will have a separate post linked below.

Contributing
if you want to contribute to this research, then feel free to hit me up on the GiantsWD discord server or reply to the feedback thread.

Feedback / Help
Feel free to reply to this thread if you have questions or want to give feedback.


Last edited by Vankerkom on Tue Jun 05, 2018 9:27 am; edited 4 times in total
Back to top
View user's profile Send private message
Vankerkom
Kabuto's Playtoy


Joined: 02 Jun 2018
Posts: 4


PostPosted: Mon Jun 04, 2018 5:46 pm    Post subject: GameObj.bin Structure Reply with quote

File: GameObj.bin

Version: 436208349 [ DD 02 00 1A ]

Description:
This is one of the first files that gets read by the game.

Structure:
Quote:
int32 version; // File version as mentioned in the fist post.
int32 fileSize; // The size of the content in the file

// This nextByte reads the first byte after fileSize if it does not find 0xFF (255) then it reads two null terminated strings and repeats until it reached 0xFF.
while(nextByte != 0xFF) {

char* object; // Always "world.gb2" - C-Style String (0 terminated)
char* someFx; // An effect set? (unsure) - C-Style String (0 terminated)

}
Back to top
View user's profile Send private message
Vankerkom
Kabuto's Playtoy


Joined: 02 Jun 2018
Posts: 4


PostPosted: Tue Jun 05, 2018 9:18 am    Post subject: GZP Structure Reply with quote

File: *.gzp

Version: 1711862017 [ 01 F1 08 66 ]

Description:
A custom archive that contains the game's assets in a compressed form.

Structure:
Quote:
int32 version; // File version as mentioned in the fist post.
int32 metaInfoOffset; // The offset of the file meta info which is located below the compressed content.

loop(entries) // Compressed content, entries count can be found inside the meta data.
{
// TODO
}

// Content Meta Info
int32 unknown; // This value is currently unknown.
int32 entries; // The amount of entries in the file.
// This is a for loop for every entry
loop(entries)
{
int32 compressedSize; // Size (Compressed)
int32 orignalSize; // Original Size (Decompressed)
_FILETIME fileTime; // 32bit windows file time. This indicates when the file was created?
int32 startOffset; // The start offset of the content inside the file.
char compressFlag; // This seems to be a flag if the item is compressed or not? Compressed files: 1 - not compressed 2 (unsure)
char nameLength; // The length of the name.
char[nameLength] name; // The name of the file in ASCII.
}


_FILETIME
Code:
        // _FILETIME
        // 32-Bit Windows Time/Date Formats
        // Parsed in LE direction.

        // Time
        // Bit position:    0 1 2 3 4   5 6 7 8 9 A     B C D E F
        // Length:           5           6               5
        // Contents:       hours       minutes           2-second increments
        // Value Range:       0–23           0–59               0–29 in 2-second intervals

        // Date
        // Bit position:   0 1 2 3 4 5 6       7 8 9 A     B C D E F
        // Length:           7                   4           5
        // Contents:       year               month       day
        // Value Range:       0–119               1–12           1–31
        //                  relative to 1980
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    GiantsWD Forum Index -> Mods All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group