A tool-assisted speedrun (TAS) script for OpenRCT2. It uses game actions to achieve scenario goals in as few ticks as possible.
Scenario | Record |
---|---|
Corkscrew Follies | |
Funtopia | 61,714 ticks |
Hydro Hills | 16,384 ticks |
Fruit Farm | 63,352 ticks |
Mineral Park | 18,023 ticks |
Wacky Worlds | |
South America - Rio Carnival | 3,700 ticks |
Europe - Renovation | 1,586 ticks |
Time Twister | |
Dark Age - Robin Hood | 16,384 ticks |
Prehistoric - After the Asteroid | 2,115 ticks |
Mythological - Animatronic Film Set | 2,643 ticks |
Roaring Twenties - Schneider Cup | 529 ticks |
Future - Future World | 529 ticks |
Mythological - Cradle of Civilization | 2,643 ticks |
Rock 'n' Roll - Rock 'n' Roll | 2,643 ticks |
Six Flags Magic Mountain is currently not TASable. The typical strategy for completing this scenario requires using an exploit where the game calculated park value before it realized that deleted rides should have been deducted from that value. This was fixed sometime after 0.4.0, but since this TAS plugin requires speed-up features introduced in a later version, it can't be used.
- This plugin requires OpenRCT2 version 0.4.6-e17bca3 or later.
- Download the latest version of the plugin from the Releases page.
- Put the downloaded
TAS.js
file into your/OpenRCT2/plugin
folder. - For best real-time results, move all other plugins to a backup folder. (They slow down the game if you care about real-time timing.)
- When you load any supported scenario, the TAS run will automatically start.
- Upon scenario completion, a park message will appear with the real-time and tick count.
- Install the latest version of Node and include NPM in the installation options.
- Clone the project to a location of your choice on your PC.
- Open a command prompt, use
cd
to change your current directory to the root folder of this project, and runnpm install
. - Find the
openrct2.d.ts
TypeScript API declaration file in OpenRCT2's files and copy it to thelib
folder. (This file can usually be found inC:/Users/<YOUR NAME>/Documents/OpenRCT2/bin/
orC:/Program Files/OpenRCT2/
).- Alternatively, you can make a symbolic link instead of copying the file, which will keep the file up to date whenever you install new versions of OpenRCT2.
- Run
npm run build
(for the release build) ornpm run build:dev
(develop build) to build the project.- For the release build, the default output folder is
(project directory)/dist
. - For the develop build, the project tries to put the plugin into your game's plugin directory.
- These output paths can be changed in
rollup.config.js
.
- For the release build, the default output folder is
This project supports the OpenRCT2 hot reload feature for development.
- Make sure you've enabled it by setting
enable_hot_reloading = true
in your/OpenRCT2/config.ini
file. - Open a command prompt and use
cd
to change your current directory to the root folder of this project. (Or, open a terminal in an editor like Visual Studio Code.) - Run
npm start
to start the hot reload server. - Use the
/OpenRCT2/bin/openrct2.com
executable to start OpenRCT2 with the console. - Each time you save any of the files in
./src/
, the server will compile./src/plugin.ts
and place the compiled plugin file inside your local OpenRCT2 plugin directory. - OpenRCT2 will notice file changes and will reload the plugin.
- Basssiiie โ TypeScript boilerplate and README text
- ceaselessly, Specky, lordmarcel, HeyThereImDad โ Speedrunning strategies