Request to change FfH's method of distribution

Falc

Warlord
Joined
Oct 6, 2007
Messages
292
I would like to request some changes in the way FfH is distributed.

What I mean, specifically, is the installers. Currently, they ask for your Mods folder and the proceed to create the 'Fall from Heaven 2 <version>' folder underneath it and extract their files.

While this is fine for a basic install, it starts to fall apart once you start taking modmods into account.

Most modmods encourage you to make a copy of your whole FfH folder, give it a slightly different name, and use one for the modmod and the other as 'vanilla FfH'. There's no other way to keep both versions available for play. However, once a new patch to the main mod is released, this creates problems. Whatever version was left in the default folder can be updated easily, just run the patch's installer.

The other one, though... Probably the simplest method is to rename both folders, update, and change folder names back again. Feasible, but cumbersome. Especially if you have more than two versions.

Therefor, I would like to propose two possible solutions to this.

The first would be to change the installer so that users are capable of specifying the name of the mod's folder, instead of the 'Mods' folder.

The other option would be to release a zip of the files instead of an installer.

Both reach the same result: giving better control of where the files ultimately end up. Neither would cause much, if any, undue extra work for whomever is responsible for the distribution nor for those playing without modmods. Modmod players who wish to keep a 'vanilla FfH' around would stand to gain, and modmod autors (who need to maintain a number of working versions) would stand to gain a lot.
 
Unfortunatly its not that simple. The name of the folder has to be exact for references. Giving players the ability to choose their own name will only create problems. In fact most modmods are actually running some files out of the "Fall from Heaven 031" directory, which is fine if that directory exists, but if it didn't those modmods would have problems.

Also distributing the files as a zip instead of an installer may be convienant for experienced windows users but it isn't for those that are less familiar with the OS. And as above if they dropped it into another name we would also have issues.

If anything I would like to lock the process down even tighter because I hate to see new players discouraged when they try to install and it doesn't work. Id like the installer to read the registry and place it directly in the Mods directory, but I still need to figure out how to do that. ;)
 
Kael, I don't know if you ever saw it, but here is a link to an installer program that kcwong whipped up that does a registry detection. I used it for a while in my Modular FfH and it does work pretty nicely.

If it doesn't do precisely what you want to, kcwong said that it was written using Batch Files, so he can probably help you to re-write it to set up things how you desire them to be. Might even be able to make the shortcut for the game on their desktop as well.
 
Unfortunatly its not that simple. The name of the folder has to be exact for references. Giving players the ability to choose their own name will only create problems. In fact most modmods are actually running some files out of the "Fall from Heaven 031" directory, which is fine if that directory exists, but if it didn't those modmods would have problems.

Would you care to expand a bit on what files are concerned and from where they are called (python/dll)? I'm sure a workaround is possible.

Same for the installer. Depending on how good you're with python, going with py2exe to create an executable and then packaging that in an installer should work fine. I've got 2 weeks vacation, so I can whip something up if you want.
 
Unfortunatly its not that simple. The name of the folder has to be exact for references. Giving players the ability to choose their own name will only create problems. In fact most modmods are actually running some files out of the "Fall from Heaven 031" directory, which is fine if that directory exists, but if it didn't those modmods would have problems.

Also distributing the files as a zip instead of an installer may be convienant for experienced windows users but it isn't for those that are less familiar with the OS. And as above if they dropped it into another name we would also have issues.

If anything I would like to lock the process down even tighter because I hate to see new players discouraged when they try to install and it doesn't work. Id like the installer to read the registry and place it directly in the Mods directory, but I still need to figure out how to do that. ;)

Something I've looked at on another project is moving the Resource Directory out of the Mods directory and into the "Resources" directory of BtS and giving it a folder of it's own in there. That way, the mod-folder itself could be called whatever you liked and the resources would be loaded directly from the directory that I think they were originally designed to be in.

The downside of course is that you obviously lose the "self-contained" mod folder, but with an installer like Xien posted, it'd probably be as easy or easier for new players to install...

You'd basically end up with

\Beyond the Sword\Resource\FFH\
and
\Beyond the Sword\Mods\AnyNameYouLike\

==

I've also been looking for a way to make the path relative to the Mods folder, instead of the BtS folder - not much progress yet.


====

falc said:
Would you care to expand a bit on what files are concerned and from where they are called (python/dll)? I'm sure a workaround is possible.

Same for the installer. Depending on how good you're with python, going with py2exe to create an executable and then packaging that in an installer should work fine. I've got 2 weeks vacation, so I can whip something up if you want.

Basically the Resources (primarily the HUD colour changes in this case). The paths to find them are relative to the BtS directory. That means they need to know in advance what the name of the Mod's folder is, in order to find the Resources directory - in this case Mods\Fall from Heaven 031\Resources\.
 
Vehem said:
I've also been looking for a way to make the path relative to the Mods folder, instead of the BtS folder - not much progress yet.

The loading of the resource path from XML is done as part of a MiscArtInfo in a mess of Macro'd #defined methods - quite hard work to make sense of it at first viewing. However, even having made some sense of it - it appears that the GameCore is simply loading the Infos into a map and then the ArtEngine is dealing with the rest. As we don't have access to that - I'd imagine that mod-relative Resource paths are a no-go.
 
Basically the Resources (primarily the HUD colour changes in this case). The paths to find them are relative to the BtS directory. That means they need to know in advance what the name of the Mod's folder is, in order to find the Resources directory - in this case Mods\Fall from Heaven 031\Resources\.

Okay, but... Where is this name specified? After all, if we're using installers anyway, customization should be possible in some form or shape. If need be, the installer writes the directory used to a file which is later on read by the .dll or the python...
 
Okay, but... Where is this name specified? After all, if we're using installers anyway, customization should be possible in some form or shape. If need be, the installer writes the directory used to a file which is later on read by the .dll or the python...

\Assets\XML\Art\ArtDefines_Misc.xml

Code:
		<MiscArtInfo>
			<Type>DEFAULT_THEME_NAME</Type>
			<Path>Mods/Fall from Heaven 2 031/Resource/Civ4.thm</Path>
			<fScale>0.0</fScale>
			<NIF>None</NIF>
			<KFM>None</KFM>
		</MiscArtInfo>

\Resource\Civ4.thm
Code:
// *** Control Bitmap Theme file

// Set the resource 
resource_path	"Mods/Fall from Heaven 2 031/Resource";

// Setup common properties
include			"Mods/Fall from Heaven 2 031/Resource/Themes/Civ4/Civ4Theme.thm";
 
Back
Top Bottom