5 ноября (неделю назад) Нинтендо выпустили годную игрулю - Zelda Ocarina of Times remake, переиздание игры чуть не тридцатилетней давности, но с новой графикой, механиками улучшенными и вот этим вот всем. Игра отличная, на профильных сайтах чуть не игрой года уже назначена, оценки запредельные. Причем никакой повестки, просто отличное приключение с загадками и кучей всяких прикольных механик, классика игровая, в общем. Как положено, выпустили они ее эксклюзивно на своей консоли, свитче втором. Я новости по игруле почитал, повздыхал (консоли у меня нет, и покупать ее за такие деньги ради пары игр меня жаба душит, возможно, лет через пять и купил бы, б/у с рук) и собственно сел дальше в Crimson desert задротить. Но тут спустя два дня новая новость - энтузиасты слили дамп игры и пытаются запустить ее через эмулятор. (хм, интересно, посмотрим, что у них выйдет). И спустя еще 3 дня, 10 ноября новая новость - игру запустили в нативе на ПК, переписав код игры новой утилитой, Hookshot. Я полез смотреть и просто охренел, выхренеть до сих пор, не могу. Оказывается, ребята перешли от попыток заставить работать игру через эмулятор к созданию утилиты для ее пересборки под нужную операционку, хоть виндовс, хоть Линукс. Если в двух словах - их программа берет ARM64-инструкции из дампа игры и преобразует их в исходный код на языке C, а следом полученный C-код компилируется обычным компилятором Clang под нужную ось. Причём не просто переписывает код, а еще и добавляет слой эмуляции, когда игра обращается к системной функции Switch 2, например хочет получить информацию о контроллере или выделить память, Hookshot перехватывает этот запрос и предоставляет соответствующую реализацию на ПК. Еще круче с графикой - Switch 2 использует собственный графический API Nintendo — NVN2, поэтому тут прога перехватывает графические вызовы NVN2, преобразует их в команды Vulkan, перекомпилирует шейдеры, которые изначально были рассчитаны на GPU Nintendo и получившиеся команды передает непосредственно твоей видеокарте. В общем, для непосвящённых - какая-то магия.
Причём новостей в сети куча, но как-то без ссылок, где взять и как играть. Я сел за ноут (виндовс машина 21 года выпуска, 32 гига оперативки, ноутбучная 4060), открыл чатгпт - рассказал ему об этом и говорю, проверь что и как, расскажи как установить и запустить, а лучше дай команду для консоли, чтоб оно само.
Гпт подумал с минуту и говорит - «да, тема рабочая, вот тебе команда для powershell (если кто не знает - это просто консольная оболочка в Винде), запусти ее и всё установится. Но образа игры там нет, иначе юристы Нинтендо уже бы весь гитхаб засудили, тебе надо купить игру, специальной программой сделать ее дамп - и тогда сможешь его использовать».
Я пошел в зеленый магазин, «купил» там игру, ввел команду в powershell - и да, тут же приложение само себя подтянуло с гитхаба и установило. Засунул в него «купленый» образ игры, указал папку для готовой сборки - хуяк, 28 минут на пересборку 26 гигов кода - готово, можно играть. Итого спустя пять дней после выхода игры на консоль нинтендо у меня на ноутбуке установлена версия этой игры для виндовс.
Но на ноуте играть мне тут же стало влом, ведь у меня есть йоба-сборка со steam os, подключенная к телику (я про нее раньше писал, в другом посте) - и чатгпт такой «да никаких проблем, есть версия этой утилиты и под Линукс, ща проверим совместимости-зависимости........ Готово, вот тебе команда для консоли на steam os».
Та же процедура - ввод команды в консоль, установка, пересборка образа игры, но теперь уже под арх-линукс и всего за 15 минут - готово, хозяин!
Только теперь игра у меня в библиотеке Steam, запускается нативно, без всяких дополнительных совместимостей-эмуляций через протон, поддерживает 4к, 60 FPS, прешейдинг, генерацию кадров от амд, масштабирование-сглаживание и всё остальное, на 75 дюймовом телике сами видите как это выглядит и играется. Блять, магия.
Дополнительно Hookshot создает своё игровое меню, где все эти настройки выставляются, вызывается-отключается по F1 (но чтобы это знать надо ридми на гитхабе читать)), поддержка клавиатуры, назначение клавиш, сторонних джойстиков, гироскопы - всё поддерживается. Я играю на Vader 5, совместимость идеальная.
Из багов - пару раз за три часа игры в видеовставках были микрофризы. Всё.
Мне кажется, прямо сейчас наблюдается закат консолей как элитарной закрытой экосистемы - за пять дней энтузиасты не просто запустили консольный эксклюзив на ПК, а сделали его лучше, доступным на разных платформах и блять, бесплатно. Вообще не удивлюсь, если после релиза ГТА6 кто-то за месяц-другой такую же тему провернет, и игра станет доступной в 4к 60фпс всем владельцам ПК. Возможно, боссам Take-Two и Rockstar инвесторы прямо сейчас пальцы ломают, требуя выпустить игру в продаже в стим, пока ее народ не спиратил и бесплатно не выложил).
P/S Не представляю, как сейчас пригорает у нинтендо...