Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Tools => Topic started by: Goober5000 on February 01, 2014, 04:48:14 pm
-
If you've got a mod* that you want to add to the FreeSpace Open Installer, you're in luck. You can instantly** incorporate your mod into the FSO Installer repository by following these very simple steps:
- Follow MjnMixael's instructions (http://www.hard-light.net/wiki/index.php/FSO_Installer_Text_Files) to create a text file
- Validate the text file using the FSO Installer, by running java -jar FreeSpaceOpenInstaller.jar validate
- Upload the file somewhere where it will be publicly visible, then post a link here
- Goober5000 will add the link to the FSO Installer repository
That's it! Also, for no additional charge, Goober5000 will helpfully review your text file before integration and let you know if it contains any "gotchas" that you may want to change before going live.
* Mods based on FreeSpace only, for the time being. Total Conversions are possible, but the functionality isn't finished yet and will be available in a future release.
** For large values of "instant".
-
Will mods finished after the final version of the installer be able to do this after they release? Are the downloads chosen by the installer from the code or does it pull the list from somewhere else?
-
The mod list is pulled from the remote site whenever the installer runs; it's not stored within the installer itself. So the installer will always have the most up-to-date list, regardless of the version you're running.
-
Here's my 2nd attempt at JAD2.21: http://www.mediafire.com/view/2nny9vm0rjms5zd/jad221.txt
-
If the .rar creates its own folder, then FOLDER should be /, not jad2-21. Also, you (or Axem) will need to host that text file from someplace where the file is directly readable (i.e. not something that is a webpage).
-
The rar doesn't contain the dir jad2-21 so I'm pretty sure that's OK.
As for the hosting (*shakes fist @mediafire - why do you work for images but not .txt files!*) yeah, I'll have to sort something else out...
Edit:
Right - Dropbox should be OK since such a tiny file should never get anywhere near their download limits...
https://www.dropbox.com/s/psbkl1dot1rjyds/jad221.txt
-
The rar doesn't contain the dir jad2-21 so I'm pretty sure that's OK.
In that case, you need to remove the directory from the hash values. All file paths are relative to what you specified under FOLDER.
Right - Dropbox should be OK since such a tiny file should never get anywhere near their download limits...
No, DropBox is not okay, because if you go to that link, you get a webpage. :p As I said before, the file needs to be directly readable from that link. No webpage, no download, just straight up TXT. Most likely Axem will need to put it on his own webspace.
-
It's probably best that I have full access to it anyway, if JAD ever needs an update I can modify the file!
I'll uh... do something with this.
Thanks though, niffiwan!
-
Will it be possible to rerun the installer down the road and have it validate, update all the files and campaigns as they get changed?
-
The rar doesn't contain the dir jad2-21 so I'm pretty sure that's OK.
In that case, you need to remove the directory from the hash values. All file paths are relative to what you specified under FOLDER.
:sigh: I'll get it right someday... I'd really like to see a "local-install" option so that new files can be tested "offline" by the creator, I may have a go at hacking up a patch for the installer to do that.
Right - Dropbox should be OK since such a tiny file should never get anywhere near their download limits...
No, DropBox is not okay, because if you go to that link, you get a webpage. :p As I said before, the file needs to be directly readable from that link. No webpage, no download, just straight up TXT. Most likely Axem will need to put it on his own webspace.
:hopping:
Although, I tested that link using wget and it gave me just the .txt file... perhaps dropbox has some shenanigans that provide different download options depending on the client? But...
It's probably best that I have full access to it anyway, if JAD ever needs an update I can modify the file!
I'll uh... do something with this.
Thanks though, niffiwan!
Yeah, probably best that you host it.
-
Will it be possible to rerun the installer down the road and have it validate, update all the files and campaigns as they get changed?
Yep.
Although, I tested that link using wget and it gave me just the .txt file... perhaps dropbox has some shenanigans that provide different download options depending on the client?
Really? That's interesting. You might be right about shenanigans.
-
Will it be possible to rerun the installer down the road and have it validate, update all the files and campaigns as they get changed?
Yep.
Is it going to query the user with something like "Your version of Blue Planet is outdated, do you want to install the newer version?" with an option to see details or...?
-
Something user-friendly.
Anyway this is off-topic for this thread. This thread is intended to be about incorporating text files into the installer.
-
Q: Is it possible to incorporate multiple mod folders (in this case, ASW I and II) into one install txtfile so that it shows up as one mod in the installer? Seems tidier that way.
-
Each mod folder will show up as its own mod in the installer; in other words you can't have one selection install to more than one folder. But you can list multiple mods within one text file.
-
Well, you could install to the Root Folder and make sure all your zip/7z include the subfolders.
-
Q: How do we compute the hashes? Is there some (cross-platform) software we can use? Can we use the ones from fs2_open.log?
-
There are numerous hashing utilities available for many platforms. Many common scripting languages also have access to hashing algorithms that could be used to automate it somehow. I integrated Digest::SHA into the nightly build code to generate SHA-256 hashes for release builds. *nix platforms generally have shasum available fairly easily, or md5(sum) as command line tools. Windows users have access to a few utilities with Explorer integration, but don't ask me where to find one as I haven't needed one in ages. I could whip something up in Perl that could work, although something in Java or native code might be more useful to a broader base. If it was built in to the installer I bet that would be the most usable solution ;)
-
There's a commandline for the Installer to do it as well.. though I don't remember what it is.
-
There is mod file validation, I've used that. There's also hash generation?
-
Well, I thought so... but I skimmed the Installer thread and couldn't find evidence of the fact.
-
It seems that the installer can generate the hashes for you:
Most users will simply run the jar directly, but there are a few command-line options available for power users:
- Set the maximum number of parallel downloads using the option -DmaxParallelDownloads=X, where X is any number >= 1. Example: java -DmaxParallelDownloads=2 -jar FreeSpaceOpenInstaller.jar.
- Set the connection timeout using the option -DconnectionTimeout=Y, where Y is a number of milliseconds >= 0. Setting to 0 indicates an infinite timeout. Example: java -DconnectionTimeout=30000 -jar FreeSpaceOpenInstaller.jar.
- Validate an existing install txt file using the option validate. Example: java -jar FreeSpaceOpenInstaller.jar validate [file]. If you omit the file on the command line, the Installer will prompt you for it using a standard GUI file dialog.
- Compute a MD5, SHA-1, or SHA-256 hash of any file using the option hash. Example: java -jar FreeSpaceOpenInstaller.jar hash [algorithm] [file]. If you omit the file on the command line, the Installer will prompt you for it using a standard GUI file dialog.
-
For Windows and Mac OS X:
HashTab (http://www.implbits.com/hashtab.aspx)
-
Yeah, as niffiwan discovered, the hashing instructions are in the second post of the FSO Installer thread. I didn't add them to the first post because I wanted to keep it concise.
-
Late to the party... but here's a file for both chapters of Ancient-Shivan War: http://www.sectorgame.com/ASW/Downloads/asw-install.txt
Hope it works :nervous:
-
Late to the party... but here's a file for both chapters of Ancient-Shivan War: http://www.sectorgame.com/ASW/Downloads/asw-install.txt
Hope it works :nervous:
Added. It parses and shows up in the Installer just fine. You should test it to make sure it installs as you expect. :)
-
So excited! ASW is one of my favorite mods. I would totally test it if I hadn't manually installed it already.
-
I selected Act I, hi res maps, animated glowmaps, and Act II all at once.
http://imgur.com/Y90RmFo
But then I get a dialog box that says "The following mods have dependencies on other mods that are not currently available for download. You will probably not be able to play these mods until the dependencies become available:
Ancient-Shivan War: Act II
Please select an option below:
http://imgur.com/YvSgANJ
Not sure if this is normal or not; I have not seen this before. When I went ahead with the installation it seemed to work fine, and I see both in my launcher.
http://imgur.com/ljFdYKK
(Sorry I don't know how to embed images! Hope the links are helpful.)
-
Looks like this is because the dependency string is "Ancient-Shivan War: Act I, version 3.6.14" rather than "Ancient-Shivan War: Act I".
-
Oops :nervous: Should be fixed now!
-
Does the Installer have an option to parse a custom local file for dev purposes?
So they can test before submitting.
-
It does. But this was not something that could have been caught by the parser, as it is designed to reference any mod whatsoever. See the relevant section (http://www.hard-light.net/wiki/index.php/FSO_Installer_Text_Files#DEPENDENCIES) on the wiki.
-
Juste to say that the files "ASW_3612_Animaps.vp", "asw_3614_adv.vp", "asw_3614_interface.vp", "ASW_3614_Intro.vp" and "asw_3614_norm.vp" are downloaded in the FreeSpace 2 root folder and not in the ASW1 subfolder, eventually leading to problems as reported here (http://www.hard-light.net/forums/index.php?topic=88936.0;topicseen)
Sorry if this was already reported.
Happy new year to everyone :)
-
Good catch. I've removed the ASW from the list of installable mods until they can fix the issue.
-
Yikes, I should've picked up on that during testing :nervous:
Goober, is there a way to fix this using just the config file? Can I move a file after it's been downloaded and unzipped? (Trying to avoid re-zipping and re-uploading the downloads)
-
You know, there's this little tag called FOLDER (http://www.hard-light.net/wiki/index.php/FSO_Installer_Text_Files#FOLDER)... :p
-
Yeah I saw that, but I wasn't sure if that can specify different folders for different files? In this case, only the core download has the mod folder in the zip, but the add-ons are just zipped VPs.
-
Oh. Well, all the files specified under one mod node (starting with NAME) share a common folder -- but different mod nodes can each have their own particular folders. So if by "add-ons" you mean the child mod entries in the mod tree, then yes, you can specify different folders for them. As long as there is one FOLDER per NAME.
-
Ok, ASW should be fixed now. Fingers crossed... Would it be feasible to add an option to pass a local txtfile to the installer and test the full installation process?
-
Added ASW back to the list.
Yeah, I think I can add the capability to the installer to do that. Will need a day or so.
-
Does the Installer have an option to parse a custom local file for dev purposes?
So they can test before submitting.
It does. But this was not something that could have been caught by the parser, as it is designed to reference any mod whatsoever. See the relevant section (http://www.hard-light.net/wiki/index.php/FSO_Installer_Text_Files#DEPENDENCIES) on the wiki.
Ok, ASW should be fixed now. Fingers crossed... Would it be feasible to add an option to pass a local txtfile to the installer and test the full installation process?
Added ASW back to the list.
Yeah, I think I can add the capability to the installer to do that. Will need a day or so.
... :confused:
-
Parsing for syntax errors is one thing, actually testing the install of the mod from a local file is another feature altogether.
-
I meant the latter when i asked. Didn't realize that was only for syntax, not an actual download. :nervous: