Как запустить классику Nintendo 64 на современном железе без эмуляторов
Помните, как в детстве мы часами просиживали перед пузатыми телевизорами, пытаясь собрать все звезды в Super Mario 64? Эмуляторы частично решили проблему ностальгии, но они всегда привносили свои болячки: задержки ввода, графические глитчи и вечную возню с плагинами. Недавно я наткнулся на проект Ghostship от команды HarbourMasters, который предлагает принципиально иной подход. Это не эмулятор, а полноценный нативный порт игры на современные платформы.
В чем прикол нативного порта
Когда мы запускаем игру через эмулятор, компьютер тратит ресурсы на «притворство» приставкой. Ghostship идет другим путем. Разработчики взяли декомпилированный код игры и заставили его работать напрямую на Windows, Linux и macOS.
Это дает несколько крутых преимуществ. Во-первых, вы получаете честную поддержку DirectX 11, OpenGL и даже Metal для маководов. Во-вторых, игра работает с минимальным инпул-лагом, что для платформера критично. Но самое интересное — это поддержка модов и кастомных ассетов, которые подключаются простым закидыванием файлов в папку.
Что умеет проект
Ghostship построен на базе движка libultraship. Это такая прослойка, которая переводит вызовы железа Nintendo 64 на язык современных API.
Вот что вы получаете из коробки:
- Настоящее широкоэкранное разрешение без растягивания картинки.
- Поддержка современных геймпадов и гибкая настройка клавиатуры.
- Система модов через файлы .o2r и .otr.
- Возможность переключаться между стандартными и альтернативными ассетами прямо во время игры по нажатию Tab.
Интересно, что разработчики позаботились и о портативных консолях. Есть сборка под Nintendo Switch, правда, для генерации игровых ресурсов все равно понадобится ПК.
Как это запустить и не нарушить закон
Авторы проекта очень строго относятся к авторским правам. В репозитории нет ни одного байта защищенного контента Nintendo. Чтобы поиграть, вам придется самостоятельно раздобыть дамп (ROM) игры.
Процесс выглядит так:
- Берете свой образ игры в формате .z64 (поддерживаются американская и японская версии).
- Проверяете контрольную сумму SHA-1. Для версии US это
9bef1128717f958171a4afac3ed78ee2bb4e86ce. - Запускаете Ghostship.exe, указываете путь к рому, и программа сама извлечет нужные ресурсы и соберет рабочий билд.
Кстати, если у вас образ в формате .n64, его придется сначала конвертировать в .z64. В README есть ссылка на простенькую утилиту для этого.
Техническая внутрянка и кастомизация
Если вы решите покопаться в настройках, загляните в файл Ghostship.cfg.json. Там можно вручную сменить графический бэкенд. Например, если игра вылетает на Windows, попробуйте сменить ID бэкенда на 3 (OpenGL). По умолчанию используется DirectX 11 (ID 2).
Для тех, кто хочет пойти дальше и создавать свои моды, команда HarbourMasters предлагает целый стек инструментов. Есть генератор архивов retro и даже плагин fast64 для Blender. То есть можно буквально перерисовать уровни или персонажей в 3D-редакторе и засунуть их в игру.
Стоит ли пробовать
Если вы просто хотите поиграть пять минут и забыть, эмулятор будет быстрее. Но если вам важен комфорт, высокая частота кадров и возможность обмазаться модами — Ghostship мастхэв. Проект живой, активно пилится сообществом, а в списке благодарностей значатся люди, которые десятилетиями занимаются реверс-инжинирингом классики.
Кому точно зайдет:
- Тем, кто собирает свою ретро-станцию на базе ПК или Steam Deck.
- Разработчикам, которым интересно посмотреть, как старый код адаптируют под современное железо.
- Мододелам, мечтающим поработать с движком Марио в Blender.
Единственный минус — скудная документация по сборке из исходников для новичков. Но готовые бинарники в разделе Releases решают эту проблему для 99% пользователей.
Загляните в их Discord, если возникнут трудности с хешами ромов, ребята там довольно отзывчивые, если не спрашивать их, где скачать пиратские игры.
