mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2025-12-10 01:22:25 +01:00
Page:
Track drawers, RTDs and vehicle types
Pages
Android
Audio specifics
Benchmarking & stress testing OpenRCT2
Building OpenRCT2 on Linux
Building OpenRCT2 on MSYS2 MinGW
Building OpenRCT2 on Windows Subsystem for Linux
Building OpenRCT2 on Windows
Building OpenRCT2 on macOS using CMake
Building OpenRCT2 on macOS using Xcode
CSS1.DAT
Changes to original game
Changes to the SV6 file format
Cheats
Coding Style
Commit Messages
Converting Game Commands to Game Actions
Custom Music and Ride Music Objects
Debugging OpenRCT2 on macOS
Decompiling Tips IDA
Decompiling Tips OllyDbg
Dithering Images using Photoshop
Dithering Images
Easter Eggs
External influences
FAQ & Common Issues
Features to implement
Found bugs and limitations in RCT2
G1 Elements Layout
Game Actions
Game Commands
Getting packaged versions
Home
How To Contribute
Increasing of game limits
Installation on Linux and macOS
Known Issues from the RCT2 Readme
Language support
Legacy console
Loading RCT1 scenarios and data
Map Generation
Maps
Master Server
Minimum install
Multiplayer issues
Multiplayer permissions
Multiplayer
Music Cleanup
NTDF design
New save format status
Newly Identified Fields
Objects
Official extended scenery set
OpenGL renderengine issues
OpenGL renderer
Original Graphics
Overall program structure
Peep AI
Peep Sprite Type
Performance
RCT1 Features not in RCT2
RCT1 ride and vehicle types and their RCT2 equivalents
RCT12_MAX_SOMETHING versus MAX_SOMETHING
Rebase and Sync fork with OpenRCT2
Release Checklist
Replay System
Ride rating calculation
Roadmap
STEX support removal
SV6 Ride Structure
Sandbox Mode
Settings in config.ini
Sizes and angles in the game world
Sprite List csg1.dat
Sprite List g1.dat
Sprite compiler
Strings used in RCT1
Strings used in the game
Submitted feature requests
TD6 format
Terminology
Testing
Track Data
Track Element Lengths
Track designs
Track drawers, RTDs and vehicle types
Track types
Tutorials
Using Track Block Get Previous
Using minidumps from crash reports
Vehicle Sprite Layout
Widget colours
game.cfg structure
Clone
Table of Contents
This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
OpenRCT2 has roughly three layers when dealing with rides.
- A “track drawer” is code that draws a track style. This track style is sometimes shared.
- RTDs (Ride Type Descriptors) are the most visible to the user. These are the types listed in the New Ride dialog, in the cheat dropdown where you can change the ride type, and in the left column of the ride vehicles in the Object Selection.
- Vehicle types consist of trains for tracked rides, and reskins of flat rides. Examples include the Double Decker Carrousel or the Corkscrew Trains. Preview images are also located here.
The amount of overlap sometimes makes it hard to distinguish the three. A complicating factor is that one track drawer may be used by multiple RTDs. The converse is also true: some RTDs have different multiple different track styles that the player can choose between.
Examples:
- The RTDs for the Twister, Vertical Drop and Flying roller coasters use the same track drawer, just with different supports.
- The RTD for the Water Coaster uses both the Junior Roller Coaster track drawer and the Splash Boats track drawer.
- The RTD for the dinghy slide uses two track drawers, one for regular track and one for covered track.
Put shortly:
- The track drawers draws the track
- The RTD contains the metadata
- The vehicle type supplies the vehicle images and vehicle-specific behaviour
Plans
Currently, the split between RTDs and track drawers is not complete. Planned work:
- The support type should not be hardcoded in the track drawer, but passed in.
- Track tile elements should save the track drawer and support type they are drawn as, as well as a flag to indicate the track is "covered".
- The "covered" flag should be carried over in the vehicle state.
- The duplicated "covered" pieces should be normalised.
- RTD currently specify a track drawer per track style. This specification should be expanded to include support type, icon and tooltip for the construction window, and boolean to indicate it’s covered track (as opposed to just track with an alternative style, like 2/3/4-rail "lattice").
- Home
- FAQ & Common Issues
- Roadmap
- Installation
- Building
- Features
- Development
- Benchmarking & stress testing OpenRCT2
- Coding Style
- Commit Messages
- Overall program structure
- Data Structures
- CSS1.DAT
- Custom Music and Ride Music Objects
- Game Actions
- G1 Elements Layout
- game.cfg structure
- Maps
- Music Cleanup
- Objects
- Official extended scenery set
- Peep AI
- Peep Sprite Type
- RCT1 ride and vehicle types and their RCT2 equivalents
- RCT12_MAX_SOMETHING versus MAX_SOMETHING
- Ride rating calculation
- SV6 Ride Structure
- Settings in config.ini
- Sizes and angles in the game world
- Sprite List csg1.dat
- Sprite List g1.dat
- Strings used in RCT1
- Strings used in the game
- TD6 format
- Terminology
- Track Data
- Track Designs
- Track drawers, RTDs and vehicle types
- Track types
- Vehicle Sprite Layout
- Widget colours
- Debugging OpenRCT2 on macOS
- OpenGL renderer
- Rebase and Sync fork with OpenRCT2
- Release Checklist
- Replay System
- Using minidumps from crash reports
- Using Track Block Get Previous
- History
- Testing