[Release] OpenRCT2 (RollerCoaster Tycoon 2) for Switch

Download: https://github.com/rsn8887/openrct2/releases/latest

Edit: New update v1.04 (see changelog at the bottom). To update from any version to latest, it is enough to just replace the .nro file.

# OpenRCT2 (RollerCoaster Tycoon 2) port for Switch

This is my Switch port of OpenRCT2, a re-implementation of RollerCoaster Tycoon 2. A construction and management simulation video game that simulates amusement park management.

Data files from the original game are required to play this game. _RollerCoaster Tycoon 2_ data files are required to launch the game. Additionally, _RollerCoaster Tycoon 1_ data files are also supported.

Port by @rsn8887.

Visit my Patreon:
https://www.patreon.com/rsn8887

IMG_2411.jpeg


OpenRCT2_cc.jpg OpenRCT2_bb.jpg OpenRCT2_dd.jpg

# Thanks

Thanks to the many many developers who worked on this open source game.

Thanks to Chris Sawyer for writing the amazing original game.

Thanks to devkitPro for making Switch homebrew possible.

Thanks to Milenko for testing and making screenshots.

Thanks to my supporters on Patreon: Andyways, CountDuckula, Jason Crawford, Greg Gibson, Jesse Harlin, Özgür Karter, Matthew Machnee, Milenko, and RadicalR.

# Installation

- Download (see `assets` below), and unzip openrct2_switch.zip and copy the contents over to the `/switch/` folder on your sd card, so that you have a folder `/switch/openrct2` with many folders and files inside.

- Copy all files and folders from a working *Windows RollerCoaster Tycoon 2* installation to `/switch/openrct2/rct2/` so that you have a files and folders `/switch/openrct2/rct2/rct2.exe`, `/switch/openrct2/rct2/Data/`, `/switch/openrct2/rct2/Landscapes/`, `/switch/openrct2/rct2/ObjData/` and many more files and folders there. For my testing, I used the files from the gog.com version.

- Optionally, you can also install the *Windows RollerCoaster Tycoon 1* files. Just copy your complete rct1 files to `/switch/openrct2/rct1/`. Then you can select the RCT1 scenarios, and in options you can select to show the rct1 title sequence. For my testing, I used the files from the gog.com version.

- Note: This game takes quite long to load at first, because it generates a bunch of cache files. Subsequent boots are much faster.

# Controls

- Left analog stick = mouse pointer control
- Right analog stick = scroll the map
- R = left mouse click
- L = right mouse click
- ZR = hold to slow down analog joystick mouse, useful to precisely position the pointer
- ZL = hold to speed up analog joystick mouse
- A = right mouse click
- B = left mouse click
- Y = shift key, hold and move mouse up/down to build above the ground
- X = ctrl key, hold and move mouse to build multiple pieces at the same height above ground
- Dpad up = zoom out (page up key)
- Dpad down = zoom in (page down key)
- Dpad left = rotate construction object (z key)
- Dpad right = rotate camera (enter key)
- R3 (press right stick in) = open cheat menu (ctrl-alt-c)
- Hold ZL + dpad left = close topmost window (backspace key)
- Hold ZL + dpad right = exit construction mode (escape key)
- Minus = toggle between three touch control modes:
* Touchpad style drag pointer with finger and tap to click, default:
* Move a single finger to move the mouse pointer. Use short tap for left click. Hold a single finger while tapping a second finger for right click. Drag with two fingers to drag and drop.
* Jump to finger without click
* The pointer jumps to the finger, but the finger doesn't click. Use L/R or A/B to click
* Jump to finger with tap click
* The pointer jumps to the finger, and a short tap also generates a left click
- Plus = bring up on-screen keyboard, useful for entering names, etc.
* When pressing enter, it first erases existing text and replaces it with new text
- Physical USB keyboard and mouse are supported. Not all mice work. There's a [mouse compatibility
chart](https://docs.google.com/spreadsheets/d/1Drbo5-QuSX901MwtOytSMuqRGxeIkq2HELM806I9dj0/edit#gid=0).

# Current Limitations

- No network support

# Building

## Dependencies

- Switch compilation helper scripts
```
sudo -E dkp-pacman -S devkitpro-pkgbuild-helpers
```

- Switch libicu
```
git clone https://github.com/rsn8887/icu
cd icu
git checkout switch
cd ..
mkdir macos
mkdir switch
cd macos
../icu/icu4c/source/runConfigureICU MacOSX
make -j12
cd ../switch
source $DEVKITPRO/switchvars.sh
../icu/icu4c/source/configure --host aarch64-none-elf --prefix $DEVKITPRO/portlibs/switch/ --disable-shared --enable-static --disable-samples --disable-tests --with-cross-build=$PWD/../macos
cp ../icu/icu4c/source/config/mh-linux ../icu/icu4c/source/config/mh-unknown
make -j12
sudo -E make install
```

- Switch libzip
```
git clone https://github.com/rsn8887/libzip
cd libzip
git checkout switch
cd ..
mkdir buildswitch
cd buildswitch
source $DEVKITPRO/switchvars.sh
cmake ../libzip \
-DENABLE_COMMONCRYPTO=OFF \
-DENABLE_GNUTLS=OFF \
-DENABLE_MBEDTLS=OFF \
-DENABLE_OPENSSL=OFF \
-DENABLE_WINDOWS_CRYPTO=OFF \
-DBUILD_TOOLS=OFF \
-DBUILD_REGRESS=OFF \
-DBUILD_EXAMPLES=OFF \
-DBUILD_DOC=OFF \
-DCMAKE_TOOLCHAIN_FILE=$DEVKITPRO/switch.cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=$PORTLIBS_PREFIX \
-DCMAKE_INSTALL_LIBDIR=lib \
-DCMAKE_C_FLAGS="$CFLAGS $CPPFLAGS" \
-DCMAKE_CXX_FLAGS="CFLAGS -fno-exceptions -fno-rtti"
make -j12 install
```

- Switch libspeexdsp
```
git clone https://github.com/rsn8887/speexdsp
#might use libtoolize instead of glibtoolize if not on mac
glibtoolize
aclocal
autoconf
autoheader
automake --add-missing
source $DEVKITPRO/switchvars.sh
./configure --host aarch64-none-elf --prefix $DEVKITPRO/portlibs/switch/ --disable-shared --enable-static
sudo -E make install
```

## Main app

- Switch openRCT2
```
git clone https://github.com/rsn8887/openrct2
cd openRCT2
git checkout switch
cd ..
mkdir buildswitch
cd buildswitch
source $DEVKITPRO/switchvars.sh
cmake ../openrct2 \
-DSWITCH_BUILD=ON \
-DCMAKE_BUILD_TYPE=RELEASE
make -j12 openrct2_switch.zip
```

# Changelog
v1.04

- Fix right mouse click input
- Map object rotation to dpad left and camera rotation to dpad right
- Map backspace to zl+dpad left and escape to zl+dpad right to make room for new rotation mapping

v1.03

- Map shift, ctrl, backspace, and escape keys, useful to build above ground and quickly close windows.
- Map cheat menu hotkey, now works by pressing the right stick in.
- Make joystick pointer speed truly independent of fps. It now moves at constant speed even if the frame rate is low.
- The filtering options now work as expected. In docked mode, `linear` gives a slightly blurry image, and `sharp nearest neighbor` gives perfectly sharp pixels.
- General image quality improvements in both docked and handheld mode. The internal rendering now dynamically switches resolution between 1080p and 720p instead of always rendering at 720p. Also, the mouse pointer looks a bit sharper now in handheld mode.
- The window scaling option now works and can be used to blow up or shrink down the whole game screen, including the user interface.
- Different game resolutions should also work in principle now. This involves editing the window_width and window_height entries in `/switch/home/openrct2/config.ini`. Only 16x9 ratios will work correctly. I think the default choice of 960x540 looks the best.

v1.02

- Fix mouse cursor not turning into a hand when hovering over hotspots in the park
- Reduce joystick pointer speed slightly for easier control in-game.

v1.01

- First release on Switch
 
Last edited by rsn8887,

KirovAir

Alcoholic Programmer
Member
Joined
Dec 7, 2006
Messages
771
Trophies
1
Age
32
Location
Netherlands
Website
www.jessesander.nl
XP
2,470
Country
Netherlands
Never, ever would have thought this would be possible. Unreal.

Think about it: This was originally written in ASSEMBLY 20 years ago. My programming classes had this game as a prime example of awesome and efficient programming achievements for the x86 architecture back then.
Now, every single line has been reverse engineered over the years and it has been ported over to a portable device with a completely different architecture. Not emulation, no extra OS, just completely ported with added control support. I know there are evenly (and way more) astonishing projects and devs (mupen64Plus-NEXT, retroarch itself etc.) but this port combined with nostalgia just blows my mind.
 
Last edited by KirovAir,

Ninn

Well-Known Member
Member
Joined
Dec 1, 2006
Messages
480
Trophies
1
XP
1,643
Country
Japan
Wow, nice! Never played this game, but i always wanted to try it.

Now its the time to do just that.:) Good job man!
 
Last edited by Ninn,

rsn8887

Well-Known Member
OP
Member
Joined
Oct 8, 2015
Messages
956
Trophies
1
Age
47
Website
www.patreon.com
XP
3,640
Country
United States
It should work with rct1 assets. Milenko tested that. Try copying your rct1 assets into the folder /switch/openrct2/rct1/

I heard that many scenarios from rct1 are too easy or play wrong in the rct2 engine, since the gameplay is a bit different. But in principle it should work.

--------------------- MERGED ---------------------------

What is this series? I know it’s a tycoon and I think it was on the nes somehow.

It is a kind of management game with insane level of detail. You can decide the color of single ride-wagons, and every little person has a name etc. Think of it like Bullfrog's Theme Park but on steroids.
 

rsn8887

Well-Known Member
OP
Member
Joined
Oct 8, 2015
Messages
956
Trophies
1
Age
47
Website
www.patreon.com
XP
3,640
Country
United States
amazing, ive been playing open rct2 all week and this this comes out. lol

anyway to copy over my parks and tracks?

Should be compatible. There's a folder called `/switch/openrct2/home` for such files already. It is also used for the cache files the game generates on first boot, and the `config.ini` file that is generated etc..
 
  • Like
Reactions: limpbiz411

Cubuss

Well-Known Member
Member
Joined
Aug 4, 2017
Messages
537
Trophies
1
Age
31
Location
High Quality Shitposter
XP
3,446
Country
Netherlands
It should work with rct1 assets. Milenko tested that. Try copying your rct1 assets into the folder /switch/openrct2/rct1/

I heard that many scenarios from rct1 are too easy or play wrong in the rct2 engine, since the gameplay is a bit different. But in principle it should work.

--------------------- MERGED ---------------------------



It is a kind of management game with insane level of detail. You can decide the color of single ride-wagons, and every little person has a name etc. Think of it like Bullfrog's Theme Park but on steroids.

Tried that with roller coaster tycoon Deluxe but it didn't work,
It stays black screen for a while when opening the nro but then returns to homebrew menu:
 

rsn8887

Well-Known Member
OP
Member
Joined
Oct 8, 2015
Messages
956
Trophies
1
Age
47
Website
www.patreon.com
XP
3,640
Country
United States
Hmm, just a guess, but I think you always need all the rct2 files. I think There's no way around the game will try to load the rct2 files and fail if it cannot find them.

But you can also, in addition put rct1 files I think. Milenko was the one who tested that.
 
Last edited by rsn8887,
  • Like
Reactions: Cubuss

nikeymikey

This is now a Spiderman thread.........
Member
Joined
Nov 19, 2008
Messages
1,510
Trophies
1
XP
2,448
Country
United Kingdom
This is awesome!! Spent sooooo long play RCT2 back in the day. Is there any way to access the openrct2 cheats window??

The OSK doesnt seem to be working so i guess the cheat window cant be accessed at the moment!! On another note yes the RCT1 + expansion pack files do work :)
 
Last edited by nikeymikey,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • BigOnYa @ BigOnYa:
    Biomutant looks cool tho, may have to try that
  • Quincy @ Quincy:
    Usually when such a big title leaks the Temp will be the first to report about it (going off of historical reports here, Pokemon SV being the latest one I can recall seeing pop up here)
  • K3Nv2 @ K3Nv2:
    I still like how a freaking mp3 file hacks webos all that security defeated by text yet again
  • BigOnYa @ BigOnYa:
    They have simulators for everything nowdays, cray cray. How about a sim that shows you playing the Switch.
  • K3Nv2 @ K3Nv2:
    That's called yuzu
    +1
  • BigOnYa @ BigOnYa:
    I want a 120hz 4k tv but crazy how more expensive the 120hz over the 60hz are. Or even more crazy is the price of 8k's.
  • K3Nv2 @ K3Nv2:
    No real point since movies are 30fps
  • BigOnYa @ BigOnYa:
    Not a big movie buff, more of a gamer tbh. And Series X is 120hz 8k ready, but yea only 120hz 4k games out right now, but thinking of in the future.
  • K3Nv2 @ K3Nv2:
    Mostly why you never see TV manufacturers going post 60hz
  • BigOnYa @ BigOnYa:
    I only watch tv when i goto bed, it puts me to sleep, and I have a nas drive filled w my fav shows so i can watch them in order, commercial free. I usually watch Married w Children, or South Park
  • K3Nv2 @ K3Nv2:
    Stremio ruined my need for nas
  • BigOnYa @ BigOnYa:
    I stream from Nas to firestick, one on every tv, and use Kodi. I'm happy w it, plays everything. (I pirate/torrent shows/movies on pc, and put on nas)
  • K3Nv2 @ K3Nv2:
    Kodi repost are still pretty popular
  • BigOnYa @ BigOnYa:
    What the hell is Kodi reposts? what do you mean, or "Wut?" -xdqwerty
  • K3Nv2 @ K3Nv2:
    Google them basically web crawlers to movie sites
  • BigOnYa @ BigOnYa:
    oh you mean the 3rd party apps on Kodi, yea i know what you mean, yea there are still a few cool ones, in fact watched the new planet of the apes movie other night w wifey thru one, was good pic surprisingly, not a cam
  • BigOnYa @ BigOnYa:
    Damn, only $2.06 and free shipping. Gotta cost more for them to ship than $2.06
  • BigOnYa @ BigOnYa:
    I got my Dad a firestick for Xmas and showed him those 3rd party sites on Kodi, he loves it, all he watches anymore. He said he has got 3 letters from AT&T already about pirating, but he says f them, let them shut my internet off (He wants out of his AT&T contract anyways)
  • K3Nv2 @ K3Nv2:
    That's where stremio comes to play never got a letter about it
  • BigOnYa @ BigOnYa:
    I just use a VPN, even give him my login and password so can use it also, and he refuses, he's funny.
  • BigOnYa @ BigOnYa:
    I had to find and get him an old style flip phone even without text, cause thats what he wanted. No text, no internet, only phone calls. Old, old school.
    K3Nv2 @ K3Nv2: @BigOnYa...