在 iPhone 和 iPad 上原生暢玩 Switch 遊戲

不是模擬器。遊戲本身的程式碼直接在 Apple 晶片上執行,Switch 的圖形則在 Metal 上重新實作。自備 NSP 檔案和 prod.keys,一個腳本就能把它們變成可側載的 IPA。

89款可玩遊戲
18款提升至 60 幀
0儲存庫中的遊戲檔案
iOS 26+A17 Pro / M1 或更新

背景

用原生移植取代模擬:只有在 Apple 核心要求的地方才改寫遊戲程式碼。

原生執行

每款遊戲的 NSO 模組經過改寫後直接在 CPU 上執行。一個主機層取代 Switch 的作業系統 Horizon:執行緒、記憶體、檔案系統、音訊和各項服務。

Metal 上的圖形

NVN 和 Vulkan 呼叫在 Metal 上實作。Maxwell 著色器在建置時先轉成 SPIR-V,再轉成 Metal Shading Language。

自備遊戲

這裡不附帶任何遊戲的內容。打包腳本在你的 Mac 上用你的金鑰讀取 NSP,並產生未簽署的 IPA 供你側載。

每款遊戲的設定檔

每款遊戲在 dm/games/<title id> 都有一份包含常數和著色器表的小型設定檔。程式碼讀取設定檔,不會寫死某款遊戲。

建立在 d2r-mobile、Ryujinx 的著色器轉譯器、Atmosphère、yuzu、LibHac、SPIRV-Cross 等專案之上。詳見致謝。

快速上手

在 Mac 上打包 IPA、側載、開玩。第一次建置需要 30–60 分鐘,之後約 10 分鐘。

需求。安裝了 Xcode 和 Homebrew 的 Mac;可用磁碟空間約為 NSP 大小的兩倍再加 10 GB;目標裝置為 iPhone 15 Pro 或更新(A17 Pro 以上),或搭載 M1 以上的 iPad,系統為 iOS / iPadOS 26 以上(遊戲的 BC 壓縮紋理需要它)。

不想用終端機?社群專案 NX2Apple 把這些步驟做成了一個 macOS 應用程式。

取得 nxnative 和工具

只需在 Mac 上做一次。

git clone https://github.com/seedds/nxnative.git && cd nxnative
brew install xcodegen zstd spirv-cross
brew install --cask dotnet-sdk
python3 -m pip install lz4 capstone fonttools "backports.zstd; python_version < '3.14'"

把一款遊戲的 NSP 放進一個資料夾

基礎遊戲(NSP 或 XCI 傾印檔)、它的更新檔和 DLC。

~/Games/MarioWonder/
  Super Mario Bros. Wonder [010015100B514000][v0].nsp
  Super Mario Bros. Wonder [010015100B514800][v327680].nsp

執行腳本

IPA 會出現在同一個資料夾。

python3 scripts/build_ipa_from_nsp.py ~/Games/MarioWonder -k ~/keys/prod.keys

側載

用 AltStore、Sideloadly、LiveContainer 等工具安裝 IPA。App 會沿用遊戲的名稱、圖示和版本。

開玩

點選上方的 2D / 3D 切換觸控配置。連接手把後會隱藏觸控按鈕。在 3D 中,在螢幕右側三分之一處滑動來轉動視角。搖動手機即可搖動手把。

遊戲

已在 Mac 或 iPhone 上測試。點選一款查看詳情;各遊戲的說明列出了測試平台和進度。

Mario Kart 8 Deluxe
Mario Kart 8 DeluxeIPA ~11.9 GB
3D 配置
Mario vs. Donkey Kong
Mario vs. Donkey KongIPA ~1.6 GB
3D 配置
Paper Mario: The Thousand-Year Door
Paper Mario: The Thousand-Year DoorIPA ~5 GB
3D 配置60 fps
Super Mario 3D World + Bowser's Fury
Super Mario 3D World + Bowser's FuryIPA ~3 GB
3D 配置
Super Mario Bros. Wonder
Super Mario Bros. WonderIPA ~4 GB
3D 配置
Super Mario Galaxy
Super Mario GalaxyIPA ~3 GB
3D 配置
Super Mario Galaxy 2
Super Mario Galaxy 2IPA ~3 GB
3D 配置
Super Mario Odyssey
Super Mario OdysseyIPA ~6 GB
3D 配置
The Legend of Zelda: Breath of the Wild
The Legend of Zelda: Breath of the WildIPA ~16 GB
3D 配置60 fps
The Legend of Zelda: Link's Awakening
The Legend of Zelda: Link's AwakeningIPA ~6 GB
3D 配置
The Legend of Zelda: Tears of the Kingdom
The Legend of Zelda: Tears of the KingdomIPA ~17 GB
3D 配置60 fps
13 Sentinels: Aegis Rim
13 Sentinels: Aegis RimIPA ~5 GB
3D 配置
Absolum
AbsolumIPA ~2 GB
3D 配置
Ace Attorney Investigations Collection
Ace Attorney Investigations CollectionIPA ~7 GB
3D 配置
Advance Wars 1+2: Re-Boot Camp
Advance Wars 1+2: Re-Boot CampIPA ~7.1 GB
3D 配置
AI: THE SOMNIUM FILES
AI: THE SOMNIUM FILESIPA ~8.3 GB
3D 配置
AI: THE SOMNIUM FILES - nirvanA Initiative
AI: THE SOMNIUM FILES - nirvanA InitiativeIPA ~11.6 GB
3D 配置
Animal Crossing: New Horizons
Animal Crossing: New HorizonsIPA ~10.5 GB
3D 配置
ANIMAL WELL
ANIMAL WELLIPA ~54 MB
3D 配置
ASTRAL CHAIN
ASTRAL CHAINIPA ~9.7 GB
3D 配置60 fps
Balatro
BalatroIPA ~82 MB
3D 配置
BALL x PIT
BALL x PITIPA ~1.1 GB
3D 配置
Bayonetta
BayonettaIPA ~8.8 GB
3D 配置
Bayonetta 2
Bayonetta 2IPA ~12.5 GB
3D 配置
Bayonetta 3
Bayonetta 3IPA ~14.2 GB
3D 配置
Big Brain Academy: Brain vs. Brain
Big Brain Academy: Brain vs. BrainIPA ~0.8 GB
3D 配置
Brain Memory Training Academy
Brain Memory Training AcademyIPA ~0.1 GB
3D 配置
Captain Toad: Treasure Tracker
Captain Toad: Treasure TrackerIPA ~2 GB
3D 配置
Catherine: Full Body
Catherine: Full BodyIPA ~14 GB
3D 配置
Celeste
CelesteIPA ~0.9 GB
3D 配置
Cuphead
CupheadIPA ~5 GB
3D 配置
DARK SOULS: REMASTERED
DARK SOULS: REMASTEREDIPA ~4 GB
3D 配置60 fps
Digimon Story Cyber Sleuth: Complete Edition
Digimon Story Cyber Sleuth: Complete EditionIPA ~5 GB
3D 配置
Donkey Kong Country: Tropical Freeze
Donkey Kong Country: Tropical FreezeIPA ~7.3 GB
3D 配置
DRAGON QUEST VII Reimagined
DRAGON QUEST VII ReimaginedIPA ~5.9 GB
3D 配置
DRAGON QUEST XI S: Echoes of an Elusive Age – Definitive Edition
DRAGON QUEST XI S: Echoes of an Elusive Age – Definitive EditionIPA ~15 GB
3D 配置60 fps
FINAL FANTASY RESONANCE
FINAL FANTASY RESONANCEIPA ~10 GB
3D 配置60 fps
FINAL FANTASY TACTICS - The Ivalice Chronicles
FINAL FANTASY TACTICS - The Ivalice ChroniclesIPA ~11 GB
3D 配置
Fire Emblem Engage
Fire Emblem EngageIPA ~15 GB
3D 配置60 fps
Fire Emblem: Three Houses
Fire Emblem: Three HousesIPA ~13 GB
3D 配置60 fps
Ghost Trick: Phantom Detective
Ghost Trick: Phantom DetectiveIPA ~3 GB
3D 配置
The Great Ace Attorney Chronicles
The Great Ace Attorney ChroniclesIPA ~4 GB
3D 配置
Hades
HadesIPA ~4 GB
3D 配置
Hades II
Hades IIIPA ~4 GB
3D 配置
Hollow Knight: Silksong
Hollow Knight: SilksongIPA ~6.4 GB
3D 配置
Hyrule Warriors: Age of Calamity
Hyrule Warriors: Age of CalamityIPA ~15 GB
3D 配置60 fps
Kirby and the Forgotten Land
Kirby and the Forgotten LandIPA ~6.4 GB
3D 配置
Luigi's Mansion 3
Luigi's Mansion 3IPA ~7.5 GB
3D 配置60 fps
Metroid Dread
Metroid DreadIPA ~5 GB
3D 配置
Monster Hunter Rise
Monster Hunter RiseIPA ~22 GB
3D 配置60 fps
Monster Train 2
Monster Train 2IPA ~1.6 GB
3D 配置60 fps
OCTOPATH TRAVELER
OCTOPATH TRAVELERIPA ~3.6 GB
3D 配置
Octopath Traveler 0
Octopath Traveler 0IPA ~4 GB
3D 配置60 fps
Octopath Traveler II
Octopath Traveler IIIPA ~5.9 GB
3D 配置60 fps
Patrick's Parabox
Patrick's ParaboxIPA ~0.2 GB
3D 配置
Persona 5 Royal
Persona 5 RoyalIPA ~14.9 GB
3D 配置
Pikmin 4
Pikmin 4IPA ~10.8 GB
3D 配置
Pokémon Brilliant Diamond
Pokémon Brilliant DiamondIPA ~4.6 GB
3D 配置60 fps
Pokémon Legends: Z-A
Pokémon Legends: Z-AIPA ~6 GB
3D 配置
Pokémon Scarlet
Pokémon ScarletIPA ~7.0 GB
3D 配置
Pokémon Sword
Pokémon SwordIPA ~12.4 GB
3D 配置
Pokémon Shield
Pokémon ShieldIPA ~12.4 GB
3D 配置
Portal
PortalIPA ~2.6 GB
3D 配置
Raging Loop
Raging LoopIPA ~0.9 GB
3D 配置
Rhythm Heaven Groove
Rhythm Heaven GrooveIPA ~3 GB
3D 配置
ROMANCE OF THE THREE KINGDOMS 8 REMAKE
ROMANCE OF THE THREE KINGDOMS 8 REMAKEIPA ~16.8 GB
3D 配置
Sea of Stars
Sea of StarsIPA ~5.1 GB
3D 配置
SHIN MEGAMI TENSEI V: Vengeance
SHIN MEGAMI TENSEI V: VengeanceIPA ~14.6 GB
3D 配置60 fps
Stardew Valley
Stardew ValleyIPA ~0.6 GB
3D 配置
STEINS;GATE RE:BOOT
STEINS;GATE RE:BOOTIPA ~6 GB
3D 配置
Super Smash Bros. Ultimate
Super Smash Bros. UltimateIPA ~17.5 GB
3D 配置
Taiko Risshiden V DX
Taiko Risshiden V DXIPA ~3.3 GB
3D 配置
Unicorn Overlord
Unicorn OverlordIPA ~4 GB
3D 配置
Yoshi's Crafted World
Yoshi's Crafted WorldIPA ~6.1 GB
3D 配置
NieR:Automata The End of YoRHa Edition
NieR:Automata The End of YoRHa EditionIPA ~10.9 GB
3D 配置60 fps
The Legend of Zelda: Echoes of Wisdom
The Legend of Zelda: Echoes of WisdomIPA ~7.8 GB
3D 配置
Donkey Kong Country Returns HD
Donkey Kong Country Returns HDIPA ~11.6 GB
3D 配置
Mario + Rabbids Sparks of Hope
Mario + Rabbids Sparks of HopeIPA ~9.8 GB
3D 配置
Xenoblade Chronicles 2
Xenoblade Chronicles 2IPA ~17.1 GB
3D 配置
Xenoblade Chronicles 3
Xenoblade Chronicles 3IPA ~19.2 GB
3D 配置
FINAL FANTASY CRYSTAL CHRONICLES Remastered Edition
FINAL FANTASY CRYSTAL CHRONICLES Remastered EditionIPA
3D 配置
Return of the Obra Dinn
Return of the Obra DinnIPA ~0.9 GB
3D 配置
Blasphemous 2
Blasphemous 2IPA ~1.5 GB
3D 配置
Silver Pines
Silver PinesIPA
3D 配置
Blasphemous
BlasphemousIPA ~0.9 GB
3D 配置
FINAL FANTASY X/X-2 HD Remaster
FINAL FANTASY X/X-2 HD RemasterIPA ~26.5 GB
3D 配置
Mario + Rabbids Kingdom Battle
Mario + Rabbids Kingdom BattleIPA ~5 GB
3D 配置
Persona 4 Golden
Persona 4 GoldenIPA
3D 配置
Xenoblade Chronicles: Definitive Edition
Xenoblade Chronicles: Definitive EditionIPA ~13.2 GB
3D 配置

常見問題與小技巧

語言

預設為英文。打包時用 -l 選擇其他語言(例如 -l ja),或在 Documents/env.txt 中加入 DM_LANG=zh-Hans。

存檔與記錄

在「檔案」App 中以 App 名稱命名的資料夾裡:save/ 和 log.txt。出問題時請提供 log.txt。

卡頓

場景第一次出現時的短暫卡頓是正常的:圖形只會編譯一次,之後就會被記住。

重新安裝

有些側載工具會給一個新的資料夾。請把舊資料夾裡的 save/ 和 pso_user.tsv 複製過去。

設定

Documents/env.txt 中的行:DM_OPMODE=0 為掌機模式,DM_FPS_TARGET=30 可省電,DM_SHOW_FPS=1 顯示 FPS 計數器。

不支援

沒有 amiibo,沒有線上功能。其他遊戲會得到一份分析報告和盡力而為的 IPA,可能無法啟動。

社群專案

其他人基於 nxnative 做的專案。它們不由 nxnative 維護,請以各專案自己的 README 和 issue 為準。

NX2Apple第三方

A fork of nxnative that follows upstream daily and adds NS Port Builder, a macOS app that runs the whole pipeline from a window.

  • A GUI for every step: pick the game, update, DLC and prod.keys, install missing tools with one click, follow the build's stages
  • A RomFS archive of about 100 shards, so very large games such as Tears of the Kingdom install as a slim IPA plus one folder of files
  • Interrupted builds resume where they stopped; a prebuilt macOS (Apple silicon) app on its releases page
GitHub下載

LumaDock · 璃游第三方

A native launcher for Apple Silicon Macs (macOS 26+, SwiftUI) that you point at your own nxnative checkout, games and keys.

  • A game library: add NSP / XCI / NSZ / XCZ files or scan a folder, then import, decompress and prepare them automatically
  • Automated builds with measured progress, cancellation and retry, shader warnings and repair suggestions
  • Launch a game on the Mac or export an unsigned iPhone / iPad IPA from the game's details; English and Simplified Chinese interface
GitHub下載

NX Play第三方

A Mac app (and the nxplay script behind it) that builds, plays, installs and manages your Switch games through nxnative, on the Mac and on iPhone / iPad.

  • A library of your games with their icons: extract, play on the Mac and rebuild from one window; Console Mode runs full screen with a game controller
  • Install on an iPhone or iPad through Xcode or build an IPA to sideload; copy saves between the Mac and a device and back them up to your own private Git repository
  • Pulls nxnative's latest fixes before each run and rebuilds when they change something, or keeps a build that works as it is; needs Apple silicon and macOS 15+
GitHub下載

NxNative Launcher第三方

A native macOS interface (Apple silicon, macOS 13+) that turns nxnative's command-line pipeline into a console-style game library and a guided porting wizard.

  • A cover-art game library you can drive with a game controller (Nintendo, Xbox, PlayStation, 8BitDo and generic gamepads), with per-game settings such as 60 FPS, docked / handheld, MetalFX and the Metal HUD
  • A three-step wizard: drop a folder of NSP / NSZ / XCI files, choose a Mac app or an iOS IPA, and follow the build stages live
  • Shows installed DLC and the save folder for each game, and sends a notification when a build finishes or fails
GitHub