GEX_format - hpgDesigns/hpgdesigns-dev.io GitHub Wiki
The GEX is an installable Game Maker Extension Package containing the GED and DAT, albeit encrypted. A DAT is simply the DLL, Scripts, or whatever, encrypted, compressed, and prefixed with some header information.
Generally a user opens Game Maker, goes to Extensions, clicks the
Install Button to manage their extensions, and then clicks the Install
button to locate and add a new extension via the GEX file. Game Maker
then decrypts and splices the file into their own component GED and DAT
files, and stores them in
C:\Users\
Owner
\AppData\Local\VirtualStore\Program Files\
Game`` ``Maker`` ``8
\extensions\
(note that Owner is your username,
AppData is a hidden folder, and Game Maker 8 is whatever folder name
your respective GM version decides to use). The filenames follow the
GED's Name field, with either the .ged or .dat extension thrown on.
Please note again that the Raw DAT File here is simply the DLL or scripts or whatever, and should not be confused with a DAT, which includes header information prior to the zlib compressed contents of the Raw DAT File. For example, suppose you have a DLL and you make an extension for it. The DLL then is the Raw DAT File. It becomes zlib compressed, giving us a Zlib Compressed Raw DAT File. This is then used twice - once in the GEX, in which case it is thrown on the end after the header info and GED - and the second time in the DAT file, where it is simply prefixed with some header information (the seed and zlib compressed size).
Standard Format info applies here. See also GMKrypt, although only the seed and lookup table are used.
GEX
File format identifier (1234321)
GM version (701)
Seed (randomly generated)
{
GED
with Editable set to 0 }
Size of ZLib Compressed Raw DAT File { ZLib Compressed Raw DAT File }
DAT
Seed (randomly generated)
Size of ZLib Compressed Raw DAT File { ZLib Compressed Raw DAT File }