Case study
OpenRCT2: an open re-implementation of RollerCoaster Tycoon 2
Re-implements RollerCoaster Tycoon 2, originally written in x86 assembly, as a C++ engine that runs on the original game’s data. It loads RCT2 saves and scenarios, and RCT1 scenarios when those files are present, while saving to its own documented park format. Modern-platform support, interface and AI changes, higher limits and multiplayer are deliberate extensions, not reproductions of the original.
- Targets
- Game
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
Requirements & limits
- Prerequisites: Playing requires the user’s own RollerCoaster Tycoon 2 files; the README names Steam and GOG.com editions. Original RollerCoaster Tycoon files are optional and enable its scenarios. By default, installation downloads OpenRCT2’s own objects, title sequences, OpenSoundEffects and OpenMusic packs, and test builds also fetch replays, each pinned by SHA-256.
- Prerequisites: Source builds use CMake 3.24+ and a C++20 compiler, with wiki guides for Linux, macOS, Windows, WSL and MSYS2 MinGW and an option to force 32-bit builds. Portable builds, installers, a launcher and several Linux and BSD packages are listed for players.
- Scope: The reviewed develop snapshot follows the v0.5.6 release of 2026-10-10. The README says OpenRCT2 attempts to provide everything from RCT2 plus many improvements, and restores some RollerCoaster Tycoon mechanics, so intentional differences are part of the design. No original source is recovered.
- Testing evidence: CI checks formatting, builds on several platforms and runs the GoogleTest suite, including replay, RCT2 save import/export, ride-rating, pathfinding and scenario-decryption tests on project test data. These guard OpenRCT2’s own behaviour and file compatibility.
- License: licence.txt applies GPL-3.0-or-later to OpenRCT2; original game data and purchased editions keep their own rights.
About this entry
The description was reviewed against primary sources.
Primary sources
- readme.md GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- CMakeLists.txt GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- assets.json GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- docs/save-format.md GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- .github/workflows/ci.yml GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- test/tests/ReplayTests.cpp GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- test/tests/S6ImportExportTests.cpp GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- licence.txt GitHub · OpenRCT2/OpenRCT2 · Revision 53bbc40
- https://github.com/OpenRCT2/OpenRCT2/releases/tag/v0.5.6
More in Games
- OpenRiseOfNations: a native macOS engine reimplementation · Case study
- OpenRW: an open re-implementation of the Grand Theft Auto III engine · Case study
- OpenSC4: an early open-source reimplementation of SimCity 4 · Case study
- OpenTomb: Tomb Raider engine reimplementation · Case study
- OpenXcom: an open-source clone of X-COM: UFO Defense and Terror from the Deep · Case study
- P.T. for PC: a behavior-based engine reimplementation that reads the PS4 data · Case study