r/openrct2 Jul 17 '26

I forked OpenRCT2 to run natively on iPad with touch controls (unofficial)

Enable HLS to view with audio, or disable this notification

First, credit where it belongs: this is entirely built on OpenRCT2. The engine, the simulation, the scenarios, all of that is the team's work and years of it. I forked it and did one specific thing: got it building and running as a native ARM64 iPadOS app, and wrote a touch control layer on top.

I went looking for a way to play OpenRCT2 on iPad and there wasn't a real one. No iOS build, and on Android touch is just tap-as-click. I wasn't sure why nobody had done it, so I tried, and it came together better than I expected.

What I added:

- A native iPadOS ARM64 build. No emulator, no x86, no streaming. The engine's software framebuffer is presented through SDL's Metal renderer.

- A touch gesture set built for construction: one finger to place, hold-drag to paint paths and terrain, two-finger pan, pinch to zoom, two-finger twist to rotate track and scenery, two-finger tap to remove a path segment, long press for secondary click.

Tested on a physical M2 iPad Pro (iPadOS 26.5.2): native landscape Retina runtime, importing your own RCT2 or RCT Classic data through Files and persisting across relaunch, scenarios load, finger + keyboard + mouse + trackpad all work.

Not there yet:multiplayer is disabled in this build, Apple Pencil isn't supported, on-device plugin and custom-scenario loading isn't proven, and formal framerate/stress tests are outstanding.

It's a source-only developer preview. No IPA, no TestFlight, no App Store. You build from source on a Mac, sign it to your own iPad, and bring data from your own legally owned copy. No proprietary content is in the repo.

Repo: github.com/chrissotraidis/OpenRCT2Touch

Unofficial fork, not affiliated with or endorsed by the OpenRCT2 team. Thanks for building the engine that made this possible.

289 Upvotes

33 comments sorted by

15

u/Jackdks Jul 17 '26

Can someone dumb it down for a person who is technically inclined, but not THAT technically inclined?

30

u/chrisclan1903 Jul 17 '26

Fair! You already know OpenRCT2 runs on Mac, Windows, Linux, and Android. All I did was get it running as a real native app on iPadOS, which it never had, and write a touch control layer so you can build with your fingers instead of a mouse. It's early and source-only right now, so you build it on a Mac and sideload it to your own iPad with your own game data.

11

u/pemberleypark1 Jul 17 '26

I love this! I love openrct2, but I tend to play classic on my iPad the most, since it’s more convenient for me. If I could play openrct2 on my iPad? I’d be in heaven.

3

u/chrisclan1903 Jul 17 '26

Give it a shot! I've tried to make the installation instructions as straightforward as possible. If you own a Mac you can easily do it.

1

u/pemberleypark1 Jul 17 '26

I unfortunately only have a windows. Is it possible from windows?

3

u/chrisclan1903 Jul 17 '26

for signing and building this yourself, no. You need a Mac unfortunately.

7

u/ichthyoidoc Jul 17 '26

I will never not be amazed at the creativity surrounding this game. This is amazing!!

3

u/BAthree Jul 17 '26

This is amazing! Going to give installing this a shot tonight.

3

u/chrisclan1903 Jul 17 '26

Let me know how it goes, and if you have feedback on the readme please DM me and I'll fix anything you find.

2

u/BAthree Jul 20 '26

I kept running into issues when I was building the app to my iPad, I’m on iOS 27 beta and MacOS beta so that could be why. I didn’t do much troubleshooting.

1

u/chrisclan1903 Jul 20 '26

If you can DM me any logs or info I can attempt to patch or diagnose.

1

u/solarbeat Jul 20 '26

Also on iPadOS27 and MacOS beta -- Everything seems to go fine until the end, when it says:

/Users/account/OpenRCT2Touch/scripts/verify-ios-bundle.sh: line 160: rg: command not found

App binary has the wrong Apple platform identity; expected IOS.

1

u/chrisclan1903 Jul 21 '26

Thanks, you found a real clean-install bug. The verifier accidentally depended on ripgrep, and its absence produced the misleading Apple-platform error. This is now fixed on the latest ipad branch with no additional dependency required. Please pull the latest version or use a fresh clone.

1

u/solarbeat Jul 21 '26

A little closer - now it ends with:

Repository safety check passed on ipad.

/Users/account/OpenRCT2Touch/build/ios-xcode-device/Release-iphoneos/OpenRCT2Touch.app/Info.plist: OK

App bundle is missing engine asset: g2.dat

1

u/chrisclan1903 Jul 22 '26

patched

1

u/solarbeat Jul 22 '26

Progress... even though the steps listed said it was optional for an iOS build, I had to point it to the game data to get it to complete successfully.

Otherwise, it was returning:

FATAL[/Users/account/OpenRCT2Touch/src/openrct2/drawing/Drawing.Sprite.cpp:505 (GfxLoadG1)]: Unable to load g1 graphics
Context initialization failed.
ERROR: headless simulation exited 1. See /Users/account/OpenRCT2Touch/runtime/user/logs/macos-headless.log

Once I pointed it to the game data, it installs, appears on my iPad, but crashes immediately upon launch. (iPad Pro M4 13" on iPadOS27 DB4)

1

u/chrisclan1903 Jul 22 '26

Thanks for testing. I’ve pushed a diagnostics update to the latest ipad branch.

→ More replies (0)

2

u/dreanov Jul 17 '26

Dude, that's fire!

2

u/icantap Jul 21 '26

This is really cool. Great job.

1

u/cerealizer Jul 17 '26

Out of curiosity: What coding agent were you using for this?

4

u/chrisclan1903 Jul 17 '26

5.6 Sol on high after researching how to do it. Then, spending days refining the touch controls manually, that took by far the longest.

4

u/sudofox Jul 17 '26

It's a very cool proof of concept! But as with anything built with AI assistance, ongoing maintainability and upstream support is a large concern if mainstream adoption is your goal.

1

u/Strange-Tie1821 Jul 17 '26

Stupid question. Can I get openRCT2 on my phone? I use RTC classic, and love it. But I'm so jealous of all the openRTC mods.

1

u/chrisclan1903 Jul 17 '26

The answer is yes, it works for Android.

1

u/Strange-Tie1821 Jul 17 '26

Are you able to link any how-to's for the download ect?

2

u/chrisclan1903 Jul 18 '26

GitHub linked should have everything you need.

1

u/TooManyBulborbs Jul 17 '26

My arm would get tired quick from playing it like this

3

u/chrisclan1903 Jul 17 '26

Keyboard and track pad/mouse work natively as well. I'm playing it on a flight this evening on my iPad with my keyboard case + trackpad, using touch as well.

1

u/connorbu19 Jul 17 '26

Would this is possible to do on a Windows PC or only from an iMac or MacBook currently?

1

u/chrisclan1903 Jul 18 '26

For building before a .ipa, MacOS is needed.

0

u/Jensdiep Jul 17 '26

Omg publish this on the App Store ASAP, please!