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


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: Stable (2023-01-20)

Current News & Updates:

Significant Changes:

  • New: Convert the route parser to a shared plugin / interface. Numerous fixes as a result of this.
  • New: Numerous improvements to the compatability database, including changed signal sets where appropriate etc.
  • New: Object property to crossfade between the day / night textures.
  • Change: Use openAL Soft when on Windows.
  • Fix: Max number of sound sources option not working correctly.
  • Fix: Memory leak introduced by the new renderer.
  • Fix: Camera motion would continue whilst in a dialog box when using the viewers.
  • Fix: Animations on a train car using the Reversed property could be wrong.
  • Fix: Error in WAV files with an invalid chunk size.
  • Fix: Possible crash on Intel integrated GPUs when using the new renderer.
  • Fix: Handle ATS.cfg files containing invalid extra data (comments etc.)

Critical Bugfix v1.7.1.8

  • Fix: Crash with trains containing no point sounds.

Significant Changes:

  • Change: Further tweaks to GL3.0 lighting model.
  • Change: More aggressively kill the main form when closing under Linux.
  • Fix: StateChangeSound in animated objects off by one index where multiple sounds provided.
  • Fix: Variable brightness for a single texture not updated in some cases with GL3.0 renderer.
  • Fix: Dynamic background transitions broken in GL1.2 renderer.
  • Fix: The new renderer could accidentally be disabled with certain combinations of options.
  • Fix: Route Viewer could crash after dragging / dropping a file on Mono.
  • Fix: Route Viewer could get stuck loading under Mono.

Significant Changes:

  • New: Add various alternate compatibility signal sets.
  • Change: Improve lighting behaviour in the GL3.0 renderer.
  • Change: Update pt-PT language file.
  • Change: Update id-ID language file.
  • Fix: Issue when passing section aspects to plugins.
  • Fix: Make the AI behave better when driving a train with door interlocks.
  • Fix: The pass alarm event location was incorrect when using a non-standard block length.

Significant Changes:

  • Fix: Touch support broken in GL1.2 renderer.
  • Fix: Crash when using a train with a digital gauge and no GL3.0 support.
  • Fix: The cursor should reset to default when entering the in-game menu.
  • Fix: Crash when typing a UNC path in the main menu,
  • Fix: Typo in the locobrakepipe variable for Panel2
  • Fix: Distance to the next station after a pass incorrect.
  • Fix: The GL3.0 renderer did not handle objects with more than 65,535 vertices.
  • Change: Improve lighting / fog interactions in the GL3.0 renderer.

Significant Changes:

  • New: Add rendered event for Rail Sounds change when events overlay is active.
  • New: Coupler objects displayed in Object Viewer.
  • New: Add RouteLimit to the available functions for panels and animated objects.
  • New: Use a different icon for disks at the root of the main menu under Windows.
  • Change: Improve TrackFollowingObjects in certain cases.
  • Change: Only flush the black-box log to disk once every 30s (Reduces disk writes and stutter in some cases)
  • Change: Minor improvements to the original X parser.
  • Change: The ‘incorrect’ lighting behaviour described here is used when hacks are active.
  • Change: Update hu-HU, id-ID and zh-CN translations- Thanks!
  • Change: Detect and warn when vertices are declared outside of a MeshBuilder, as this may produce unexpected consequences.
  • Fix: Assimp X Parser didn’t support global materials.
  • Fix: Assimp X Parser failing to support exponent numbers.
  • Fix: Glitch when using two rail commands in a block.
  • Fix: Crash when creating a package, but no files were selected to package.
  • Fix: Crash when attempting to install a package into a UAC protected directory as a non-elevated user.
  • Fix: Crash when GL3.3 not supported by the system.
  • Fix: Crash with a zero-byte sound.cfg file
  • Fix: Rotational / projection matrix glitch in 3D cabs
  • Fix: 3D cab incorrectly lit in the new renderer.
  • Fix: An AI driver for the player train was limited by Route.Velocity
  • Fix: An AI driver for a player train with air brakes bounced on the brakes at the terminal station.
  • Fix: Certain animated objects could be missing or incorrectly disposed of.
  • Fix: Newline bug when the default train was not found.