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.10.0.1 Stable (2024-04-10)

Current News & Updates:

Version 1.5.1.6

Significant Changes:

  • New: Basic support for the RailDriver controller from PI Engineering. (Requires calibration, see P2 of ‘Options’)
  • New: OpenBVE will load many Loksim3D objects.
  • Fix: ACE textures using 1-bit alpha were broken.
  • Fix: Potential infinite recursion bug in path resolution API.
  • Fix: Several components of Japanese BVE1 panels were not working correctly.
  • Fix: BVE4 trams from Martin Finken (GT6, TW6000 original version etc.) had a broken initial panel zoom.
  • Fix: Backgrounds textures not correctly loaded in the Minobu route for BVE2.
  • Fix: Inconsistent error messages under some package management situations.
  • Change: The sounds for the default (no) ATS plugin may be overwritten via sound.cfg. Please see the following errata note for further details: https://github.com/leezer3/OpenBVE/wiki/Errata#default-plugin-ats-sounds
  • Change: Route / train specific hacks may be turned off via setting enablebvetshacks to false in the options file. These should generally be left enabled.

Version 1.5.1.5

Significant Changes:

  • New: Bumped openTK version, better support for various joysticks (e.g. Thrustmaster HOTAS-X)
  • New: Object Viewer and Route Viewer support drag + drop.
  • Fix: AI trains could get stuck at the terminal station. (Introduced with 1.5.1.4)
  • Fix: Improved handling of character encoding mismatches in various places.
  • Fix: Blue colored text did not work.
  • Fix: The pitch for the Right Door open sound was incorrect.
  • Fix: Supplying an empty Object string in an extensions.cfg file crashed.
  • Change: Debian package dependancies tweaked to work on more recent versions.
  • Change: Removed various duplicate code from Route Viewer / Object Viewer.

Version 1.5.1.4

Significant Changes:

  • Fix: Improved handling of .Section commands with unexpected contents. (Signals could get stuck on red in rare cases)
  • Fix: Departure occurring at the terminal station.
  • Fix: When using the AI driver & certain .Net plugins, the reverser repeatedly bounced on and off at the terminal station.
  • Fix: Rolling backwards whilst moving off from a station stop on a hill caused the it to trigger again.

Version 1.5.1.3

Behavioural Changes:

  • New: Joystick buttons limit increased to 64, plus various other changes from openTK backend.
  • Fix: Holding down a door button no-longer causes the doors to bounce between open & closed.

Significant Changes:

  • New: XML based markers ( http://openbve-project.net/documentation/HTML/route_marker.html ), allowing for text messages and basic time dependent scripting.
  • New: When a door button is pressed, VirtualKeys.DoorsLeft / VirtualKeys.DoorsRight is raised.
  • New: Panel2.cfg supports the subjects doorbuttonl & doorbuttonr
  • New: Animated objects support the subject leftDoorsButton & rightDoorsButton
  • Change: LBA and large GC objects enabled. (Fixes some issues with NYCTA routes)
  • Change: Workaround for some Chinese BVE2 routes not finding the default train correctly.
  • Change: The non-visible ‘NUL’ character is ignored if encountered during routefile processing.
  • Fix: Missing error message in dynamic background parser.
  • Fix: Using ‘SIGNAL’ at the start of a comment in a routefile could be misinterpreted.
  • Fix: Issue when using the ‘Back’ button whilst creating a package under some circumstances.
  • Fix: Workaround for certain malformed paths whilst loading a .animated file.
  • Fix: Car based plugin sounds not working correctly.
  • Fix: VirtualKeys.GearDown not working correctly.

Version 1.5.1.2

Significant Changes:

  • New: BIG5 and Windows-1252 charsets added to those auto-detected.
  • New: Updated ja-JA language file- Thanks midnightexpress1981
  • Change: Improved charset detection process & fallback charset handling.
  • Change: Fog placed at absolute zero is assumed to apply from before the start of the route, rather than interpolating in over the course of the first block.
  • Fix: Trains missing a point sound in the Sound.cfg file broken.
  • Fix: Bug in package creation under Mono only.
  • Fix: Potential crash if holding down an arrow key to scroll the route list.