(09-16-2014, 03:46 PM)Acies Wrote: Hmm.. I have been thinking about this issue - since I intend to change around some shaders. Would be nifty to have a launcher which has buttons for;
Button A. Launch the mod
Button B. Change filenames to fit mod:
[...]
Button C. Change filenames to original:
[...]
The user would have to manually swap between 'Mod-mode' and 'Original content' through the launcher, basically renaming a lot of files quickly.
Hm... The idea is good, but IMO, while this would work well for somewhat more advanced users, it could turn out to be somewhat messy for those who are not too tech-savvy. (By users I mean those who download and play mods, not mod developers.)
I think these options should still be there (most importantly, the "Restore to original" button should be there), but maybe on a different tab (say, "Advanced"), so that the main UI could just consist of maybe a combobox (to select a custom story (or the original game)), and a "Launch" button; all the file swapping required could be done automatically on game startup and shutdown.
A list of installed custom stories could be obtained by inspecting the custom stories folder.
As for full conversions, the launcher could support these as well (via a configuration file - XML format, similar to the files Amnesia itself uses), but it would behave slightly differently - it would be little more than a splash screen (+ the "Advanced" tab).
(09-16-2014, 03:46 PM)Acies Wrote: Could possibly be made customizable by having a separate textfile which specifies which files to rename, so that each user may go and specify what sort of core files they want to swap.
Right. Or in case of a full conversion, it could specify what exactly to launch.
Now, there should be some sort of convention on where to store these config files and how to handle the replacements, otherwise, if there are several mods using this feature, they could (partially or completely) overwrite each others files, and could generally make a mess. What if one mode replaces a certain file, but another mod wants to use the original one? Looks like (some or all of) the original files would have to be restored on every startup. (... Or on every shutdown - but what if there's a crash?)
For custom stories, the launcher could look for a specific (predetermined) folder/configuration file, and only do the replacements if it finds one. If not, it would just start the CS normally. But the first thing it should do is backup the original files somewhere.
There should also be some clever scheme when it comes to backing up the original files. All this is a bit tricky, though, as it requires a certain amount of file management, otherwise, after some time, the user would probably end up with the Amnesia folder full of junk files/subfolders...
IIRC, Amnesia.exe does handle certain command-line arguments, so it should be possible to use these to control what gets launched, right? Is there some sort of reference for these?
Anyway, it's probably best not to overthink it, and to keep things as simple as possible.
(09-16-2014, 06:37 PM)Mudbill Wrote: Maybe I could try incorporating something like this in my mod loader.
[...]
Alteratively I could try making just a small, separate "patcher" sort of app.
If I am to just quickly think of how it could work within the app, how about this:
You made a custom mod loader? What programming language did you use?
If you guys ever start working on this, and if it turns out to be a non-trivial (albeit a small) project, consider using something like GitHub (
https://github.com - FG published the HPL1 source code there) to manage your code; that would give you an online repository, a version control system, and an opportunity to work together on the same project.