So, the problem boils down to 'Where do we store these settings?"
Under Windows, these kind of settings should either live in HKEY_CURRENT_USER/SOFTWARE/<manufacturer>/<application> or in Documents and Settings\<username>\Local Settings\Application Data\<manufacturer>\<application>
- Microsoft would prefer us to use the Registry, but using Application Data is probably more easily localised to the other OSes.
What are the equivalent locations under Linux and OS X?
I presume there must be something like this.
So for these, the 'manufacturer' should be "FSSCP"
The 'application' should be the name of the Total Conversion.
This way, a Launcher can have it's own 'custom' settings stuff sat in /FSSCP/SuperLauncher5000 (or whatever), but store the settings actually used by FreeSpace2 in /FSSCP/FS2 and the settings used by (eg) Wing Commander Saga in /FSSCP/WCS
By scanning the tree from /FSSCP and finding 'TC.INI' files (or something similar), a launcher can both locate the correct executable (be that a 'known stable' build or simply a pointer to 'use latest SCP build') and the necessary files.
It may make sense to change the FS2Open executable to look in /FSSCP/<something> for its config, which would tell it where to look for the correct VPs.
I'm thinking out loud here, but it might make a lot of sense to have the only *genuine* command-line flag (as in 'a flag on the actual command line') be a pointer to an INI file that contains all the real settings, including base folder and applicable MOD folder to find the right VPs.
Then you could not only have a Launcher to do configuration stuff, but you could have a set of shortcuts that launch the same executable directly, but for each TC.