nxnative: запуск игр Nintendo Switch на устройствах Apple

nxnative позволяет запускать собственные игры Nintendo Switch на iPhone, iPad и Mac. Этот проект подходит для тех, кто хочет поиграть в свои NSP-файлы, превращая их в unsigned IPA, которые можно устанавливать на устройства Apple с помощью скрипта. Главное отличие от эмуляторов заключается в том, что код игр выполняется непосредственно на процессоре Apple, а графика пересобирается под Metal.

Проект построен на основе работ других разработчиков, но не содержит игровых данных и не связан с Nintendo. Для работы nxnative необходимы свои прод. ключи. Он ориентирован на пользователей, уже имеющих опыт с подобными проектами и готовых к некоторым техническим требованиям.

Для запуска необходимо наличие NSP-файлов и прод. ключей. Возможно, проект находится на начальной стадии, так что учти, что стабильность и совместимость могут варьироваться.

Проект nxnative позволяет запускать игры Nintendo Switch на устройствах iPhone и iPad. Вместо того чтобы эмулировать работу консоли, он использует собственный код игр, который выполняется непосредственно на процессоре Apple, а графика Switch отрисовывается с использованием Metal. Для работы проекта тебе понадобятся файлы NSP игр и ключи `prod.keys`. Один скрипт преобразует их в IPA-файл, который можно установить на устройство.

Установка и запуск

Чтобы установить и запустить nxnative, следуй этим шагам:

  1. Установка зависимостей:
  2. git clone https://github.com/seedds/nxnative.git && cd nxnative
    brew install xcodegen zstd spirv-cross glslang
    brew install --cask dotnet-sdk
    python3 -m pip install lz4 capstone fonttools "backports.zstd; python_version < '3.14'"
    
  3. Подготовка файлов игры: Скопируй файлы NSP в отдельную папку (можно также использовать сжатые форматы NSZ и XCZ). Пример структуры папки:
  4. ~/Games/MarioWonder/
      Super Mario Bros. Wonder [010015100B514000][v0].nsp
      Super Mario Bros. Wonder [010015100B514800][v327680].nsp
    
  5. Запуск скрипта для сборки IPA:
  6. python3 scripts/build_ipa_from_nsp.py ~/Games/MarioWonder -k ~/keys/prod.keys
    

    После выполнения этих шагов IPA-файл появится в указанной папке. Установка IPA на устройстве требует использования инструмента для sideloading, такого как AltStore, Sideloadly и т.д.

    Поддерживаемые игры

    На данный момент проект поддерживает определённый список игр, среди которых:

    • Mario Kart 8 Deluxe
    • Super Mario Odyssey
    • The Legend of Zelda: Breath of the Wild
    • Fire Emblem Engage
    • Hades

    Важно отметить, что для их запуска необходимо устройство с iOS/iPadOS 16 или новее и процессором A17 Pro или M1 или выше. Семь аркадных игр запускаются в 60fps, что значительно выше стандартной частоты кадров на Nintendo Switch.

    Ограничения и известные проблемы

    Несмотря на многообещающие возможности, есть определенные ограничения и проблемы:

    • Отсутствие поддержки amiibo и онлайн-функций.
    • Некоторые игры могут иметь проблемы с отображением графических эффектов.
    • При переключении между приложениями могут возникать звуковые глюки.

    Другие особенности проекта

    Для пользователей, предпочитающих графический интерфейс, существует отдельный проект NX2Apple, позволяющий упаковывать игры с использованием macOS приложения. Этот проект использует те же команды, что и nxnative.

    nxnative — это проект с открытым исходным кодом, который развивается за счёт работы многих сторонних разработчиков, таких как Ryujinx и Atmosphère. Коды сторонних библиотек сопровождаются их собственными лицензиями и условиями использования.

Открыть на GitHub: seedds/nxnative →

Есть рилс про этот проект Switch-игры на iPhone — 30 секунд в Instagram* ▶ Смотреть
Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте