This is the home of OpenBVE, a license-free, open source, free of charge train driving simulator.

Screenshots

This program includes detailed per-car simulation of the brake systems, friction, air resistance, toppling and more. In 3D cabs, the driving experience is augmented with forces that shake your simulated body upon acceleration and braking, as well as in curves. Besides that, OpenBVE features a 3D positional sound system best enjoyed with surround speakers, train exteriors and timetables for the current run. Finally, via the main menu, routes and trains be easily selected to start a new session, the controls can be configured to keyboard or joystick devices, and a variety of options can be selected.

Compared to other simulators of the genre, especially compared to commercial games, OpenBVE has its main focus on realism, not necessarily on user-friendliness. You should be willing to study operational manuals for the routes and trains you want to drive, and will in many cases not get along by just memorizing a few keystrokes. If you can identify with this focus, OpenBVE might be the right simulator for you.

Latest Stable Release:

1.8.1.0 Stable (2021-07-16)

Current News & Updates:

Many, many years ago michelle, one of the initial developers of OpenBVE expressed a desire for this simulation to move beyond it’s roots, and to load content from other simulations. Adding support for some new object and texture types was the first tiny step along this road, but this wasn’t enough…..

Now, we’ve finally made that dream a reality, with support for routes from the legacy DOS based simulator Mechanik added.

New Features:

  • Routes from the legacy DOS simulator Mechanik are now supported! Please see https://openbve-project.net/play-mechanik/ for further details.
  • Significantly improved DenshaDeGo! controller support, with several new types.
  • If playing on Windows, with a supported screen reader, in-game messages are announced. Please also see https://openbve-project.net/play-accessibility/

Significant Changes:

  • New: Add EmissiveAll and ColorAll commands for use in B3D / CSV objects.
  • New: Add basic AI for several legacy Win32 plugins.
  • New: Add borderless windowed fullscreen.
  • Change: Significant updates to the compatability hacks database.
  • Change: Various internal changes to make the UI work slightly better under some Linux distributions.
  • Hacks: Reject handle change delays of over a minute.
  • Hacks: Handle where an empty transparent color is set.
  • Hacks: Add workaround for repeated Face2 with differing vertex order.
  • Fix: Rotation matrix math issue under certain uncommon circumstances.
  • Fix: Several related issues with TFOs.
  • Fix: Support X format objects using absolute paths.
  • Fix: It is no longer possible to issue a RailEnd command for Rail0.
  • Fix: Correct sub-matrix transformation in MSTS s parser.
  • Fix: Possible recursive deletion issue when uninstalling a package.
  • Fix: Possible infinite loop if browsing to the Windows temp folder when searching for train / route.

This build fixes a few more odd issues that have been reported over the last few days after the move to 64-bit.

Signifiant Changes:

  • Change: Add Brightness function for train based animated objects.
  • Fix: Issue launching the 64-bit build on Windows systems lacking the Creative OpenAL redistributable.
  • Fix: Using a command string in a CSV object texture name could get misinterpreted.
  • Fix: Crash on selecting a touch element with a missing sound.
  • Fix: Several issues with TFOs in unexpected circumstances.

This release sees OpenBVE moving to 64-bit by default. On Windows, legacy plugins are now run via a WCF proxy application. Alternatively, you can use the 32-bit OpenBve-32.exe which uses the original in-process plugin handling.

Unfortunately, 64-bit support on Apple is not yet functional. This is because the main menu is a WinForm, which is currently not supported on x64 Apple. Work is in progress on producing a limited OpenGL menu here: https://github.com/leezer3/OpenBVE/pull/595 and we hope to have a functional (but not pretty) version available soon.

Significant Changes:

  • New: OpenBVE is now 64-bit native by default.
  • New: Add controls menu icons for generic gamepad and Xbox pad.
  • Fix: A deleted extensions.cfg would re-appear in Object Viewer on reload.
  • Fix: Issue with trains containing a missing flange index.
  • Fix: Invalid animated files getting locked by Object Viewer.
  • Fix: Crash in Object Viewer if reloading after changing non-plugin loaded train properties.
  • Fix: A negative timetable delta was broken with BVETS Hacks enabled.
  • Fix: Cursor missing if menu opened with it hidden.

This build is a small hotfix for 1.7.3.0 to address a couple of issues that sneaked past the initial round of testing….

Significant Changes:

  • Fix: The LocoBrake settings in TrainEditor didn’t load properly from a train.dat
  • Fix: It was not possible to open the Train settings window in Object Viewer without first loading a train.
  • Fix: Crash on trains with a missing Spring sound

Whilst this build has relatively few new features (again, sorry….) internally, a lot has changed. By converting everything to a shared set of plugins, this reduces the code maintenence workload, and makes implementing new features much simpler in the long run.

Significant Changes:

  • New: Add Separated (Interlocked) handle type.
  • New: Convert train loader to a shared plugin.
  • Change: Bump the OpenAL version to 1.17.0
  • Change: Properly grow the InputDevice plugin box with the main form.
  • Change: Speed up loading of routes which do not use the .Turn command.
  • Change: Update zh-HK translation- Thanks!
  • Change: Add warning if target speed is not set by TFO, as this may cause unexpected results.
  • Fix: The AI driver will now react to the train starting to topple.
  • Fix: Several issues in the DDS texture loading plugin.
  • Fix: In some cases, the camera could get thrown out of the car.
  • Fix: Issue when the primary rail for a platform was missing, but the secondary was not.
  • Fix: Route.InitialViewpoint was glitchy with an AI train in the section.
  • Fix: Colliding with a buffer on a route containing a single train crashed.
  • Fix: Crash when closing the RailDriver config form with none attached.
  • Fix: SanYingInput config window size incorrect.
  • Fix: Route Viewer needed the close button pressing twice with no routefile loaded.
  • Fix: Lighting glitch when the camera was inverted.
  • Fix: Shifted index issue in animated files containing a StateChangeSound