Skip to content
perpetualKid edited this page Jan 7, 2025 · 7 revisions

FreeTrainSimulator on .NET

Starting from versions 1.4.9 (including dev and rc builds), the codebase has changed to run on .NET platform only. This allowed to update to the latest version of Monogame (3.8.1), and keep up with other changes and recent development from .NET.

Currently, FreeTrainSimulator FTS runs on and requires .NET 8.
When you downloaded or updated to a recent version, you may get a warning message when trying to start ORTS-MG while no corresponding .NET version is found:

Missing Dotnet

Following the message you will be guided to download .NET 8.0.

Please ensure to select the correct version ".NET Desktop Runtime", not ".Net Runtime" or "SDK" only. In most cases, you will need the x64 (64bit) version, unless your OS is limited to 32bit (x86) or you are running on ARM devices.

Dotnet 8 Desktop Runtime Download

History

Branched off from OpenRails, FreeTrainSimulator FTS is written in C# running on .NET platform on Windows. In the recent past, Microsoft has made efforts to bring .NET platform to other OS platforms as well, starting a whole new .NET platform named .NET Core.

Previously, ORTS-MG (now FreeTrainSimulator) had been provided in binary form for both, .NET Framework 4.8, and .NET Core 3.1. The Folder structure in \Program contained a subfolder for .NET 4.8, and a subfolder for .NET Core 3.1 binaries:

Program
|----net48
|----netcore31

This folder structure has been further used to allow for migrations along the .NET (Core) versions, so the current program version may have a folder structure like this:

Program
|----net6.0-windows
|----net8.0-windows

By default, starting FreeTrainSimulator.exe from the Program folder, will use the appropriate binaries for the .NET version found on the system, and no user interaction with the folder structure is required.

While .NET is platform-independent, FreeTrainSimulator still has dependencies on the Windows platform and is primarily developed and tested under Windows.
However, dependencies are minimal (and being further eliminated as much possible), and all recent versions of FreeTrainSimulator have been tested and run successfully in different Linux environments. Please see the Linux Wine article in the Wiki for details.

Clone this wiki locally