TEARS OF THE KINGDOM / IPHONE & IPAD

Tears of the Kingdom on iPhone and iPad

The phone or tablet does not build anything. Your Mac builds an IPA from your own game files, and you install it with your own signing tool. Check these points before you spend the disk space.

What has been tested, and what is only required

DeviceSystemGame versionStatus
iPhone 14iOS 26.6.11.4.3Played by the author, signed with a personal development team in Xcode
iPad with the A16 chipiPadOS 26.7.11.4.3Played by the author, same signing
iPhone 15, 16, 17 and Pro modelsiOS 26 or later1.4.3Meet the requirement (iPhone 14 or newer); no published play report
iPad Pro (M-series)iPadOS 26 or later1.4.3No published play report
iPhone 13 and older——Below the stated requirement

Project author’s iPhone and iPad test notes ↗

Build the IPA on your Mac

First complete the Mac tools and project-source setup. Stop before running the Mac build. Keep Terminal in that source folder, then add the iOS tools below.

01

Install the iOS tools once

Install full Xcode 26 or later from the App Store, open it once, and add its iOS and Metal components. Then:

iOS build tools
brew install xcodegen cmake ninja

xcodebuild -version prints Xcode 26 or later; brew list shows xcodegen, cmake and ninja.

02

Run build_app.py with --platform ios

The command is the Mac one plus --platform ios and an output that ends in .ipa. Add --update for 1.4.3. Get the Mac command for your own paths from the build wizard, then add --platform ios and use -o <path>.ipa for the output. If the Mac command already has -o, replace that app path rather than adding a second output option.

Example for the tested 1.4.3 iOS path
python3.14 build_app.py ~/Games/totk.xci -k ~/keys/prod.keys --update ~/Games/totk-1.4.3.nsp --platform ios -o ~/Games/TOTK.ipa

The first iOS build downloads and compiles Opus and libvpx for the device and compiles the shader seed for iOS, which is why it needs the network and more free space than a Mac build.

Terminal ends with “IPA ready: … (… GiB); unsigned, sideload with your signing tool”.

03

Decide about the Mac reminder

The iOS build installs a small agent on the Mac. While the device is connected (cable or the same Wi-Fi), every 500 new shaders it asks once whether to send the missing-shader list to the project. Skip it with --no-shader-reminder, or remove it later:

Remove the reminder agent
python3 games/totk/ios/tools/shader_contrib_watch.py uninstall

You either kept the reminder or know how to remove it.

Sign and install

What the IPA contains

  • The game app, built with code signing switched off.
  • An ad-hoc signature on the executable that carries com.apple.developer.kernel.increased-memory-limit. The game reports a 3.2 GiB application pool, more than the default iOS limit.
  • Your game data and the shader seed, so the first install is self-contained.

What you do

  • Sign and install it with your own sideloading tool, keeping its entitlements.
  • The author signed with a personal development team in Xcode.

The first launch takes minutes

  1. About 15 s

    The app checks the game data.

  2. About 3 min on an iPhone 14

    It imports the shaders it carries, with a progress bar, before the title appears.

  3. Later launches: about 8 s

    The title shows quickly once the import is done.

The picture is handheld mode, 1280×720, as on a Switch without its dock. Touch controls follow a Switch controller; a connected game controller hides them; touch the screen to use them, and they hide again 3 seconds after you lift your fingers.

Known limits on iOS

What you seeWhyWhat helps
Objects missing in some placesAn iPhone or iPad cannot translate shaders while playing; a draw whose variant the app does not carry is skipped.Rebuild later: every variant players send to the shared list is in the next build. With the Mac, games/totk/ios/tools/fill_shaders.py translates the missing ones and sends them to the device.
The game closes after several minutes in busy areasIt uses close to 4 GB on an iPhone 14; iOS closes it when memory runs out (seen twice, about 8 minutes in).No fix yet; lowering iOS memory use is the author’s next piece of work.
No 1–4 shortcutsThey are Mac keyboard keys.The picture is fixed to handheld mode.

Files on the device

The app keeps saves and its writable shader cache in its own Documents folder. In the Files app open On My iPhone › Tears of the Kingdom (or On My iPad) to find shader-list-contribution.txt, the list of shaders the device missed. For saves and backups on the Mac, see saves and mods.