If your changes might be useful to others, then we encourage you to submit them for inclusion into the product. We will respond to all submissions and give credit in the project record for submissions that are included.
The Open Rails project uses Apache Subversion (often abbreviated to SVN) as the versioning and revision control system for our software. Revisions are archived in a repository and can be compared, restored and merged, so that versions are safe and several developers can work independently without (too much) conflict.
The Open Rails source code is managed on our SVN server:
Read-only access is provided from the guest login:
From your PC, you can use an SVN client such as TortoiseSVN to access the files, or simply view the repository from a web browser.
P.S. - Our thanks to UKTrainSim.com for donating the SVN server space and admin services.
If you are not familiar with SVN, please study the TortoiseSVN Help first.
On your desktop,
The main folders in the repository are:
To compile and debug the Open Rails source code, ensure you have the following Microsoft products installed:
After you have downloaded the code:
The executable files have now been re-built and placed in your empty Program folder.
Note: When debugging you will bypass the normal start menu and must specify an activity on the command line.
On the Visual Studio menu bar,
A change is best packaged as a "patch" file - a file which contains change instructions to alter the current version of Open Rails code to include your changes. Patches are short and readable. Also, thanks to its smart features, SVN can apply your patch successfully even if some of the Open Rails code has been changed by someone else in the meantime.
If you are offering a fix to a Bug Report, then simply attach your patch file to a post on the Bug Tracker explaining what you have done.
If you are offering an improvement or a new feature, then attach your file to a post on the Elvas Tower forum Open Rails Discussion. It would be helpful to post a message before you start work to give us some idea of your intentions.
We cannot promise that your changes will make it into the code, but show us what you can do and then we can talk about it.