The daimonin.p0 (daimonin.0 on server side) is simply spoken all png images of the collected arches concenated together (with a additional header for each image)
A PNG file consists of serveral different chunks. Some of them are crucial (like header, imagedata, palette...) some of them are only extensions, (like timestamp, text-annotations....).
The imagedata itself is compressed in a two step process. The second step simply compresses the data from step 1. The compression ratio is determined by the data to be compressed.
Data like 1,3,4,5,6,7 is really bad for compression (with the deflate used in png), so the in step one, the data is filtered with some lossless reversable filters, like a difference filter, which leads to data like 2,1,1,1,1, which is much much better to compress.
For PNG exists different filters, with different quality of 'good-to-compress' output. The thing is, not all graphic programms have all the filters, esp the Paeth-Filter, which is most of the time the best.
Note: indexed images normally don't use any filter, but we are on the way to true color, so this will become more and more important.
But back to the chunks.
I have looked in some of the arch images, they were around 250 bytes in size, and contain a text-annotation chunk with the creation time as string with a lenght of around 50(!!!) bytes.
While such annotations in the source pngs are not bad, they are absolutely nonrelevant for the client. But since the the editor simply uses the source images in the collection progress, we have a bit overhead in data which is absolutely useless for the client.
I think with chunk-stripping that file could be around a fifth smaller.
There are some commandline tools which can remove such chunks, and also recompress the image with a different/better filter, like crushpng, optipng...
I would like to see that the editor can optionally handle the arch collection with that tools.
I know that would create external depencies for the editor, thats why i said optional.
A MapWizard don't need a small daimonin.p0 file, but a server-admin (which has the knowledge to install such a tool) which want's to release a client update/release.
So who wants to do that?
