I looked at the latest github release for save.c and found this for the header. outputData[0] = 'O'; outputData[1] = 'P'; outputData[2] = 'S'; outputData[3] = '1'; outputData[4] = SAVE_VERSION; outputData[5] = CELL; outputData[6] = blockW; outputData[7] = blockH; outputData[8] = finalDataLen; outputData[9] = finalDataLen >> 8; outputData[10] = finalDataLen >> 16; outputData[11] = finalDataLen >> 24;
But I couldn't find any info on the structure of the data that ends up being compressed. How does is the actual pixel data, wall data, etc arranged (prior to compression of course)?