NuKnossos a complete rewrite of the old Knossos mod manager. Nebula also lives here since it's easier to manage both projects in a single monorepo. If you're looking for the old code, go to https://github.com/ngld/old-knossos.
Thanks to @ShivanSpS, FSO supports compressing both loose files as well as files in VPs using LZ4. However, while a compressed VP is smaller than an uncompressed VP, a .7z of an uncompressed VP is smaller than a .7z of a compressed VP. This is the result of the unfortunate fact that compressing already compressed data usually doesn't work well.
This means in practice that we don't want to upload compressed VPs to Nebula. Instead, we'd apply the LZ4 compression after we extract the uncompressed VPs from their .7z archives.
Compression takes a lot of processing power and should use all available cores.
The compressed VP files save disk space and usually load faster. This effect is more noticable on HDDs than SSDs but the compression doesn't negatively affect loading times on SSDs, either.
We can only apply LZ4 compression to VPs that are loaded by recent FSO versions since older FSO builds won't be able to read compressed files.
Thanks to @ShivanSpS, FSO supports compressing both loose files as well as files in VPs using LZ4. However, while a compressed VP is smaller than an uncompressed VP, a
.7z
of an uncompressed VP is smaller than a.7z
of a compressed VP. This is the result of the unfortunate fact that compressing already compressed data usually doesn't work well. This means in practice that we don't want to upload compressed VPs to Nebula. Instead, we'd apply the LZ4 compression after we extract the uncompressed VPs from their.7z
archives.For reference, here is @ShivanSpS' compression code: https://github.com/Shivansps/VPC_Compressor
Some things to keep in mind: