Development tools

There are some development tools available for add-on developers. This page lists and describes the tools, and provides a link to the openBVE website for downloading the tools.

Summary

There are four "official" development tools available:

  • Object Viewer
  • Object Bender
  • Route Viewer
  • Train Editor

Download

You can download the development tools from the openBVE site as a complete package.


Object Viewer

Screenshot Screenshot Screenshot

Object Viewer allows you to view one or more object file. It supports viewing multiple objects overlaid, reloading objects, and generates a list of errors in object files.

Files can be passed in the command line arguments - they are automatically opened on startup. If Route Viewer is present in the same folder as Object Viewer, .csv files that are being opened will be read, and will be opened in Object Viewer or Route Viewer based on the file type.

This is useful for linking ObjectViewer to the "Open with" default values for .csv files, and having the files to open in the correct program - either Object Viewer or Route Viewer.

Object Bender

Screenshot

ObjectBender is a utility that helps create curved objects from shorter segments, for example, a 25m-long curved rail from a 5m rail segment.

ObjectBender offers a graphical user interface (GUI) as well as a command line interface (CLI). The GUI allows you to quickly create longer objects, while the command line interface helps with repetitive tasks.

The following is a list of command line arguments. Use these in a batch file to quickly create multiple objects that constantly needs updating(for example, multiple rails for different radiuses from a single rail segment.

Example: ObjectBender input.csv output.csv /n=25 /s=1 /b=25 /r=600

ArgumentMeaning
/?Shows the list of command-line arguments.
InputFileThe path to the input file. Can be a B3D or CSV file.
OutputFileThe path to the output file. Will be of the same format as the input file.
/n=SegmentsThe number of segments.
/s=SegmentLengthThe length of each segment in meters.
/b=BlockLengthThe block length in meters. If zero, the object is not rotated for use as a rail object.
/r=RadiusThe radius in meters. Negative values are left, positive ones right. Zero does not create a curve.
/g=RailGaugeThe gauge of the rail in millimeters. Only required if cant is applied.
/u=InitialCantThe cant at the beginning of the object in millimeters.
/v=FinalCantThe cant at the end of the object in millimeters.
/aAppends to the output file instead of overwriting it

The old openBVE page for ObjectBender offers additional usage examples.

Route Viewer

Screenshot

Object Viewer allows you to render and view a route file. It supports viewing a route, reloading routes, visualising certain non-visual commands (such as Track.section), and jumping to stations and point of interests.

Files can be passed in the command line arguments - they are automatically opened on startup. If Object Viewer is present in the same folder as Route Viewer, .csv files that are being opened will be read, and will be opened in Object Viewer or Route Viewer based on the file type.

This is useful for linking RouteViewer to the "Open with" default values for .csv files, and having the files to open in the correct program - either Object Viewer or Route Viewer.

Train Editor

Screenshot Screenshot Screenshot Screenshot

Train Editor allows the editing of a train.dat file, including modifying properties and values, previewing train acceleration curves, and plotting of train sounds pitch and volume.