Um... sorry for the late response...
@Hellzed: Thanks! I'll take a closer look at it once I've got more time.
@chief1983: Well, that's not the current FSO JSON file. Here's the current (prettified) one.
That file is generated from this config
I'm not sure what you mean by duplicated hashes. The checksums should be different as long as the relevant file isn't duplicated.
Regarding the file references: I guess you mean the "filelist" attribute. It always lists the path inside an archive and the path relative to the mod folder where the file should be stored. In many cases those two paths are the same but if you look at the Mac OS package for FSO, you'll see that the paths are different.
m!m's right, we haven't considered TCs, yet, but with a few changes to the launchers it should work fine. Actually, it might already work with Knossos because it doesn't really check whether FS2 is installed or not (maybe I should work on that?).
We won't have to clone the system since we (hopefully) can treat TCs like mods (as long as the retail VPs don't cause any problems).
An installer for TCs could work like this:
- Check if a launcher capable of handling fso:// links is installed. If not, install one.
- Open the fso://install/<TC name> which would start the actual TC download/installation in the user's launcher. (This works just like the steam:// links.)
You could even do this without an installer: Tell people to install either m!m's launcher or Knossos and then click on a link like this
to install the TC.
xdelta patching was inspired by this thread
. I've only got a rough concept, right now. I'm not sure if it's worth the effort to implement it. However, if there's enough interest, I can build a prototype.
@m!m: Sorry about that! You're right, it should be ">=3.7.2-RC5". I haven't noticed because my SemVer implementation was bugged.
Creating separate release threads is a great idea! I'll write a proper specification and some implementation examples for the JSON schema and post it once it's done.
I'll create the Knossos thread once I'm done with the next release.
Hellzed suggested on IRC that we should keep using this thread for discussion. I agree because most topics discussed here are relevant to all three topics.