I do want to raise a question that comes to mind WRT suggestions choice of basic vs. advanced: Assume a situation where user A sets up parameters and parameter values specific to a particular option, lets call it option A, and strips away those parameters that are no longer relevant. He then transfers that .wag to others who have chosen option B. The file no longer works properly for user B.
The conundrum seems to be this: If user A leaves in stuff he no longer wants or needs he has cluttered his files w/ junk. He may have no expectation of sharing anything and so the desire to remove the junk is present. If he does so and the later on shares, we have the problem. If he doesn't rip out the obsolete his files hold a bunch of stuff that's simply not relevant to his operation. Its presence acts to obscure what is really important.
Second point: If the operational choice between options A and B are in the options screen there is no connection whatsoever between the actual data and the expected functionality.
My question therefore is this: Should the data in the the .wag and .eng files be explicit that a choice is available? An actual If / then / else would be ideal. For example:
If AdvancedCoupler
else if BasicCoupler
else
Just providing ORTSAdvancedRo() does declare its purpose perfectly well but exposes the file to Mal-behavior when an option at the game screen over-rides it.
The other question is what happens in the train when there is a mixture of advanced, basic, and MSTS couplers?
FWIW, I have not made any conclusion yet as to whether doing anything different than past practice is called for, just trying to raise awareness that there may well be an issue that arises from unintended consequences. Were I required to take a position at this early stage I'd probably conclude the if/then/else clause is a requirement for this and perhaps other matters as well.